News:

11 March 2016 - Forum Rules

Main Menu

Final Fantasy IX - General hacking tool

Started by Tirlititi, August 05, 2014, 06:23:40 AM

Previous topic - Next topic

Tirlititi

Hi there ! I'm not particulary active on RH but I've uploaded some stuff here so I guess I should at least present them ^^'

I'm working on Hades Workshop, a Final Fantasy IX modding tool. It is quiet a big project and I don't know if I will ever decide when it's finished  ::)
However, it is already usable and can edit things like :

  • Spells the party can cast,
  • Supporting abilities the party can use,
  • Commands the party has,
  • Default stats and equipments of the party members,
  • Items' features,
  • Items sold in shops,
  • Statistics & attacks of enemies,
  • Text, dialogs and charmap,
  • Game's script,
  • Battle Scenes' models exporting & importing.

It has been used by Thisguyaresick2 to make his Save The Queen patch, for instance.

Since that's basically a direct binary editor, there are some limitations mainly about the size of datas ; a lot of texts can't be lengthened a lot for example. But I also took that in my advantage and made it so it can edit all versions of the game and even pass the datas from one version to another.

I'm also involved in finding the unused dialogs of the game. I just uploaded a patch to enable some of them that have already been scripted. You can find it here :
US version
French version

Most of time, these unused dialogs were translated, but that's not the case of all of them. One of the dialogs in the patch is in this case : the translation from japanese to english has been gently made by luksy from the Qhimm's forum. I wrote the french translation with the help of his.

There are other unused dialogs in the game. I've just not been able to unlock them yet (or they have never been scripted and only texts remain). Here is a list of some of the most interesting ones of them :

Alexandria [Over the roofs...] :
Spoiler
Puck "So, Vivi... Is this your first time in Alexandria?"
Vivi "Uh...  Um...  Yeah. I bought my ticket from a moogle wearing a hat..."
Puck "Bad luck!  If I ever find that moogle, I'll hurt him plenty!"
Vivi "Uh... Thanks..."
Puck "Alright!  Just a little farther 'til we can see the stage!"
[close]

