Please login or register.

Login with username, password and session length
Advanced search  


[2014/08/29] New steam profile field added. Add your steam ID now. Join the FFHacktics steam group.

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.

Messages - Xifanie

Pages: [1] 2 3 ... 181
New Project Ideas / Re: Idea : Side-Stories
« on: October 23, 2014, 08:09:27 PM »
I'm not quite sure how necessary that is... you can just skip Alazlam's text by pressing start.

Now skipping naming Ramza and his bday sounds quite more tedious... and then again it's just a few buttons, I mean: start, circle, circle, circle... I'm not quite sure what warrants a hack here.

PSX FFT Hacking / Re: ASM Hack Proposals
« on: October 21, 2014, 03:44:15 PM »
Gosh, wow. If it's going to be that way, I don't even care anymore. Scrap the hack.
I'm sure you know that the player can't remove temp leaving/missing/injured units.

And what about story hacks?
You're not really showing flexibility here. If you're just making the hack for yourself, you might as well keep it to yourself then.

PSX FFT Hacking / Re: ASM Hack Proposals
« on: October 19, 2014, 06:31:04 PM »
You also have to understand that if there is a gil cost, it would be easy to make it 0 gil / 10000 gil / 1000 gil per level.

PSX FFT Hacking / Re: ASM Hack Proposals
« on: October 19, 2014, 12:37:56 PM »
You could just make it like FF1, Where you can go revive your party members for a fee at the church, so there would always be a penalty. Cost would be based on the unit's level.

At this point, adding an option to a menu would be a piece of cake for me, and I could easily teach you how. The issue is what and where. Because ideally it would be somewhere with code that you can easily alter to move to your option.

Help! / Re: Changing Ramza's Default Name
« on: October 18, 2014, 03:00:16 AM »
I honestly don't know if it's in Tactext or not. The way I did it was opening the SCUS in a hex editor, searching for Ramza in hex which is 1B24303D24, then replace it by what I wanted.
You can find the hex values associated to each character on this page

Help! / Re: Random Haste Buff
« on: October 16, 2014, 08:16:12 PM »
The only thing I suspect right now is that you accidentally gave item 00 auto-haste. That or item FE/FF

PSX FFT Hacking / Re: ASM Hack Proposals
« on: October 15, 2014, 12:55:55 AM »
You might want to make sure they're not used in stuff like shops, we never know.
i.e. When checking if items are equippable in regular shops/fitting room/soldier office rename...
They likely all use the same, but better safe than sorry.

Also, I know I'm being a bitch, but that "Injured" isn't properly aligned.

I think the extra space would be best used for monsters; we have quite a bit of unused human sprites, but only Ultima Demon and Elidibs I'm pretty sure when it comes to monsters.

I definitely want to see this hack happen. \o/

New Project Ideas / Re: Idea : Side-Stories
« on: October 12, 2014, 10:11:45 PM »
Pretty sure that would be it.
I don't know what does what, so you'd have to experiment.

This will prevent other videos from playing after the intro video, replace the main video with the jobs showoff video, disable the new game video, and maybe other things.

Code: [Select]
<Patch name="Video Hack">
<Location file="OPEN_OPEN_BIN" offset="3084">00000000</Location>
<Location file="OPEN_OPEN_BIN" offset="3CAC">00000234</Location>
<Location file="OPEN_OPEN_BIN" offset="2E74">0200</Location>
<Location file="OPEN_OPEN_BIN" offset="2E80">C06E</Location>
<Location file="OPEN_OPEN_BIN" offset="2E84">9186</Location>
<Location file="OPEN_OPEN_BIN" offset="2E90">0000</Location>

Spam / Re: Quotes
« on: October 12, 2014, 09:27:14 PM »
<FactCore> Cellular phones will not give you cancer. Only hepatitis.
<CuriosityCore> What's that noise?
<Turret> Put me down.
<GLaDOS> You must really, really love to test.
<SpaceCore> So much space. Need to see it all.

