I've started work concurrently with Nax on a few other upcoming chantage capabilities including:
1: The ability to add extra bytes to unit BattleData structs and use them in new Formulas/Battle (masks for new status ailments... or a stored unit ID for a working taunt mod =p)
2: The ability to add extra bytes to AbilityData and use them in Formulas/Battle (masks for new status ailments)
3: The ability to add new abilities to the game without deleting old ones.
Current approach is something similar to the games approach to dealing with items; existing abilities are still located in their current tables, new abilities are located elsewhere and extra fields for all abilities are located in yet a third place, which a helper function which handles fetching the correct pointers to each struct when it is given an offset. Quite a few routines will have to be re-written and replaced to get this working as currently ability data and the like is generally accessed via offset to the relevant pointer table. This is three pointers which is kind of annoying but it easier for PoC without breaking the whole game. Eventually this will probably end up being a new relocated table with all direct access to it replaced with the getter function, but that is gonna be harder.
I was wondering if anyone involved with FFTPatcher might have a big list of where all of the data assets patcher patches are located in WotL; currently we're finding all of those as we go but the patcher obviously already has this information. I attempted to source dive it but I'm unfamiliar with C# (more importantly, the code is complex and opaque to someone just trying to dive in) so was unable to locate the offsets. If anyone has them, it would greatly speed up our work =)
1: The ability to add extra bytes to unit BattleData structs and use them in new Formulas/Battle (masks for new status ailments... or a stored unit ID for a working taunt mod =p)
2: The ability to add extra bytes to AbilityData and use them in Formulas/Battle (masks for new status ailments)
3: The ability to add new abilities to the game without deleting old ones.
Current approach is something similar to the games approach to dealing with items; existing abilities are still located in their current tables, new abilities are located elsewhere and extra fields for all abilities are located in yet a third place, which a helper function which handles fetching the correct pointers to each struct when it is given an offset. Quite a few routines will have to be re-written and replaced to get this working as currently ability data and the like is generally accessed via offset to the relevant pointer table. This is three pointers which is kind of annoying but it easier for PoC without breaking the whole game. Eventually this will probably end up being a new relocated table with all direct access to it replaced with the getter function, but that is gonna be harder.
I was wondering if anyone involved with FFTPatcher might have a big list of where all of the data assets patcher patches are located in WotL; currently we're finding all of those as we go but the patcher obviously already has this information. I attempted to source dive it but I'm unfamiliar with C# (more importantly, the code is complex and opaque to someone just trying to dive in) so was unable to locate the offsets. If anyone has them, it would greatly speed up our work =)