ChocolateBird/data/5/structs/SNES_save.tsv

162 lines
3.8 KiB
Plaintext

struct Character
u3 character_id # 0=Bartz, 1=Lenna, 2=Galuf, 3=Faris, 4=Krile, 5/6/7 unused
u1 is_female # 0=male, 1=female
u2 unk0 # Two unknown, possibly unused bits
u1 is_absent # 0=present, 1=absent
u1 is_back_row
u8 current_job_id
u8 level
u24 experience
u16 hp_current
u16 hp_max
u16 mp_current
u16 mp_max
u8 equipped_head
u8 equipped_body
u8 equipped_acc
u8 equipped_rh_shield
u8 equipped_lh_shield
u8 equipped_rh_weapon
u8 equipped_lh_weapon
u8 caught_monster
u8 ability_1
u8 ability_2
u8 ability_3
u8 ability_4
u8 status_1
u8 status_2
u8 status_3
u8 status_4
u8 action_flags
u8 damage_mod
u16 innates
u8 magic_element_up
u8 equip_weight
u8 base_strength
u8 base_agility
u8 base_stamina
u8 base_magic
u8 current_strength
u8 current_agility
u8 current_stamina
u8 current_magic
u8 evasion
u8 defense
u8 magic_evasion
u8 magic_defense
u8 elemental_absorb
u8 elemental_evade
u8 elemental_immune
u8 elemental_half
u8 elemental_weakness
u8 resistance_status_1
u8 resistance_status_2
u8 resistance_status_3
u8 specialty_weapon
u8 specialty_equipment
u8 current_job_level
u16 current_job_abp
u8 spell_level_1
u8 spell_level_2
u8 spell_level_3
u32 equipment_category
u16 attack
u8 attack_id_reaction_unused
u8 unk1
u8 unk2
u8 unk3
u8 freelancer_strength
u8 freelancer_agility
u8 freelancer_stamina
u8 freelancer_magic
u16 freelancer_innates
struct Job_progress
u12 abp
u4 level
struct Config
u3 battle_speed # 0=1 in-game, ..., 5=6 in-game
u1 is_wait_mode # 0=active, 1=wait???
u3 message_speed # 0=1 in-game, ..., 5=6 in-game
u1 command_set # 0=window, 1=shortcut
u5 menu_color_r
u5 menu_color_g
u5 menu_color_b
u1 padding
u1 reequip_mode # 0=optimum, 1=empty
u1 is_mono # 0=stereo, 1=mono
u1 is_memory_cursor # 0=reset, 1=memory
u4 unk0
u1 hide_atb_gauge # 0=show, 1=hide
u6 unk1
u1 is_controller_custom # 0=no, 1=yes
u1 is_controller_2p # 0=no, 1=yes
u8 button_A # Bit of action
u8 button_B # Bit of action
u8 button_X # Bit of action
u8 button_Y # Bit of action
u8 button_L # Bit of action
u8 button_R # Bit of action
u8 button_Select # Bit of action
4 of u8 character_player_nums # 0=controller 1, 1=controller 2
4 of 4 of u8 character_shortcut_commands # 0=ability_1, 1=ability_2, 2=ability_3, 3=ability_4
struct Vehicle
u2 mode_switching
u3 movement_type
u3 map_id
u7 unk0
u1 is_hidden # 0=show, 1=hide
u8 x
u8 y
struct Save_slot
4 of Character characters
256 of u8 inventory_item_ids
256 of u8 inventory_item_qtys
u24 unlocked_jobs
4 of 22 of Job_progress character_jobs_progress
4 of u8 character_abilities_learned_count
4 of 20 of u8 character_abilities_learned
u24 current_gil
u32 game_time_frames
u16 num_enemies_defeated
32 of u8 magic_learned
Config config
5 of 6 of u8 character_names # Bartz, Lenna, Galuf, Faris, Krile. Dialog is hardcoded for everyone except Bartz's name anyway...
6 of u8 unk0
u8 magic_lamp_next_summon
u8 num_battles_escaped # Brave Blade vs Chicken Knife
u8 wonder_rod_magic
9 of u8 unk1
u16 num_total_battles
u16 num_times_saved
u8 last_battle_results # 0=victory, 1=game over, 2=escaped
15 of u8 flags_battle_events
32 of u8 flags_treasure_opened
32 of u8 unk_probably_still_flags_treasure_opened
96 of u8 flags_events # RAM map mentions $D8E000. This is likely critical to story progression and scripting.
96 of u8 unk_probably_still_flags_events
u16 map_id_inner
u16 map_id_world
u8 pos_x
u8 pos_y
u8 current_character_sprite
u8 current_character_facing
u8 current_vehicle
Vehicle veh_chocobo
Vehicle veh_black_chocobo
Vehicle veh_hiryuu
Vehicle veh_submarine
Vehicle veh_steamship
Vehicle veh_airship
u16 teleport_map_id
u8 teleport_map_x
u8 teleport_map_y
u8 initial_seed
u8 walking_speed # 0=normal, 1=double (fast), 80=half (slow)
u8 timed_event_active
u16 timed_event_timer
u16 timed_event_end