呪文習得 一覧

DQ3 各職業の習得呪文情報設定

いよいよネタが枯渇気味になってきたということで、今回は解説のみのエントリです。知ってる人は知っている、スキップしてかまわない内容です。バイナリwikiには個々のデータの場所や各フィールドの意味がかなり明らかにされていますが、明らかに用途がわかるデータ以外については、残念ながらその用途や他のデータとどう関連しているかについての解説があまりありません。索引的な役割なのでしょうがないといえばしょうがないのですが。というわけで、その足りない部分の補足を主な目的とします。もちろん全部は無理ですが、少なくとも自分が知りえた範囲はカバーしていく予定です。なお、解説中のアドレスは全てオリジナルのアドレスを使用します。拡張パッチ使用の場合はreadmeを参照しながら適宜読み替えてください。

続きを読む


DQ3 使用できる呪文の変更3

ストーリー変更の改造をしながらちまちまとテストプレイをしていたら新しく呪文を覚えた所でフリーズするバグを見つけました。特定に時間がかかりましたが、どうやら戦闘呪文の場所を移動したのが原因だったようです。

  • SR: $0459B2 呪文習得関連?
0459DALDA $C4183E,XA=$04183E+X

データの場所を移動したときは念のためROM内部を移動前のアドレスでサーチしたほうがいいですね。


スポンサーリンク

DQ3 転職時に一部呪文を使用不可にする

順番が変ですがまあ気にしない。

改造人間氏のSFCドラクエ3改造版パッチでも転職による習得呪文の使用不可は実現されていましたが、転職すると覚えた呪文が一部使えなくなるようにします。呪文の習得状態は$7E3949~52*1の10バイトにそれぞれ1ビットずつ覚えている(on)/覚えていない(off)の状態が保存されています。順番は$121D00-*2の呪文基本情報の並び順と同じです。というわけで転職時にこれらのビットの一部をoffにしてやれば「特定の職業専用呪文」が実現できます。これも比較的簡単ですね。ただ、スロットがあまり空いてないのでいくらでも追加できるというわけではありません。また、やろうと思えば、DQM*3のように「覚えられる呪文の数を??個に制限」とかもできると思いますが、忘れる呪文の選択インターフェースを用意しないといけないのでいまのところ実装予定はありません。さて、転職時のステータス変更はSR: $0469C9で行っています。「各ステータスを取得してASLで1/2にしてセット」の処理が続きますが、最後に$046A25で習得可能呪文のチェック?を行っているところがあるので、この部分を別SRに置き換えて対応することにします。

続きを読む


DQ3 使用できる呪文の変更2

残りは戦闘行動の設定と呪文習得の設定です。まず戦闘行動ですが、必須の設定項目は

  • 行動プログラムアドレス(6-8バイト)
  • 対象数(21バイト目0-1ビット)
  • 選択対象(22バイト目0-2ビット)

続きを読む


スポンサーリンク

DQ3 使用できる呪文の変更1

※2009/05/01 23:30追記。プログラム中の戦闘呪文数を変更するというコードを追加しました。

今回はプログラムの変更はありませんが(嘘でしたちょっと必要あります)、自分が作業していて試行錯誤が必要な作業だったのでその手順を説明することにします。新しい呪文を追加するにはまずコマンドウィンドウ上でその呪文が選択できないと話が始まりません。というわけで、実際に実装を行う前の準備として新しい呪文をPC*1が覚えて使える状態にしないといけないわけです。プログラムの修正はあまり必要ないですが、そのかわり関係する部分がいろいろとあるので、1ヶ所直せば終わりとはいかないので、別の意味でやっかいです。

続きを読む