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

Valhalla Editor

Started by Nyzer, April 12, 2020, 03:35:25 pm

Nyzer

April 12, 2020, 03:35:25 pm Last Edit: December 10, 2021, 10:49:01 pm by Nyzer
So the only reason I heard about this editor is that it was mentioned on Reddit. There seems to be next to no discussion about it on Reddit, GameFAQs, or here, so as far as I know it was just spawned out of the ether by a ghost.

It seems to allow modders a whole lot more functionality, and while I've not experimented with it at all myself, I figured I should at least put a link up to it so that people can find it more easily. A PSP ASM tool is so rare and unique it's worth it, I think.

You can find it here. I've also uploaded it to this topic just in case that link ever goes down, since who knows what's going on with the author there.

If anyone has any more to add about this, feel free to mention it in this topic. I know @BleuVII has mentioned using it before, at least, and like I said - there is just no existing discussion about this tool that I can find so far.

Note: You also need to download the Python deps file and merge it into the Valhalla folder in order to get it to run. That link is dead. Try taking this python folder and inserting it into the Valhalla folder, merging it with the existing python folder. See if that does it.
  • Modding version: Other/Unknown

Oppe

I have gotten the program to run, however I don't know if the ASMs are actually working in the game or if they are the same as PSX ASMs. If anyone has time tomorrow I'd like some help finding out if they are the same and if it's possible to use the ASMs from this site in PSP version.
  • Modding version: WotL

Nyzer

April 12, 2020, 10:27:25 pm #2 Last Edit: April 18, 2020, 01:18:00 am by Nyzer
It's not. It's absolutely not.

There's a dim chance that something works the same way, but like I mentioned, a lot of the data structure changed from PSX to PSP so I really doubt it.

At best, they would have to be ported in some way.
  • Modding version: Other/Unknown

Mondragon

Hello, great folks of the ffthacktics community! First time actually posting here and love the work you guys do on here anyway...

I've been messing with this tool for a little over three months now. The tool's asm feature does indeed work. PS1 asms have to be repurposed for PSP to get them to work. You can view how the asms were reworked by opening them up in data>patches>default-core-hacks.asm. More information on how to work your own can be found under the MIPS instructions of the Quick RG that comes with every copy of the tool.

Additionally, the tool features data and text tools but I found them to be somewhat broken (especially text) as they had some trouble with font files and "lines" on both Clean NTSC and PAL. (I'm guessing this is why one of the sound novels, Nanai's Histories is corrupted??- although the others work completely fine.) Interestingly font files were found on my own patch I've been making so maybe it recognizes tactext edits? Although when I did try to use the text editor on my patch I was still not able to.

One last thing that can fix some headaches is that the tool can only be used once. Patching it again with Valhalla causes some glitches and the asms will no longer work. Good luck folks.
  • Modding version: WotL
"I have absolutely no idea what I am doing."
  • Discord username: Mondragon#8319

Oppe

I've had the same issue with the text stuff. I have no idea what to do in order to repurpose the PSX ASMs. I'm trying to figure out how to keep the text files from being changed.
  • Modding version: WotL

Mondragon

Update: I've finally got to testing the event editor and it works.
  • Modding version: WotL
"I have absolutely no idea what I am doing."
  • Discord username: Mondragon#8319

Mondragon

April 17, 2020, 05:28:57 pm #6 Last Edit: May 26, 2020, 11:22:04 am by Mondragon Reason: Grammer + More Info
I've finally got everything to work! Here's a quick introduction on how to use all of its functionality based on what was included in the guide and my own research.

Make a copy of your ISO.

Rename your War of The Lions iso copy to fft-wotl and place under the data folder.

Open Valhalla and click setup files, decode text files and decode evt.

Editing Text

data>patches>files

You can only edit utt files. Valhalla uses utt files that patch over your unt files. Editing unt files directly will result in an error.

Quick Reference

rest-mes
    rest-mes-1-utt
        line 236 Job Names
        Line 564 Item Names
        Line 1300 Ability Names
        Line 2459 Skill Set Names
    rest-mes-2-utt
        Line 5 Job Descriptions
        Line 625 Item Descriptions
        Line 3194 Ability Description
        Line 5427 Skill Set Description
        Line 5864 Job Requirments

