• Welcome to Final Fantasy Hacktics. Please login or sign up.
 

UWEntries: Change which base jobs point to which unit.bin/wldface.bin entries

Started by Glain, October 02, 2011, 11:50:13 am

Glain

So a while back I wanted to be able to use jobs 3A and 3B for some characters, and not have to go through the process of using another character's job like Simon's, replacing 3A with Simon, replacing Simon with my character, making the ENTD edits, etc. Much easier if I can just use jobs 3A and 3B, and point them to unused entries in unit.bin and wldface.bin (Like 08 or 09).

In the help section I whipped up this patch, which is a quick and dirty way to get exactly that (Job 3A uses 08, Job 3B uses 09). 
(EDIT: Included the entry for the REQUIRE.OUT table.)


  <Patch name="Jobs [3A,3B] use unit/wldface [08,09]">
    <Description>
      Jobs [3A,3B] use unit/wldface [08,09] for formation screen and battle preparation sprites.
    </Description>
    <Location file="WORLD_WORLD_BIN" offset="458B0"> 
      3C
    </Location>
    <Location file="WORLD_WORLD_BIN" offset="74B88">
      080009
    </Location>
    <Location file="WORLD_WORLD_BIN" offset="AA1DC">
      080009
    </Location>
    <Location file="WORLD_WORLD_BIN" offset="AA92C">
      080009
    </Location>
    <Location file="WORLD_WORLD_BIN" offset="ADE6E">
      0809
    </Location>
    <Location file="EVENT_ATTACK_OUT" offset="16C24">
      080009
    </Location>
    <Location file="EVENT_REQUIRE_OUT" offset="11BB0">
      080009
    </Location>
  </Patch>


But then we figured it'd be useful to be able to change these entries for any job. So we discussed making a spreadsheet for it. Raven was going to write one, but then it seems I pre-empted him.

This spreadsheet should allow you to change which entries in unit.bin and wldface.bin are used for each base job. So, if you want to make Gafgarion's guest job (0x17) look like Reis in the formation screen, job wheel, battle prepation screens, etc? Just change the his entry from 0D to 07. Want to overwrite unused entries in unit.bin/wldface.bin and tie them to specific base jobs? Sure.

Attached is the spreadsheet. Basically you just edit the yellow column, then copy the XML from the XML tab into a .XML file in the same directory as FFTorgASM and use it to apply the patch.

I labelled the base jobs in the spreadsheet with what they're used for in the game currently, but interestingly, I couldn't figure out what jobs 0x35 - 0x39 are actually used for, if anything. Are those all unused? That might open up some possibilites for adding more characters without having to take jobs that are in use.

EDIT (8/28/2018): Attaching new version of the spreadsheet!  Fixes a problem with default values, notably for Holy Dragon Reis.
  • Modding version: Other/Unknown

Pride

Awesome! This will be a great help for patch makers that add extra characters throughout the game (I know et greatly needs this .-.)
  • Modding version: PSX
Check out my ASM thread. Who doesn't like hax?

RandMuadDib

I will show you the power of SARDIIIIINES!!!!

Eternal

  • Modding version: PSX & WotL
"You, no less human than we? Ha! Now there's a beastly thought. You've been less than we from the moment your baseborn father fell upon your mother in whatever gutter saw you sired! You've been chattel since you came into the world drenched in common blood!"
  • Discord username: eternal248#1817

Timbo

Sorry about the Necropost but this IS the definitely the most appropriate place to post this. I have a request. Is there anyway this spreadsheet could be expanded to cover the entire job list through 9F? It would be nice to be able to reassign portraits and formations for some of those blank monster jobs at the bottom. As it stands right now I've had to do redo my ENTD twice and its looking like I'm going to have to do it a third time. Having an expanded version of this awsome tool would make this a lot simpler.
  • Modding version: PSX
  • Discord username: Timbo

Glain

I don't think the generic jobs use the same tables as the special ones for this.  If I look past the end of what I have as one of the tables, I see a bunch of numbers too low to correspond to generic job entries, then higher numbers like 5E, 5F which aren't even in UNIT.BIN.
  • Modding version: Other/Unknown

Timbo

Thanks for getting back to me. What about the special monster jobs below those? Specifically 8E through 9F?
  • Modding version: PSX
  • Discord username: Timbo

Glain

I don't know if they're treated any differently from other monster jobs; even if they are, I don't think they're in the same tables; the tables seem to stop just before 4A (Squire).
  • Modding version: Other/Unknown

Timbo

Thank you very much for explaining Glain. I really appreciate it, even if I don't want it to be true. I still love this spreadsheet.
  • Modding version: PSX
  • Discord username: Timbo