Introduce Yourself! / Re: Hello!
« on: October 10, 2014, 12:44:51 PM »
People shouldn't feel bad for introducing after a few weeks, gosh... we get to greet so many people that don't make it past their introduction topic, which is really depressing.

Welcome. Don't forget to take off your titanium full plate; you could damage the furniture.

PSX FFT Hacking / Re: ASM Hack Proposals
« on: October 10, 2014, 01:04:12 AM »
That sounds fair enough.

Yes Blue team is player team.

Now, what I thought your hack crystallized units in battle, while disabling them for some time afterwards. I'm guessing there's just no crystallization then?

Yes, 0xFF for value 0xD0, like I described, what assigns "Temp Leaving"/"Missing"
0x03 to 0xFF will also display "Missing" so for your purposes I'm guessing you're planning to take one of those bytes. I'm reserving 0xFF for TLW NG+; If you didn't know, units in NG+ will be "missing" until you recruit them again.

PSX FFT Hacking / Re: ASM Hack Proposals
« on: October 09, 2014, 12:56:06 PM »
I LOVE the idea Choto, it would even allow insta-crystal moves to not be that terrible.

But, big problematics:
  • If you allow Ramza to crystalize, that's going to mess up with a bunch of victory events. Crystal/Treasure are normally non-reversible. And even if you made it, what would happen if someone picked Ramza's crystal? I think it would be better to leave him permanently unconscious and unreviveable for the rest of the battle.
  • What about the original mechanics of Crystal? AI seek crystals, but that shouldn't be too hard to fix. As far as the player is concerned: Hello free HP/MP healing from a decayed lvl1 chemist, or just from another unit when necessary, and hello mass ability crystal farming. I'd prefer Blue team units to just vanish rather than keep the current crystal mechanics activated for them.
  • I don't know where the proposition Missing graphic is located, but I hope you can create space for a new one.
  • I'm worried about our hacks conflicting; i.e. for TLW. I'm currently using 0xFF IIRC to set units as missing (0x00 = free, 0x01 = temp leave, 0x02 = missing), so it would be great if you used something else and didn't override the graphic for 0xFF. Thanks.
  • You'll have to hack out the routine which overwrites biographies to says the person died in battle.

Help! / Re: Stacking Reaction And Movement Abilities
« on: October 06, 2014, 11:05:06 PM »

You'll probably want to tackle ASM hacking for your project.
All I know is that for your Move HP+MP Up ability, I think you'll have to write to:
0x192/0x06 - HP Healing Halfword
0x196/0x0a - MP Healing Halfword


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.

Spam / Re: Super awesome game errors!
« on: October 02, 2014, 09:40:34 PM »

PSX FFT Hacking / Re: pSX 1.13 Bug
« on: October 02, 2014, 09:21:48 PM »
No, the immediate is signed. What CAN be set as signed/unsigned are the registers.
0xFFFFFFC0 will be either -40 or 4294967232 if you use slt or sltu. Just like when using addiu r2, r2, 0xFFFF, it actually subtracts 1 to r2. While it doesn't seem to affect FFT much, I've gotten values zeroed out in Valkyrie Profile entering the main menu.

PSX FFT Hacking / Re: Soldier Office Upgrade
« on: September 30, 2014, 12:04:20 PM »
Fixed; please redownload whoever downloaded it in the first place.

PSX FFT Hacking / Re: Soldier Office Upgrade
« on: September 29, 2014, 05:09:56 PM »
Help Information

Specified amount of gil that the player is spending to acquire a unit, be it a male/female recruit or a monster. It cannot go below the cheapest unit and cannot go above the Maximum Price. Using L1/L2/R1/R2, the player can edit this value to determine how much they are willing to spend.
L1: Current Price - 1 second digit*
R1: Current Price + 1 second digit*
L2: Divide current Price by 10
R2: Multiply current Price by 10
*The second digit represents the 2nd number from the left in a number. In 17000, that second number would be 7, which represents the thousands. When the price is increased, it would be increased by 1000. Ex: 17000, 18000, 19000, 20000, 21000, [...], 98000, 99000, 100000, 110000, 120000, [...], 980000, 990000, 1000000, 1100000, etc.