snpl-mes (Audio Novels)
    01-utt Mesa's Musings
    02-utt Nanai's Histories
    03-utt Veil of Wiyu
    04-utt Enavia Chronicles
    05-utt Scriptures of Germonique (null)
    06-utt Test

Spell-mes
    0-utt (Spell Quotes)

tuto-mes (Tutorial Dialouge)

Wld-mes (Tavern Dialogue)

When finished click Encode Text Files

WARNING: "Replace spell.mes file", "Replace snplmes.bin file", "Replace wldmes.bin file", "Replace all tutoX.mes files", "Rewrite all quick access text (aka rest-mes)" in "default-text-hacks.asm" must be present when patching (refer to asm hacking)

Event Editor

data>patches>files>

test-evt
    test-evt-unt

Valhalla Requires you to edit the unt file for this

When finished click Encode EVT

WARNING: "Replace Test.EVT file" in "default-cust-hacks.asm" must be present when patching (refer to asm hacking)

ASM Hacking

data>patches

Note: If you only wish to use the ASM patcher you only need to "Set Up Files" but if an asm file alters text then you will need to decode the text files and encode them before patching. The same goes for the EVT.

Individual ASM hacks are stored in the .asm files, you may remove-blacklist-or add ASMs as you please to any main .asm file provided they do not have a "require#" dependency or you change the require dependency to "require#none" This becomes more prevalent under "default-text-hacks.asm" where if you already have a patch/mod but just want to add spell quotes and the audio novels back into the game.

REMEMBER: Never use your original iso, make a copy of it instead! You will not be able to edit the Valhalla patched iso again but you can save the text utt files and reuse them. USE A COPY!

(For users with already modded ISO's wanting to join the ecosystem you will only have to do this once. In my experience, it was less of a hassle to just copy my own edits from the unt file into Valhalla's utt files in order to avoid errors specifically to ability names. Be Advised only Item descriptions and Ability descriptions in your unt file will be kind of messed up but you can copy-paste the edits from tactext, everything else from item names to job requirements will be a single copy-paste each from your unt file.. so if you think about it 7/9 of the job is already done for you!! yay! Make sure to save those utt files when you're done in case something terrible happens and so you can reuse them ultimately adding to them over time! That is why you should keep 2 ISOs. Your original iso you use to make edits on in FFTPatcher-NEVER PUT THIS ONE IN VALHALLA. Then when you're done with your FFTP edits make a copy of that iso and use the copy in Valhalla and plant all your utt files you saved from your last patch after you decode the text files.)

blacklist.asm (Valhalla will ignore ASMs placed here)

default-core-hacks.asm
    Slowdown fix v2
    Add spellquotes back to the game
    Spell quotes always pop up
    Unlock novels
    Smart Encounters
    Battle Initial Camera v2
    Fix gil amount needed for the lip rouge quest

default-cust-hacks.asm
    Unlocked jobs v2
    Battle jobs list
    Formula 36 is now +PA_(X) and +MA_(Y)
    Mighty sword v2
    Crits always deal 50 percent bonus damage
    Abilities in Arith skillset can be reflected
    Null slps file in fftpack
    Replace TEST.EVT file
    Treasure Hunter 9-bit rare items
    ENTD 9-bit equipment items
    Balthier gets no special ENTD items
    Poach 9-bit items
    Onion items can be equipped if lip rouge flag
    Treasure Hunter rare minimum brave
    Arithmeticks supports up to 20 skillsets
    Party Roster Extension (PRE)
    Switch formation and absorb
    Monster eggs in last roster slot only
    Level cap
    Monster do not count as Casualties nor Injured
    Treasure Hunter is Player only

default-data-hacks.asm
    Replace all data files

default-expe-hacks.asm
    Test entd 9b items

default-text-hacks.asm
    Remove dupe font data (rest-mes)
    Replace font file ENG version
    Replace font width file ENG version
    Replace spell.mes file
    Replace snplmes.bin file
    Replace wldmes.bin file
    Replace all tutoX.mes files
    Rewrite all quick access text
    Change tutorial soldier names

9b Items Miniguide

This miniguide will show you the process on how to introduce the 40 overpowered 9-Bit "Multiplayer" Items into the base game plus the additional 20 unused item slots for a grand total of 60 new items that can be added into the base game.

Treasure Hunter 9-bit rare items

