• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
August 14, 2020, 03:55:23 am

News:

Use of ePSXe before 2.0 is highly discouraged. Mednafen/RetroArch is recommended for playing/testing, pSX is recommended for debugging.


FFT Patcher .478 Source Code

Started by formerdeathcorps, May 14, 2011, 03:57:55 am

Choto

Thanks much for doing that Glain. I may not get to it for a little while though. Summer job is keeping me busy and the fall looks even busier. But once I get through with the JoT5 hacks i'll move to this!

Choto

July 27, 2014, 12:15:52 pm #221 Last Edit: September 30, 2014, 05:33:02 pm by Choto
Ok Glain, I was doing some work with the effects editor and I wound up having to update to visual studio 2013 anyway, so now I just need to find out how to connect to git and I should be good to go. I read into it a little bit but again, time is not on my side. Hopefully I'll be able to do this soon and we can get to work :)

Note to self/Glain: Make a note about not being able to switch the skillset of generic human jobs. Rufio said it breaks stuff.

Choto

Triple post like a boss.

Glain! I managed to connect to GIT finally. I uploaded a commented change to the beginning of FFTPatcher -->Editors-->AllAbilitiesEditor

So I guess now it's just... make your changes and make sure they work before pushing to the repository? Anything else I should be aware of?

Glain

Looks like I successfully got your changes.  I went into the git shell and just ran "git pull" from my local FFTP project directory and it got your change.  I'm not sure how to do a pull from visual studio... it looks like you can commit from there though.

From what I can tell, "pull" is supposed to get the latest changes from the repository and merge them into your local workspace.  So I'd say that when you're ready to make changes to the repository, do a pull to make sure you have the latest version of everything, and resolve any conflicts that may arise (there probably won't be any most of the time, but when two users edit the same file it can get a bit interesting) before doing the commit.

I think that's about it.
  • Modding version: Other/Unknown

Xifanie

Does this thing even read FileList.txt?

I tried adding new files to it:
[indent=2]0001685 , >:\EVENT\UNIT2.BIN
0001717 , >:\EVENT\UNIT3.BIN
0001749 , >:\EVENT\WLDFACE2.BIN
0001813 , >:\EVENT\WLDFACE3.BIN[/indent]

Saved, imported the file back... and nothing. FFTOrgASM was completely ignoring the new settings. I also tried changing the offset of an existing file, and the data was still written at the old offset.

I tried editing Jobs.xml and imported that; it worked just fine.

I really wish I could add my own files... this would save me a lot of trouble. Then again I guess I can write past an file up to my new files. Not the best, but could work.
  • Modding version: PSX
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

Glain

It doesn't look like anything in FFTP actually reads FileList.txt, no.  I did find a constant in the code for it (in Resources.cs), but nothing seems to reference the constant.
FFTorgASM seems to translate what's in the File attribute of the <Location> tag by parsing the value to a constant in the Sectors enum:


sector = (PsxIso.Sectors)Enum.Parse( typeof( PsxIso.Sectors ), fileAttribute.InnerText )


If we wanted new files to be recognized, I suppose we'd have to modify the Sectors enum, or change the code to look at the text file (if it couldn't find the file in the enum?).  I actually wasn't even aware that the text file existed.

And yeah, I doubt anything would stop you from just writing past the end of a file into another file, although it seems the positions of sectors in the ISO may change based on the ISO type... (see IsoPatch.cs)
  • Modding version: Other/Unknown

Grond

Posting these two patches in here as requested.
<Patch name="Half of MP multiplies MP cost by XX / 128">
<Description>Make sure to fill in both X values for the drop-down box below
(with the same value; one affects displayed MP cost and the other affects actual MP cost).

90% is X = 74
83% is X = 6B
80% is X = 67
75% is X = 60
70% is X = 5A
66% is X = 56
60% is X = 4D
50% is X = 40 (default)
40% is X = 34
33% is X = 2B
30% is X = 27
25% is X = 20
20% is X = 1A
17% is X = 16
10% is X = 0D
If you want the multiplier to be greater than 100%, add 0x80 to the above number.</Description>
<Location file="BATTLE_BIN" offset="f2f90">
f800a88f
0d009190
05000011
</Location>
<Variable name="X" file="BATTLE_BIN" offset="f2f9c"/>
<Location file="BATTLE_BIN" offset="f2f9d">
  000234
19005100
00000000
12100000
c2890200
92060608
00000000
</Location>
<Location file="BATTLE_BIN" offset="f3000">
80004230
06004010
00000000
</Location>
<Variable name="X" file="BATTLE_BIN" offset="f300c"/>
<Location file="BATTLE_BIN" offset="f300d">
  000234