Bonus Points
They are used to calculate all the non-standard bonus parameters of a unit. Let's say you pay 100,000 gil for a unit with a Base cost of 25,000 gil and a cost of 100 gil per bonus point.
100,000 - 25,000 = 75,000
75,000 / 100 = 750 Bonus Points

At their full potential, each parameter will be able to reach at most about 750 points. It can go a bit beyond that because of how the hack was designed in order to balance things out, but it wouldn't be by much. This is only possible with parameters that are partly or fully randomized so that the total amount of points used on a unit remains the same to have as little waste as possible. So even though parameters can be random, you still get what you're paying for!

How much you get for your bonus points is specified in the Configuration Sheet.

Derandomization will affect certain stats to help push them towards their natural limit. It cannot go over 100%.
Let's generate a monster, which will have stat derandomization and brave derandomization allowed.

5000/20000 Stat derandomization, or 25%
10000/25000 Brave derandomization, or 40%

Stat Ranges:
Brave: 40-70
HP: 35-38
MP: 8-9
SP: 5
PA: 5-6
MA: 5-6

Now here's our monster:
53 Brave
36 HP
8.2 MP
5 SP
5.4 PA
5.7 MA

Now, it is simply calculated by applying the maximum randomized stat, minus the current stat, multiplying that by the derandomization amount, and adding back the originally generated stat:

70 - 53 = 17 17 * 40% = 6 (6.8) 53 + 6 = 59 Brave
38 - 36 = 2 2 * 25% = 0.5 36 + 0.5 = 36.5 HP
9 - 8.2 = 0.8 0.8 * 25% = 0.2 8.2 + 0.2 = 8.4 MP
5 = 5 SP 5 = 5 SP 5 = 5 SP
6 - 5.4 = 0.6 0.6 * 0.25 = 0.15 5.4 + 0.15 = 5.55 PA
6- 5.7 = 0.3 0.3 * 0.25 = 0.075 5.7 + 0.075 = 5.775 MA

Stat Bonuses
Stat Bonuses are available for HP/MP/SP/PA/MA. They are based on the Job's Stat Bonuses on the Units sheet, as well as the Stat Bonus Multiplier on the Configuration Sheet.
This is the Formula, which applies to each individual stat:
√(X Bonus Points) * X Bonus / 15 * X Bonus Multiplier

Let's try it with 160,000 bonus points for HP Bonus, 9/15 HP Bonus, and 300 HP Bonus Multiplier:
√(125000) * 9 / 15 * 300
353 * 180

63540 is the equivalent of 3.88HP bonus per level at level 1... For a unit generated with 32HP, we're talking about 35.88/32 = 112.12% HP. For those that don't know, that means 112% at level 1 all the way through to level 99.

Randomization Adjustment
This only affects non-Passive parameters.
Essentially what this does it make sure your bonus points don't go to waste because you're being unlucky, or get a huge amount of points from being lucky. You'll never get more or less for your money.

Let's take 5 non-Passive parameters with 30000 bonus points:
Parameter A: 32/63 guaranteed, 23504 points  (15238 guaranteed, 8266 randomized)
Parameter B: 16/63 guaranteed, 8506 points (7619 guaranteed, 887 randomized)
Parameter C: 0/63 guaranteed, 28390 points (0 guaranteed, 28390 randomized)
Parameter D: 63/63 guaranteed, 30000 points (30000 guaranteed, 0 randomized)
Parameter E: 0/63 guaranteed, 4573 points (0 guaranteed, 4573 randomized)
Total randomized points: 42116/97142

This number is the total amount of random points that could possibly be generated by all parameters, divided by 2. Essentially, it is a target average of 50%.
Random Adjustment: 97142 / 2 = 48571

Let's "adjust" our randomization numbers:
Parameter A randomization: 8266 * 48571 / 42116 = 9532
Parameter B randomization: 887 * 48571 / 42116 = 1022
Parameter C randomization: 28390 * 48571 / 42116 = 32741
Parameter D randomization: 0 * 48571 / 42116 = 0
Parameter E randomization: 4573 * 48571 / 42116 = 5273
Total randomization: 48568/48571

