øAslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=1975.30e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexc5c6-2.htmlslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&board=17.60e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexc5c6-2.html.zx‹9h^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ °V³OKtext/htmlISO-8859-1gzip8:Ö³ÿÿÿÿÿÿÿÿWed, 11 Mar 2020 01:22:44 GMT0ó°° ®0®P®€§²ð®‹9h^ÿÿÿÿÿÿÿÿÇ$³ FFV patches (and compatibility with each other)

Author Topic: FFV patches (and compatibility with each other)  (Read 31722 times)

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #30 on: December 14, 2014, 02:17:45 PM »
No, my IPS patch is meant for a clean, unmodified FF5 ROM. If you use the fractional M patch plus mine, you will get unpredictable results.

You will either have to manually remove the changes from a ROM patched with fractional M (then remake the IPS) or somehow remove the unwanted patching functionality from the IPS patch (I believe there are utilities for this).

Digitsie

  • Mom Bomb
  • *
  • Posts: 105
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #31 on: December 14, 2014, 02:21:48 PM »
I'm not sure how to specifically remove it for knives - tips appreciated here, and I'll try and poke at the assembly again. Still learning the thing, so I don't -trust- me with it. :D


noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #32 on: December 15, 2014, 03:56:41 AM »
I'll check it later (I don't have the dissasembler at hand), but I think ignoring the Agility in the Fractional M should be as easy as:

Code: [Select]
------------------------------------------
Inside the knives damage formula
------------------------------------------
C2/80EE: AD E5 7B     LDA $7BE5    (Level)
C2/80F1: 85 25        STA $25
C2/80F3: 20 F1 00     JSR $00F1    (Level * Strength)
C2/80F6: C2 20        REP #$20
C2/80F8: A5 26        LDA $26
C2/80FA: 18           CLC   
C2/80FB: 69 00 01     ADC #$0100  (A = A + 256)
C2/80FE: 85 52        STA $52     (M = (Level * Strength) + 256)
C2/8100: 80 1D        BRA $811F   (Skip agility check and jump to defense check)
C2/8100: EA           NOP
[...]
C2/810F: 7B           TDC

So you can try overwritting:

Code: [Select]
C2/80EE: AD E5 7B 85 25 20 F1 00 C2 20 A5 26 18 69 00 01
C2/80FE: 85 52 80 1D EA EA EA EA EA EA EA EA EA EA EA EA
C2/810E: EA EA EA EA EA EA EA EA EA EA EA EA EA EA EA EA
C2/811E: EA 7B

Make a backup before doing this, anyway.
« Last Edit: December 22, 2014, 03:10:45 AM by noisecross »

assassin

  • Bane of Retards
  • *
  • Posts: 1,033
  • space bears are not gentle!
    • View Profile
    • My Barren Webpage
Re: FFV patches (and compatibility with each other)
« Reply #33 on: December 15, 2014, 04:30:07 AM »
Jorgur: i still think your

Quote from: Jorgur
M = (Level*Strength)/256 + (Level*Agility)/256 + 2

idea from the older topic is superior.

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #34 on: December 15, 2014, 04:36:37 AM »
Hmmm... Transforming that formula into the Fractional M philosophy may be like this?

Code: [Select]
M = (Level * ( (Strength + Agility)/2) ) + 256

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #35 on: December 15, 2014, 06:27:08 AM »
Jorgur: i still think your

Quote from: Jorgur
M = (Level*Strength)/256 + (Level*Agility)/256 + 2

idea from the older topic is superior.
I don't recommend that formula except when used with the fractional M system. The reason is that when this formula is used, the final damage will only increase half as often as with (Level*Strength)/128 + 2.

Example (without the fractional M patch):

Faris (Freelancer):
27 Strength
27 Agility
Wielding a Dagger

Normally this means her damage will increase every 5 levels, because 5*27=135 which is more than 128.

Now, assuming we are using M = (Level*Strength)/256 + (Level*Agility)/256 + 2
Faris' damage will only increase once every 10 levels, because 10*27 is 270 which is more than 256.

Her damage will stay exactly the same all the way until level 10 when her damage suddenly doubles (M increases from 2 to 4). This is a very serious handicap for knife based weapons, as they will be much weaker than sword based weapons between levels 5-10, 15-20 and so on. This is why I believe the only "good" formula for knives is M = (Level*Strength)/128 + 2.

Of course, if you use the fractional M system this problem disappears and you can change the formula if you want.

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #36 on: December 15, 2014, 06:49:08 AM »
Now, assuming we are using M = (Level*Strength)/256 + (Level*Agility)/256 + 2
Faris' damage will only increase once every 10 levels, because 10*27 is 270 which is more than 256.

