DQ3SFC K.Mixで実装した戦士の擬似フバーハ(といってもかなり万能?)ですが、レベル1から99まで同じ性能で使えてしまうのはどうかと思ったので、レベル20,35,50(or20,30,40)で段階的に強化していくようにします。次回リリースでは防御時に戦士のダメージを1.5倍にする(1.5/2で実質ダメージは3/4になる)も考えていたので、合わせて修正します。しかし、過去の実装を見ると、SBCする前にc=onではなく、Aレジスタに1を足していたりと、65816に対する理解がまだまだだったことがわかります(恥ずかしいのでこっそり直しました)。今回はそれに加えて、いい加減な理解しかしていなかったアドレッシングモードについても理解せざるを得なくなるのですが。 さて、変更方針は、
- 戦士の防御時の後ろのキャラクターのダメージ低減率の定義を以下のように変更する
0-1 | 戦士のレベル |
2-3 | ダメージ補正率(分母256,自分自身) |
4-5 | ダメージ補正率(1人後ろ) |
6-7 | ダメージ補正率(2人後ろ) |
8-9 | ダメージ補正率(3人後ろ) |
たったこれだけです。1レコード目にレベル0の時の補正率を定義することで、全ての設定値をこの固定長データで表現できるようにします。実装としては、戦士の現状のレベルと比較して、レコード中のレベルより小さい場合は1つ前のインデックスを使用する、というようにします。ちなみにレコード数は4レコードになります。
ちょっと短いですが今回はこのへんで。実装は次回行います。
コメント