Initial import of HEROLL source and design documents
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
flowchart TD
|
||||
command["接收玩家命令"] --> clone["复制当前 RunState"]
|
||||
clone --> resolve["在副本消费 RNG 并完整结算"]
|
||||
resolve --> validate{"不变量通过?"}
|
||||
validate -- 否 --> rollback["丢弃副本并记录异常"]
|
||||
validate -- 是 --> tx["提交事务与 RunState"]
|
||||
tx --> save["序列化 Checkpoint + checksum"]
|
||||
save --> atomic["写临时槽并原子替换主槽"]
|
||||
atomic --> render["通知表现层"]
|
||||
crash["刷新/崩溃/重新打开"] --> load["读取主槽;失败则读备份槽"]
|
||||
load --> verify{"版本和 checksum 有效?"}
|
||||
verify -- 否 --> newRun["提示存档损坏并开始新局"]
|
||||
verify -- 是 --> dedupe["恢复已提交 transactionId 集合"]
|
||||
dedupe --> resume["从最近安全 phase 恢复"]
|
||||
Reference in New Issue
Block a user