2013/12/03
■ [変愚蛮怒/スポイラー] 修行僧、練気術師の格闘ダメージ計算2(変愚蛮怒 Ver2.1.4 rev3503)
プレイヤーから敵への攻撃処理を取り行うpy_attack_aux()関数中からmonk_attackフラグによる処理の変化のみを抜粋する。
monk_attackがTRUEになる条件
修行僧、練気術師、狂戦士の右手が開いている状態の時。
monk_attackがTRUEになった場合のpy_attack_aux()の流れ
以下の処理の時点で命中は既に確定している。
- 拳の武器としての重量は8ポンドとして扱う。
- 敵の朦朧耐性値を初期値0として以下の通り加算する。
- ユニークならば+88
- 朦朧としないなら+66
- 混乱しないなら+33
- 眠らないなら+33
- アンデッドか無生物ならば+66
- 繰り出す技を選択するための回数を以下の流れで決める。
- 白虎の構えならば、現在レベル/3回。(最低1回、少数点切捨て)
- 朱雀、玄武の構えならば、1回。
- それ以外ならば現在レベル/7回。(最低1回、少数点切捨て)
- 決まった回数だけ、技の選択を試行する。
- 初期状態はID=0(パンチ)
- 技テーブルから技選択を繰り返す。プレイヤーが技に必要な最低必要レベルを超え、なおかつ1d(プレイヤーレベル)が技毎に決められた難易度を超えていた場合、その回の技選択が決まる。
- 練気術師は修行僧、狂戦士より最低必要レベルがどれも+3高い。
- プレイヤーが混乱しても朦朧ともしていない場合、その回で選択された技が、現在の確定より高度ならば(IDが大きいならば)上書きされる。
- 混乱しているか朦朧している場合は更新されない(=実質パンチのままになる?)
- また意図外のバグかもしれないが、最後の試行ではこれまでの最高の技であっても上書き処理が行われていない。
- 確定した技に基づいて、ダメージ量確定し、付随効果を与える。
- (確定した技のダイス数+元の拳のダイス数)d(確定した技のダイス面+元の拳のダイス面)を振って基本ダメージとする。
- 元の拳のダイス数も元の拳のダイス面も素手では0のはずであるからあまり意味はない?
- 酔拳発動中ならば基本ダメージを2倍にする。
- 技が金的蹴りで相手がMALEならば特別メッセージを出し、後で特別効果を与える。
- 技が間接蹴りで相手がNEVER_MOVEを持たずかつ「~#{}.UjmeEv$,DdsbBFIJQSXclnw!=?」以外のシンボルならば、後で特別効果を与える。
- それ以外の技ならば、技毎に定められた値をもとに朦朧量を(値/2)+1d(値/2)で計算する。
- 朱雀の構えならば武器重量換算を4ポンドに上書き。
- 練気術師の場合気を練っている場合、重量が溜めた気の値/30ポンドだけ上昇する。ただし、20ポンドを超えない。
- ここで武器と同様の重量クリティカルを加算する。
- 金的の特別効果があるならば、ここで朦朧値を7+1d13に上書きし、敵の朦朧耐性値を1/4にする。
- 間接蹴りの特別効果があり、敵を倒しきれていないならば、1d(プレイヤーレベル) > 敵レベル を満たした時、加速が-50より大きいモンスターは恒久的に-10の減速を受ける。
- プレイヤーレベル>1d(敵レベル+朦朧耐性+10)を満たすならば、朦朧量だけ、モンスターに朦朧が蓄積される(最大200)
- (確定した技のダイス数+元の拳のダイス数)d(確定した技のダイス面+元の拳のダイス面)を振って基本ダメージとする。
monk_attackのみの流れはここまでで、後は算出したダメージに右手の殺戮修正がのり、ダメージが確定する。
技の一覧は以下の通り
ID | 技名 | 必要レベル | 難易度 | ダイス | 朦朧値 | 備考 |
0 | パンチ | 1 | 0 | 1d5 | 0 | |
1 | キック | 2 | 0 | 1d7 | 0 | |
2 | 正拳突き | 3 | 0 | 1d9 | 0 | |
3 | 金的 | 5 | 5 | 2d4 | 特殊 | 条件を満たさない場合膝蹴りと呼称される |
4 | 肘打ち | 7 | 5 | 1d12 | 0 | |
5 | 体当たり | 9 | 10 | 2d6 | 0 | |
6 | 間接蹴り | 11 | 10 | 3d6 | 特殊 | 条件を満たさない場合キックと同じメッセージ |
7 | アッパー | 13 | 12 | 5d5 | 6 | |
8 | 二段蹴り | 16 | 15 | 5d6 | 8 | |
9 | 猫爪撃 | 20 | 20 | 5d8 | 0 | |
10 | 跳空脚 | 24 | 25 | 6d8 | 10 | |
11 | 鷲爪襲 | 28 | 25 | 7d9 | 0 | |
12 | 回し蹴り | 32 | 30 | 8d10 | 10 | |
13 | 鉄拳撃 | 35 | 35 | 8d11 | 10 | |
14 | 飛空脚 | 39 | 35 | 8d12 | 12 | |
15 | 昇竜拳 | 43 | 35 | 9d12 | 16 | |
16 | 石破天驚拳 | 48 | 40 | 10d13 | 18 |