Users browsing this thread: 1 Guest(s)
Final Fantasy III NES Tweaks

#1
Posts: 11
Threads: 2
Thanks Received: 0
Thanks Given: 11
Joined: May 2022
Reputation: 0
Status
Focus
Hello everyone!

I started to work on a new hack that will be called "Final Fantasy III NES Tweaks".
The purpose it's to provide the original experience without some problems like the lack of a B-button dash, some useless commands, the fact that there it's no way to get Phoenix Downs even at the end of the game, or the lack of a Black Magic user other than the Black Mage at mid-game.

If you have any suggestion to improve the game let me know in the replies.

Link: https://www.romhacking.net/hacks/6869/

[Image: Final_Fantasy_III_Tweaks-0.png][Image: Final_Fantasy_III_U-6.png][Image: Final_Fantasy_III_U-8.png][Image: Final_Fantasy_III_U-0.png][Image: Final_Fantasy_III_U-1.png][Image: Final_Fantasy_III_Tweaks-2.png][Image: Original_Icons-0.png][Image: Original_Icons-1.png][Image: Original_Icons-2.png][Image: Final_Fantasy_III_U-5.png]
  Find
Quote  

#2
Posts: 142
Threads: 20
Thanks Received: 160
Thanks Given: 76
Joined: Feb 2016
Reputation: 8
Status
Enlight
Hi T29, looks like you're using Battle Interface Upgrade?

If so, then FYI, there's a bug in the older versions (1.5 and below) that messes up the return animation for Jump.
Check out the latest version which I just got around to releasing today after I saw your post.

Best of luck with the project!
Quote  

#3
Posts: 11
Threads: 2
Thanks Received: 0
Thanks Given: 11
Joined: May 2022
Reputation: 0
Status
Focus
(05-28-2022, 04:14 PM)SilentEnigma Wrote: Hi T29, looks like you're using Battle Interface Upgrade?

If so, then FYI, there's a bug in the older versions (1.5 and below) that messes up the return animation for Jump.
Check out the latest version which I just got around to releasing today after I saw your post.

Best of luck with the project!

Thanks. Victory
  Find
Quote  

#4
Posts: 26
Threads: 6
Thanks Received: 6
Thanks Given: 2
Joined: Feb 2020
Reputation: 3
Status
None
Hi there T29, great to see someone else giving some love to this forgotten gem. I've tinkered with the game many years ago and dug up some of my old notes about where is what inside the rom, maybe some of them can be of use to you. Here goes:

Enemy stats are located from offset 60010 to 60E7F and consist of 16 bytes per enemy. Bytes are:
 
Byte 00 = Level (determines effectiveness of attacks)
Byte 01 – 02 = HP
Byte 03 = Probability of using an AI attack over a regular physical attack
Byte 04 = Skill Points (determines effectiveness of attacks)
Byte 05 = Elemental Weakness
Byte 06 = Magic Defense index
Byte 07 = Magic Power
Byte 08 = Attack Element
Byte 09 = Attack index
Byte 10 = Status attack
Byte 11 = Elemental Resistance (the elements)
Byte 12 = Defense index
Byte 13 = Elemental Resistance (how elements in byte 11 are treated. 01 = absorbed, 20 = resistant)
Byte 14 = AI script (=which script the enemy uses)
Byte 15 = Drop/Steal index

The order of enemies is the same as it appears in the FF3j Enemy Editor, e.g. the first 16 bytes are for Goblin, the next 16 bytes are for Carbuncle, etc.

Quick explanation about bytes 06, 09, and 12: Much like Final Fantasy II, this game also doesn't use raw stats for Enemy Attack Power, Defense and Magic Defense in the enemy stats list. Rather, it refers to an index number. These indices are located from offset 61010 to 611EF and consist of 3 bytes per index. Bytes are:
 
Byte 00 = number of Hits that are performed (for Attack index) or blocked (for Defense/M.Defense index)
Byte 01 = Hit % (for Attack index) / Evasion % (for Defense/M.Defense index)
Byte 02 = Attack power/Defense/Magic Defense
 
As far as I could tell, the following indices have gone unused in the vanilla game: 39, 41, 42, 43, 44, 45, 46, 51, 71, 81, 105, 132, 151


Enemy AI scripts are located from offset 61210 to 61397 and are made up of 8 bytes per AI Script.

AI scripts are always performed in sequence, with the 8 numbers inside a script being the spell index numbers:

