口头禅
pet_voice/ 下每个角色一个文件,文件名和性格文件一样:
json
{
"lines": {
"tame": [{ "text": "voice.chiikawa.usagi.tame.1", "weight": 1 }],
"idle": [
{ "text": "voice.chiikawa.usagi.idle.1", "weight": 1 },
{ "text": "voice.chiikawa.usagi.idle.2", "weight": 1 }
]
},
"chance": { "idle": 0.002 },
"cooldown_ticks": 200,
"crowd_limit": 3,
"talk_ticks": 60,
"hearing_range": 16.0
}| 字段 | 含义 |
|---|---|
lines | 每个时机说什么,按权重抽一句 |
chance | 可选,每个时机开口的几率,没写的是 1;idle 是每个 tick 的几率 |
cooldown_ticks | 说完一句后安静多久 |
crowd_limit | 附近已经有几只在说话时,它就先不说 |
talk_ticks | 气泡在头顶停留多久 |
hearing_range | 多远的玩家能看到 |
时机有 tame 被驯服、hurt 受伤、hunt 出发讨伐、paid 拿到报酬、shop 买到东西、gift 送礼、revive 复活、idle 闲着、whistle 听到口哨糖、exam_pass 考过、exam_fail 落榜、photo 小八按快门、photographed 被拍时摆姿势,以及小场面里用到的 cling、clung_to、turned_down、crab_greeting、treat、treated、given_coffee、listen。
一个时机不写台词,它在这个时候就不出声。獭师父受伤时不会喊疼,所以它的文件里没有 hurt。
text 写的是语言文件里的键名,台词本身放在资源包的 assets/<命名空间>/lang/zh_cn.json 里,这样同一套数据包在不同语言下都能说对的话。
