Author Topic: [PSX/PC] General editor - Hades Workshop (0.50b)  (Read 973755 times)

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #750 on: 2017-04-23 20:58:31 »
UPDATE: I found the how to add Zidane_renit function, but have yet to see any other field that have Zidane_reinit naturally.
What goes in this function...?
I tested around, I added random battles to the entrance of Daguerreo (which already came with a Main_reinit) function but no Zidane_renit function, and the footstep sounds (and background image) was perfectly working after the battle.

I'm guessing the other fields that have random battles don't exactly use the term "Zidane_reinit" but is one of those...Zidane_17, Zidane_11 functions?

And the battle audio only playing for enemies set in there native fields,
Do the fields backgrounds have ID's like enemies have ID's? Cause maybe I have to mod the BtlEncountBgmMetaData.txt.txt for this bug to be fixed...

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #751 on: 2017-04-23 23:25:25 »
I solved the battle music not play bug!
My details, served as a tutorial:

for battle music not playing:

if you add an enemy to a field where the enemy isn't originally located.
You have to edit the BtlEncounterBGMMetadata.txt
find the field your adding this enemy too's ID number,
and add that enemy's original
    "107": "125"

to the field slot.

Example:
I have Hilgigars as random encounter in Memoria Ruin,
to make the battle music play, do this:

Find an enemy that is oringially from the Memoria/Ruin field, get their ID number. Find this ID number in BtlEncounterBGMMetadata.txt
now you see the ID number of the field: Memoria/Ruin.
(Its 2909)

And you see underneath "2909" Two enemy id numbers:
Iron Man(929) and Chimera(955). This is correct, because originally these are the only two enemies fightable in the Memoria/Ruin field.

So now, we just simply add Hilgigars enemy ID to this section:

