Please login or register.

Login with username, password and session length
Advanced search  

News:

Don't be hasty to start your own mod; all our FFT modding projects are greatly understaffed. Find out how you can help in the Recruitment section.

Pride's ASM Thread  (Read 1258 times)
Pages: [1] 2
May I kill him?
Pride [Posts: 817]
  • View Profile
  • share
  • [April 28, 2017, 08:44:51 AM]
Pride's ASM Thread
« on: April 28, 2017, 08:44:51 AM »
Updated hacks, some were old and were badly coded and a couple new ones here and there.

Standard ASM Hacks

[01] MP Switch Overflows damage to HP
  • Any excess damage from MP Switch no longer goes to waste. It will damage the target's HP if there is any excess.
  • The Variable changes the % of damage (xx/128) that the MP portion takes, the default is the vanilla 1:1 ratio. Changing this number to x40 would cause the MP damage to take 50% less damage until MP is reduced into spillover range.
  • You can also set it to ignore spillover and increase/decrease the amount of damage MP takes alone.

[02] Remove Spill Over JP
  • Does what it says, no units will gain spill over jp.

[03] Earn no extra Gil from Level Bonus
  • Earn no Gil from the level bonus in the ENTD tab.

[04] % MP gained at turn start
  • Gain 5% (default) MP at the start of the unit's turn. Determined from variable/128, in hex of course.
  • Game crash: Causes the game to hang during tutorial fight. Investigating a solution.

[05] Enemies can now randomly spawn with PA Save, MA Save, and Speed Save.
  • Removes an (intended?) bug that removed PA Save, MA Save, and Speed Save from being randomly selected on enemies.

[06] Charge gains unique status effects.
  • Charge can have an assigned status inflict ID, overwritting the weapons status effect (IE Poison Shot inflicts Poison).
  • Use the Patcher to determine what Status ID to use under the "Inflict Status" tab.

[07] World Map script edit. ID x16 now uses a required level.
  • x16 now functions as a level check and the event or command will not run unless the unit is at least the required level. The level that its checked against is the highest leveled unit in the party. Works fully with any other World Map check (sprite ID, integer check, etc.).
  • Use World Map editor found in one of RavenOfRazgriz's spreadsheets to add to the requirements.
  • Format follows as: 1600 XX00 with XX being the desired level required. Example: 1600 0700 wouldn't allow the event to play unless the highest level in the party was at least level 7.

[08] Move the World Map script to kanji space.
  • Moves the World Map script to kanji space (x80142ae0) so you can't collide with other data if you're world map goes over the allotted space.
  • This, however, does not change where the World Map data is saved so you'll have to manually edit the .xml produced from the spreadsheet to its new location (62AE0 in world.bin).

[09] Ability Animation 07 00 00 will always swing weapon
  • Removes the Ability Flag 'Weapon Strike' from being required to swing a weapon during animation 07 00 00.
  • Should be no more unwanted punching while using an attack unless unequipped.
  • Removes the ugly glitched sword that normally appears when using the draw out animations (03 XX). This was not intended and testing other combinations where there might be an issue but appears to only affect animations where having the equipped weapon is preferred.
  • Useful if you're using another ASM that uses 'Weapon Strike' to merge the ability element and weapon element but you don't want to inherent the weapon element.

[10] Attribute Rewrite
  • Allows a secondary Item Attribute to be attached with the 1st unknown in the Item Data in the Patcher.
  • Also allows R/S/M to be attached to Items with the 2nd unknown using the Ability ID. x100 is added to the total so to add Short Charge to an item, you would set it to E2.
  • Allows you to set negative stats with values 255 - 128. 255 being -1, 254 being -2, etc. There isn't any protection about your units falling into negative stats, so be careful with that.
  • ??? Unit's will not have their HP/MP reset to 999 if they have a Helm/Armor equipped.
  • It also allows you to adjust HP/MP caps for both type of units, change the materia blade item, and change the items required for "Sword & Knight swords"


Spreadsheet Hacks

[01] Reaction Rewrite


[02] Generate Treasure Rewrite