00000000
19004400
12100000
c2210200
dcf60508
00000000
</Location>
<Location file="BATTLE_BIN" offset="116b60">
00680508
00000000
00000000
00000000
</Location>
<Location file="BATTLE_BIN" offset="11aa34">
e4670508
00000000
00000000
00000000
00000000
</Location>
</Patch>


<Patch name="Short Charge multiplies ability CT by XX / 128">
<Description>Make sure to fill in both X values for the drop-down box below
(with the same value; one affects displayed CT and the other affects actual CT).

90% is X = 74
83% is X = 6B
80% is X = 67
75% is X = 60
70% is X = 5A
66% is X = 56
60% is X = 4D
50% is X = 40 (default)
40% is X = 34
33% is X = 2B
30% is X = 27
25% is X = 20
20% is X = 1A
17% is X = 16
10% is X = 0D
If you want the multiplier to be greater than 100%, add 0x80 to the above number.</Description>
<Location file="BATTLE_BIN" offset="f3028">
f000a98f
01000234
05002215
</Location>
<Variable name="X" file="BATTLE_BIN" offset="f3034"/>
<Location file="BATTLE_BIN" offset="f3035">
  000234
19005000
00000000
12100000
c2810200
9d060608
00000000
</Location>
<Location file="BATTLE_BIN" offset="f3050">
05004010
</Location>
<Variable name="X" file="BATTLE_BIN" offset="f3054"/>
<Location file="BATTLE_BIN" offset="f3055">
  000234
19005200
00000000
12100000
c2910200
1cf20508
00000000
</Location>
<Location file="BATTLE_BIN" offset="115864">
14680508
00000000
00000000
</Location>
<Location file="BATTLE_BIN" offset="11aa6c">
0a680508
00000000
00000000
00000000
00000000
</Location>
</Patch>

Choto

December 13, 2015, 10:50:01 pm #227 Last Edit: December 14, 2015, 08:12:55 pm by Choto
Okay, been a long time. I've been playing with the patcher source code over the past year or so and added some stuff. I'm hoping there aren't too many issues and please let me know if there are, and I will fix them up if possible. I don't have an extensive changelog but here's the general rundown:

FFTOrgASM
-The program now loads all files into a listbox on the left hand side. There's also an "All" option to view a master list of all patches in all files. When the patch button is clicked, it will patch whatever patches are selected in the right hand side listbox. This means if you select patches in "All" and then switch to a specific file and patch from there, only the patches from that file will be applied.
-The program now reports any file that did not load correctly because of formatting errors. It also tells you generally where the error is, but in a dumb way unfortunately.
-The program now patches to savestates. It won't patch to any file that's not loaded into the RAM of the savestate already though. You have to patch iso for that.
-The conflict checker is built in just for convenience.
-I've tried to compile all the ASM's i could into the default hacks, so there should be some more in there along with fixed versions.

FFTPatcher
-Now Patches to SaveState same as FFTorgASM
-Item Effects are now editable.. I can't remember if they were or not in the last version.

ShiShiSpriteEditor
-MON, RUKA, and both of Altima's forms animations are viewable.
-WEP frames and animations are viewable... but I'm pretty sure they don't load correctly.

FFTacText
-I think I messed with this a little bit looking for the .dte error but didn't get anywhere. I recommend using the last known working version which I think is the one included in .457?

I think that's all. May not be perfect or have bugs but I hope it helps. I didn't want it to continue sitting on my hard drive out of reach of people who could use it. Let me know if you encounter bugs and I'll try to list them and fix them.

Edits: Seems like Jumza is having trouble opening them. I should mention that you need to update your .net framework to 4.5 for the new FFTorgASM.

Jumza

That's totally sick dude! I'll try this out ASAP and let you know what I find!
  • Modding version: PSX
Check out my project ~ FFT: A Stone's Ripple : http://ffhacktics.com/smf/index.php?topic=10857.0
The demo was just released! Come check it out!
Nyzer: Alma teleports out of her own possessed body.

Xifanie

Really nice stuff, although I wish you would've also included Throw/Jump/Math Skill Effects as those are still useable in events without sacrificing an active ability slot. :p

Omg @ Shishi: How the hell did you figure out the SEQ format? I was never able to.
Spriters gonna be happy!
  • Modding version: PSX
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

Elric

  • Modding version: PSX
<@Angel> Teach a man to fish and he'll open up a fishery to compete against yours.


Journey of the Five Youtube ChannelThe Lion War Current Status
  
Jot5 Leader :: Eventer :: OtherTLW Leader :: Eventer :: Other

