Difference between revisions of "Data/Table Locations"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
 
(171 intermediate revisions by 12 users not shown)
Line 1: Line 1:
For an easier to use version of this data in .txt format, visit this thread: http://ffhacktics.com/smf/index.php?topic=6538.140#msg181059
+
:For additional ASM notes and an easier to use version of this data in .txt format, visit this thread: http://ffhacktics.com/smf/index.php?topic=6538.140#msg181059 and download New Asm Files.7z
  
and download New Asm Files.7z
+
Main Data Locations:
 +
 +
RAM -> File
 +
    0x00F800 -> [[SCUS 942.21 Data Tables|SCUS_942.21]]
 +
    0x067000 -> [[WLDCORE.BIN Data Tables|WLDCORE.BIN]]
 +
    0x067000 -> [[BATTLE.BIN Data Tables|BATTLE.BIN]]
 +
    0x067000 -> [[OPEN.BIN Data Tables|OPEN.BIN]]
 +
    0x0E0000 -> [[WORLD.BIN Data Tables|WORLD.BIN]]
 +
    0x1BF000 -> [[ATTACK.OUT Data Tables|ATTACK.OUT]]
 +
    0x1BF000 -> [[REQUIRE.OUT Data Tables|REQUIRE.OUT]]
 +
    0x1BF000 -> [[OPTION.OUT Data Tables|OPTION.OUT]]
 +
    0x1BF000 -> [[ETC.OUT Data Tables|ETC.OUT]]
 +
    0x1BF000 -> [[EQUIP.OUT Data Tables|EQUIP.OUT]]
 +
    0x1BF000 -> [[CARD.OUT Data Tables|CARD.OUT]]
 +
    0x1BF000 -> [[BUNIT.OUT Data Tables|BUNIT.OUT]]
 +
    0x1DF000 -> [[JOBSTTS.OUT Data Tables|JOBSTTS.OUT]]
 +
    0x1DF000 -> [[HELPMENU.OUT Data Tables|HELPMENU.OUT]]
 +
    0x1DF000 -> SP2 + effects + other.
  
Main Data Locations:
+
Main Routine Locations:
 +
 +
RAM -> File
 +
    0x00F800 -> [[SCUS 942.21 Routines|SCUS_942.21]]
 +
    0x067000 -> [[WLDCORE.BIN Routines|WLDCORE.BIN]]
 +
    0x067000 -> [[BATTLE.BIN Routines|BATTLE.BIN]]
 +
    0x067000 -> [[OPEN.BIN Routines|OPEN.BIN]]
 +
    0x0E0000 -> [[WORLD.BIN Routines|WORLD.BIN]]
 +
    0x1BF000 -> [[ATTACK.OUT Routines|ATTACK.OUT]]
 +
    0x1BF000 -> [[REQUIRE.OUT Routines|REQUIRE.OUT]]
 +
    0x1BF000 -> [[OPTION.OUT Routines|OPTION.OUT]]
 +
    0x1BF000 -> [[ETC.OUT Routines|ETC.OUT]]
 +
    0x1BF000 -> [[EQUIP.OUT Routines|EQUIP.OUT]]
 +
    0x1BF000 -> [[CARD.OUT Routines|CARD.OUT]]
 +
    0x1BF000 -> [[BUNIT.OUT Routines|BUNIT.OUT]]
 +
    0x1DF000 -> [[JOBSTTS.OUT Routines|JOBSTTS.OUT]]
 +
    0x1DF000 -> [[HELPMENU.OUT Routines|HELPMENU.OUT]]
 +
    0x1DF000 -> SP2 + effects + other.
  
RAM -> File
+
Controller Inputs
-0x67000 -> Battle.bin
+
-0xE0000 -> World.bin
+
Title Screen: 0x800851BC
-0xF 800 -> SCUS
+
Event/Battle: 0x80045944
 +
World Map/Formation: 0x8019A204
 +
 +
  0x8000  Left
 +
  0x4000  Down
 +
  0x2000  Right
 +
  0x1000  Up
 +
  0x0800  Start
 +
  0x0400  R3
 +
  0x0200  L3
 +
  0x0100  Select
 +
  0x0080  Square
 +
  0x0040  Cross (X)
 +
  0x0020  Circle
 +
  0x0010  Triangle
 +
  0x0008  R1
 +
  0x0004  L1
 +
  0x0002  R2
 +
  0x0001  L2
  
 +
