mastersord wrote:
121D0AB8 00004E1F - Level resident 17
121D0ABA 0000xxyy - Monster Type/ Specialist type reisdent 17
121D0ABC 00004E1F - Level resident 18
121D0ABE 0000xxyy - Monster Type/ Specialist type reisdent 18
From address 021D0AB8 to 021D0ABF (8-bytes)
I convinced that those supposed to be Buy Prices (8 bytes).
When i tried to sell the item, half of that 8-bytes value were listed as Sell Price.
mastersord wrote:
121D0AF8 0000xxxx - Item Type
221D0AFA 00000004 - Specialist slots (Max) (Thanx Jace17)
From address 021D0AF8 to 021D0AFB (4-bytes / 32-bits),
Its more accurate to say that 4-bytes above were actually formed like this:
bit 00-0D: Item Name (14 bits)
bit 0E-12: Max Specialist slots (5 bits)
bit 13-18: Residents Rank (6 bits)
bit 19-1F: Max Floor Depth (7 bits)
Item Name is Name displayed on item list.
say no more to list of names flavored with max-specialist slots, lol.
ValueRanges: 0000 to 3FFF
Max Specialist slots, need no further explaination.
ValueRanges: 00 to 1F
Residents Ranks, usualy set as Item Rank-1, determines Group of species/races that might appears on Item World, and their levels. Higher means stronger.
ValueRanges: 00 to 3F
Max Floor Depth, regulate how many floor Item world would have excluding from Lv.0 start.
Regular item have this value by 1D (that is 30 - 1 decimal), but if changed to 63 (99 decimal),
even on Regular Item World, you can dives to final floor and fight the Item God(2).
If Item Level > Max Floor Depth, game will said: 'All floors have been cleared'.
ValueRanges: 00 to 7F
???????? = {Item Name} + ({Max Specialist slots} << 0E) + ({Residents Ranks} << 13) + ({Max Floor Depth} << 19)
mastersord wrote:
221D0AFC 000000xx - Item class
221D0AFD 000000FF - JM
121D0AFE 0000xxxx - Equip type (item, sword, gun, etc..)
yet another bits slices!
From address 021D0AFD to 021D0AFE (4-bytes / 32-bits),
Its more accurate to say that 4-bytes above were actually formed like this:
bit 00-06: Icon (7 bits)
bit 07-0D: JM bonus (7 bits)
bit 0E-14: unknown #a (7 bits)
bit 15-19: Item Type (5 bits)
bit 1A-1C: Item Range (3 bits)
bit 1D-1F: unknown #b (3 bits)
Icon, item icon it doesn't change where the item can be equiped.
ValueRanges: 00 to 7F
JM bonus, no explaination needed.
ValueRanges: 00 to 7F
unknown #a, i have no idea what this use for. In most case the value was 0.
ValueRanges: 00 to 7F
Item Type, the actual data that determine wether the item can be equiped as weapon, accessories, monster only, or use-able.
ValueRanges: 00 to 1F
Item Range, only usefull for Weapon or Useable Healing-item.
Change the value into 6, and with a swing from your sword (or *insert your favorite weapon here*), it can whack an enemy 6 panel away without using any SP.
There glitch however, if this value set to 7, as it has same effect as being 0.
non-weapon/usable usually have this set to 0.
ValueRanges: 0 to 7
unknown #b, i have no idea what this use for. In most case the value was 0.
ValueRanges: 0 to 7
???????? = {Icon} + ({JM bonus} << 07) + ({unknown #a} << 0E) + ({Item Type} << 15) + ({Item Range} << 1A) + ({unknown #b} << 1D)
operator '<<' means shift left by nn bits. (number in hexadecimal)
it seems no MV modifier on Item data.