øAslickproductions.org/forum/index.php?PHPSESSID=q4c29v6tmbbnv0gvgpv2lv9nn7&topic=344.0e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexa359.htmlslickproductions.org/forum/index.php?board=13.160e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexa359.html.zx’@g^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ…¬‚OKtext/htmlISO-8859-1gzip@øÕ‚ÿÿÿÿÿÿÿÿTue, 10 Mar 2020 07:40:25 GMT0ó°° ®0®P®€§²ð®‘@g^ÿÿÿÿÿÿÿÿ)‚ Cry/Fake Tears Command

Author Topic: Cry/Fake Tears Command  (Read 4729 times)

Deathlike2

  • Moderator
  • *
  • Posts: 3,538
  • I'm looking at you, bitch!
    • View Profile
Cry/Fake Tears Command
« on: February 28, 2008, 03:01:15 PM »
It does exactly what most people thought it would do. When executed, it makes running away easier.
The difficulty of running away is based on your level vs the enemy's level (high levels imply easier to run away).

It seems that the time to run away is approximately cut in half when this command executes. This command allows for stacking (reducing the time further) on multiple cries.

This command does not seem to influence the randomness of money drops (which is simply 1/4 of what you would get if you won the battle).

This command also doesn't change the fact that you can't run away from bosses.
« Last Edit: February 28, 2008, 03:17:42 PM by Deathlike2 »
Working on the next Yet To Be Named FF4 "Hardtype" Hack Download Latest: v1.48

Video Demos: #1 #2 #3

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #1 on: September 05, 2013, 01:42:31 AM »
Cry is such a strange and unique command. It alters the value at 2F of an enemies stats which is presumably some kind of "run strength" or something since DeathLike2 has confirmed that Cry works like it says on the tin (how worthless. Running away is barely an issue even if running from level 127 monsters.)
 It is the only player command that gives the player access to an enemies stats outside of damage. Meaning that with the appropriate hacking you could make Cry reduce the enemies strength, speed, spell power, you name it.