Now let's recalculate the points adding the new randomization numbers:
New Parameter A points: 15238 + 9532 = 24770
New Parameter B points: 7619 + 1022 = 8641
New Parameter C points: 0 + 32741 = 32741
New Parameter D points: 30000 + 0 = 30000
New Parameter E points: 0 + 5273 = 5273

As you can see, there is one parameter with over 30000 points. This can happen, and while more or less uncommon, shouldn't be much higher than your number of bonus points.

Units Sheet
Base Cost
Can range from 100 to 6,553,500 only in increments of 100.
Since this hack only increases the price with 2 non-zero digits (see Price), I really recommend that you keep it the same way for the base price.

Cost per Bonus point
Can range from 1 to 65535.
This will determine the amount of bonus points you will get for any gil exceeding the Base Cost. Even if you pay only the Base Cost, you still get a free bonus point, yay! See Bonus Points for more information about how it is calculated.

Determines under which category a unit can be generated, as well as which gender said unit will be assigned.
Male: lists under Male Recruit
Female: lists under Female Recruit
Monster: lists under Tamed Monster

Job Unlock
Determines which job will be unlocked. It is highly recommended to not change this setting for human generics.
For example, if you have a Cleric with Time Mage as the Job Unlock, under vanilla circumstances this Cleric will gain 100JP for her Chemist and Wizard jobs which will allow her to unlock Time Mage. This process does not cost any bonus points, and the extra cost is assumed to be included into the Base Cost.

Derandomization (See Derandomization)
Stat Derandomization
Allows derandomizing HP/MP/SP/PA/MA for the given unit.

Brave Derandomization
Allows derandomizing Brave for the given unit.

Faith Derandomization
Allows derandomizing Faith for the given unit.

Allow Serpentarius
Allows given unit to be potentially generated with a Serpentarius/Ophiuchus zodiac sign.

Stat Bonuses (See Stat Bonuses)
Values from 0 to 15.
Applies to HP/MP/SP/PA/MA.
15/15 will receive 3 times as many extra stat points than 5/15. 0 means the unit can't receive a stat bonus.

Shop Availability
Determines when the unit can be potentially randomly generated. If this value is greater than or equal to the Shop Availability variable (0x006F), then the unit will be available.

Town Availability
Determines in which towns/castles the unit can be potentially randomly generated.

Configuration Sheet
*On this sheet, cells in grey are not editable and only meant to be used as reference!
To generate a new unit with little effort, select an empty cell and press "delete" on your keyboard.

Parameters (See Stat Bonuses)
True or False.
Disable this parameter completely. If it shows that you cannot disable a parameter and you want to, simply remove all its instances in the Units Sheet.

True or False.
The randomized amount of this parameter will not affect other parameters in any way. (see Randomization Adjustment)

# Points for Full Potential
Determines how many points are needed to reach 100% of the potential of the parameter. If the generated value for the parameter is half this value, only 50% of the potential of this parameter will take effect. It cannot go beyond 100%.

Guaranteed Amount
Let's say your unit is generated with 10000 bonus points. Your parameter is set to 16/63 guaranteed amount. This means that 16/63 out of 10000 will be static (2539), and 47/63 out of 10000 will be randomized. In this case you will end up with a generated value between 2539 and 10000.
0/63 means the value is completely randomized; you could potentially end up with 0 generated points even if you have 5,000,000 bonus points... or 5 million points.
63/63 means that no randomization takes place whatsoever. The generated points will be equal to your bonus points.

% Equivalent
You cannot edit this value. It is simply there to give you an idea of how much your guaranteed value is worth /100 instead of /63.

Brave/Faith ranges
These are of course not limited to 0% and 100%. The more Brave/Faith cap points you have, the closer you will get to the new Brave/Faith ranges.
Brave & Faith
Value from 0 to 100.
This determines the generated Brave/Faith ranges with 0% Brave/Faith cap points.

New Brave & New Faith
Value from 0 to 100.
This determines the generated Brave/Faith ranges with 100% Brave/Faith cap points.