Valkirst

These are fantastic updates, I really could use the animations for those other sprites.  :mrgreen:
  • Modding version: PSX
Completed Sprites
  • Discord username: Valkirst

Argy

Great work Choto!! Choto, is there anything he can't do!! Keep up the great work.
  • Modding version: PSX
Kotetsu Quad Killer!!

nitwit

Necrobump, but could someone put this link in the first post?

https://github.com/Glain/FFTPatcher

@Maintainers: if I were to add an optional frame for previewing ability damage and hit percentage as you modify the x/y values for it, and a frame that previews stats at specific levels you can choose as you modify growth and multipliers, how would you prefer it done?  Not saying that I'll do it, but I've been thinking about it.
  • Modding version: PSX

Darkholme

FFTPatcher is now on GitHub.

Nice, about time!

I see some updates have been made, So, when is the next release going to be? And where are the compiled uploads on there like most other GitHub repos?

The newest one I've got a is 0.489

Elric

It's been on github for over 2 years.
  • Modding version: PSX
<@Angel> Teach a man to fish and he'll open up a fishery to compete against yours.


Journey of the Five Youtube ChannelThe Lion War Current Status
  
Jot5 Leader :: Eventer :: OtherTLW Leader :: Eventer :: Other

Darkholme

Oh. I remember people talking about it a few years back (probably 2011 or so), and then I thought nothing came of it.

Emmy

Reporting a bug with FFTorgasm's Conflict Checker.  I had 2 hacks that were written to the same location that the program didn't pick up on.  Any chance of a fix of this?

Here's an example of 2 conflicting hacks it doesn't pick up on:


<Patch name="Blank Support after No charge gives unit 50% bonus damage on units that are Hasted or Reraised">
    <Description>Affects damage done by anything boosted by ATK or MATK Up</Description>
    <Location file="BATTLE_BIN" offset="11f054">
80420508
00000000
    </Location>
    <Location file="BATTLE_BIN" offset="11f204">
A8420508
00000000
    </Location>
    <Location file="BATTLE_BIN" offset="e9a00">
1980013C
942D218C
00000000
92002390
00000000
02006330
18006010
00000000
1980043C
982D848C
00000000
5A008390
00000000
20006330
06006014
00000000
5B008390
00000000
08006330
0B006010
00000000
1980033C
CE386384
00000000
40200300
21208300
C21F0400
21208300
43200400
1980013C
CE3824A4
1980033C
FF386390
17180608
00000000
    </Location>
    <Location file="BATTLE_BIN" offset="e9aa0">
1980023C
942D428C
00000000
92004390
00000000
02006330
18006010
00000000
1980043C
982D848C
00000000
5A008390
00000000
20006330
06006014
00000000
5B008390
00000000
08006330
0B006010
00000000
1980033C
CE386384
00000000
40200300
21208300
C21F0400
21208300
43200400
1980023C
CE3844A4
1980023C
942D428C
17180608
00000000
    </Location>
  </Patch>



<Patch name="Monster Talk = 2x damage in critical 2.0">
    <Description>Use this version instead of my old version.  No longer partially breaks Pride's defense hack.</Description>
    <Location file="BATTLE_BIN" offset="11f14c">
15180608
00000000
    </Location>
    <Location file="BATTLE_BIN" offset="11f154">
1980023C
942D428C
1980033C
CE386394
91004490
00000000
10008430
08000410
00000000
5A004490
00000000
01008430
03000410
00000000
40180300
CE3823A4
84180608
00000000
    </Location>
    <Location file="BATTLE_BIN" offset="11f204">
55180608
00000000
    </Location>
    <Location file="BATTLE_BIN" offset="11f0a0">
68180608
00000000
    </Location>
    <Location file="BATTLE_BIN" offset="11f1a0">
1980023C
942D428C
1980033C
CE386394
91004490
00000000
10008430
08000410
00000000
5A004490
00000000
01008430
03000410
00000000
40180300
CE3823A4
2B180608
00000000
    </Location>
  </Patch>



Note how they both write to 0x11f204
  • Modding version: PSX

Glain

*Whistles*
  • Modding version: Other/Unknown

Elric

October 02, 2016, 05:08:45 pm #239 Last Edit: October 03, 2016, 04:33:27 am by Elric
Whoa great job Glain! Are you planning to make anything else avaliable in shishi, and when can we expect the next update?
  • Modding version: PSX
<@Angel> Teach a man to fish and he'll open up a fishery to compete against yours.


Journey of the Five Youtube ChannelThe Lion War Current Status
  
Jot5 Leader :: Eventer :: OtherTLW Leader :: Eventer :: Other