Okay, here is what will most likely be the final update for this table, since I seem to have reached the peak of my current abilities. The table itself is full of notes and information that should help anyone figure out how to use it (since I am garbage and don't know enough assembly)
Here is a list of working features included in this table.
Code: Select all
Always Sprint
Auto Complete Bestiary
Character Editor
--->All Main Characters' Stats, Equipment, and Battle Commands
--->All Side Character's Stats
--->Learn All Magic Spells
Inventory Editor
--->Add New Items
--->Manipulate any Existing Inventory Contents
Ability Editor
--->Magicite Held
--->Blitz Unlock All
--->Bushido Unlock All
--->Dance Unlock All
--->Lore Unlock All
--->Rage Unlock All
--->******Binary Representation of Abilities
In-Battle Related
--->After Battle AP Reward
--->After Battle EXP Reward
--->Terra's Trance Meter
Random Encounter Manipulation
Party's Gil
Save Anywhere Toggle
Step Counter
Force Airship Liftoff
Countdown Timer
Fps Constants
--->FPS Limit Constant
--->Airship FPS Limit Constant
- FF6-oatybee.CT
- Version 2 - Organized and Formatted Table, re-implemented working scripts
Made for build 909716 of Final Fantasy VI (Steam) - (494.97 KiB) Downloaded 567 times
I did also include all previous unstable/not-working scripts and other addresses and testing things I used in a section labeled "Dumpster Fire" at the bottom of the table. Use the things here at your own risk. If you have any questions regarding usage ask about it here and I can clarify for you.
XRizerX wrote: ↑Wed Apr 22, 2020 3:06 pm
But yeah the old inventory system with the separate numbers / slots with no names and only hex digits was a train wreck...
Yes, it was outrageously cumbersome to use, especially for someone that is not familiar with hex and the fact the included list of ID's for use in the table was just a set of comment blocks expecting the user to translate each entry into decimal, then again into hex in their mind is a tall ask for most lol. It took a long time for me to translate and implement a better system. Even still I am fully aware that using a script to accomplish this is the better way to go but I am incapable of doing that at my current skill level. So you get what you get
XRizerX wrote: ↑Wed Apr 22, 2020 3:06 pm
The only other thing that's super useful is the 99 of every monster unlocked in the bestiary, if you don't mind your save file looking illegitimate. It'd be nice if the value could be manipulated but it's not really a big deal. I moved that up as well. It's a good thing you kept some of the old scripts.
I looked into it, and I also fully agree with you I wish that more cheat tables allowed users to more easily adjust things like that to custom amounts rather than just maxing them out. It definitely is possible, and I included that ability with a crude binary editor for all the ability editor items in the table already, but the bestiary is outrageously messed up. Makes very little sense to me how it is represented in memory. One would assume that the bestiary data would be represented in the same way as say the Rage Ability set for example. But its not.
The entire bestiary data is contained in the same block of addresses but each individual bestiary entry is assigned to a random position in the block of bytes. So it would be a complete nightmare to try and untangle the order in which each entry is assigned to the block. There has got to be a reason for this, or a way the code interprets the order properly, but I could not figure it out.
(what i mean is compared to rage, where the last byte in the block corresponds to the last ability listed in game - the last byte in the bestiary block corresponds to some random position in the in-game bestiary list)
The way around this problem, if you want your save file to appear legitimate is to edit the auto assemble script to write a smaller value to every entry, and as you play through the game you will create a more legitimate looking file.
Even if the block of data was in order and I knew enough assembly/lua to write a script to manipulate it, I imagine it would be incredibly complicated to allow full customization by the user. That reason alone is probably why nearly all scripts are always "unlock all" scripts.
With enough time, I could replay the game and identify which bytes correspond to which slots and would be able to implement a similar editor for the bestiary as the inventory editor. But this would take a very long time and I'm basically over it at this point.
Either way I think I am done with this long winded rambling over stuff nobody really cares about anyway. Hope anyone who uses this table gets some enjoyment out of it.