Stat Bonus Multipliers (See Stat Bonuses)
Values from 0 to 65535.

Bonus JP
Values from 0 to 65535.
Can generate up to 65535 JP per job, which after spending JP, will be at most 9999JP. You could have a job with 23000 JP, 8000 lost through buying abilities, and then it would drop to 9999 JP upon leaving the shop.
Main Job JP
Divided by 100.
For example, if you have 10000 Main Job Bonus JP points with this value set as 50;
10000 * 50 / 100 = 5000 points will be added to this unit's Unlock Job.
There is a checkbox to use as an exception for Unique jobs though:
Special Units' Main Job Bonus JP goes to the Base Job and not the Unlock Job
[ :v/: ] : Calculated JP goes to the Base Job; Holy Knight if Holy Knight, Dragoner if Dragoner, etc.
[ ---] : Calculated JP goes to the Unlock Job, which could be the base job depending on what you set it to.

Distributable JP
Divided by 100.
For example, if you have 10000 Distributable Bonus JP points with this value set as 150;
10000 * 150 / 100 = at least 15000 points will be gradually distributed among unlocked jobs, with many cycles allowing even a Squire to unlock Mime if enough points are available.

If the unit is allowed to generate a Serpentarius zodiac sign, it will be under one of these three conditions:
0/12th OR 1/13th
Serpentarius may only appear 1/13th of the time, and ONLY if you have at least the Serpentarius Full Potential.

0/12th to 1/13th
Serpentarius will appear at most 1/13th of the time, otherwise it can still appear the more Serpentarius points you have.

0/12th to infinite
The more Serpentarius parameter points you have, the more likely you are to end up with the zodiac sign. If you have 4 times the amount of points for Serpentarius Full Potential, you will have 4/16th chance of generating a Serpentarius zodiac sign.

# JP Spending Cycles
Value from 0 to 255.
If set to 0, no ability will be purchased. Otherwise, it will go through every unlocked job X times trying to spend JP on random abilities, and attempt to learn based on their Learn % if there are enough JP available.
Bypass "Cannot learn with JP"
[ :v/: ] : Abilities that are flagged with "Cannot learn with JP" in FFTPatcher will become purchasable with JP. In vanilla, we're talking about Zodiac and Ultima, but remember that by default those abilities are set to cost 9999JP by default; you won't get a vanilla Summoner with Zodiac for cheap.

Last cycle: 1%+ = 100% learn
[ :v/: ] : Some abilities have a low learn %, and thus even with many cycles and enough JP to buy the skill, it might still be ignored... unless you check this box, which will ensure that if the skill isn't 0% learn, it will become 100% learn on the last JP Spending Cycle.

Here you can create your own formula to calculate how many bonus points are required for each level (2 to 99; Level 1 always costs 0 points), or simply enter a static number for each of them.
Compensated Amount
You cannot edit this value; it is the value that will be stored and used by the hack, recalculated to ensure that the amount of points for level 99 is the same as the amount of points for full potential for Level: 1 to 99. Basically what this means is that if your full potential is 50,000 and in your formula column level 99 requires 200,000, it will divide all values from level 2 to 99 to 1/4th of the value in the formula column.

Max Level = Max Party Level
[ :v/: ] : Let's say your party has units of levels 56, 61, 47 and 49. 61 is the highest level. The hack will take the amount of points required for level 62 and reduce it by one to give you the best chances of getting level 61, if you still have some randomization set for the Level: 1 to 99 parameter. On the other hand, if you have 63/63 guaranteed, you will simply always get level 61 units.
WARNING : This option might not behave properly if you don't have Level: 1 to 99 set to Passive!

Max Price
The player will not be able to set the price higher than this value. It should never be set under the Base Cost of any purchasable unit, or above 99,000,000.
You should also always keep all the digits except the first two as zeros. (see Price)

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

Soldier Office Upgrade 1.01
~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.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.

Yes, but you should also replace the last byte of your clean ISO to something else than 00.

Pages: [1] 2 3 ... 181