If you want to see my old thread with older hacks; please refer to this thread. Its very old and several broken hacks, I would not recommend taking any ASM from there but I'll keep it there for anyone that wants to look.
« Last Edit: August 19, 2017, 02:54:52 PM by Pride »
    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [May 03, 2017, 06:18:14 AM]
    Re: Pride's ASM Thread
    « Reply #1 on: May 03, 2017, 06:18:14 AM »
    Reaction Rewrite

    A spreadsheet that allows you to change what triggers your reactions (HP Damage, MP Damage, Counter Magic Flag, Physical Attack, Ability uses CT, etc), your reaction roll (Brave %, Faith %, etc), and it allows multiple reactions to be equipped and ignoring the base games restrictions on this. The Settings tab allows you to alter the order the reaction support sets are read, ie if you change the first one to 8c, it'll allow the critical status abilities to be read before pa/ma save if both are equipped on the unit. It also comes with the ability to change the percentage amount of Damage Split, MP Switch, and Distribute allowing some buffs or nerfs those abilities. Hamedo and the evasion based reactions won't be affected by this but they can be used if new reactions are being used in their place, such as the assigning them a Counter Ability ID.

    Counter Ability ID basically creates a clone of Counter Tackle and attacks with the assigned Ability ID. No dropdown box because it would be too large so you'll have to look up the ID either through the Patcher or the wiki here.

    Known Bugs: Hamedo completely ignores this and only goes off of its original vanilla function. Abandon looks like it joins this as well. Currently investigating a solution.
    Please let me know if you find any other bugs.

    v1.0 - Initial hack created
    v1.2 - Added additional requirements and added in the ability to assign an ability id to additional counters.

    Current version is currently only for excel users, I'll update the original spreadsheet at another time. Left the old version up for anyone that needs a more simple version.

    Thanks Xifanie for the Spreadsheet Template, Emmy for the original hack so I could understand what was going on, and fuck RavenOfRazgriz.
    « Last Edit: May 11, 2017, 06:10:28 AM by Pride »
    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    Choto [Posts: 818]
    • View Profile
    • share
    • [May 05, 2017, 01:08:28 AM]
    Re: Pride's ASM Thread
    « Reply #3 on: May 05, 2017, 01:08:28 AM »
    DOOOOOHHHHHHHHH PRIDE HACKS!!

    Cheers to you buddy! Yes I've been drinking.
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [May 05, 2017, 02:23:52 AM]
    Re: Pride's ASM Thread
    « Reply #4 on: May 05, 2017, 02:23:52 AM »
    Cheers buddy!

    * Pride pours a shot

    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    French Maid
    Xifanie (Webmistress) [Posts: 4234]
    • View Profile
    • Final Fantasy Hacktics
    • http://steamcommunity.com/id/Xifanie
    • share
    • [May 05, 2017, 04:30:10 PM]
    Re: Pride's ASM Thread
    « Reply #5 on: May 05, 2017, 04:30:10 PM »
    This reaction rewrite spreadsheet is cool stuff.

    Question: What does "Normal Attack (Hamedo)" do?

    I planned to make the make the 999 HP/MP cap hack at some point, but I kinda forgot about it... so it's cool I don't have to. :p

    Btw, you really want to avoid using the "F" column in the Code sheet for anything, because that column is reserved for the raw hex when you import a xml; it's there in case that the spreadsheet wrongly assumes that the data is an opcode instruction... that way, you can just manually copy/paste the hex data back. Otherwise, converting 4 bytes that are not actually an instruction to one can result into data loss. There is a function called "Clear Hex Backup" which clears that column and hides it.

    • Modding version: PSX
  • <R999> My target market is not FFT mod players
    <Raijinili> remember that? it was awful
    ALL THE THINGS Official Caretaker.
    RavenOfRazgriz [Posts: 3022]
    • View Profile
    • share
    • [May 05, 2017, 06:23:03 PM]
    Re: Pride's ASM Thread
    « Reply #6 on: May 05, 2017, 06:23:03 PM »
    Question: What does "Normal Attack (Hamedo)" do?
    This is the incorrectly documented "Normal Attack?" flag in FFTPatcher.  What this flag is actually for is (among other things) flagging the ability as being counterable by Hamedo.
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [May 05, 2017, 07:55:22 PM]
    Re: Pride's ASM Thread
    « Reply #7 on: May 05, 2017, 07:55:22 PM »
    Yeah raven reminded me that hamedo triggers off of that flag so I made it then hamedo doesn't care about my asm after playing around with it for a bit.  -shrugs-

    Edit: ohhh okay good to know xiffy

    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [May 07, 2017, 04:22:09 AM]
    Re: Pride's ASM Thread
    « Reply #8 on: May 07, 2017, 04:22:09 AM »
    Generate Treasure Rewrite

    A spreadsheet that rewrites the Generate Treasure routine. Treasured unit's now can have up to 8 unique items, or fewer if you want to play around with the drop chance of each item, based on the unit's current level as a requirement for that item to be dropped. Any item with a level requirement of 0 is skipped and is then based on the equipment and if the unit is a monster, or naked, it then references the first entry on the spreadsheet to generate a generic drop list. The Chocobo Job is used as an example of how you can play around with the drop rates. At minimum, this asm can allow to control what items are treasured if you've changed the chemist items and may not want the enemies to drop them at all.

    Known Bugs: None and hopefully it will stay that way.

    version 1.1 - Initial hack created and publicly shared.
    version 1.2 - Updated spreadsheet to be compatible with older versions of excel.

    My notes (Xifanie's spreadsheet) are attached if you want to use that or just curious.
    « Last Edit: August 04, 2017, 12:37:50 AM by Pride »
    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [May 11, 2017, 06:13:05 AM]
    Re: Pride's ASM Thread
    « Reply #10 on: May 11, 2017, 06:13:05 AM »
    Reaction Rewrite updated. v1.2 - Added additional requirements and added in the ability to assign an ability id to additional counters, like how Counter Tackle functions.

    see post for more information and download.

    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [May 25, 2017, 04:31:25 AM]
    Re: Pride's ASM Thread
    « Reply #11 on: May 25, 2017, 04:31:25 AM »
    One hack was stealth added requested by Raven and the second adds some quality of life for Charge that I didn't see anywhere... -shrugs- At least you might be less inclined to remove Charge completely and save the ability space. Also fixed a bug in another asm.

    Enemies can now randomly spawn with PA Save, MA Save, and Speed Save.
    • Removes an (intended?) bug that removed PA Save, MA Save, and Speed Save from being randomly selected on enemies.

    Charge gains unique status effects.
    • Charge can have an assigned status inflict ID, overwritting the weapons status effect (IE Poison Shot inflicts Poison).
    • Use the Patcher to determine what Status ID to use under the "Inflict Status" tab.

    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [July 04, 2017, 01:45:06 AM]
    Re: Pride's ASM Thread
    « Reply #12 on: July 04, 2017, 01:45:06 AM »
    Hey a couple more

    [08] World Map script edit. ID x16 now uses a required level as a world map condition.
    • x16 now functions as a level check and the event or command will not run unless the unit is at least the required level. The level that its checked against is the highest leveled unit in the party. Works fully with any other World Map check (sprite ID, integer check, etc.).
    • Use World Map editor found in one of RavenOfRazgriz's spreadsheets to add to the requirements.
    • Format follows as: 1600 XX00 with XX being the desired level required. Example: 1600 0700 wouldn't allow the event to play unless the highest level in the party was at least level 7.

    [09] Move the World Map script to kanji space.
    • Moves the World Map script to kanji space (x80142ae0) so you can't collide with other data if you're world map goes over the allotted space.
    • This, however, does not change where the World Map data is saved so you'll have to manually edit the .xml produced from the spreadsheet to its new location (62AE0 in world.bin).

    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    French Maid
    Xifanie (Webmistress) [Posts: 4234]
    • View Profile
    • Final Fantasy Hacktics
    • http://steamcommunity.com/id/Xifanie
    • share
    • [July 04, 2017, 06:08:49 AM]
    Re: Pride's ASM Thread
    « Reply #13 on: July 04, 2017, 06:08:49 AM »
    I actually wanted to move both the world map conditionals and the event conditionals into kanji space (to allow JotF to use only one disc, but then I remembered that we still needed more sprite space), but I figured it would be too much trouble. How bad was it?

    http://ffhacktics.com/wiki/World_Map_Instructions#.3F.3F.3F.3F:_Unused

    According to my notes, 0x0016 uses 2 half-words... shouldn't you be better off with just one?

    EDIT: I fucked up somewhere hardcore in that documentation... 0x0016 has no half-word allocated to it by default.
    « Last Edit: July 04, 2017, 07:02:03 AM by Xifanie »
    • Modding version: PSX
  • <R999> My target market is not FFT mod players
    <Raijinili> remember that? it was awful
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [July 04, 2017, 06:15:42 AM]
    Re: Pride's ASM Thread
    « Reply #14 on: July 04, 2017, 06:15:42 AM »
    The world map conditions were easy to move, i traced it to be loaded from xd4764 but I couldn't find where it stored so took another option and searched for 80097234 to see if it was loaded from a pointer table and showed up at two locations. So I'm assuming the event conditions would be fairly similar and not very difficult.

    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    Heisho [Posts: 51]
    • View Profile
    • share
    • [July 28, 2017, 04:58:51 PM]
    Re: Pride's ASM Thread
    « Reply #15 on: July 28, 2017, 04:58:51 PM »
    The charge and item drop hacks are awesome Pride, thanks a lot.
    The procs on the charge hack is always 100% if all or nothing is flagged on the status?
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [July 28, 2017, 08:27:54 PM]
    Re: Pride's ASM Thread
    « Reply #16 on: July 28, 2017, 08:27:54 PM »
    I would need to double check that actually, but yes, they should

    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [July 29, 2017, 02:44:08 AM]
    Re: Pride's ASM Thread
    « Reply #17 on: July 29, 2017, 02:44:08 AM »
    Might as well post an asm too.

    [10] Ability Animation 07 00 00 will always swing weapon
    • Removes the Ability Flag 'Weapon Strike' from being required to swing a weapon during animation 07 00 00.
    • Should be no more unwanted punching while using an attack unless unequipped.
    • Removes the ugly glitched sword that normally appears when using the draw out animations (03 XX), this was unintended and testing other combinations where there might be an issue
    • Useful if you're using another ASM that uses 'Weapon Strike' to merge the ability element and weapon element but you don't want to inherent the weapon element.
    « Last Edit: July 29, 2017, 03:10:38 AM by Pride »
    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    Heisho [Posts: 51]
    • View Profile
    • share
    • [August 01, 2017, 02:20:46 PM]
    Re: Pride's ASM Thread
    « Reply #18 on: August 01, 2017, 02:20:46 PM »
    Hi there Pride, I was checking around the Treasure  spreadsheet and came to a stomp.
    On the XML tab the cell that has the treasure data suddenly changes to #NAME
    I checked a few times and it changes from the original data (that has a lot of zeroes) to #NAME when I change something.
    This of course can't let me see the code that generates from changes to the Treasure data tab.

    I hope that I explained myself
    May I kill him?
    Pride [Posts: 817]
    • View Profile
    • share
    • [August 04, 2017, 12:20:02 AM]
    Re: Pride's ASM Thread
    « Reply #19 on: August 04, 2017, 12:20:02 AM »
    I'm thinking the issue is that you're using an older version of Excel that doesn't accept a command (concat) that wasn't valid in 2010 or below? Xifanie pointed it out to me a while ago but I forgot to update spreadsheets that already used this command. I'll have a version that's compatible with previous versions of excel in the next few days so please check out my thread when I have a new post up on it.

    Sorry about that!

    Edit: Fuck it, just updated it. Check the post for a new download.



    • Modding version: PSX
  • Check out my ASM thread. Who doesn't like hax?
    Pages: [1] 2