801612dc - Start of SAMPLE.LZW (should this be above?)
  
 +
ENTD data - Loaded into RAM 0x1dc000 during battle setup
 +
 
 +
  0x00 - Base Class / Character ID (Also affects sprites)
 +
  0x01 - "Gender" Byte (ENTD Flags)
 +
    0x80 - Male
 +
    0x40 - Female
 +
    0x20 - Monster
 +
    0x10 - Join After Event
 +
    0x08 - Load as Guest
 +
    0x04 - Has ??? Stats
 +
    0x02 - ?
 +
    0x01 - Join as Guest
 +
  0x02 - Name
 +
  0x03 - Level (over 99 = Party Level + Value - 100)
 +
  0x04 - Birth Month
 +
  0x05 - Birth Day
 +
  0x06 - Brave
 +
  0x07 - Faith
 +
  0x08 - Job Unlocked
 +
0x13 - Mime
 +
0x12 - Dancer
 +
0x11 - Bard
 +
0x10 - Calculator
 +
0x0f - Ninja
 +
0x0e - Samurai
 +
0x0d - Lancer
 +
0x0c - Geomancer
 +
0x0b - Oracle
 +
0x0a - Mediator
 +
0x09 - Thief
 +
0x08 - Summoner
 +
0x07 - Time Mage
 +
0x06 - Wizard
 +
0x05 - Priest
 +
0x04 - Monk
 +
0x03 - Archer
 +
0x02 - Knight
 +
0x01 - Chemist
 +
  0x09 - Job Level
 +
  0x0a - Job ID
 +
  0x0b - Secondary ID
 +
  0x0c - Reaction
 +
  0x0e - Support
 +
  0x10 - Movement
 +
  0x12 - Helmet
 +
  0x13 - Armor
 +
  0x14 - Accessory
 +
  0x15 - RH Equip
 +
  0x16 - LH Equip
 +
  0x17 - Palette
 +
  0x18 - ENTD Flags
 +
0x80 - Always Present
 +
0x40 - Randomly Present
 +
0x20 - Team Bit 1. 0x20 and 0x10 is Light Blue. 0x20 is Green.
 +
0x10 - Team Bit 2. 0x10 is Red. If neither bit, team is Blue.
 +
0x08 - Control
 +
0x04 - Immortal
 +
0x02 - (if both 01 and 02, then immune to knockback)
 +
0x01 - (both set by Ramza when initialized)
 +
  0x19 - X Coordinate
 +
  0x1a - Y Coordinate + Facing/Upper Level Flag
 +
  0x1c - Starting Experience
 +
  0x1d - Primary Skillset
 +
  0x1e - War Trophy
 +
  0x1f - Gil (* 100)
 +
  0x20 - Unit ID
 +
  0x21 - X Position (for AI)
 +
  0x22 - Y Position
 +
  0x23 -
 +
0x40 - Focus on Target in 0x24?
 +
0x20 - Stay near X/Y in 0x21/22? (0x28 = move and stay at position)
 +
0x10 - More aggressive? (when with 40, ONLY target that unit unless healing self)
 +
0x08 - Coward-like? (stay behind X/Y location?)
 +
 
 +
Notes:  0x10 seems to override 0x20
 +
 
 +
0x20 seems to keep it's distance until it can get close enough to you?
 +
 
 +
0x08 will move up to 4 tiles away from the X/Y listed (0/0 = anywhere?)
 +
seems to keep a 10 tile distance, unless an enemy moves within
 +
their 10 tile radius (testing with 3 move archer with bow)
 +
they will not move unless they need to.
 +
 
 +
seem to keep 10 away unless unable to move farther back, then they move
 +
back towards the center of their radius. you can force them out of their
 +
area by moving towards them (but out of their firing range), and continue
 +
to push them out, but the turn after they leave the area they will move
 +
back towards it, even if you are within the 10 tile radius.
 +
 
 +
managed to get a 4 move unit 12 tiles away by moving close to them when
 +
they had a bow... they seem to retreat away from the spot if they can't
 +
get to it and can still attack you (close-range would move to you)
 +
  0x24 - Target Unit ID
 +
  0x25 -
 +
  0x26 -
 +