Original:

  "2909": {
    "929": "0",
    "955": "0",

to:

  "2909": {
    "929": "0",
    "955": "0",
    "107": "125"

"107" is Hiligars's ID number and 125 is the BGM audio ID number. (In my case, its "Protecting my Devotion" song changed to: "The Eidolons Shackled" from FFIV.

The World map is the same thing:
it has ID's to certain locations on the WOrld Map (ex. Bentini Heights/Donna Plains etc.)

How I find field ID numbers that don't already have enemies, I count up the list from a field that does.

video result:

https://www.youtube.com/watch?v=5rtU3rhqars

Tirlititi

  • *
  • Posts: 886
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #752 on: 2017-04-24 15:10:52 »
@resinate: I thought I had a patch for that, but I can't find it anymore...

@ddclem: yep, fields have ID, like pretty much everything.
You can also get the ID from the Script Editor: write a line "Field( 0 )" anywhere in a script and you'll have the list of fields displayed on the right. Selecting a field there will write the appropriate ID instead of the "0".

For the "Zidane_Reinit", yes it sometimes doesn't exist and there's a "Zidane_11" or whatever instead. But then that function "Zidane_11" is called from the "Main_Reinit" (there's a line "RunScriptAsync( 0, 250, 11 )" ). Using directly a function Reinit, there's no need to call it from "Main_Reinit".

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #753 on: 2017-04-24 17:01:24 »
thanks for the info! More convenient! Fixed a problem error I had in Eidolon's Cave before.

and progress update;
will there be a proper model importer in HW? I don't think saving the new model i want imported back as a .fbx is working... then again, there are lot of export options for .fbx...

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #754 on: 2017-04-24 20:13:12 »
the Zidane_reinit, do you know exactly what I can copy and paste into this field, I'm not getting anywhere with getting the footsteps sound back.

Tirlititi

  • *
  • Posts: 886
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #755 on: 2017-04-24 20:21:30 »
It usually looks like this:
Code: [Select]
Function Zidane_Reinit
    RunSoundCode( 4616, 914 )
    RunSoundCode( 4616, 923 )
    RunModelCode( 16, 25, 4, 914 )
    RunModelCode( 17, 25, 4, 923 )
    RunModelCode( 18, 25, 4, 1 )
    RunSoundCode( 4616, 914 )
    RunSoundCode( 4616, 923 )
    RunModelCode( 16, 25, 13, 914 )
    RunModelCode( 17, 25, 13, 923 )
    RunModelCode( 18, 25, 13, 1 )
    RunSoundCode( 4616, 914 )
    RunSoundCode( 4616, 923 )
    RunModelCode( 16, 38, 0, 914 )
    RunModelCode( 17, 38, 0, 923 )
    RunModelCode( 18, 38, 0, 1 )
    RunSoundCode( 4616, 914 )
    RunSoundCode( 4616, 923 )
    RunModelCode( 16, 38, 8, 914 )
    RunModelCode( 17, 38, 8, 923 )
    RunModelCode( 18, 38, 8, 1 )
    return
However, the sound IDs change from field to field (as the footstep sound changes). Check out the "Zidane_Init" function to get those.

There will be a model importer eventually. You won't be able to re-import the currently exported models though.
But I said that already.

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #756 on: 2017-04-24 21:22:58 »
Excellent! I was on the right track! Now that you mention the sound ID, that's why it still isn't playing! makes sense.

Okay,
For the finale, what is the script command to the end with game? Ending the game with the "The End" sprite, and skipping the final two FMVs?
Ex.: the game to ends after the final boss.
Oh and also, how do I make the "Quan's Dwelling" title not show when you first enter it?

Thank god the model importer, tho!
« Last Edit: 2017-04-24 21:52:53 by dclem »

DanTsukasa

  • *
  • Posts: 68
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #757 on: 2017-04-25 11:10:39 »
Progress on this program is fantastic! Amazing work here Tirlititi!
1 step closer to possibly having an exportable FF9 world map (with UV's), really looking forward to this.

livegood118

  • *
  • Posts: 3
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #758 on: 2017-04-25 22:09:34 »
Hi,

Thanks for this great tool - great to see twenty years after release that FFIX is getting the attention it deserves.

I've been trying to install the fixed stats mod by Vir with Hades Workshop on the Steam version of the game (http://forums.qhimm.com/index.php?topic=16703.0)

Unfortunately I'm getting a crash when the game loads up and I'm wondering if you'd be able to help me with it.

When I download the Steam version of the fixed stats mod there's four separate files ("FF9 Fixed Stats D1 - D4"). This is what I do:

1. Load up the FFIX launcher (located in the folder where x86 and x64 is) in HW
2. Click on Open Mod
3. Load in each of the four files after one another, unticking each time (I've checked the item browser and the stats seem to be changed properly)
4. Click on Save Steam mod and save the files in the hades workshop mod folder
5. The two files created as a result of this process are a resource file and a C sharp file.
6. I drag and drop the files from the Hades workshop mod folder so that they replace the existing files

However, when I boot the game, I get the White FFIX Title and then absolutely nothing afterwards  :-\

Verifying the integrity of the game cache gets it working again so it'd definitely something I'm doing wrong with HW that's causing the issues.

Thanks for any insight you can provide.

livegood118

  • *
  • Posts: 3
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #759 on: 2017-04-25 22:41:51 »
Hmm - I read a few more forum posts and I did it without moving over the C-sharp file.

It seems to have worked!

But will I run in to problems further down the line if I don't include it?

Edit: Hmmm - I did the cheat to give me level 99 and my stats only reached vanilla levels without equipment. Does the Lvl 99 cheat on the steam version bypass the MAG/STR/SPD/SPR bonus you get each level? Also were the resources files produced supposed to be the exact same size, down to the byte?
« Last Edit: 2017-04-25 22:55:38 by livegood118 »

Tirlititi

  • *
  • Posts: 886
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #760 on: 2017-04-26 17:51:33 »
@livegood118: The Assembly-CSharp.dll is important for Vir's mod. I'll take a look at it.
However, you'd only need to import 1 file, not 4.

@dclem: The titles are background tiles. You manage them in the script with functions such as "ShowTile" or "SetTileColor". For Quan's dwelling, it happens in the first half of the "Main_Loop" function.
For ending the game, it's a special call to "Field( 16000 )". It triggers the ending cinematics though (based on the the CIL Code of "EndingMain").

@DanTsukasa: I don't know about the World Map model. I surely went a step further for it, but it may still be a long way. Plus that's not my personnal priority.

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #761 on: 2017-04-26 20:13:16 »
I see that field(2934) in Field: last/cw mbg 1
Can I simply put the Field(16000) in Necron's (Loop) function after his death animation?
And for canceling the trigger o f the cinematics, in the CIL code do I just remove all the commands:

callvirt 0x6000A79   // MBG::LoadMovie

callvirt 0x6000A7B   // MBG::Play


If I can't remove the cinematic for this ending field(16000)

How can I make a MUsic BGM play during Necron's death?
I've tested so far, trying to run a sound code to trigger Music with ID 41, but that didn't work.

livegood118

  • *
  • Posts: 3
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #762 on: 2017-04-27 07:47:43 »
@livegood118: The Assembly-CSharp.dll is important for Vir's mod. I'll take a look at it.
However, you'd only need to import 1 file, not 4.

Yeah, unfortunately the patch didn't apply correctly after only moving the resource file over (Observable by items still giving +1 to stats). Maybe it'll wreck my save if I try to do anything mid-game?

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #763 on: 2017-04-27 12:19:11 »
yeah, i want the ending set after the death of final boss, literary right after; somewhere I can put this ending script command in Necron's script, and not one the fields backgrounds.
how do I trigger a music track to play during battle? this only for an alternative I'm testing.

Fraggoso

  • *
  • Posts: 278
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #764 on: 2017-04-27 12:58:53 »
Dclem when do you will release your sfx patch?
Are you not going to add any sfx like the ones you used from FFXII?

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #765 on: 2017-04-27 19:40:04 »
I never added any sfxs, I used some from FFXII as tests, then replaced with FFIX afterwards.
the sfxs is done -  with only an exception:
The eidolon summons sfxs could not be found; but that's mostly due to the fact that it's like composed of like, 26 different sfxs ranging from all different types of sounds no one could recognize, not even an id to identify them. They also play at different timed intervals, which gave me major problems when attempted to fix the squeal of some of the sounds they make.

Menus:
I can't find the FFIX psx menu sounds, after replacing it with my testing ones, not that these sound any different than what came with steam.
I also fixed sound bugs that occurred with events like: the lightning not properly playing during the Prima Vista theater stage fight:

https://www.youtube.com/watch?v=Un_iSLZtO1c

compare that to the vanilla version's sound. That's one among many.

the patch will be available after I find those menu sounds again.
if you can't do with the new menu sounds.
« Last Edit: 2017-04-27 23:20:57 by dclem »

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #766 on: 2017-04-30 21:54:31 »
yeah, i want the ending set after the death of final boss, literary right after; somewhere I can put this ending script command in Necron's script, and not one the fields backgrounds.
how do I trigger a music track to play during battle? this only for an alternative I'm testing.

resinate

  • *
  • Posts: 96
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #767 on: 2017-05-01 22:04:51 »
hey Tirlititi is there a way to make a psx patch to expand number of auto abilties on chars so i can use all of them on every char?
« Last Edit: 2017-05-02 03:04:30 by resinate »

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #768 on: 2017-05-02 08:42:31 »
Something is wrong with the Disc 1 first entrance Alexandria Main Street title tile block.
It won't remove even if I remove the ShowTile and SetTileColor commands! It just sits there permanently on the screen every time this field is accessed by the player!

Tirlititi

  • *
  • Posts: 886
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #769 on: 2017-05-02 22:37:03 »
@livegood118: Indeed, the .hws provided by Vir are not working for now. Use this one instead (I compiled it from his .ppf):
https://www.dropbox.com/s/14ger23aouudy9p/FF9%20Fixed%20Stats.hws?dl=1

@dclem: In battle, the script line is "RunBattleCode( 37, 2929 )" for running the end-game cutscenes, starting right after Necron's battle. Put it in the "Main_Init" function, next to the InitObjects.
I don't know for playing a music during a battle, other than modifying the BgmEncounterData thing.
In Alexandria's Main Street, you probably removed the lines "ShowTile( 11 and 12, 0 )" in the "Main_Init" function, which isn't good. Those lines are here to hide them. The code used to display it once is in the "Code14_19" function (which is called in the "Alexandrian_GirlA_Loop" function since the title appears the same instant as her).

@resinate: Not really. It might be possible to increase that limit on Steam but not on PSX. What you can do is transforming learnable spells into learnable auto-abilities in the "Stats" panel (you have the learnable ability lists). However, the total of "learnable spells + auto-abilities" can not exceed 48. You can only trade-off.

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #770 on: 2017-05-03 07:33:05 »
What about editing the CIL code for the Field (16000) not trigger those ending cinematics? What do I remove to not make the FMVs play, just skip right to the THE END sprite?
(Assuming the "Prologue FFIX music will play regardless).

resinate

  • *
  • Posts: 96
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #771 on: 2017-05-03 07:49:06 »
Tirlititi is there any word on being able to modify the auto abilities like changing auto haste to auto trance? or changing them into auto protect/shell? and change stuff like 20% hp to like 80%? stuff like that. we can mod spells and all that. just asking

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #772 on: 2017-05-03 07:55:35 »
nope, says in HW help, cannot change the effects of supporting abilities.
one would hope to have an supporting ability that prevents zombie or mini.
i called it, "Faith" and "thinking big".  :?

dclem

  • *
  • Posts: 173
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #773 on: 2017-05-03 08:19:08 »
What about editing the CIL code for the Field (16000) not trigger those ending cinematics? What do I remove to not make the FMVs play, just skip right to the THE END sprite?
(Assuming the "Prologue FFIX music will play regardless).

Nothing happens after putting the Field(16000 next to (InitObject) in Main_Init section of Necron script.
Just sits there with a blank screen
and this in the output_log.txt

Code: [Select]
  at HonoBehaviorSystem.Update () [0x00000] in <filename unknown>:0
 
(Filename:  Line: -1)

InvalidProgramException: Invalid IL code in EndingMain:HonoUpdate (): IL_009c: stfld     0x0400179d

and wasn't there a tutorial somewhere on to create new enemies? or least modify an existing one to my preference?

I'm tying to make series of bosses, with at least 22 spells, and 8 dummy objects to cast most of it for the enemy, much like Necron.

« Last Edit: 2017-05-03 10:24:06 by dclem »

Tirlititi

  • *
  • Posts: 886
    • View Profile
Re: [FF9] General editor - Hades Workshop (0.37c)
« Reply #774 on: 2017-05-03 10:33:43 »
EDIT: The Memoria Engine modifier now provides a simpler way to modify supporting abilities: see the documentation in "StreamingAssets\Data\Characters\Abilities\AbilityFeatures.txt" after installing Memoria.

@resinate: It is possible, but on Steam version only, and it requires editing the CIL code, again.
Since Memoria Engine will allow to do it more conveniently, I stoped developping CIL macros for that. However, changing a HP +20% into a +80% is quite simple and can be done like this:
1) Find the method "ff9play::FF9Play_GetSkill",
2) In the second half of the method, spot these lines:
Code: [Select]
ldarg.1
ldind.ref
ldarg.1
ldind.ref
ldfld 0x40008AB // FF9PLAY_SKILL::max_hp
ldarg.1
ldind.ref
ldfld 0x40008AB // FF9PLAY_SKILL::max_hp
ldc.i4.s 10
div
add
conv.u2
stfld 0x40008AB // FF9PLAY_SKILL::max_hp
There is a similar code 4 times in a row, for HP+10%/20% and then for MP+10%/20%.
3) Replace the two lines.
Code: [Select]
ldc.i4.s 10
div

// Replace it by:
ldc.i4.s 80
mul
ldc.i4.s 100
div
This changes it into +80%

@dclem: First, I would like you to stop double-posting like that. You have a button to edit your messages ><
It makes it difficult for me to answer cause I have to browse the page, and besides it makes you ask the same question several times for nothing.

Secondly, you could read what I told you: it's "RunBattleCode( 37, 2929 )" in battle, and not "Field". If you tried that, you would have seen that 2929 is the field ID and so can be replaced by 16000 for your purpose.
And for the CIL code of the cinematics, I don't know. But I suspect it will be difficult to remove those steps like that. You'd better replace the cinematics by some black screen cinematic during 0.1 second or something similar.
« Last Edit: 2021-05-25 13:25:48 by Tirlititi »