Wizardryデータ解析

徹底研究-01

キャラクターデータ解析

キャラクターデータは、「TSXBIN」で見た場合、トラック36のセクター13あたりからあると思います(FM-7版の場合。他機種では、ずれていると思います)。

1キャラクターのデータは208バイトで、これが作成キャラクター分並んでいます。下図のデータを例に各データを説明していきます。

キャラクターデータの例
実際のINSPECT画面
[1] 名前の長さ(00)
キャラクター名の長さが入ります。
ex.
&H0A=10文字です。
[2] 名前(01-0F)
キャラクター名がアスキーコード、または漢字コードで入ります。
ex.
FRIEDEMANNと表示されます。
[3] パスワードの長さ(10)
パスワードの長さが入ります。
ex.
パスワードは設定されていません。
[4] パスワード(11-1F)
キャラクター作成時に設定されたパスワードの長さとコードが入ります。
ex.
パスワードは設定されていません。
[5] 不明(20-21)
キャラクターがOUTだと1?
[6] 種族(22-23)
種族のコードが入ります。
  1. 01 HUMAN
  2. 02 ELF
  3. 03 DWARF
  4. 04 GNOME
  5. 05 HOBBIT
ex.
DWARFです。
[7] クラス(24-25)
キャラクターの職業が入ります。
  1. 00 FIGHTER
  2. 01 MAGE
  3. 02 PRIEST
  4. 03 THIEF
  5. 04 BISHOP
  6. 05 SAMURAI
  7. 06 LORD
  8. 07 NINJA
ex.
SAMURAIです。
[8] 年齢(26-27)
キャラクターの年齢(初期値)×52+ADVENTURE'S INNで休息した回数が入ります。
ex.
&H0378=888÷52=17歳
[9] ステータス(28-29)
キャラクターの状態を表わします。
  1. 00 OK
  2. 01 AFRAID
  3. 02 ASLEEP
  4. 03 PARALYZED
  5. 04 PETRIFIED
  6. 05 DEAD
  7. 06 ASHES
  8. 07 LOST
ex.
正常です。
[10] 属性(2A-2B)
キャラクターの属性が入ります。
  1. 01 GOOD
  2. 02 NEUTRAL
  3. 03 EVIL
ex.
NEUTRALです。
[11] 特性(2C-2F)
STRENGTH、I.Q、PIETY、VITALITY、AGILITY、LUCKの各特性値が入ります。2バイトのデータを結合して2進数に変換し、下位から5ビットずつを拾うとデータになります。最上位1ビットは使用しません。
ex.
&H4A52=0100101001010010=18/18/18
[12] 不明(30-33)
 
[13] GOLD(34-39)
GOLDの枚数が入ります。6バイト目から先頭に向かって2バイトずつ結合し、3つの数値を結合します。
ex.
3A1899000000=
&H0000+&H0099+&H183A=1536202
[14] アイテムの数(3A-3B)
所持しているアイテムの個数が入ります。
ex.
5個です。
[15] アイテム(3C-7B)
1アイテムにつき8バイト使用で、最大8アイテム分が並んでいます。1バイト目が装着しているかのフラグ、5バイト目がアイテムを識別しているかのフラグ、7-8バイト目がアイテムナンバーです。
アイテムナンバーはこちらを参照してください。
[16] 経験値(7C-81)
経験値が入ります。データ形式はGOLDと同様です。
ex.
B00229020000=
&H0000+&H0229+&H02B0=5530688
[17] レヴェル(82-85)
レヴェルが入ります。最初の2バイトが名前の後ろに表示される数値、次の2バイトが現在のレヴェルです。この値は同じにする必要があります。
ex.
&H17=23です。
[18] H.P.(86-87)
現在のヒットポイントが入ります。
ex.
&H00B2=178です。
[19] MAX H.P.(88-89)
ヒットポイントの最大値が入ります。
ex.
&H00B2=178です。
[20] スペルのビット(8A-91)
使用できるスペルのビットが入ります。
ex.
FE FF FF FF FF FF 07とすると、すべてのスペルが使えます。
[21] MAGE系スペルの残り(92-9F)
MAGE系スペルの残り使用回数が入ります。
[22] PRIEST系スペルの残り(A0-AD)
PRIEST系スペルの残り使用回数が入ります。
[23] 不明(AE-AF)
アーマークラス?
[24] 現在のA.C.(B0-B1)
現在のアーマークラスが入ります。最上位のビットを立てることによって負の値になります。なおここを書き換えても、ゲーム中でA.C.を計算した場合(EQUIPしたときなど)、元の値に戻ります。
ex.
&HFFFA=-6
[25] 不明(B2-B5)
 
[26] 不明(B6-BF)
アイテム関連?
[27] 不明(C0-C9)
 
[28] 座標(CA-CC)
キャラクターの存在する位置です。X,、Y、Zの座標が入ります。
ex.
00 00 00=CASTLEにいます。
[29] EMBLEM(CD-CF)
WERDNAのAMULETを持ち帰ったかどうかのフラグです。
ex.
00 01 00で持ち帰ったことになります。

公開日:
2004年07月24日
更新日:
2007年12月29日