Luiakyn

Quote from: Jack of All Trades on December 24, 2013, 11:14:57 pm
Sorry about the Necropost


-Thank you- for the Necro post. I've been looking for something like this -- not sure how I missed it.

3lric

Hey Glain, I believe I've found a bug in UWEntries. We use it for TLW for adding the two new units in, Bathier and Ashley Riot/Luso.

Everything works fine, except, when you have too many units and it asks if you want to dismiss, it seems to be showing the original units port (the guest versions of Agrias and Rafa respectively) Im not sure if this is due to UWEntries or not, but its the only thing i could think of.

It is viewable in the same ppf i sent you before.
  • Modding version: PSX

Glain

Would I be able to get a pSX savestate that reproduces this? Would save a lot of time playing through everything.

In the meantime I can try to figure out what's going on.  My guess is there's another similar table somewhere; I'm betting on REQUIRE.OUT.  Let's see...

EDIT: Ha, yes.  REQUIRE.OUT, 0x11B3C.  Making an updated version of the spreadsheet...
EDIT: Attaching updated spreadsheet.  Just try and see if this works?
EDIT: Removing attached spreadsheet.
  • Modding version: Other/Unknown

3lric

  • Modding version: PSX

3lric

  • Modding version: PSX

Glain

The spreadsheet had some bad default values.  Holy Dragon Reis's value needed to be 0x18, not 0x00.  That's just been broken this entire time, apparently.  I also added in some other default values that are probably inconsequential, but are in some of the vanilla tables.  I'm replacing the spreadsheet in the original post with an updated version.
  • Modding version: Other/Unknown

3lric

Fantastic, Reis is working as expected now. And yeah I thought about that too, how did I find two different issues in one day that no one had ever reported on with as many times as the hack has been downloaded? xD
  • Modding version: PSX

DarthFutuza

First, just wanted to say this tool was super useful to me, thank you!

However, I wanted to check if there's any known sound bugs (PSX version) when you use these sort of character replacement assembly hacks?  If I patch a clean FFT disc with a custom character (eg: Job 3B uses 09) the resulting image has random audio glitches (static noises etc, like what you you'd hear from like a speaker that's about to go bad), before the patch there's no audio glitching, but every time I've applied it, it results in audio static flicker especially with the game music.  I used FFTorgASM to apply the patch if that makes a difference.  Just wondering if I'm the only one this has happened to, or if its a known issue.  (The rest of the patch works fine, and does exactly what you'd expect it to).  Or maybe this only happens when using xml generated from this tool?
  • Modding version: PSX

Glain

I've never heard of or experienced anything like this happening with this patch.  Is this audio issue happening during battles, on the pre-battle screen where you set your formation, during the post-battle sequence, or outside of battle entirely (world map, formation screen, etc.)?  Is this on console or emulator (if so, which)?

(This isn't really so much an assembly hack as it is replacing one hardcoded value and some tables of static data.)
  • Modding version: Other/Unknown

DarthFutuza

Quote from: Glain on November 30, 2018, 02:40:27 pm
I've never heard of or experienced anything like this happening with this patch.  Is this audio issue happening during battles, on the pre-battle screen where you set your formation, during the post-battle sequence, or outside of battle entirely (world map, formation screen, etc.)?  Is this on console or emulator (if so, which)?

(This isn't really so much an assembly hack as it is replacing one hardcoded value and some tables of static data.)

Audio issue happens everywhere, formation, pre-battle, world map, battles.  Doing it on PSXe emulator.  I've also tried it on different machines with different hardware.  Yeah its definitely not real assembly coding :P  I noticed if I apply the patch first and then use other tools like tactext or fttpatcher on the resulting patched bin/image it seems to lessen the effect.  I dunno its pretty weird and seems to intermittently go away occasionally, maybe my emulator is just having weird audio driver problems.  It sounds like its just me, not a common issue.  Its probably just an issue with my emulator setup, I'll play around with it some more see if I can figure out what the real cause is.
  • Modding version: PSX

Xifanie

Yeah, I think you jumped to conclusions because:
A) There is no reason to believe the hack or the tool caused this
B) There is no reason to believe other tools could "lessen" the effect
C) ePSXe is a pretty bad emulator with easily the worst audio emulation available out of the major emulators out there
  • Modding version: PSX
Love what you're seeing? https://supportus.ffhacktics.com/ 💜 it's really appreciated

Anything is possible as long as it is within the hardware's limits. (ie. disc space, RAM, Video RAM, processor, etc.)
<R999> My target market is not FFT mod players
<Raijinili> remember that? it was awful