---
# System prepended metadata

title: 戰鬥資料結構
tags: [機制設計]

---

# 戰鬥資料結構
###### 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>,
}
```




