from ob import read_rom, ELEMENT_NAMES from struct import unpack_from def read_item(index): ITEM_SIZE = 0x20 ITEM_FORMAT = '>BBBBHbbbbbbbbbbbbbbbbbbbbbbBBBB' item_start = 0x62310 + (index * ITEM_SIZE) item_end = item_start + ITEM_SIZE return unpack_from(ITEM_FORMAT, read_rom(item_start, item_end)) for i in range(0, 130): # print(f"Item {i}:") (field_0x0, element, field_0x2, field_0x3, field_0x4, strength, intelligence, agility, dexterity, vitality, mem, *rest) = read_item(i) (field_0xc, res_strike, res_wind, res_fire, res_earth, res_water, res_holy, res_dark, *rest) = rest; print(f"Element: {ELEMENT_NAMES[element]}") print(f"STR: \t{strength} \tMEN: \t{mem}") print(f"VIT: \t{vitality} \tAGI: \t{agility}") print(f"INT: \t{intelligence} \tDEX: \t{dexterity}") print() print(f"RES STRIKE: \t{res_strike}") print(f"RES WIND: \t{res_wind}") print(f"RES FIRE: \t{res_fire}") print(f"RES EARTH: \t{res_earth}") print(f"RES WATER: \t{res_water}") print(f"RES HOLY: \t{res_holy}") print(f"RES DARK: \t{res_dark}") print(field_0xc, rest)