# 戰鬥資料結構 ###### tags: `機制設計` ## 整場戰鬥資料 (暫定) ```json= { "stoneInitialState": { "attackerStones": [<Stone>], "defenderStones": [<Stone>], }, "actions" : [<Action>], //"MyStoneNewState" : [<石頭資料>] } ``` ## 單次攻擊 // (1204討論結果) 1219修正 - 我先依照原本的風格用小駝峰 --- [name=Mibudin] <!-- ```json= // one skill { "TimeStamp" : <number>, "AttackerInfo" : { "AttackerID" : <number>, "SkillID" : <number>, "HpChange" : [<number>] // 攻擊者每回合的血量變化 }, "DefenserInfo" : // 存成陣列,因為可能有很多石頭 [{ "DefenserID": <number>, "DefenserReaction": [{ "ReactID" : <number>, // 防禦者對於攻擊動作的回應 "HpChange": <number> // 血量變化 }] }] } ``` --> ``` ballteRecord = [skillRecord] ``` ```javascript= Action: { timeStamp: <number>, // unix timestamp : long, $int64 casterID: <number>, casterSkillID: <number>, hits: [<hit>] } ``` ```javascript= Hit: { casterHPChange: <number>, isSkillCritical: <bool>, recevierActions: [<RecevierAction>] } ``` ```javascript= RecevierAction: { reciverID: <number>, defenserSkillID: <number>, recierHPChange: <number>, } ```