00 = Flare
01 = Death
02 = Meteo
03 = Whirlwind
04 = Life2
05 = Holy
06 = Bahamut
07 = Quake
08 = Break2
09 = Drain
0A = Cure4
0B = Heal
0C = Wall
0D = Leviathan
0E = Fire3
0F = Bio
10 = Warp
11 = Aero2
12 = Soft
13 = Haste
14 = Odin
15 = Bolt3
16 = Kill
17 = Erase
18 = Cure3
19 = Life
1A = Safe
1B = Titan
1C = Break
1D = Ice3
1E = Shade
1F = Libra
20 = Confu
21 = Mute
22 = Ifrit
23 = Fire2
24 = Ice2
25 = Bolt2
26 = Cure2
27 = Exit
28 = Wash
29 = Ramuh
2A = Bolt
2B = Venom
2C = Blind
2D = Aero
2E = Toad
2F = Mini
30 = Shiva
31 = Fire
32 = Ice
33 = Sleep
34 = Cure
35 = Pure
36 = Sight
37 = Chocobo
38 = Atom Edge
39 = Flame
3A = Blizzard
3B = Thunder
3C = Poison
3D = Quake (enemy version)
3E = Glare (Petrify)
3F = Recovery
40 = Elixir
41 = Tsunami
42 = Flarewave
43 = Explode
44 = Glare (Sleep)
45 = Glare (Confusion)
46 = Breath
47 = Mindblast
48 = Summon Dorga Clone or Unne Clone
49 = Split (unused?)
4A = Megaflare
4B = Defense
4C = Bite
4D = Wallchange
4E = Split by itself (Searching if room is full)
4F = Split when hit physically
50 = Earthquake (Terrain)
51 = Quicksand (Terrain)
52 = Airblade (Terrain)
53 = Sinkhole (Terrain)
54 = Rapids (Terrain)
55 = Waterspout (Terrain)
56 = Tornado (Terrain)
57 = Cave In (Terrain)


Also, for your information, the following AI scripts are unused in vanilla: 1, 3, 13, 14, 35, 37, 39, 41, 46.
Plus, there's some empty space in the rom until offset 6140F, giving us room to create some custom AI scripts as well.

More to come in a minute.

Sorry for the double post, but I figured I'd rather split my responses before a single post becomes too long and confusing. Next up is the data about equipment and magic:

Weapon data is located from offset 61410 to 616CF. Each weapon consists of 8 bytes. Bytes are:
 
Byte 00 = Elemental Attack
Byte 01 = Hit %
Byte 02 = Attack Power
Byte 03 = Status Attack
Byte 04 = Spell cast when used as an item (7F = nothing)
Byte 05 = Special Properties (not really sure what this does, but the values are 7F for Onion Sword, FF for Shuriken, 80 for Arrows)
Byte 06 = Stat and Element Boost
Byte 07 = Job Class Usability Index
 
Armor data is located from offset 616D0 to 618CF. Each armor piece consists of 8 bytes. Bytes are:
 
Byte 00 = Elemental Resistance
Byte 01 = Evade %
Byte 02 = Defense
Byte 03 = Status Immunity
Byte 04 = Magic Defense
Byte 05 = unknown (always 0 for armor)
Byte 06 = Stat and Element Boost
Byte 07 = Job Class Usability Index (Always has bit 80 set for armor)
 
Magic data is located from offset 618D0 to 61C5F in the following order:
Black and White Magic are in descending order, from Level 8 to Level 1, from offset 618D0 to 61A8F
Enemy Magic is from offset 61A90 to 61B4F
Terrain Magic from offset 61B50 to 61BA7
Call Magic is in ascending order from Level 1 to Level 8, from offset 61BA8 to 61C67
 
Each spell consists of 8 bytes:
Byte 00 = Element
Byte 01 = Spell Hit %
Byte 02 = Spell Power
Byte 03 = Spell Type (damage, status, percent-based damage, etc)
Byte 04 = Target status needed? (eg Life spell only works on dead targets)
Byte 05 = Targeting, reflectability?
Byte 06 = Special Animation Pointer
Byte 07 =  Job Class Usability Index

The elemental byte consists of 8 bits each referring to the respective element. Elements are:
01 = Drain/Cure
02 = Dark Swords
04 = Thunder
08 = Ice
10 = Fire
20 = Wind
40 = Earth
80 = Holy