Ruined Prima Vista [Steiner's bitterness] :
Spoiler
[1/3]
Steiner "Those bastards... If they plan to demand a ransom, they're wasting their time.  I'll see to it that they receive nothing!"
[2/3]
Steiner "Wretched thieves... I'll see them all hanged!"
[3/3]
Steiner "Those bastards... They will never get away with this!"
[close]

Observatory Mountain [Good and Evil with Grampa Morrid] :
Spoiler
Steiner "Alexandria, of course! Burmecia started the war, and we lost our king as a result."
Morrid "Many wars were fought before the Lindblum Airship Revolution."
Morrid "Alexandria intiated some of the wars against Burmecia. Now, can you tell me who was right or wrong?"
Steiner "I-I am not talking about the past! I am talking about the future!"
Morrid "What will you do if Alexandria starts a war?"
Steiner "When will the cargo ship arrive!?"
[close]

Gizamaluke's Grotto [Entering Burmecia] :
Spoiler
Burmecian Soldier "This is the Gizamaluke's Grotto. It is Burmecia's border."
Burmecian Soldier "No one is allowed inside without the king's permission."
[close]

Cleyra [Meeting with the King and the High Priest] translated from japanese by luksy :
Spoiler
Freya "It has been some time, Your Majesty."
King of Burmecia "Ah, Freya, well met."
King of Burmecia "The High Priest and I welcome you."
High Priest of Cleyra "My Lady."
High Priest of Cleyra "It would appear that this predicament no longer concerns Burmecia alone."
Freya "I understand, Your Holiness."
Freya "And yet..."
Freya "I fear my strength alone may not suffice."
King "Freya...I know what troubles you."
King "I must apologize for earlier."
King "Can you ever forgive me?"
King "No! Of course you cannot."
King "But the fate of the people of Burmecia now hangs by but a thread."
[close]

Occupied Lindblum Castle [Reaching Cid] :
Spoiler
Don't get caught by the enemy!
Jump out when she looks away!
Man "The regent is waiting for you at the Base Level."
Man "The enemy is busy loading supplies. Go down on the lift, now!"
Man "Once you get on the lift, my comrades will take care of the rest."
Zidane "So, I just take the lift to the Base Level without getting caught?"
Yeah...
Zidane "Piece o' cake! Leave everything to me."
Huh?
Is anybody there...?
A tail?
Meeow!
Oh, it's only a cat...
Zidane (Wow, that was a close one.)
Man "(You idiot!)"
Man "Whatever you do, don't get caught!"
Man "What's wrong? The regent is waiting at the Base Level."
Man "Go now, or you'll get caught!"
Zidane "I gotta run while she's looking away."
[close]

Occupied Lindblum Castle [The Ancient World Map] :
Spoiler
Regent Cid "That is a national treasure of Lindblum!"
Regent Cid "It was passed down through my ancestors, since the days of the first regent."
Regent Cid "It was probably made before our continent was covered in the Mist..."
Regent Cid "That is an ancient map of the entire world!"
[close]

Alexandria [Balloon Mini-game] translated from french by me :
Spoiler
Girl "You want to play with us?"
Girl "You've got some time to gather balloons and give them to the boys behind us!"
Girl "You get more time depending of the color of the balloon that you bring."
Green → 5 more seconds
Yellow → 10 more seconds
Blue → 15 more seconds
Red → 30 more seconds
Girl "All the three of us have a balloon and we are somewhere on the square."
Girl "Well... Start!"
Boy "X more seconds! You have Y points!"
[close]

Final [The 2 worlds' fusion] :
Spoiler
The Iifa Tree could not be stopped...
Gaia and Terra's fusion
caused global chaos,
destroying many cities and
taking many lives...
[close]

Thanks for reading. If you find any bug or have a suggestion, please let me know it  :)
If you are courageous, you can also browse the Qhimm's topic : that's where I wrote most of things about Hades Workshop and FFIX hacking (I would like to fill your wiki, but I need to find the courage for that ^^).
Quote from: UnmonThis staff of mine has transformed itself into a dragon and has swallowed up the universe! Oh, where are the rivers and mountains and the great earth?

Celice

Cool stuff! I love FFIX, and seeing your work makes me eager for some fan hacks in the future :) The unused content is also super nifty! Thanks for sharing  :beer:

Tirlititi

Thank you Celice (I'm a bit late  :P )

I updated the tool ; it should take some few hours for the update to be approved. You can now fully edit the game's script !
You can squarely code using the game's script.
Not everything is still understood about the different functions (opcodes) of the script, and it's is really hard to actually do something completely different from the original game, but that became possible.

If you're interested, you can check my last post on qhimm. I tried to explain a bit how it works and also gave an example of what you can do with it. You can download this example here. It's a patch for the first field of the CD 1 in the US version of the game (though I applied the .hws to the french version and it worked just as well).

I'm quiet happy I finally made it that far. Editing the script is something I had in my mind since soooooo long time !  ;D
Quote from: UnmonThis staff of mine has transformed itself into a dragon and has swallowed up the universe! Oh, where are the rivers and mountains and the great earth?

Jorpho

Is it very different from FF7 and FF8 internally?
This signature is an illusion and is a trap devisut by Satan. Go ahead dauntlessly! Make rapid progres!

Tirlititi

#4
I watched in the inside of FF7 like 10 minutes one time. I can't really say.
But I saw some of qhimm wiki's informations and it does seem different. The variable management is made by only 1 opcode (it is then a big thing to interpret). FF9 is also way more byte-oriented than FF7. The 10 minutes I spent on FF7 was about the item's ID (which are 7 or 9-bits long if I recall well, or something like that). There are some cases in which the length of arguments or ID is not round in FF9 but that's quiet rare overall.

By the way, the update has been approved. That took less time than I thought ^^
Quote from: UnmonThis staff of mine has transformed itself into a dragon and has swallowed up the universe! Oh, where are the rivers and mountains and the great earth?