Then why not reformulating M as
M = ((((Strength + Agility) / 2) * Level)  / 128) + 2
instead of avoiding the Agility influence?

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #37 on: December 15, 2014, 07:06:50 AM »
That would work, sure, but with that amount of technical alteration we are starting to look at a game modification rather than a bug fix.

Another thing that needs to be taken into consideration is that changing the formula means that increasing strength (or agility) only makes half as much of a difference for knives as increasing strength does for swords. The Brawl, Equip Swords/Axes/Katanas and Double Grip abilities wouldn't be as good when used with knife based weapons, which is a further handicap for them.
« Last Edit: December 15, 2014, 07:21:37 AM by Jorgur »

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #38 on: December 15, 2014, 08:18:35 AM »
That would work, sure, but with that amount of technical alteration we are starting to look at a game modification rather than a bug fix, anyway.

I agree, but there has been a lot of discussion about this bug. It seems a simple hex edition is not enough to make everyone happy, and we are rewriting here just one function of the entire code. Is not more complex than the "If Strength > Agility" approach.

Another thing that needs to be taken into consideration is that changing the formula means that increasing strength (or agility) only makes half as much of a difference for knives as increasing strength does for swords. The Brawl, Equip Swords/Axes/Katanas and Double Grip abilities wouldn't be as good when used with knife based weapons, which is a further handicap for them.

I agree again, but then the same can be said about the M = (Level*Strength)/256 + (Level*Agility)/256 + 2 approach.

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #39 on: December 15, 2014, 08:28:27 AM »
Quote
I agree again, but then the same can be said about the M = (Level*Strength)/256 + (Level*Agility)/256 + 2 approach.
Yes, that last paragraph I wrote was meant to address an issue with the M = (Level*Strength)/256 + (Level*Agility)/256 + 2 formula in general, not just your suggested variety.

Quote
Is not more complex than the "If Strength > Agility" approach.
This is very true. IMO, that patch is a lot worse in terms of changing the game balance. I see no reason why knives should be made any stronger than usual.

Digitsie

  • Mom Bomb
  • *
  • Posts: 105
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #40 on: December 15, 2014, 09:29:57 AM »
Yeah but I'm compelled by the argument that ninjas and thieves, the ones most likely to use the knives, were stronger in FFIV (at least, Edge was) and in FFVI (Locke/Shadow) , so retaining that strength for the ninja class in V would be fine.


Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #41 on: December 15, 2014, 09:39:49 AM »
If we were to change the formula to M = (Level*Strength)/256 + (Level*Agility)/256 + 2, we would be making the game somewhat more complicated. Since Ninjas have similar Strength and Agility they would actually be no different from before. Thieves however have low strength and high agility, which means they would get an increase in damage. On the other hand, the warrior jobs have high Strength and Agility and therefore would do less damage with knives than with sword based weapons with the same attack power.

All in all, it adds a lot of complication to the damage calculation.

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #42 on: December 15, 2014, 09:50:32 AM »
And again, some abilities, bows and whips will be also affected by the change.

To make the ninjas and thieves more powerful probably the better way is editing ninjas and thieves... but it won't be a "bug fix" and will probably unbalance the game.

Digitsie

  • Mom Bomb
  • *
  • Posts: 105
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #43 on: December 15, 2014, 10:04:34 AM »
Is it possible to just incorporate Jorgur's knife fix by saying 'if weapon is knife, go to 'knife fix'?

Jorgur's knife fix was:
- Skip Agility code: C2/8101 -> 4C 1D 81
« Last Edit: December 15, 2014, 10:34:09 AM by Digitsie »

noisecross

  • FF5 Hacker
  • *
  • Posts: 146
    • View Profile
Re: FFV patches (and compatibility with each other)
« Reply #44 on: December 15, 2014, 10:41:13 AM »
:edit:
Edited message. Next sentences don't make sense now:

Here http://tenchinohoukai.cavesofnarshe.com/ff5_c2.txt you can see it at "attack type 32" and using the "Knives Damage Formula". You can also see the Bows and Whips using the same formula.

The Fractional M patch edit that formula into a "If Strength > Agility" one which increases the damage of these weapons about 1.5 times as Jorgur remark in Reply #28.

The question then is, what do you want?

You can:
  1. Let the Fractional M alone
  2. Editing that formula with the Jorgur approach (ignore Agility at all)
  3. Editing that formula with the assassin suggestion (using both Strength and Agility divided by 256)
  4. Editing that formula with my suggestion (using the average between Strength and Agility)

If your favourite flavor is the Jorgur fix, see my reply #32.
« Last Edit: December 15, 2014, 10:56:50 AM by noisecross »