In LoRom/HiRom...
0x3EAF8 - A2 05 00 (LDX 0005) - Load 05 into X (05 is how much the enemies "run strength" is damaged by Cry.  (Later on in the routine X is put into A)

0x3EB0B  BD 2F 20 - (LDA 7E202F +x) - Load A into 7E202F+x (Meaning Monster Data since they're targeted. Though in theory you could target your party or self with this as well, if we could ever figure out that targeting)

In ROM at...

0x1ECF8 - A2 05 00 (LDX 0005) - Load 05 into X (05 is how much the enemies "run strength" is damaged by Cry.  (Later on in the routine X is put into A)

0x1ED0B  BD 2F 20 - (LDA 7E202F +x) - Load A into 7E202F+x (Meaning Monster Data since they're targeted. Though in theory you could target your party or self with this as well, if we could ever figure out that targeting

And there you have it refer to the Tower of Bab-il Doc on Stat Records and you should be golden on what you want to change.





And that's another useless command made relevant!
« Last Edit: September 05, 2013, 06:41:09 AM by Grimoire LD »

chillyfeez

  • FF4 Hacker
  • *
  • Posts: 1,285
  • Gender: Male
  • Go ahead, ask me about Angel Feathers!
    • View Profile
Re: Cry/Fake Tears Command
« Reply #2 on: September 05, 2013, 12:38:26 PM »
Hey, awesome!
It's always great, imho, when you find one byte to change that can completely alter a command like this.
Nice work!

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #3 on: September 05, 2013, 10:23:30 PM »
Now I'm wondering Chillyfeez if Cry can be targeted towards the party or self, thereby increasing possibilities on what it can do... your testing back then said it was irrelevant which was definitely true of the time...

And it still only effect enemies, hmm... I wonder if there's some code specifically in regards to that that says this command only works on enemy/ally...

Deathlike2

  • Moderator
  • *
  • Posts: 3,538
  • I'm looking at you, bitch!
    • View Profile
Re: Cry/Fake Tears Command
« Reply #4 on: September 05, 2013, 11:06:23 PM »
The original idea may be based on the original "Fear" spell in FF1.

Subtracting a fear value by 5 does very little unless it's dividing by 5...

I'm not even sure if this works on boss monsters like the Behemoth (yes, watch the Behemoth feel sad for Porom... not). It probably doesn't.
Working on the next Yet To Be Named FF4 "Hardtype" Hack Download Latest: v1.48

Video Demos: #1 #2 #3

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #5 on: September 05, 2013, 11:28:57 PM »
That was my thought as well that it may have been intended to originally have been a Fear-esque effect. (Though what that data means in a character's stats is still beyond me. However it can only be reduced to 1 and monsters have no "Ran away in fear" like they did in FFI and II effects.

Also it looks like it does effect Bosses strangely enough. I guess they really didn't put too much effort into this command. At least Complete Collection made it into a Command and not just a filler. (I do wish thought that Complete Collection would have included Cid's Elemental Weapon skill, in place of useless Analyze that was a fairly neat idea)

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #6 on: September 06, 2013, 01:16:41 AM »
Well here's an addendum. It seems I was so certain that the Load 05 into X up there was effecting the power of Cry that I didn't give it a second thought and didn't test it as vigilantly as I should have.

Turns out I was wrong. That 05 is an interesting little value which might be worth further exploration.... but for now here's the Real way to make Cry useful...
Relevant Cry Code

Code: [Select]
03EAF2 - BD 2F 20 (LDA from 7E202F) - Load A from "Run Strength" (to properly decrement later in the routine)

03EB0B - BD 2F 20 (LDA from 7E202F) - As above. It is safe to change both to assure there is no data discrepancy.

03EB0E - E5 A9 - (SBC A by Value in A9 (05)) - A nuisance of an instruction (Since to my knowledge it is always a Static 05 anyhow)... it's not necessary to keep so change it to...
----------------------
03EB0E - E9 05 - (SBC A by 05) - It keeps the original function but gets rid of the extraneous A9 check.
This will allow you to change this in any way you like.

03EB16 - 9D 2F 20 - (STA 7E202F) - Put the new value into Enemy "Run Strength"

Say you wanted it to act like Complete Collection's Cry you would change the values to...


03EAF2 - BD 04 20 (LDA from 7E2004) - Load A from "Status Byte 2" (to properly decrement later in the routine)

03EB0B - BD 04 20 (LDA from 7E2004) - As above. It is safe to change both to assure there is no data discrepancy.

03EB0E - E9 00 - (SBC 00) - An invalid instruction now, only put in place to assure that a Charm status'd opponent not have their status changed by the command. (And by virtue can only be effected by Cry if they have no other Status Ailments currently inflicting them, in addition you cannot use Cry to inflict Charm if any of the Enemy team are inflicted with a status ailment. Thereby making it less broken than it is in FFIV:CC.

03EB14 - A9 08 - (LDA 01) - Load 01 into A...  This assures that the value will be static and not add or subtract which makes sense for statuses.  In most normal cases 03EB14 is skipped over and is only accessed if the value in question reads 00. (To be used in the normal routine where an enemy's "Run Strength" cannot be 00 and reverts to 01)

03EB16 - 2D 04 20 - (STA 7E2004) - Load 08 into Status Byte 2 (Charm).
-----------------------------
Now the only issue with this is that there is no Status Protection included, meaning that you will be able to charm enemies that normally couldn't be charmed... which makes very little difference since generally enemies that are immune to Charm have no Charm scripts (except Flan type enemies for whatever reason)[/code]



This was all in LoRom/HiRom obviously, in ROM you would want to change these values to give you "FFIV:CC Cry" and the general information all together...




Code: [Select]
1ECF2 - BD 2F 20 (LDA from 7E202F) - Load A from "Run Strength" (to properly decrement later in the routine)

1ED0B - BD 2F 20 (LDA from 7E202F) - As above. It is safe to change both to assure there is no data discrepancy.

1ED0E - E5 A9 - (SBC A by Value in A9 (05)) - A nuisance of an instruction (Since to my knowledge it is always a Static 05 anyhow)... it's not necessary to keep so change it to...
----------------------
1ED0E - E9 05 - (SBC A by 05) - It keeps the original function but gets rid of the extraneous A9 check.
This will allow you to change this in any way you like.

1ED16 - 9D 2F 20 - (STA 7E202F) - Put the new value into Enemy "Run Strength"

Say you wanted it to act like Complete Collection's Cry you would change the values to...


1ECF2 - BD 04 20 (LDA from 7E2004) - Load A from "Status Byte 2" (to properly decrement later in the routine)

1ED0B - BD 04 20 (LDA from 7E2004) - As above. It is safe to change both to assure there is no data discrepancy.

1ED0E - E9 00 - (SBC 00) - An invalid instruction now, only put in place to assure that a Charm status'd opponent not have their status changed by the command. (And by virtue can only be effected by Cry if they have no other Status Ailments currently inflicting them, in addition you cannot use Cry to inflict Charm if any of the Enemy team are inflicted with a status ailment. Thereby making it less broken than it is in FFIV:CC.

1ED14 - A9 08 - (LDA 01) - Load 01 into A...  This assures that the value will be static and not add or subtract which makes sense for statuses.  In most normal cases 1ECB14 is skipped over and is only accessed if the value in question reads 00. (To be used in the normal routine where an enemy's "Run Strength" cannot be 00 and reverts to 01)

1ED16 - 2D 04 20 - (STA 7E2004) - Load 08 into Status Byte 2 (Charm).
-----------------------------
Now the only issue with this is that there is no Status Protection included, meaning that you will be able to charm enemies that normally couldn't be charmed... which makes very little difference since generally enemies that are immune to Charm have no Charm scripts (except Flan type enemies for whatever reason)

And there you have it. A completely new command made up of older parts. (Nowe we just need to targetting and we will be Set.)

« Last Edit: September 06, 2013, 01:32:27 AM by Grimoire LD »

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #7 on: October 01, 2013, 10:06:36 PM »
And the purpose of Cry is revealed!

What it seems like it was *supposed* to do was make Stealing easier. For a very long time people assumed that Byte 2F was Run Strength, which might also be true, but is also more importantly "Steal Prevention". The way Steal ends up working is this...

50 + Level - Target's Steal Prevention = Amount that will be tested against a Random Number (which seems like it can range from 1-255.) - If the value is over 100 it is an automatic success. (which can only happen in levels 60 and up.)  I wonder if this 2F Byte might also be dealing something with Odin as well....

Kill an enemy's Steal Prevention. (after using four to five times) and your chance to steal becomes that much better.

Deathlike2

  • Moderator
  • *
  • Posts: 3,538
  • I'm looking at you, bitch!
    • View Profile
Re: Cry/Fake Tears Command
« Reply #8 on: October 02, 2013, 01:59:01 AM »
Hm... Cry+Steal.

If only that worked on bosses... (it doesn't AFAIK)
Working on the next Yet To Be Named FF4 "Hardtype" Hack Download Latest: v1.48

Video Demos: #1 #2 #3

chillyfeez

  • FF4 Hacker
  • *
  • Posts: 1,285
  • Gender: Male
  • Go ahead, ask me about Angel Feathers!
    • View Profile
Re: Cry/Fake Tears Command
« Reply #9 on: October 02, 2013, 06:12:38 AM »
It might. The inability to run is determined by a flag in the battle, not a property of the monster itself, so cry may still have the same effect and we just never really noticed it. Unless the cry routine checks for the boss flag, but that check would be easy enough to disable.

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #10 on: October 02, 2013, 07:52:56 AM »
I've confirmed before that bosses aren't immune to Cry, but their steals are always Cure1 so... I guess you could stack up on the Unique Obtain Firebomb's from Red Dragons in FFII... if you had Porom to Cry it into submission (If Edge is Level 50 you should always get the item regardless if their Steal Prevention is 0).

I also have a plan to make it so you can only steal one item per enemy, mainly for the purposes of them having actually useful things to steal that I might not want the character to stock up on in just one battle.

Dragonsbrethren

  • Forum Overlord
  • *
  • Posts: 1,820
    • View Profile
    • Dragonsbrethren Industries
Re: Cry/Fake Tears Command
« Reply #11 on: October 02, 2013, 01:50:05 PM »
Are you certain the only thing that stat is used for is stealing?

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #12 on: October 02, 2013, 02:30:10 PM »


No, I'm not certain, which is why I added that caveat about Odin and Run Strength possibly also being connected to it.

In fact let me see if Odin is involved at all...

As far as I can tell it does trigger a reaction with Odin, but it also triggers with any spell used and this part of data reads all parts of an enemy's data for some reason. Not just 2F. On the contrary, trying to run with the 2F byte breakpointed did not trigger any reaction.

As far as I can see anyhow it seems it is only used in a "Steal Prevention" capacity.



Dragonsbrethren

  • Forum Overlord
  • *
  • Posts: 1,820
    • View Profile
    • Dragonsbrethren Industries
Re: Cry/Fake Tears Command
« Reply #13 on: October 02, 2013, 05:09:18 PM »
Well I'm not ready to call it 100% yet, but it definitely has some interesting implications about the game's planned story/character progression if that turns out to be the case.

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Re: Cry/Fake Tears Command
« Reply #14 on: October 02, 2013, 10:08:59 PM »
I'm beginning to think that maybe Steal was originally a skill that Palom had before they thought of Edge, as it would make sense that the rambunctious kid could have a command like that and his sister's accompanying command may have originally helped with that. It's really difficult to say though.