以前PC側のステータスの最大値を511まで引き上げたわけですが、モンスター側の素早さがそのままなので成長したPCは理屈では素早さ255のモンスターよりも先手を取れる確率が高くなることになります。モンスターの素早さの値は1Byteしかないため、戦闘中にモンスターの素早さを取得する部分で調整することにします。
- SR: $02C31A モンスター情報設定SR_SR_0004(素早さをAレジスタにセットして返す)
02C31A | JSR $E1D0 | SR: $02E1D0 | モンスター素早さ値調整 |
---|---|---|---|
02C31D-21 | NOP | ||
02C322 | RTS | return |
- SR: $02DBB9 モンスター素早さ値調整(新SR)
02E1D0 | JSL $C2CC92 | SR: $02CC92 引数:1#$000A 引数:2#$00FF | モンスター素早さ値取得 |
---|---|---|---|
02E1D8 | INC | A++ | 1を足す |
02E1D9 | ASL | A<<1 | |
02E1DA | DEC | A– | 1を引く |
02E1DB | NOP | ||
02E1DC | NOP | ||
02E1DD | NOP | ||
02E1DE | RTS | return |
これといって難しいことはないです。
(オリジナルの素早さ値+1)×2-1
で実際に使用される素早さ値を作成しています。他に漏れはないとは思いますが、もし漏れてたら指摘してください。
仕組み自体はこれでいいのですが、バランス的には不十分かもしれません。例えば序盤ではホイミスライム(15→調整後31)、まほうつかい(13→調整後27)など、全モンスターの素早さが約2倍になるので、それを見越して各モンスターの素早さの個別の調整が必要です。これはPC側の成長バランスをどうするかとの兼ね合いになるのでPCの成長バランスのところで一緒に調整することにします。
コメント