0x04 - Save CT (don't move if not needed; also buff before attacking?)?
 +
  0x27 -
  
  800306ec - GPU Control Pointer
+
  (unsure who added these or what file they're for)
800306f0 - Horizontal Retrace Counter Pointer
+
  80190814 -  
800306f4 - Horizontal Retrace Counter Start? (gets subtracted from the counter)
+
  80192db0 -  
 
+
  80192dc5 -
800378*80 -  80037B90 - [[Music Files]]
+
  801934c2 -
 
+
  801937d3 -
80045980 - (set to 1 after prepping Exp/JP) (word)
+
  80193d47 -  
 
+
  801b8da4 -  
800459b8 - Milliseconds (also frame counter? max of 60 before Seconds ++)
+
  801b8d4c -
800459bc - Seconds
+
  801b9134 - ?
800459c0 - Minutes
 
800459c4 - Hours
 
 
 
800473ac - [[Customized Options]]
 
800473b0 - [[Default Options]]
 
 
 
80057718 - Time played this session (increments every frame/millisecond)
 
8005771c - (word, start of a bunch of data below)
 
 
 
800577b8 - [[Event ID]] (used by Brave Story to load certain events)
 
 
 
800577cc – Gil
 
 
 
800577d4 - Month
 
800577d8 – Day
 
 
 
800577e0 - [[Current Location]]
 
 
 
80057F74 -  80059374 – [[Party Data]]
 
 
 
800577e4 - ENTD Data ID (ENTD to load)
 
800577e8 - Map ID
 
800577ec - Number of Teams
 
800577f0 - Battle Formation ID (for placement)
 
 
 
80057878 - Event Byte Counter? (maybe just text?)
 
 
 
80057884 - ID for "Person" pages in Brave Story?
 
 
 
800578a0 - Injured (Brave Story)
 
800578a4 - b - Casualties (Brave Story)
 
800578ac - Next Scenario? New Game?
 
800578B0 - Deep Dungeon list length (+1)
 
 
 
800578c0 - Town Background
 
 
 
800578d4 - Storyline Progression
 
800578d8 - Shop Item Availability
 
 
 
8005791E - [[Activation bytes]]
 
80057940 - [[Facts]]
 
80057943 - [[Brave Story Records]]
 
 
 
8005794c - [[Map location and Path exist flags]]
 
80057958 - [[World Locations colors]]
 
 
 
80057966 - [[Active Rumors]]
 
80057970 - [[Obtained Treasures]]
 
80057976 - [[Unexplored Territory ]]
 
80057978 - [[Work History]]
 
800579a8 - "Person" data flags
 
 
 
80057b5c - Weapon Page Order (FF = early end; uses Item ID's, 0x8c long)
 
80057be8 - Helmet Page Order (0x20 long)
 
80057c08 - Armor Page Order (0x28 long)
 
80057c30 - Accessory Page Order (0x24 long)
 
80057c54 - Item Page Order (0x14? long)
 
 
 
80057d84 - [[Save screeen data]] (0x18 long, 15 total?)
 
 
 
80057f74 - [[Party Data]] (256 bytes each, 20 sections)
 
 
 
80059494 - [[Poached Item Quantities]]
 
800596e0 - Available Item Quantities (same order as item ID's)[Amount owned - amount equipped]
 
[[Item Inventory]]
 
 
 
800597e0 - [[Save Times]]
 
 
 
80059818 - [[Level UP Stat Storing Code Pointers]]
 
80059830 - [[Action Status Code Pointers]]
 
 
 
8005e90c - [[Raw Unit Data]]
 
8005e93c - [[Base Raw Variances]]
 
 
 
8005e950 - (0x80 long?)
 
8005e9d0 - Terrain Geomancy (maps abilities to 0x40 terrain types] [[Terrain Surface Types]]
 
8005ea10 - Terrain Statuses (maps status to 0x40 terrain types] [[Terrain Surface Types]]
 
8005ea50 - Movement Cost (six tables of 0x40 = 0x180, http://ffhacktics.com/smf/index.php?topic=6893.0)
 
8005ebd0 - ? [[Reaction Flags]] (1 byte each)
 
 
 
8005ebf0 - [[Ability Data 1]]
 
8005fbf0 - [[Ability Data 2]]
 
 
 
80061010 - Item Abilities
 
80061020 - Throw Abilities
 
8006102c - Jump Abilities
 
80061044 - Charge Abilities
 
80061054 - Calculator Abilities
 
8006105c - R/S/M Abilities
 
 
 
800610b8 - [[Job Data]]
 
 
 
80062eb8 - [[Item Data]] Start
 
80063ab8 - [[Weapon Secondary Data]]
 
80063eb8 - [[Shield Secondary Data]]
 
80063ed8 - [[Helm/Armor Secondary Data]]
 
80063f58 - [[Accessory Secondary Data]]
 
80063f98 - [[Item Secondary Data]]
 
80063fc4 - [[Inflict Statuses]]
 
800642c4 - [[Item Attributes]]
 
 
 
80064a94 - [[Skillsets]]
 
80065bc4 - [[Monster Skillsets]]
 
80065cb4 - [[Action Menus]] (1 byte for all skillsets)
 
 
 
80065de4 - [[Status Effects]]
 
 
 
80066064 - [[Poached Item List]] (2 bytes per Job for common and rare items)
 
 
 
800660c4 - [[Job Unlock Requirements]] (High nybble/low nybble)
 
80066182 - [[Job Level JP Requirements]] (some checks start at 66184)
 
80066194 - Job Data Pointer
 
 
 
80066198 - Prime Number List
 
800661ce - [[Month Day Values]]
 
800661e8 - [[Zodiac Day Limits]]
 
 
 
80066200 - Start of Battle Flag? (1 = Initialize data?)
 
80066204 - Temp Ability List (used for setting usable abilities)
 
 
 
80066238 - Current ENTD Pointer
 
 
 
800662d0 - [[Status checks]] (determined from 0x4/5 of  80065de4 data?)
 
 
 
80066308 - Highest Party Level
 
 
 
Battle.bin Locations
 
 
 
80067000 - List of return addresses
 
 
 
80067838 - Pointers for Numerical Display Color Code (0xd1 pointers)
 
80067b80 - Pointers for Display Type Code (SP/CT/Br/Fa/PA/MA)
 
80067bac - ? (0x2a long)
 
80067bd8 - ?2
 
80067c04 - ?3
 
80067c30 - ?4
 
80067c5c - ?5
 
80067c88 - ?6
 
 
 
800682cc - Color Modification Code Pointers
 
 
 
 
 
8006fbf0 - [[Ability Data Pointer 2]] (loading to skillset?)
 
 
 
 
 
80093d08 - [[Display Type]]
 
80093d18 - [[Status ID's for Display Type]]
 
 
 
80093de8 - Ability Animation number
 
 
 
80093e10 - [[Ability Animation Flags]] (0x200 abilities, 3 bytes each)
 
 
 
800943e4 - [[Item Graphic Data]] (0x7f total?)
 
 
 
  80094748 - [[Spritesheet Data]] (4 bytes each, 0x9f total)
 
 
 
  80094a40 - (start of below? Counter is set to +1 before so it starts at 94a44)
 
  80094a44 - Status Flags (for Display? 28 total, 4 bytes each)
 
  80094ae4 - Start of some list of palettes
 
  80094ba4 - ? Palettes
 
 
 
  80096024 - ? (set to 0 after prepping to display earned Exp/JP) (word)
 
 
 
  800960e4 - (set to 0x28 after prepping earned Exp/JP) (Word)
 
 
 
  80096100 - AT List ID (used to determine which data to load from the AT list)
 
 
 
  80096118 - Misc ID? (word)
 
8009611c - Misc ID? (word)
 
 
 
800961b4 - Unit's X Coordinate?
 
800961b8 - Unit's Map Level? (0 = base floor, 1 = higher floor)
 
800961bc - Unit's Y Coordinate?
 
 
 
 
 
(stuff for display)
 
800962d4 - HP Damage
 
800962d6 - HP Healing
 
800962d8 - MP Damage
 
800962da - MP Healing
 
800962dc - SP Damage
 
800962de - SP Bonus
 
800962e0 - CT Damage
 
800962e2 - CT Bonus
 
800962e4 - Brave Damage
 
800962e6 - Brave Bonus
 
800962e8 - Faith Damage
 
800962ea - Faith Bonus
 
800962ec - PA Damage
 
800962ee - PA Bonus
 
800962f0 - MA Damage
 
800962f2 - MA Bonus
 
 
 
 
 
 
 
80098a54 - Pointer to last unit's Misc Data?
 
 
 
80098dcc - numerical display data
 
 
 
80098dd4 - numerical display data?
 
 
 
800995ec - (word)
 
 
 
800995f4 - (14 groups at 0x982 bytes each)
 
800995f5 - 1 = skip setting below data?
 
800995f6 - [[(16 sections, 8 bytes each)]]
 
80099676 - [[Palette Color Mod Data]] (16 sect. w/ 16 colors; 7 bytes each color (0x700 total))
 
80099d76 - [[Raw Palettes]] (16 sections, 16 colors, 2 bytes each (0x200 total))
 
 
 
800a7790 - word loaded to coprocessor 2 register: gtedr00_vxy0
 
800a7794 - word loaded to coprocessor 2 register: gtedr00_vz0
 
800a7798 - word loaded to coprocessor 2 register: gtedr01_vxy1
 
800a779c - word loaded to coprocessor 2 register: gtedr01_vz1
 
800a77a0 - word loaded to coprocessor 2 register: gtedr02_vxy2
 
800a77a4 - word loaded to coprocessor 2 register: gtedr02_vz2
 
800a77a8 - word loaded to coprocessor 2 register: gtedr00_vxy0
 
800a77ac - word loaded to coprocessor 2 register: gtedr00_vz0
 
 
 
 
 
800b7308 - [[Miscellaneous Unit Data]] - Giant display section (0x440 bytes each)
 
 
 
800B8594 - start of inventory data?
 
 
 
800bd8cc - data sent back from GPU?
 
 
 
800bd8e4 - data sent back from GPU - gtedr14_sxy2
 
 
 
 
 
800d4578 - amount of days on proposition
 
800d4574 - amount of days on proposition
 
 
 
800e4e9c - Map Max X coordinate
 
800e4ea0 - Map Max Y coordinate
 
800e4ea4 - Modified Palettes (14 chunks at 512 bytes each)
 
0x000 -> Modified Palettes
 
0x982 ->
 
 
 
800e6bb0 - list of return addresses
 
800e6c98 - list of return addresses
 
 
 
800f5ba8 - current loaded map (set at f385c)
 
800f5c58 - map data
 
 
 
800f5e74 - [[Move-Find Item Data]] (and Traps)
 
80124604 - [[Map GNS Data]]?
 
 
 
8014cf68 - [[Status Image Data]] (4 bytes each, 0xc4 total)
 
 
 
8014d09a - [[hit % data]] (for display?)
 
 
 
8014d0d2 - some unit Reaction ID (other stuff above/below here)
 
8014d0d4 - some unit Support ID
 
8014d0d6 - some unit Movement ID
 
 
 
8015d304 - Current Unit's ID (* 0x1c0 for Data Pointer)
 
 
 
80165eb4 - [[Palette Pointer Mod 1]]? (halfword)
 
80165eb6 - Palette Pointer Mod 2? (halfword)
 
 
 
80165ef4 - some item datA?
 
 
 
80165f9c - item data pointer?
 
 
 
8016866c - start of a set of data 0x0c long, (0x1b0 total) (0x24 sets)
 
 
 
80172258 - target current action pointer
 
 
 
80173e68 - ? [[changes with different message displayed]] (execute action, select target, etc.)
 
 
 
80173f8c - [[Pointers to Text Data]] (Mod below / 0x200 + 173f8c)
 
 
 
80174060 - Displayed Skillsets (act Menu) - ff in first slot that doesn't have skillset, rest 00
 
 
 
80174068 - Action return address table (based on "action menu byte" of skillset)
 
 
 
801740a8 - [[Menu Code Pointers]]
 
 
 
801740e8 - [[Menu Code Pointers 2]]
 
 
 
8018f520 - active units ID?
 
 
 
8018f5f0 - [[AI calculation types]]? (word)
 
 
 
8018f5f6 - start of some list (3 halfwords)
 
 
 
8018f5fc - Dealing with displayed damage?
 
 
 
[[Zodiac Compatability Modifiers]]
 
8018f600 - Aries
 
8018f601 - Taurus
 
8018f602 - Gemini
 
8018f603 - Cancer
 
8018f604 - Leo
 
8018f605 - Virgo
 
8018f606 - Libra
 
8018f607 - Scorpio
 
8018f608 - Sagittarius
 
8018f609 - Capricorn
 
8018f60a - Aquarius
 
8018f60b - Pisces
 
 
 
8018f7ec - Used Ability Flags 1
 
 
 
8018f86d - [[current units movement supports]]
 
 
 
8018f8c8 - Acting Unit ID (word)
 
 
 
8018f8cc - [[Tile Data]] (8 bytes each, +100h for Higher Elevation tiles)
 
 
 
801908cc - [[Unit and Current Action Data]] (Unit ID * 0x1c0 for specific location)
 
 
 
80192d8c - Attacker Current Action Data Pointer
 
80192d90 - Target Current Action Data Pointer
 
80192d94 - Attacker's Data Pointer
 
80192d98 - Target Data Pointer
 
 
 
80192d9c - Reaction ID
 
 
 
80192da0 - [[Copy of Acting Unit's Current Action Data]]? 0x2c long
 
 
 
80192dcc - X coordinate of target
 
80192dd0 - Y coordinate of target
 
80192dd4 - map level of target
 
 
 
80192dd8 - [[Moveable/Targetable Panel Grid]] (By rows of X panels, 0x10 in each row)
 
 
 
80193848 - (Data from 0x16e-0x182 of Unit Data)
 
 
 
80193860 - ? (set to 0 if an item is used on undead)
 
 
 
80193868 - Target hit by ability (0x10 bytes; amount of non-FF data is counted, and the data c/p to misc. unit data, 0x18e)
 
 
 
80193878 - Distribute Hit Counter
 
 
 
80193881 - start of some panel data (0x03 bytes each)
 
 
 
Start of Attacker's Data?
 
8019389c - Attacker's Facing (byte)
 
8019389d - (set to 1 when setting the weapon IDs)
 
8019389e - Attacker's RH Weapon
 
8019389f - Attacker's LH Weapon
 
801938a0 - Attacker's Team
 
801938a2 - X Distance between Attacker/Target (halfword)
 
801938a4 - Y Distance between Attacker/Target (halfword)
 
801938a6 - Attacker/Self ID
 
801938a7 - Used Skillset ID
 
801938a8 - Used Ability ID
 
801938aa - Calculator Type ID
 
801938ac - Calculator Multiplier ID
 
801938ae - Used Item/Equip ID
 
801938af - (0x177)
 
801938b0 - (0x178)
 
801938b1 - Target ID?
 
801938b2 - Target X
 
801938b3 - (0x17b)
 
801938b4 - Target Map Level
 
801938b5 - (0x17d)
 
801938b6 - Target Y
 
801938b7 - (0x17f)
 
801938b8 - (0x180)
 
801938b9 - (0x181)
 
801938ba - Mount Info
 
801938bb -
 
801938bc - (word)
 
801938c0 - Attacker Unit ID
 
801938c1 - Target Unit ID
 
801938c2 - #Hits
 
801938c3 - Weapon Hand (0 = R, 1 = L) (fdc)
 
801938c4 - Primary Weapon ID (Also used for used item/weapon ID for Weapon Inventory)
 
801938c5 - Secondary Weapon ID
 
801938c6 - Reaction ID?
 
 
 
 
 
801938c8 - ? (Deals with elemental nullification)/poach (post action thing? used in reaction routine too)
 
801938ca - Target X Coordinate?
 
801938cb - Target Y coordinate?
 
801938cc - target elevation?
 
801938cd - Caster Tile Type
 
801938ce - XA
 
801938d0 - YA
 
801938d2 - Defender's Effective Faith
 
801938d3 - Attacker's Effective Faith (set to 100 after checking faith)
 
801938d4 - Used Ability's Skillset
 
 
 
801938d6 - Used Ability ID?
 
801938d8 - Used Weapon ID
 
801938d9 - ? (01 = two-hands is in use?)
 
 
 
801938db - Used Item ID
 
801938dc - Base Hit
 
 
 
801938de - Accessory Evade
 
801938df - RH Evade
 
801938e0 - LH Evade
 
801938e1 - Class Evade
 
801938e2 - Facing Modifier (00 Front, 01 Side, 02 Back)
 
 
 
801938e4 - Charge's Power?
 
801938e5 - Ability Formula?
 
 
 
801938e7 - Earned Experience
 
801938e8 - Can earn EXP?
 
801938e9 - defaults to weapon attack? (default to attack flag?)
 
0x01 - default to weapon attack?
 
0x00 - don't default
 
 
 
801938eb - MP Used
 
801938ec - able to knock back? (checked in knockback calculation) / Hit Counter
 
801938ed - can poach?
 
 
 
801938ef -
 
 
 
801938f0 - Ability Range
 
801938f1 - Ability Effect Area
 
801938f2 - Ability Vertical
 
801938f3 - [[Ability Flags 1]]
 
801938f4 - [[Ability Flags 2]]
 
801938f5 - [[Ability Flags 3]]
 
801938f6 - [[Ability Flags 4]]
 
801938f7 - Ability Element
 
801938f8 - Ability Formula
 
801938f9 - Ability X
 
801938fa - Ability Y
 
801938fb - Ability Inflict Status ID
 
801938fc - Ability CT
 
801938fd - Ability MP Cost
 
 
 
801938ff - [[Weapon Characteristics]]
 
 
 
80193902 - WP
 
 
 
80193904 - Weapon's Element
 
 
 
80193906 - [[Status Infliction Type]]
 
80193907 - [[Status Set 1]]
 
80193908 - Status Set 2
 
80193909 - Status Set 3
 
8019390a - Status Set 4
 
8019390b - Status Set 5
 
 
 
8019390c - Ability Type
 
8019390d - Ability Element
 
8019390e - Ability Formula - used in poach/train?
 
8019390f - Ability Power 1
 
80193910 - Ability Power 2
 
80193911 - Ability Inflict Status ID?
 
80193912 - Ability CT (?)
 
80193913 - Ability MP Cost
 
 
 
80193914 - move find item data 2 (loaded from static)
 
80193918 - move find item data 3
 
8019391c - move find item data 4
 
 
 
80193924 - [[Unit AI Extended Status Data]] (16 total, 0x40 bytes each)
 
 
 
80193d24 - [[Attacker's AI Data]]
 
 
 
80193d44 - Acting Unit's Used Ability ID
 
 
 
80193d98 - AI Targeting? Code Pointers
 
 
 
80193aec - [[Player unit information]] (0x40 long for 5 units?)
 
 
 
[[Table of Offsets from]] 0x193D48-E4F
 
 
 
8019f358 - [[X/Y Mods]] (2 bytes each, 4 total)(for targeting? gets added to base values)
 
 
 
8019f3c0 - Unit AI Extended Status Data Pointer
 
8019f3c4 - [[Start of AI data]]
 
 
 
 
 
801b48d0 - table of effect file start locations
 
 
801b63e8 - ability loaded flag?
 
 
 
801b63f0 - Ability Effect (2 bytes each, 0x1c6 total)
 
 
 
801b677c - Event Effects (2 bytes each, 0x25 total)
 
 
 
801b84ac - list of bytes based on ability animation flags
 
 
 
801b8b60 - Attacker's ID? (Word)
 
 
 
801c24d0 - loaded ability effect (half)
 
 
 
[[Loaded into RAM]] 0x1dc000 during battle setup
 
 
 
* 801b63f0 - Ability Effect (2 bytes each, 0x1c6 total)
 
* 801b677c - Event Effects (2 bytes each,
 

Latest revision as of 03:41, 1 June 2023

For additional ASM notes and an easier to use version of this data in .txt format, visit this thread: http://ffhacktics.com/smf/index.php?topic=6538.140#msg181059 and download New Asm Files.7z
Main Data Locations:

RAM -> File
   0x00F800 -> SCUS_942.21
   0x067000 -> WLDCORE.BIN
   0x067000 -> BATTLE.BIN
   0x067000 -> OPEN.BIN
   0x0E0000 -> WORLD.BIN
   0x1BF000 -> ATTACK.OUT
   0x1BF000 -> REQUIRE.OUT
   0x1BF000 -> OPTION.OUT
   0x1BF000 -> ETC.OUT
   0x1BF000 -> EQUIP.OUT
   0x1BF000 -> CARD.OUT
   0x1BF000 -> BUNIT.OUT
   0x1DF000 -> JOBSTTS.OUT
   0x1DF000 -> HELPMENU.OUT
   0x1DF000 -> SP2 + effects + other.
Main Routine Locations:

RAM -> File
   0x00F800 -> SCUS_942.21
   0x067000 -> WLDCORE.BIN
   0x067000 -> BATTLE.BIN
   0x067000 -> OPEN.BIN
   0x0E0000 -> WORLD.BIN
   0x1BF000 -> ATTACK.OUT
   0x1BF000 -> REQUIRE.OUT
   0x1BF000 -> OPTION.OUT
   0x1BF000 -> ETC.OUT
   0x1BF000 -> EQUIP.OUT
   0x1BF000 -> CARD.OUT
   0x1BF000 -> BUNIT.OUT
   0x1DF000 -> JOBSTTS.OUT
   0x1DF000 -> HELPMENU.OUT
   0x1DF000 -> SP2 + effects + other.
Controller Inputs

Title Screen: 0x800851BC
Event/Battle: 0x80045944
World Map/Formation: 0x8019A204

  0x8000  Left
  0x4000  Down
  0x2000  Right
  0x1000  Up
  0x0800  Start
  0x0400  R3
  0x0200  L3
  0x0100  Select
  0x0080  Square
  0x0040  Cross (X)
  0x0020  Circle
  0x0010  Triangle
  0x0008  R1
  0x0004  L1
  0x0002  R2
  0x0001  L2
801612dc - Start of SAMPLE.LZW (should this be above?)
ENTD data - Loaded into RAM 0x1dc000 during battle setup
 
  0x00 - Base Class / Character ID (Also affects sprites)
  0x01 - "Gender" Byte (ENTD Flags)
   0x80 - Male
   0x40 - Female
   0x20 - Monster
   0x10 - Join After Event
   0x08 - Load as Guest
   0x04 - Has ??? Stats
   0x02 - ?
   0x01 - Join as Guest
  0x02 - Name
  0x03 - Level (over 99 = Party Level + Value - 100)
  0x04 - Birth Month
  0x05 - Birth Day
  0x06 - Brave
  0x07 - Faith
  0x08 - Job Unlocked
	0x13 - Mime
	0x12 - Dancer
	0x11 - Bard
	0x10 - Calculator
	0x0f - Ninja
	0x0e - Samurai
	0x0d - Lancer
	0x0c - Geomancer
	0x0b - Oracle
	0x0a - Mediator
	0x09 - Thief
	0x08 - Summoner
	0x07 - Time Mage
	0x06 - Wizard
	0x05 - Priest
	0x04 - Monk
	0x03 - Archer
	0x02 - Knight
	0x01 - Chemist
  0x09 - Job Level
  0x0a - Job ID
  0x0b - Secondary ID
  0x0c - Reaction
  0x0e - Support
  0x10 - Movement
  0x12 - Helmet
  0x13 - Armor
  0x14 - Accessory
  0x15 - RH Equip
  0x16 - LH Equip
  0x17 - Palette
  0x18 - ENTD Flags
	0x80 - Always Present
	0x40 - Randomly Present
	0x20 - Team Bit 1. 0x20 and 0x10 is Light Blue. 0x20 is Green.
	0x10 - Team Bit 2. 0x10 is Red. If neither bit, team is Blue.
	0x08 - Control
	0x04 - Immortal
	0x02 - (if both 01 and 02, then immune to knockback)
	0x01 - (both set by Ramza when initialized)
  0x19 - X Coordinate
  0x1a - Y Coordinate + Facing/Upper Level Flag
  0x1c - Starting Experience
  0x1d - Primary Skillset
  0x1e - War Trophy
  0x1f - Gil (* 100)
  0x20 - Unit ID
  0x21 - X Position (for AI)
  0x22 - Y Position
  0x23 - 
	0x40 - Focus on Target in 0x24?
	0x20 - Stay near X/Y in 0x21/22? (0x28 = move and stay at position)
	0x10 - More aggressive? (when with 40, ONLY target that unit unless healing self)
	0x08 - Coward-like? (stay behind X/Y location?)
 
	Notes:  0x10 seems to override 0x20
 
		0x20 seems to keep it's distance until it can get close enough to you?
 
		0x08 will move up to 4 tiles away from the X/Y listed (0/0 = anywhere?)
			seems to keep a 10 tile distance, unless an enemy moves within
			their 10 tile radius (testing with 3 move archer with bow)
			they will not move unless they need to.
 
		seem to keep 10 away unless unable to move farther back, then they move
		back towards the center of their radius. you can force them out of their
		area by moving towards them (but out of their firing range), and continue
		to push them out, but the turn after they leave the area they will move
		back towards it, even if you are within the 10 tile radius.
 
		managed to get a 4 move unit 12 tiles away by moving close to them when
		they had a bow... they seem to retreat away from the spot if they can't
		get to it and can still attack you (close-range would move to you)
  0x24 - Target Unit ID
  0x25 - 
  0x26 - 
	0x04 - Save CT (don't move if not needed; also buff before attacking?)?
  0x27 -
(unsure who added these or what file they're for)
80190814 - 
80192db0 - 
80192dc5 -
801934c2 -
801937d3 -
80193d47 - 
801b8da4 - 
801b8d4c -
801b9134 - ?