The status byte is one I'm mostly unsure of so don't quote me on this. I may have overlooked something here (it's been years after all). Status effects are (as far as I could tell from trial and error):
01 = unknown (confusion?)
02 = Poison
03 = 1/3 Petrify
04 = Blind
05 = 1/2 Petrify
07 = 2/3 Petrify
08 = Mini
10 = Mute
20 = Frog
28 = Frog
29 = Cured? (confusion?)
31 = Confusion
40 = Petrify
51 = Sleep
80 = Death
91 = Paralyze
99 = Paralyze
 
Much like the elemental byte, the byte for Stat and Element Boost consists of 8 bits which stand for:
 
01 = Bolt Magic up
02 = Ice Magic up
04 = Fire Magic up
08 = Spirit + 5
10 = Intelligence + 5
20 = Vitality + 5
40 = Agility + 5
80 = Strength + 5



Finally, the job class usability byte determines which jobs can equip that piece of equipment. I don't know why there are so many doubles in there, it seems adding bit 80 to the byte doesn't change anything? Not sure. Anyway, Class Usability Indices are:
 
00 All Classes
01 None
02: Monk, Ninja
03: Black Mage, Red Mage, Conjurer, Warlock, Summoner, Sage, Ninja
04: Warlock, Summoner, Sage, Ninja
05: White Mage, Red Mage, Shaman, Sage, Ninja
06: Shaman, Sage, Ninja
07: Dragoon, Ninja
08: Onion Kid, Thief, Dragoon, Ninja
09: Thief, Ninja
0A: Viking, Ninja
0B: Onion Kid, Fighter, Knight, Ninja
0C: Red Mage, Ninja
0E:  Fighter, Knight, Ninja
0D: Knight, Ninja
0F: Mystic Knight, Ninja
10: White Mage, Black Mage, Red Mage, Conjurer, Warlock, Shaman, Summoner, Sage, Ninja
11: Bard, Ninja
12 White Mage, Black Mage, Scholar, Warlock, Shaman, Sage, Ninja
13: Geomancer, Ninja
14: Onion Kid, Fighter, Black Mage, Red Mage, Archer, Ninja
15: Archer, Ninja
16: Onion Kid, Fighter, Red Mage, Knight, Thief, Dragoon, Viking, Ninja
17: Onion Kid, Fighter, Red Mage, Knight, Thief, Scholar, Dragoon, Viking, Ninja
18: Fighter, Red Mage, Knight, Dragoon, Viking, Ninja
19: Onion Kid, Fighter, Knight, Dragoon, Viking, Ninja
1A:Fighter Knight Thief Dragoon Viking Conjurer Summoner, Ninja
1B: All but M. Knight
1C : Onion Kid, Fighter, Red Mage, Knight, Thief, Viking, Dragoon, Ninja
1D: Fighter, Red Mage, Archer, Knight, Thief, Dragoon, Viking, Ninja
1E: Monk, Karate Master, Ninja
1F: Archer, Scholar, Geomancer, Conjurer, Bard, Warlock, Shaman, Summoner, Sage, Ninja
20; All But M.Knight
21: Onion Kid, Fighter, Red Mage, Archer, Knight, Thief, Dragoon, Viking, Bard, Ninja
22: Onion Kid, Fighter, Red Mage, Archer, Knight, Thief, Dragoon, Viking, Ninja
23: Fighter, Archer, Knight, Dragoon, Viking, Ninja
24:White Mage, Black Mage, Red Mage, Conjurer, Warlock, Shaman, Summoner, Sage, Ninja
25: White Mage, Black Mage, Red Mage, Scholar, Geomancer, Conjurer, Warlock, Shaman, Summoner, Sage, Ninja
26: Fighter, Archer, Knight, Thief, Dragoon, Viking, Ninja
27: Black Mage, Red Mage, Conjurer, Warlock, Summoner, Sage, Ninja
28: White Mage, Red Mage, Conjurer, Shaman, Summoner, Sage, Ninja
29: Fighter, Monk, W.Mage, B.Mage, R.Mage, Archer, Knight, Thief, Scholar, Geom., Dragoon, Viking, Conj., Bard, Warlock, Shaman, Summoner, Sage, Ninja
2A: Fighter, Monk, Red Mage, Archer, Knight, Thief, Scholar, Geomancer, Dragoon, Viking, Karate Master, Bard, Ninja
2B: Knight, Mystic Knight, Ninja
2C: Onion Kid, Fighter, Red Mage, Archer, Knight, Dragoon, Viking, Ninja
2D:Conjurer, Summoner, Warlock, Shaman, Sage
2E: Black Mage, Warlock, Sage
2F: Black Mage, Red Mage, Warlock, Sage
30: White Mage, Shaman, Sage
31: White Mage, Red Mage, Shaman, Sage
32: White Mage, Red Mage, Archer, M.Knight, Shaman, Sage
33: White Mage, Shaman, Sage
34: Onion Kid, Fighter, Black Mage, Red Mage, Knight, Thief, Ninja
35: Scholar, Sage, Ninja
36: Knight, Dragoon, Viking, Ninja
37: Knight, Dragoon, Viking, Ninja
38: Karate Master, Ninja
39: Onion Kid
3A: Ninja
3B: Onion Kid, Fighter, Red Mage, Knight, Dragoon, Viking, M. Knight, Ninja
3C Onion Kid, Fighter, Red Mage, Knight, Dragoon, Viking, Ninja
3D: Warlock, Sage
3E: Shaman, Sage
3F: Conjurer, Summoner -Maybe it points to the Summon Spells in some way?

80 All Classes
81 None
82: Monk, Ninja
83: Black Mage, Red Mage, Conjurer, Warlock, Summoner, Sage, Ninja
84: Warlock, Summoner, Sage, Ninja
85: White Mage, Red Mage, Shaman, Sage, Ninja
86: Shaman, Sage, Ninja
87: Dragoon, Ninja
88: Onion Kid, Thief, Dragoon, Ninja
89: Thief, Ninja
8A: Viking, Ninja
8B: Onion Kid, Fighter, Knight, Ninja
8C: Red Mage, Ninja
8E:  Fighter, Knight, Ninja
8D: Knight, Ninja
8F: Mystic Knight, Ninja
90: White Mage, Black Mage, Red Mage, Conjurer, Warlock, Shaman, Summoner, Sage, Ninja
91: Bard, Ninja
92 White Mage, Black Mage, Scholar, Warlock, Shaman, Sage, Ninja
93: Geomancer, Ninja
94: Onion Kid, Fighter, Black Mage, Red Mage, Archer, Ninja
95: Archer, Ninja
96: Onion Kid, Fighter, Red Mage, Knight, Thief, Dragoon, Viking, Ninja
97: Onion Kid, Fighter, Red Mage, Knight, Thief, Scholar, Dragoon, Viking, Ninja
98: Fighter, Red Mage, Knight, Dragoon, Viking, Ninja
99: Onion Kid, Fighter, Knight, Dragoon, Viking, Ninja
9A:Fighter Knight Thief Dragoon Viking Conjurer, Summoner, Ninja
9B: All but M. Knight
9C : Onion Kid, Fighter, Red Mage, Knight, Thief, Viking, Dragoon, Ninja
9D: Fighter, Red Mage, Archer, Knight, Thief, Dragoon, Viking, Ninja
9E: Monk Karate Master, Ninja
9F: Archer, Scholar, Geomancer, Conjurer, Bard, Warlock, Shaman, Summoner, Sage, Ninja
A0; All but Mystic Knight
A1: Onion Kid, Fighter, Red Mage, Archer, Knight, Thief, Dragoon, Viking, Bard, Ninja
A2: Onion Kid, Fighter, Red Mage, Archer, Knight, Thief, Dragoon, Viking, Ninja
A3: Fighter, Archer, Knight, Dragoon, Viking, Ninja
A4:White Mage, Black Mage, Red Mage, Conjurer, Warlock, Shaman, Summoner, Sage, Ninja
A5: White Mage, Black Mage, Red Mage, Scholar, Geomancer, Conjurer, Warlock, Shaman, Summoner, Sage, Ninja
A6: Fighter, Archer, Knight, Thief, Dragoon, Viking, Ninja
A7: Black Mage, Red Mage, Conjurer, Warlock, Summoner, Sage, Ninja
A8: White Mage, Red Mage, Conjurer, Shaman, Summoner, Sage, Ninja
A9: Fighter, Monk, W.Mage, B.Mage, R.Mage, Archer, Knight, Thief, Scholar, Geom., Dragoon, Viking, Conj., Bard, Warlock, Shaman, Summoner, Sage, Ninja
AA: Fighter, Monk, Red Mage, Archer, Knight, Thief, Scholar, Geomancer, Dragoon, Viking, Karate Master, Bard, Ninja
AB: Knight, Mystic Knight, Ninja
AC: Onion Kid, Fighter, Red Mage, Archer, Knight, Dragoon, Viking, Ninja
AD: Conjurer, Summoner, Warlock, Shaman, Sage
AE: Black Mage, Warlock, Sage
AF: Black Mage, Red Mage, Warlock, Sage
B0: White Mage, Shaman, Sage
B1: White Mage, Red Mage, Shaman, Sage
B2: White Mage, Red Mage, Archer, M.Knight, Shaman, Sage
B3: White Mage, Shaman, Sage
B4: Onion Kid, Fighter, Black Mage, Red Mage, Knight, Thief, Ninja
B5: Scholar, Sage, Ninja
B6: Knight, Dragoon, Viking, Ninja
B7: Knight, Dragoon, Viking, Ninja
B8: Karate Master, Ninja
B9: Onion Kid
BA: Ninja
BB: Onion Kid, Fighter, Red Mage, Knight, Dragoon, Viking, M. Knight, Ninja
BC Onion Kid, Fighter, Red Mage, Knight, Dragoon, Viking, Ninja
BD: Warlock, Sage
BE: Shaman, Sage
BF: Conjurer, Summoner -Maybe it points to the Summon Spells in some way.
FF Onion Kid, Fighter, Monk, White Mage, Black Mage, Red Mage, Thief, Karate Master, Warlock, Shaman, Summoner, Ninja, Sage
FE: Onion Kid, Fighter, Monk, White Mage, Black Mage,  Knight, Thief, Scholar, Viking, Dragoon, Geomancer, Karate Master, Sage, Ninja
FD: Knight, Scholar, Dragoon, Viking, Karate Master, Summoner, Ninja, Sage

Some stuff about shops, treasures and steal/drop items:

From offset 03C10 to ? (not sure where it ends) - Contents of all treasure chests in the game, in no particular order?
From offset 21E10 to ? (again not sure where it ends, sorry)- Price for each item in the game, 2 bytes per item, sorted by item ID.

I never found the time to delve deep into the above two, so sorry if it's not accurate.

Shop locations are from offset 59D56 to 5A132. Shops begin with one byte, which is either 07 (Weapon shops), 08 (Armor shops), 09 (Item shops), or 0A (Magic shops), and always end with 00.
 
Monster Steal/drop data is located from offset 21B90 to 21C8F and consist of 8 bytes per table.  The first 4 bytes are the items that can always be stolen/dropped, the second 4 bytes are the items that are only available when bit 20 is added to the steal/drop index in the monster data, then the monster item drop is selected from among all 8 bytes. Item slots are arranged in ascending steal/drop difficulty, e.g. the item in the first slot is stolen/dropped much easier than the item in the fourth slot. Here's the offsets of each of the steal/drop tables existing in the game, if you wanna know:

21B90 to 93 -> Group 20 (Potion, Potion, Potion, Potion)
(Hi-Potion, Hi-Potion, Phoenix Down, Elixir)

21B98 to 9B -> Group 21 (Potion, BombShard, BombShard, Pillow)
(OtterHead, LamiaScale, Bomb R. Arm, Bomb R. Arm)

21BA0 to A3 -> Group 22 (Potion, SouthWind, SouthWind, Midget Bread)
(OtterHead, God's Wine, NorthWind, NorthWind)

21BA8 to AB -> Group 23 (Potion, Zeus' Rage, Zeus', Rage, Devil's Sigh)
(OtterHead, SplitShell, God's Rage, God's Rage)

21BB0 to B3 -> Group 24 (BombShard, SouthWind, Zeus' Rage, Potion)
(MuteCharm, Paralyzer, Devil's Sigh, Devil's Sigh)

21BB8 to BB -> Group 25 (Wooden Arrow, Holy Arrow, Iron Arrow, Light Arrow)
(Fire Arrow, Ice Arrow, Medusa Arrow, Yoichi Arrow)

21BC0 to C3 -> Group 26 (Soft, Soft, Soft, Soft)
(Soft, Soft, Soft, Soft)

21BC8 to CB -> Group 27 (EyeDrop, EyeDrop, Antidote, Antidote)
(EyeDrop, EyeDrop, Antidote, Antidote)

21BD0 to D3 -> Group 28 (Potion, MaidKiss, EchoHerb, LuckMallet)
(MaidKiss, EchoHerb, LuckMallet, Hi-Potion)

21BD8 to DB -> Group 29 (Hi-Potion, Hi-Potion, Hi-Potion, Hi-Potion)
(Phoenix Down, Phoenix Down, Elixir, Elixir)

21BE0 to E3 -> Group 2A (Hi-Potion, Bomb R. Arm, Bomb R. Arm, Paralyzer)
(OtterHead, MuteCharm, LilithKiss, LilithKiss)

21BE8 to EB -> Group 2B (Hi-Potion, NorthWind, NorthWind, Turtle Shell)
(OtterHead, BlackHole, Imp's Yawn, Imp's Yawn)

21BF0 to F3 -> Group 2C (Hi-Potion, God's Rage, God's Rage, Paralyzer)
(OtterHead, Barrier, ChocoRage, Dark Scent)

21BF8 to FB -> Group 2D (Bomb R. Arm, NorthWind, God's Rage, Potion)
(LamiaScale, God's Wine, Turtle Shell, Earthdrum)

21C00 to 03 -> Group 2E (Hi-Potion, BlackHole, LilithKiss, Imp's Yawn)
(Barrier, SplitShell, Dark Scent, ChocoRage)
 
Tables 2F to 3C (from offset 21C08 to 21C77) are unused in vanilla!
 
21C78 to 7B -> Group 3D (Elixir, Elixir, Elixir, Elixir)
(Onion Sword, Onion Sword, Onion Sword, Onion Shield)

21C80 to 83 -> Group 3E (Elixir, Elixir, Elixir, Elixir)
(Onion Shield, Onion Helm, Onion Armor, Onion Sword)

21C88 to 8B -> Group 3F (Elixir, Elixir, Elixir, Elixir)
(Onion Gloves, Onion Armor, Onion Helm, Onion Sword)


And finally, the list of item IDs so you know which bytes to use if you want to change something:
 
01 = Kaiser Knuckle
02 = Cat Claws
03 = Dragon Claws
04 = Fairy Claws
05 = Hell Claw
06 = Nunchaku
07 = Tonfa
08 = Three Section Staff
09 = Mythril Rod
0A = Fire Rod
0B = Ice Rod
0C = Bolt Rod
0D = Omni Rod
0E = Staff
0F = Burning Staff
10 = Freeze Staff
11 = Bolt Staff
12 = Golem Staff
13 = Rune Staff
14 = Eldest Staff
15 = Hammer (Dummied?)
16 = Thor Hammer
17 = Battle Axe
18 = Great Axe
19 = Morning Star
1A = Thunder Spear
1B = Wind Spear
1C = Bloody Lance
1D = Holy Lance
1E = Knife
1F = Dagger
20 = Mythril Knife
21 = Main Gauche
22 = Orichalcum
23 = Air Knife
24 = Long Sword
25 = WightSlayer
26 = Golden Sword
27 = Mythril Sword
28 = Serpent Sword
29 = Freezing Sword
2A = Tyrfing
2B = Salamander
2C = Royal Sword
2D = Dual Tomahawk
2E = Ancient Sword
2F = Ashura
30 = Blood Sword
31 = Defender
32 = Triton Hammer
34 = Kiku Ichimonji
35 = Break Blade
36 = Excalibur
37 = Masamune
38 = Ragnarok
39 = Onion Sword
3A = Book of Fire
3B = Book of Ice
3C = Tome of Fire
3D = Book of Light
3E = Tome of Light
3F = Boomerang
40 = FullMoon Ring
41 = Shuriken
42 = Tome of Ice
43 = Diamond Bell
44 = Earthen Bell
45 = Rune  Bell
46 = Madura Harp
47 = Dream Harp
48 = Lamia Harp
49 = Loki Harp
4A = Bow
4B = Great Bow
4C = Killer Bow
4D = Rune Bow
4E = Yoichi Bow
4F = Wooden Arrow
50 = Holy Arrow
51 = Iron Arrow
52 = Light Arrow
53 = Fire Arrow
54 = Ice Arrow
55 = Medusa Arrow
56 = Yoichi Arrow
57 ---
58 = Leather Shield
59 = Onion Shield
5A = Mythril Shield
5B = Ice Shield
5C = Heroic Shield
5D = Demonic Shield
5E = Diamond Shield
5F = Aegis Shield
60 = Gengi Shield
61 = Crystal Shield
62 = Leather Cap
63 = Onion Helm
64 = Mythril Helm
65 = Shell Helm
66 = Ice Helm
67 = Headband
68 = Scholar Hat
69 = Black Cowl
6A = Chakra Band
6B = Viking Helm
6C = Dragon Helm
6D = Feathered Hat
6E = Diamond Helm
6F = Genji Helm
70 = Crystal Helm
71 = Ribbon
72 = Vest
73 = Leather Armor
74 = Onion Armor
75 = Mythril Armor
76 = Shell Armor
77 = Ice Armor
78 = Flame Mail
79 = Kenpo
7A = Black Garb
7B = Mage Robe
7C = Viking Mail
7D = Black Belt
7E = Knight Armor
7F = Dragon Mail
80 = Bard Vest
81 = Scholar Vest
82 = Gaia Vest
83 = Demon Mail
84 = Diamond Mail
85 = Reflect Mail
86 = White Robe
87 = Black Robe
88 = Genji Armor
89 = Crystal Armor
8A = Rusty Armor
8B = Bronce Bracelet
8C = Onion Gloves
8D = Mythril Gloves
8E = Mythril Bracelet
8F = Thief Gloves
90 = Gauntlets
91 = Power Bracelet
92 = Rune Bracelet
93 = Diamond Bracelet
94 = Diamond Gloves
95 = Protect Ring
96 = Genji Gloves
97 = Crystal Gloves
98 = Magic Key
99 = Carrot
9A = Horn
9B = Eye
9D = Eureka key
9E = Wind Fang
9F = Fire Fang
A0 = Water Fang
A1 = Earth Fang
A2 = Lute
A3 = Sylx Key
A4 = Midget Bread
A5 = ?
A6 = Potion
A7 = HiPotion
A8 = Elixir
A9 = Fenixdown
AA = Soft
AB = MaidKiss
AC = EchoHerb
AD = LuckMallet
AE = Eyedrop
AF = Antidote
B0 = OtterHead
B1 = BombShard
B2 = SouthWind
B3 = Zeus Rage
B4 = Bomb R. Arm
B5 = NorthWind
B6 = Gods Rage
B7 = Earthdrum
B8 = LamiaScale
B9 = God's Wine
BA = TurtlShell
BB = Devil's Sigh
BC = BlackHole
BD = DarkScent
BE = LilithKiss
BF = Imp's Yawn
C0 = SplitShell
C1 = Paralyzer
C2 = Mutecharm
C3 = Pillow
C4 = BombHead
C5 = Barrier
C6 = ChocoRage
C7 = WhiteScent
C8 = Flare
C9 = Death
CA = Meteo
CB = WWind
CC = Life2
CD = Holy
CE = Bahamut
CF = Quake
D0 = Brak2
D1 = Drain
D2 = Cure4
D3 = Heal
D4 = Wall
D5 = Leviathan
D6 = Fire3
D7 = Bio
D8 = Warp
D9 = Aero2
DA = Soft
DB = Haste
DC = Odin
DD = Bolt3
DE = Kill
DF = Erase
E0 = Cure3
E1 = Life1
E2 = Safe
E3 = Titan
E4 = Break
E5 = Ice3
E6 = Shade
E7 = Libra
E8 = Confu
E9 = Mute
EA = Ifrit
EB = Fire2
EC = Ice2
ED = Bolt2
EF = Cure2
F0 = Wash
F1 = Ramuh
F2 = Bolt
F3 = Venom
F4 = Blind
F5 = Aero
F6 = Toad
F7 = Mini
F8 = Shiva
F9 = Fire
FA = Ice
FB = Sleep
FC = Cure1
FD = Pure
FE = Sight
FF = Chocobo

Last post for now, I swear. Anyway here's some stuff about jobs and level up data:

From offset 720C0 to 721E5: Experience points needed for each level, consisting of 3 bytes per level.


For all of the following tables, the Jobs are in the following order:
 
Onion Kid, Fighter, Monk, White Wizard, Black Wizard, Red Wizard, Archer, Knight, Thief, Scholar, Geomancer, Dragoon, Viking, Karate Master, Mystic Knight, Conjurer, Bard, Warlock, Shaman, Summoner, Sage, Ninja
 
Offset 69B31 to 69B88 lists the commands each job can use in battle, 4 bytes per job (which means the first 4 bytes are the commands of the Onion Knight, the next 4 are the commands of the Fighter, etc.).
 
Commands are:
 
04 Attack
05 Defend
06 Run
07 Escape
08 Jump
0C Peep
0D Scan
0E Steal
0B Terrain
0F Build Up
10 Sing
11 Scare
12 Cheer
14 Item
15 Magic
 
Offset 72010 to 720BF has the base stats for all jobs, 8 bytes per job.
 
Bytes are:
 
Byte 00: Capacity cost to change to this job
Byte 01: Level needed to change to this job
Byte 02: Strength
Byte 03: Agility
Byte 04: Vitality
Byte 05: Intelligence
Byte 06: Spirit
Byte 07: Base MP Bonus Index
 
Offset 721E6 to 732BD is a list of the stat tables for level-ups, so basically it tells which stats raise on every level for each job. It consists of 2 bytes per Level:
 
Byte 1: Stats that increase on this level (each bit refers to a stat, while bits 01, 02, 04 determine by how much these stats increase)

80 = Strength
40 = Agility
20 = Vitality
10 = Intelligence
08 = Spirit
04 – 01 = amount of the stat increase
 
Byte 2: Magic levels that increase on this level
 
80 = Magic Level 8
40 = Magic Level 7
20 = Magic Level 6
10 = Magic Level 5
08 = Magic Level 4
04 = Magic Level 3
02 = Magic Level 2
01 = Magic Level 1

... and that's pretty much all the information I can offer. I hope some of it is of use to you. I found some of this stuff online ages ago, and some stuff I discovered on my own via lots of playtesting. What I don't know is how to make an editor out of all this stuff (I'm not a programmer) but I think it'd be really great to have one. Maybe one of the reasons why FFIII never got as much hacking love as other FF games is because of the lack of a good multi editor, which most other FF games have. So if anyone here has the knowledge, time and interest to make an editor for FFIII, please go ahead.
  Find
Quote  
[-] The following 2 users say Thank You to Gestahl for this post:
  • Everything (05-30-2022), T29 (05-31-2022)

#5
Posts: 11
Threads: 2
Thanks Received: 0
Thanks Given: 11
Joined: May 2022
Reputation: 0
Status
Focus
(05-30-2022, 02:57 AM)Gestahl Wrote: Hi there T29, great to see someone else giving some love to this forgotten gem. I've tinkered with the game many years ago and dug up some of my old notes about where is what inside the rom, maybe some of them can be of use to you. Here goes:

... and that's pretty much all the information I can offer. I hope some of it is of use to you. I found some of this stuff online ages ago, and some stuff I discovered on my own via lots of playtesting. What I don't know is how to make an editor out of all this stuff (I'm not a programmer) but I think it'd be really great to have one. Maybe one of the reasons why FFIII never got as much hacking love as other FF games is because of the lack of a good multi editor, which most other FF games have. So if anyone here has the knowledge, time and interest to make an editor for FFIII, please go ahead.
Thanks, as small as it is, each piece of documentation is of great help to me.
I hope one day someone will make an editor, or it could even be me if I have enough programming knowledge. Victory
  Find
Quote  

#6
Posts: 26
Threads: 6
Thanks Received: 6
Thanks Given: 2
Joined: Feb 2020
Reputation: 3
Status
None
As for suggestions to improve the game, some points that I can think of off the top of my head:

1) If possible, fix the Item Upgrade bug and Magic Duplication bug. Both of these bugs allow you to basically cheat yourself through the game, either by giving you overpowered equipment early on or by multiplying your magic spells for infinite money.

2) Some job classes are severely underpowered and/or lack proper equipment. I'm looking mainly at the Bard and his really small selection of only three harps. Maybe at least increase the harps' attack power and/or the amount of equipment the Bard can wear.

3) The Terrain magic spells backfire a bit too often for my taste. Either decrease the chances of backfire, or decrease the damage it does to you. Several Terrain spells are also instant death spells, but with a rather low probability compared to the black magic spells Break2 and Death. Would it be possible to make Terrain magic selectable from a sub-menu instead of the spell being selected randomly?

4) With all the end game bosses being resistant to Holy, the Holy spell is pretty much useless. Remove Holy resistance from all bosses in the final dungeon.

5) Incorporate the dummy enemies Captain, Fury, GoldCoin, Phoenix, Hobgoblin, Spriggan, Hydra and Terrible Dragon at appropriate locations. Also, increase the encounter chances for Yellow Dragon, Green Dragon and Red Dragon (it takes ages finding them. On my first couple playthroughs, I wasn't even aware they existed.).

I'm thnking numbers 2, 3, and 4 shouldn't be too difficult to implement with the knowledge we already have about the game. Not so sure about numbers 1 and 5, though. Do you have any information about monster formations and where they are stored in the rom, by any chance?
  Find
Quote  
[-] The following 1 user says Thank You to Gestahl for this post:
  • T29 (05-31-2022)

#7
Posts: 11
Threads: 2
Thanks Received: 0
Thanks Given: 11
Joined: May 2022
Reputation: 0
Status
Focus
(05-31-2022, 01:20 PM)Gestahl Wrote: As for suggestions to improve the game, some points that I can think of off the top of my head:

2) Some job classes are severely underpowered and/or lack proper equipment. I'm looking mainly at the Bard and his really small selection of only three harps. Maybe at least increase the harps' attack power and/or the amount of equipment the Bard can wear.

3) The Terrain magic spells backfire a bit too often for my taste. Either decrease the chances of backfire, or decrease the damage it does to you. Several Terrain spells are also instant death spells, but with a rather low probability compared to the black magic spells Break2 and Death. Would it be possible to make Terrain magic selectable from a sub-menu instead of the spell being selected randomly?

4) With all the end game bosses being resistant to Holy, the Holy spell is pretty much useless. Remove Holy resistance from all bosses in the final dungeon.


I'm thnking numbers 2, 3, and 4 shouldn't be too difficult to implement with the knowledge we already have about the game. Not so sure about numbers 1 and 5, though. Do you have any information about monster formations and where they are stored in the rom, by any chance?
I doubled the power of harps and added them a status to inflict.
I'll decrease the chance of backfire.
Number 4 will be quite easy to do.
(05-31-2022, 01:20 PM)Gestahl Wrote: 1) If possible, fix the Item Upgrade bug and Magic Duplication bug. Both of these bugs allow you to basically cheat yourself through the game, either by giving you overpowered equipment early on or by multiplying your magic spells for infinite money.


5) Incorporate the dummy enemies Captain, Fury, GoldCoin, Phoenix, Hobgoblin, Spriggan, Hydra and Terrible Dragon at appropriate locations. Also, increase the encounter chances for Yellow Dragon, Green Dragon and Red Dragon (it takes ages finding them. On my first couple playthroughs, I wasn't even aware they existed.).

I'm thnking numbers 2, 3, and 4 shouldn't be too difficult to implement with the knowledge we already have about the game. Not so sure about numbers 1 and 5, though. Do you have any information about monster formations and where they are stored in the rom, by any chance?

I'll try to see what causes those bugs,  if I find the data for the dragons I'll increase their encounter rate and replace the elixirs with onion equipment. Victory
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite