Please login or register.

Login with username, password and session length

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Xifanie

Pages: 1 2 [3] 4 5 ... 13
Hacking/Patching Tools / pSX Frontend
« on: October 03, 2014, 11:40:16 PM »

The topic speaks for itself.

It allows you to do really nifty things to setup pSX for many games, hide the console window, different memory cards for each game (!!), different settings for each game, auto-load quicksave on startup, etc.
Just figured at least one person using pSX would appreciate this.

I always made shortcuts before to auto-load an ISO, but I'll be using this from now on.

PSX FFT Hacking / Soldier Office Upgrade
« on: September 29, 2014, 05:09:19 PM »

Soldier Office Upgrade 1.02
~works on console~

Microsoft Excel 2007 or equivalent

This hack allows you to set a price in the Soldier Office, and a unit will be generated given variables specified in the provided spreadsheet. It is highly customizable, and has been tested on console. There are 2 main sheets which will be explained in detail to give you a better idea of how to configure the spreadsheet for your ideal Soldier Office. You can find the download link at the bottom of this post.

FFTactext Edits

Release Information
1.02 (2015/04/02)
- Fixed a bug where the shop progression required was 1 point higher than specified in the spreadsheet
- Fixed a bug where you could still hire generic male/females squires even though no units were available to purchase
- Fixed a bug in the spreadsheet where the "Max Price" specified in the spreadsheet was ignored and set to 99,000,000
1.01 (2014/09/30)
- Reversed buttons to increase the price with R1/R2 and decrease it with L1/L2
1.00 (2014/09/29)
- Initial release
Known Bugs
- You might end up with a Chemist with Throw item equipped, Ninja with Two Swords equipped and the like. There are no plans to fix this.

PSX FFT Hacking / pSX 1.13 Bug
« on: September 26, 2014, 01:35:49 PM »
So, I was debugging my hack this morning, and noticed something REALLY strange going on. I had half-words stored as 0xFFFF when breakpointing, and barely above 0 otherwise.

After 2 hours of trying to figure it out, I finally realized this:

The immediate in slti/sltiu is SIGNED in non-breakpoint mode (normal), and UNSIGNED in breakpoint mode.

I was checking if a value was less than 0xFFFF and setting it to 0xFFFF if it wasn't. At least, that was until I remembered that it would actually check if the value was under -0x0001. So in breakpoint mode everything was running as I wrongly expected.

If something isn't working as expected when breakpointing, that might be why.

News / Forum Reorganization
« on: September 17, 2014, 03:25:50 PM »
This is something I should have done some time ago, but oh well, now it is finally done:
  • Made New Project Ideas its own section;
  • Merged Works in Progress with Progressing Patches;
  • Moved FFT Arena to Completed Patches;
  • Made PSX FFT Hacking its own section (previously Final Fantasy Tactics Hacking);
  • Made War of the Lions Hacking its own section;
  • Made Hacking/Patching Tools its own section;
  • Added a redirect to the wiki Tools page as Download Tools under Hacking/Patching Tools;
  • Moved and renamed Non-FFT Mods as Non-FFT Modding to its own section under Modding;
  • Moved and renamed FFT: Advance Hacking as FFTA/FFTA2 Hacking to its own section under Non-FFT Modding;
  • Renamed the General board to The Lounge;
  • Created Final Fantasy Tactics under The Lounge for general FFT talk;
  • Reorder boards inside categories and child-boards inside boards.

The Lounge / MOVED: Help! ASM hacking of Tactics Ogre for PSP
« on: September 17, 2014, 03:03:14 PM »

Final Fantasy Tactics / Need topics moved to this section? Ask away!
« on: September 17, 2014, 02:58:58 PM »
I created this section because people usually can't decide whether to post in General or Spam for FFT stuff...

A lot of people sadly have the misconception that General is for non-FFT stuff and thus FFT stuff should go in spam, where people won't take the topic seriously.

So if I missed anything, just link your topic here and I'll move it for you.


News / IRC Server Migration
« on: August 31, 2014, 08:11:17 AM »
We changed IRC server; not something we chose, just another thing we were told last minute.

I updated the IP address of, but if you still can't connect, you should try flushing your DNS. Alternatively, you should be able to directly connect to the server's IP:

PSX FFT Hacking / ASM Hack Proposals (for modders and ASMers)
« on: August 14, 2014, 09:30:56 PM »
- Do not request hacks in this topic. This topic is here to discuss ideas beneficial to everyone, not just your own personal patch. To make a request, go HERE.
- People's opinions are welcome, but mostly modders', because after all, they're the ones who will use the hacks. Speak up!
- If you don't understand how video games work, refrain from mentioning your crazy extravagant ideas.

Current list of proposals:
No progress - In progress? - Completed

Why this topic? I think we need to discuss more about the hacks we make rather than just being like: "Here, I made dis." I'll update the topic as people submit their ideas.

With this topic, you can:
  • See if your idea is worth it or not
  • Get opinions about specifics of the hack
  • Potentially get an ASM hacker interested in making the hack

October 15, 2015 new!
Remove Monster Skill by Xifanie

Remove Monster Skill. Do not make it innate, remove it entirely. Should be simple and allow permanent use of Monsters' 4th skill without any issue unlike making it innate.

November 20, 2014 No progress
New Options by Xifanie

Reallocate "Battle Menu" text to add more space for entirely custom new options for custom ASM hacks.
Of course, this would only be used for player-related options, and the ability to turn esthetic hacks on or off.

For example, a new option for Excessive passive recovery is not displayed:
15 Display excess passive recovery

October 29, 2014 In progress?
Alternate Animations by Xifanie

Assign a different animation for abilities based on the sprite type to allow things such as flawless animations for Blue Magic (humans using monster abilities), monsters using human reactions, and others.

I would suggest a half-word for the ability ID, one byte for the sprite type (1 bit per type), and all the regular animation bytes. I've never messed with those, but I'm guessing that's all there is to it.

October 8, 2014 No progress
Alternate to Crystallization by Choto
In progress? by Choto (last updated: October 25, 2014)

When a units death timer runs out, it's set to "knocked out" or the alternating stars over guests when they're dead. At this point the unit would not be revivable for the rest of the battle, and when the party returns to the formation screen, their character would be blacked out and set to "missing" (which would probably be changed to "injured" or something). After a some amount of days, the unit would heal and become usable again. It could be done pretty easily using the vanilla proposition data.

So this would effectively be a temporary time-out when a unit dies in battle. It would encourage building a larger party and allow you to play more loosely and let units perma-die knowing they won't be erased, just unusable for a short while.

September 20, 2014
"Reflect" Reaction Ability bounces offensive spells back to the caster by DuxorW

% Brave trigger, would only work with offensive spells.

Would it require the reflect status to have a chance of activating?

September 8, 2014
Cancel "Move" after confirmation by Vaan and Toshiko

Allow the player to cancel their "Move" if the targetable area doesn't suit them after all. This would only involve pressing X (Cancel) once more, as it is how it works in all other SRPGs with the feature.

September 4, 2014
Soldier Office Upgrade by Xifanie
COMPLETED by Xifanie

September 4, 2014
Treasure Box Upgrade by Xifanie
In Progress? by Pride (last updated: October 23, 2014)

As it stands, if a unit turns into a treasure box, it will pick any of the equipped item to be chosen as the reward. If no items are equipped, a chemist item is randomly generated.
The idea would be to give monsters and generic humans new drops that would be based on their level. The higher the level, the least likely to randomly get a lower level item.

For example, these chocobos would only ever drop one of those items.:

  • Potion (lvl 1)
  • Phoenix Down (lvl 13)
  • White Robe (lvl 26)
  • Feather Mantle (lvl 50)

I was wondering about how to have the item randomly generated; here's just and idea.
Level 1 to 12: 1/1 Potion
Level 13: 12/13 Potion, 1/13 Phoenix Down
Level 26: 12/26 Potion, 13/26 Phoenix Down, 1/26 White Robe
Level 50: 12/50 Potion, 13/26 Phoenix Down, 24/50 White Robe, 1/50 Feather Mantle

September 4, 2014
Treasure Hunter and Jewel Hunter support abilities by Xifanie

Treasure Hunter: Any target the unit kills is doomed to become a treasure box
Jewel Hunter: Any target the unit kills is doomed to become a crystal

August 16, 2014
Roster Reorganization by Xifanie

This hack would allow the player to create a custom order of units to view in the formation screen, and potentially also the order of selectable units in a squad for battle.

How do we do it? We cannot simply copy/paste the data inside the formation because it causes many glitches. I suggest either creating a new "Order Unit" list, or use "Number" or something else to make the game order the units as we want.
I was thinking the units could be moved around with a controller button combination as thus increasing/decreasing the list position, but all buttons have a function by default.

August 14, 2014
Excessive passive recovery is not displayed by Xifanie

This hack would make it prevent displaying HP/MP regeneration if you are already at full HP/MP with: Regen, Move-HP Up, Move-MP Up. I'm no good with formula stuff that isn't documented, so I'd rather leave this to someone else.

If a unit has 765/800 max HP, while regen heals for 1/8th max HP, should it display a regeneration of 35HP or 100HP?

March 11, 2014
Charge and Delay by Xifanie

Original topic:

All abilities would have a charge time, from 0 to very long, and would delay the user by a certain amount of CT after the skill revolves.

News / New accounts registration
« on: June 16, 2014, 05:31:00 PM »
There seems to have been an issue with the server being unable to send e-mails, and thus everyone trying to register was unable to so during the last 12 days.
I was only made aware of the issue yesterday, and it seems I was able to fix it...

I had SMF re-send activation e-mails for users that tried to register in the past 12 days, and it looks successful because just now one of those users posted. \o/

Sorry for the inconvenience.

PSX FFT Hacking / Charge and Delay ASM hack proposal
« on: March 12, 2014, 01:11:14 AM »
This would essentially rid the game of the MP system.
All abilities would have a charge time, from 0 to very long, and would delay the user by a certain amount of CT after the skill revolves.
The hacking itself would require changing the 1 byte CT value into a 2 bytes half-word.

Movement: 80CT
Act: 80CT + Ability Delay
Movement + Act: 100CT + Ability Delay
Wait: 60CT

Ability Delays would be 0-255 CT (using the MP cost field)

For example:
A Wizard gets its turn at 500CT
It uses a very strong spell without moving, Fire 4, which has a Delay of 120CT
500CT - 120CT (Fire 4) - 30CT (act) = 350CT
But, the "Charging" status freezes CT, so it only starts going up again after the spell goes off.
So the Wizard only gets a new turn 120CT after the spell was successfully (or unsuccessfully) cast.

Abilities could also have the power to lower the target's CT up to -100, or 400/500CT. If it is already at 400 or lower, it won't lower it further.

Event Editing / Updated CONFIG.INI and Event Instructions section
« on: January 15, 2014, 11:02:37 PM »
A LOT of changes were recently made. Many instructions were altered, 50 new ones were found... so you really have to update your CONFIG.INI.

Sadly, right now EasyVent Super Perfect does not have the updated information which you can find here on the wiki

All the changes are listed on there. But we aware of the serious lack of compatibility: You will have to compile your events using your old CONFIG.INI and decompile them using the new CONFIG.INI.

Have fun everyone!


PSX FFT Hacking / .xdelta format instead of .ppf
« on: December 16, 2013, 12:56:29 AM »
I'm making this topic because, well, ppf sucks.

If you want to give it a try:

  • Great compression*
  • Much faster patch creation (about 2-3 faster than PPF-Studio WITH compression)
  • GUI can associate to .xdelta files for quickly applying patches
  • Copies surrounding data to save file size, and avoid "raw patching" copyrighted data (as it stands, PPFs from shishi extended images are illegal)
  • Makes the image match the filesize of the original one used for creating the patch if it's too short
*JotF patch: .xdelta 4mb raw / 3.4mb 7zipped ... .ppf 20.4mb raw / 5.9mb 7zipped

  • Cannot be patched on unclean ISOs
  • The GUI is not official, and thus Windows only
  • Linux version of xdelta might be buggy

If we use .xdelta alongside FFTOrgASM .xml files, I don't see the necessity of using PPF anymore. Of course, I can't force anyone... but I always hated that we'd provide patches contained copyrighted data like that.

Help! / Don't forget to mark your topic as solved!
« on: December 14, 2013, 12:33:41 PM »
So that people can help you better by not wasting time reading issues that were already solved, we ask you to ―Mark As Solved― once you received an appropriate answer to your issue/question.

PSX FFT Hacking / World/Battle Debug (new, stable codes!)
« on: December 13, 2013, 10:30:59 PM »

Gameshark Codes

World Debug

D0067000 8A44
8016EA02 00A0
D0067000 8A44
8016EA0A 00A0
D0067000 8A44
8016EA12 00A0
D0067000 8A44
8016EA18 A00F
D0067000 8A44
8016EA1A 0008
Battle Debug

D0067000 8888
80166D6E 0050
D0067000 8888
80166D76 0050
D0067000 8888
80166D7E 0050
D0067000 8888
80166D84 502C
D0067000 8888
80166D86 0003


Code: (xml) [Select]
<?xml version="1.0" encoding="utf-8" ?>
<Patch name="DEBUG World: Activate">
<Location file="WORLD_WORLD_BIN" offset="8EA02">A000</Location>
<Location file="WORLD_WORLD_BIN" offset="8EA0A">A000</Location>
<Location file="WORLD_WORLD_BIN" offset="8EA12">A000</Location>
<Location file="WORLD_WORLD_BIN" offset="8EA18">0FA0</Location>
<Location file="WORLD_WORLD_BIN" offset="8EA1A">0800</Location>
<Patch name="DEBUG Battle: Activate">
<Location file="BATTLE_BIN" offset="FFD6E">5000</Location>
<Location file="BATTLE_BIN" offset="FFD76">5000</Location>
<Location file="BATTLE_BIN" offset="FFD7E">5000</Location>
<Location file="BATTLE_BIN" offset="FFD84">2C50</Location>
<Location file="BATTLE_BIN" offset="FFD86">0300</Location>

World Debug Menu

1. Move
2. Formation
3. Brave Story
4. Tutorial
5. Data
6. Option

7. Battle
A menu will appear asking you to enter a number. This number will trigger a battle at the given map number.
Check here for a list of maps:

8. Flag
You will be presented with 10 flags which you can edit from 0 to 9999, but you can also scroll up and down to edit flags 0 to 1023.
Flag 0 automatically reverts to 0000: this is perfectly normal.
To scroll up/down pages, press ⬜ + ↑ or ⬜ + ↓
Check here for a list of currently known flags:

It would be cool to be able to edit the values in hex, and from 0x00000000 to 0xFFFFFFFF. Of course, that would be trouble to hack considering that memory editing can do just as well (for emulators with that capability & Gameshark).

9. ENTD Team
Loads the specified ENTD slot as your team. Note that this is highly unstable on console.
Research is pending to find what causes the console and emulator to crash with some ENTDs.
To find a list of ENTDs, load your ISO using FFTPatcher and select the ENTD tab. ENTD IDs are listed in decimal, so you will have to convert them back to decimal.

Battle Debug Menu

1. AT
2. Unit List
3. Option

4. Debug
Allows you to edit the stats of characters. Originally only allows editing so many stats, even though more should technically be available as more are selectable. Press L1/R1 to switch between characters. Note that PA/MA aren't listed down there... and they might prove difficult to potentially implement with a hack.

0x00 = Level
0x01 = Experience
0x02 = Job (cannot be selected or edited)
0x03 = Brave
0x04 = Faith
0x05 = Zodiac Sign
0x06 = Move
0x07 = Jump
0x08 = Speed
0x09 = Right Hand (cannot be edited)
0x0A = Left Hand (cannot be edited)
0x0B = Head (cannot be edited)
0x0C = Body (cannot be edited)
0x0D = Accessory (cannot be edited)
0x0E = Primary (cannot be edited)
0x0F = Secondary (cannot be edited)
0x10 = Reaction (cannot be edited)
0x11 = Support (cannot be edited)
0x12 = Movement (cannot be edited)
0x13 = HP
0x14 = MP
0x15 = CT

  • I've been developing a hack to allow new stats/equipment/abilities to be edited, but it needs to be refined. As it stands, editing and saving items/skillsets/R/S/M is no issue.
  • I want to figure out how to recalculate HP/MP when changing equipment (it already updates when altering your level).
  • I want to figure out how to force the equip change routine to recalculate AI skills, sword requirement and other things.
  • I want to figure out how to give the player the ability to edit PA and MA, which is currently totally impossible, because there is no existing cursor for those two stats. The cursor data can be found in battle at: 0x801c6044 (the first word is the location of the stat).
  • Speed is reset after leveling up... rather annoying.

PSX FFT Hacking / Rip It Yourself and Compatible FFT Image Checksums
« on: November 27, 2013, 10:04:32 PM »
Please help make a list of the compatible checksums, you can use things like HashTab to calculate them for you, just state the program you used to rip the image, or if you found it on the net!

Note: Only for unaltered images! ―no shishi restructuration―

Recommended Ripping Programs
  • ImgBurn
  • Alcohol 120%


Ripped using CDRWin v4
CRC32       BCC713AD
MD5 22BAF5027D68E7B98EE3A4151A78D56C
SHA-1 F10EBEDC17B4A8B93DE7D426792CF32B5099EA9B

Ripped with Alcohol 120%
CRC32       2E0394ED
SHA-1 3374C855F804BB84CB3975B3E1FC507380ACA44A

Found Online
CRC32       377F6510
MD5 B156BA386436D20FD5ED8D37BAB6B624

Found Online
CRC32       7EAFA3D9
MD5 5214B61D6711E72D010D7D3DAD735BB8


Even filling this section is important; if you patched successfully with a project patch on this website and you couldn't play, please provide your checksums so people know it won't work.

PSX FFT Hacking / Synthesis Shop 1.00
« on: November 19, 2013, 12:28:59 AM »

Inspired from FFIX

Turn the Fur Shop into a Synthesis Shop.


Chameleon Robe + Leather Vest + 3000gil = C Bag
5 Potions + 200 Gil = Hi-Potion
3 White Robes + Crystal Mail + 50000gil = Venetian Shield

The fur shop's sold inventory would be automatically calculated based on the player's inventory. To not screw things up, poach items could be sent directly into player inventory instead of going through the Fur Shop, but it might still be possible to have it work without that.

There should probably be a new list of prices for each item or simply use the good old half or full price of the item, alongside the consumption of the other items in the player's inventory.

Event Editing / Camera Helper v1.01
« on: September 27, 2013, 02:51:34 AM »
This is an Excel 2007+ Workbook to help you create your Camera instructions. ***Requires VBA

It could get easier, but I think it will be easy enough with this.
I don't think I need to explain anything; download and enjoy!


  • Added detailed views of the maps to help locating tiles
  • Added Buttons to easily fetch the tile's height and change angles

  • Fixed a bug where the Z value was calculated incorrectly
  • Added Depth Function to help with units in water or floating

News / IRC server downtime
« on: September 04, 2013, 04:50:40 PM »
I'd like to apologize for the server downtime which start 2 hours ago. While trying to get the support to fix the issue, I found out the company shouldn't even be hosting IRCD, and sadly, we have to backup everything and move to a new server.

Toshiko & I are working our asses off to move everything to a new server, so please hang in there. It will still be on, don't worry.

Quote from: Chat log with xzibition's support
*** Processing connection to
*** Looking up your hostname...
*** Checking Ident
*** Got Ident response
*** Found your hostname
[ ] Please open a ticket via for support. - Ask question in here and wait for an @ please or open a ticket.
Topic set by layzkat!layz@admin.xzibition on Mon Jul 15 2013 05:49:11 GMT-0400 (EDT)
<ChanServ>: Welcome to our support channel, Xifanie.
<ChanServ>: We will never ask you for your shell or bnc passwords. Never give out your passwords.
<ChanServ>: Please state your problem in the channel and wait for an OP(@) to assist you.
<Xifanie>: I have my server running on nova... No IRC clients can connect to nova, yet the server is running. Why?
<layzkat>: your IP looks nulled by the datacenter
<layzkat>: did it just get nulled?
<Xifanie>: about 20min ago
<layzkat>: they usually auto unnull unless the attack was bad
<layzkat>: I will check your IP and email them in a couple hours if its still nulled
<Xifanie>: Well, 45min and obviously not coming back up. Not even 2 months and I can't say I'm pleased with my experience with xzibition so far.
<bryan>: We don't control the nulling.
<bryan>: Our upstream provider does.
<Xifanie>: What's the big deal about contacting them? They're going to bite? I can't believe I'll have to wait HOURS
<bryan>: if we request it be unnulled, and the attack is still ongoing, there is a good chance they'll null it for 24-48+ hours
<Xifanie>: what is the attack?

Spriting / Xifanie's sprites (french maid)
« on: August 09, 2013, 10:20:49 PM »
This might be my only submission forever... oh well.

French Maid

Well this is essentially a sprite of... me. As a french maid. Yup.

All tested in Shishi and Water frames tested in-game.
Full frame sheet here

Event Editing / Event Editing directly to a savestate (pSX only)
« on: May 07, 2013, 12:25:58 AM »
This tutorial assumes you can already use Xifanie's event compiler/decompiler or RavenOfRazgriz's EasyVent editor. If you don't, learn from Elric's tutorial here. This method will only work with pSX emulator's quicksaves, and not Epsxe's savetates because the are compressed... It might work if you manually uncompress the savestates every time and find out the right offset where the event starts in those file types, but I'm not going to cover that.

Make you have the latest CONFIG.INI, it helps to have all the instructions information up to date.

You will need to copy CONFIG.INI, the compiler, decompiler (and EasyVent if that's what you use), to your pSX \saves\ folder. You can make a copy anywhere, but it's less trouble if the compiler is in the same folder as the quicksave for this purpose.

Edit your \saves\ CONFIG.INI and set:
Code: [Select]
TESTEVT='quicksave_SCUS_942.21_1.psv'         // Or whichever custom quicksaves your patch uses
Offset='0004A96C'                             // This is the address where events are always stored in the quicksave
I also recommend setting TEXTFILE= to the complete filepath where your event.txt or whichever file you're editing is at. This will make both compilers able to work from the same file, but it's not mandatory.

* To use the new method, you will have to apply the newest version of my Event Instruction Upgrade hack. More information about it on the wiki.

That's it, you're done setuping! Now on to the real deal.

Savestate Event Editing

Compile to TEST.EVT and import
Run the compiler in your main, TEST.EVT folder to compile your recently edited event.
Import your TEST.EVT to your FFT image using CdMage/cdprog.

Create your quicksave
Run the game, and load your event. Reach the point in your event where you want to start editing and make your #1 quicksave there (F6 key). I recommend making a quicksave while a dialogue box is still opened, it's simply safer this way, though again not mandatory. Don't save on the loading screen or before, your event has to be loaded, i.e. running. This means you still have to write some instructions first. If you're lazy and don't want to code anything before quicksave editing, you can simply make Pause() your first instruction, quicksave when you're sure the event has loaded, then add your instructions and only remove the Pause() after you're done editing your quicksave. Note: Pause() require the press of confirm/cancel/select to resume the event.

Re-setup your event for quicksave editing
Copy your event information to your pSX \saves\ folder. (usually event.txt)
Comment the Offset() with // ; This will force the compiler to use the Offset in CONFIG.INI instead, which you should have changed to 0004A96C at the start of this tutorial.
Code: ("Example") [Select]
//Offset(x00002000)Why comment it? Trust me, you want to keep that Offset(). You probably won't remember on your own.

Edit your event
Now you can just view what you need to fix, and then edit your event accordingly... but remember, you cannot touch anything that the game already read. Editing all the text data is fine, but not the instructions before the point reached in your savestate.

Now you can compile your event using the compiler in your /saves/ folder.

Load your quicksave, and see your edits, if they don't suit you, edit away again!

At this point you can keep making your way into the event, making a new quicksave after every part you fix, until the event's over.

Return to TEST.EVT format, compile & import
Now your event should be all perfected.
Copy back your event information to your TEST.EVT folder. (usually event.txt)
Make sure you remove the comment // from the Offset(). Only now can you compile your event to your TEST.EVT and import it back to your FFT image. If you reload your event now, it should work just like it did during your savestate editing.

Pages: 1 2 [3] 4 5 ... 13