In FFTPatcher open the Move-Find Item Tab
Check the unnamed box under the No Activation box and on top of the Always Trap box.
Item 00 <nothing> is now Item 100 Chaosbringer, therefore Item 01 Dagger now equals Item 101 Deathbringer and so on.

ENTD 9-bit equipment items

This one is a bit more tricky and dependent on which gear slot you want as a 9b item. I currently do not believe it is possible to have a single unit have more than 1 9b item, if someone does figure it out I will update it here for the lurkers of the future :)

Head to the ENTD, select the unit, then edit the palette of the unit to 80 for Right Hand, 40 for Left Hand, 20 for Head, 10 for Body, or 8 For Accessory.

For this example, we will change the Right-Hand weapon to 9b.
Change the Palette value of the unit to 80.
Edit Right Hand under Equipment.
Item 00 <nothing> is now Item 100 Chaosbringer, therefore Item 01 Dagger now equals Item 101 Deathbringer and so on.

Poach 9-bit items

Open default-cust-hacks.asm under the patches folder with notepad++ or whatever text editing software you use.
Go down to #Name#Poach 9-bit items
Focus on the table filled with 0's under #Location#boot.bin#ram#088b6358: next to the line telling you to write your bits.

The first top 6 lines of 0's represent Common Item (90%) in FFTPatcher under the Poaching tab.
The bottom last 6 lines of 0's represent Uncommon Item (10%) in FFTPatcher under the Poaching tab.

The lines are read from left to right, the very first 0 on the first line is common chocobo. The next 0 is common Black Chocobo and so on. Then once you reach the 7th line the first 0 = Uncommon chocobo. The next equals uncommon Black Chocobo ect.

Change the 0 to a 1 on the poach you wish to be a 9b item.
Item 00 <nothing> is now Item 100 Chaosbringer, therefore Item 01 Dagger now equals Item 101 Deathbringer and so on.

Make sure to save a copy of this file just like your utt text files so you can use it again on your next patch cycle.

Patching

Apply patch! :O
If at any point something does go wrong, Valhalla will let you know at what file and line it occurred at! Also, this is the only reason why I could figure out what I was doing and led to this guide so thank you Valhalla :)

P.S. WOTL players rise up because we have more ram and multiplayer.. in time we can hope to bring down PS1... after we get our sound fix idk..  :mrgreen:  :cool:

Update 1: I think I'm getting really close to being able to convert psx ASMs to psp. I will make another update if my lead goes anywhere.

Update 2 5/26/2020: I got semi-close with the whole conversion thing but hit a roadblock with my understanding of Valhalla's MIPS instructions and PSX's Little Endian. Will provide more info and how others can help if they wish to at a future time. Meanwhile, I added the 9-bit item guide since I personally sought it a bit confusing myself and thought others might find it too.

I also made it more clear on how you can reuse your Valhalla edits since I have seen there was some confusion on how to do it. To Reiterate, have a base that you do your FFTPatcher edits on and make copies off of it which you then use for Valhalla. Text edits can be done in utt files that can always be backed up, edited, and reused at any point for any instance of Valhalla with any copy of an iso. The same goes for ASM files.
  • Modding version: WotL
"I have absolutely no idea what I am doing."
  • Discord username: Mondragon#8319

Grillo

May 08, 2020, 05:58:00 pm #7 Last Edit: May 14, 2020, 01:48:44 pm by Grillo
Hello! Im new, i want to make a custom patch for this game so im testing this patcher, but im getting this error:
Applying patches in:
default-core-hacks.asm:
invalid literal for int() with base 16: ''

The error is caused by the ASM to restore spell quotes into the game.
Any idea to fix it (i know jack of coding so im kinda lost)

Edit: i managed, problem arised after deleting some of the other ASMs. Thanks!
  • Modding version: WotL
"Law smothers anarchy, Duty subdues instinct, Grace repels darkness, Reason exposes deception, Purity rejects artifice and Truth tempers fanaticism.     -The book of all"

Mondragon

Did you decode and then encode text data before applying the patch?
  • Modding version: WotL
"I have absolutely no idea what I am doing."
  • Discord username: Mondragon#8319

Grillo

May 14, 2020, 02:19:47 pm #9 Last Edit: May 14, 2020, 03:38:44 pm by Grillo
So sad, the iso patched in this way cannot be further moddified using FFTPatcher, it causes all sort of problems, nor can be loaded for moddifications using FFTactext.

Is there a way to reinstall the spellquotes and books without changing the rest of the game? that way it would be possible to patch an already modded iso with it, (then you could easily fix the utt text files)
  • Modding version: WotL
"Law smothers anarchy, Duty subdues instinct, Grace repels darkness, Reason exposes deception, Purity rejects artifice and Truth tempers fanaticism.     -The book of all"

Nyzer

This is the best you've got, really. I assume if it was easy then the Valhalla author would have made it do so.
  • Modding version: Other/Unknown

illithidbane

No matter what I try, I can't get Valhalla to make changes. I am trying:

1. Run Valhalla.bat
2. Setup files
3. Decode text files
4. Encode text files
5. Decode EVT
6. Encode EVT
7. Apply patches

Then I try running the patched iso, and there's no actual changes applied.
So looking back at the log, I see this:

Extracting fftpack.bin:
Done.
Extracting EBOOT.BIN:
Done.
Decrypting EBOOT.BIN:
Fail to decrypt EBOOT.BIN

How do I fix the decrypting? What is the prerequisite here? I the custom python distribution (from https://www.romhacking.net/utilities/1478/) deployed /python/ folder in Valhalla's folder structure. I did not modify the cfg file. I am editing an iso named fft-wotl.iso. But it always fails. Any recommendations?

Pastebin of the log: https://pastebin.com/SDuGAnHz
  • Modding version: Other/Unknown

Mondragon

Quote from: illithidbane on September 09, 2020, 01:10:54 amNo matter what I try, I can't get Valhalla to make changes. I am trying:

1. Run Valhalla.bat
2. Setup files
3. Decode text files
4. Encode text files
5. Decode EVT
6. Encode EVT
7. Apply patches

Then I try running the patched iso, and there's no actual changes applied.
So looking back at the log, I see this:

Extracting fftpack.bin:
Done.
Extracting EBOOT.BIN:
Done.
Decrypting EBOOT.BIN:
Fail to decrypt EBOOT.BIN

How do I fix the decrypting? What is the prerequisite here? I the custom python distribution (from https://www.romhacking.net/utilities/1478/) deployed /python/ folder in Valhalla's folder structure. I did not modify the cfg file. I am editing an iso named fft-wotl.iso. But it always fails. Any recommendations?

Pastebin of the log: https://pastebin.com/SDuGAnHz

I took a quick look at your log and everything seems to be in order. Even the "Decrypting EBOOT.BIN: Fail to decrypt EBOOT.BIN" is normal and I never had it disallow me from making edits. So this may be of 3 things here. You're not decoding, making your edits, encoding, then patching. Or you're trying to edit an iso that already has text edits which sometimes causes your problem. The last thing I can think of is if you removed the "replace" lines in default-text-hacks.asm. Hopes any of that helps.
  • Modding version: WotL
"I have absolutely no idea what I am doing."
  • Discord username: Mondragon#8319

Tzepish

October 22, 2020, 03:55:45 pm #13 Last Edit: December 27, 2020, 09:28:48 pm by Tzepish
Hey guys, I'm playing around with Valhalla and FFTPatcher, and I think I've finally got them working in harmony by putting my FFTPatcher-patched ISO into Valhalla and applying asm and text edits from there (with $-uuid:replace-data-files-001 blacklisted so my fftpatcher edits aren't nuked).

My questions are about some specific ASM patches - I'm not sure what they do from their names alone, but the Valhalla descriptions are vague or "self-explanatory". After some googling I'm also not finding the answers.

EDIT: I've updated the below with my current understanding/questions (2020/12/27).

  • Battle jobs list: Valhalla says "Fix what status jobs list show in battle" - is this saying that status effects innate to certain jobs weren't showing in job descriptions during battles, and this hack fixes it? Or is it saying something like, "now correctly shows status effects active on units during battle?"
  • Formula 36 is now +PA_(X) and +MA_(Y): Looks like this is supposed to make Focus work on both physical attack power and magic attack power, but it doesn't seem to work (still only does physical).
  • Mighty sword v2: Valhalla says "Now it wont do damage if gear is about to be broken." Does this mean the ability now does either break a thing, or if there's nothing to break, deal damage (instead of doing both)?
  • Switch formation and absorb: Would it be simple enough to hack this code to remove the "absorb" part? I took a quick look at it hoping to find an obvious place to noop it out, but I didn't see one.
  • Test entd 9b items: Valhalla says "Testing purposes only" but I really don't know what it does when it's turned on. I would assume it does something weird like adding all the 9b items to your inventory or something, but I'm not seeing them there, so I'm not sure how this hack helps me "test" them.
  • Modding version: WotL
  • Discord username: Tzepish

Tzepish

More Valhalla notes:

  • There's a bug with the "Party Roster Extension" ASM hack: After battle, there's a good chance you'll see a phantom "Curaja" (sometimes Curaga) at the bottom of every job's ability list. This happens about 75% of the time. Closing out the game and restarting it fixes this.
  • There's a bug with text editing - most of the tutorial text gets destroyed. While playing the tutorials, every text box simply appears blank or it repeats the names of the AI characters in the tutorial battle. This happens even if you blacklist the tutorial text changes and tutorial names ASM hacks. Seems to affect the "Magick" tutorial and each one listed after that. I'd still say Valhalla is superior to FFTactText for text editing though - I'd take this over the crashes.
  • You can indeed assign multiple multiplayer items to a single character in ENTD - just add all the slot values together in the unit's palette. For example, if you want to assign mp items to helm, body, and accessory, then assign palette number 38 (20 for head, 10 for body, 8 for accessory).
  • For Treasure Hunter multiplayer items, note that the unlabelled flag activates 9b items for the rare slot only - the common slot will still only contain normal items. In my mod, I had "Treasure Hunter always finds the rare item" and I did that by copying the rare item slot to the common slot for each Treasure Hunter tile. That didn't work for multiplayer items, so instead, I hacked the "Treasure Hunter rare minimum brave" ASM hack to use 100 Brave instead of 20.
  • Modding version: WotL
  • Discord username: Tzepish

Daykeras

I can't seem to get this to run with the provided files. Does anyone have the Python Deps file or perhaps a working version? I get a ton of errors when I run the .py file.
  • Modding version: PSX & WotL

Nyzer

Ugh, of course it got taken down after I didn't think to back it up myself. Well, I don't have the original deps folder or anything, so I don't remember what was in it. However, I did install Valhalla on my laptop some time ago, and I do have a folder in it labeled "python". I've removed everything that comes directly with Valhalla, and hopefully that was all that was needed. I'm adding this link to the first post now, as well.
  • Modding version: Other/Unknown

darkskyx

April 09, 2022, 11:23:12 am #17 Last Edit: August 28, 2023, 08:32:42 pm by darkskyx
Hello. I'm trying to make my first hackmod project for PSP. As I can understand, we can't use ASM directly for the patching an PSP ISO version, right?

Quote from: Mondragon on April 17, 2020, 05:28:57 pmI've finally got everything to work! Here's a quick introduction on how to use all of its functionality based on what was included in the guide and my own research.

(...)

This is complicated to understand for me (maybe people like me would need a video-tutorial), but as I understand there is a way to make ASM patches with Valhalla? All I need is to get this hack... (probably it won't work even fixing it but +1 character/job would be nice) or maybe this other hack code as these are useful for my issues.
I have problems mostly with Onion Knight/Ninja with hardcoded skills that I don't know if we could fix. I also saw another Mime ASM that was great. Could you help me if it is possible to make it work?

I also found there is a patch-builder called TacticsCrafter that uses LUA to patch, but I'm not sure if that will "translate" ASM patches.

Edit: I know it wouldn't be easy. The best ASM for me would be to be able to relocate to sprites formations + their linked portrait. This would lead to more character creation.
  • Modding version: WotL

✪ Emergence 2 for PSP (EN/ES) - Play it now! ✪
A vanilla+ experience for PSP. Actual patch: 1.0+. More fixes in v1.1!
  • Discord username: darkskyx#9825

Nyzer

It's not that simple. Any time WotL changes anything about a section of data, the ASM patch will not do what it's supposed to on the PSX version. And those changes can be as simple as inserting one more byte in the middle, or relocating a function to another area.

Tzepish and Nax may have some fixed hacks ready to go, though.
  • Modding version: Other/Unknown

SilverRegret

hello,
i just want to ask, when i try mod my WOTL iso, when i try encode text file,
it always says :

CPU cores detected: 4
Encoding: spell-mes
  Rebuilding:
list index out of range

the fftwotl-patched.iso then always freeze on text. can anyone help me perhaps on what did i miss?