Author Topic: Final Battle against Sefirot (bug inside)  (Read 12810 times)

Green_goblin

  • *
  • Posts: 102
    • View Profile
    • Parasite Eve Translation Project
Final Battle against Sefirot (bug inside)
« on: 2014-10-12 18:03:31 »
I have been told that there is a bug in this particular battle. Cloud reaches its Limit and the red box appears.
It is supposed to say "Cloud Limit Break" or something like that, but the variable that controls the character's name is missing, so insted we have this:



(It should be "¡Cloud supera el Límite!")

This is the Spanish version but this happens in all versions, including US and International.

Do you know how to fix this?
« Last Edit: 2014-10-12 18:16:11 by Green_goblin »

meesbaker

  • *
  • Posts: 324
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #1 on: 2014-10-12 19:29:20 »
If I recall correctly battle texts are contained in KERNEL.BIN so WallMarket should do it.

Vgr

  • Global moderator
  • *
  • Posts: 2163
  • If it quacks like a duck, it must be a duck
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #2 on: 2014-10-12 19:41:07 »
Pretty sure that's in the exe.

spy__dragon

  • *
  • Posts: 96
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #3 on: 2014-10-12 19:49:48 »
Yes, that's right.
But is correctly written
¡{CHAR} supera el Límite!

If you fight in other battle if appears the name's character, but in this battle not.

Pretty sure that's in the exe.

This is the PSX version. I haven't seen nothing in SCES.
« Last Edit: 2014-10-12 19:52:33 by spy__dragon »

Vgr

  • Global moderator
  • *
  • Posts: 2163
  • If it quacks like a duck, it must be a duck
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #4 on: 2014-10-12 21:33:04 »
Oh, PSX. I guess it would be in one of the .MNU files then.

spy__dragon

  • *
  • Posts: 96
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #5 on: 2014-10-13 11:32:16 »
I have been searching in all .mnu and are corrected.

It is strange because the name doesn't appear originally
For example, PC version:
https://www.youtube.com/watch?v=2genMmEmCwg

Japanese version:
https://www.youtube.com/watch?v=VvA5AFNE2cM

But in this video appears the name:
http://youtu.be/RkzRfcz5SDM?t=2m25s

I don't understand, it will there be some kind of variant which does to appear the name?

Regards.


nfitc1

  • *
  • Posts: 3011
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: Final Battle against Sefirot (bug inside)
« Reply #6 on: 2014-10-13 11:47:55 »
It's because the character used for the last battle ISN'T CLOUD! (DUN DUN DUUUUUUUUN!)

No, for real. The model used in that battle has a completely different actor ID and the exe just sort of dumps Cloud's data into a dummy position in memory. When the "¡{CHAR} supera el Límite!" comes up it tries to use the model ID of the actor that the limit is now available. The Cloud in that battle is NOT the Cloud you've been battling with so it can't find a name for it.

Green_goblin

  • *
  • Posts: 102
    • View Profile
    • Parasite Eve Translation Project
Re: Final Battle against Sefirot (bug inside)
« Reply #7 on: 2014-10-13 13:43:32 »
It's because the character used for the last battle ISN'T CLOUD! (DUN DUN DUUUUUUUUN!)

No, for real. The model used in that battle has a completely different actor ID and the exe just sort of dumps Cloud's data into a dummy position in memory. When the "¡{CHAR} supera el Límite!" comes up it tries to use the model ID of the actor that the limit is now available. The Cloud in that battle is NOT the Cloud you've been battling with so it can't find a name for it.

It makes sense... Dou you know how to fix the message? How can we change the model ID so the "proper" Cloud is loaded in that battle?

nfitc1

  • *
  • Posts: 3011
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: Final Battle against Sefirot (bug inside)
« Reply #8 on: 2014-10-13 14:04:58 »
...How can we change the model ID so the "proper" Cloud is loaded in that battle?

Let me clarify. The new model ID is the hi-res Cloud model. He looks different in this battle and is created specifically for it. The "fix" would be to reassign the Cloud you've been using (which would have materia) to this battle and use the less-detailed battle model.

spy__dragon

  • *
  • Posts: 96
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #9 on: 2014-10-13 16:04:25 »
The ID of hi-res Cloud model where can obtain?
It loads througth kernel.bin or scene.bin?

Vgr

  • Global moderator
  • *
  • Posts: 2163
  • If it quacks like a duck, it must be a duck
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #10 on: 2014-10-13 16:12:26 »
Neither. It loads through one of the .MNU files. Don't know the ID offhand.

Although "Limit Break" seems fine, maybe that just requires a small modification of the text for the other versions.

Xinlus

  • *
  • Posts: 20
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #11 on: 2014-10-13 16:35:47 »
Just for curiosity.
Why does the name appears in the battle box and not in the limit message?

nfitc1

  • *
  • Posts: 3011
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: Final Battle against Sefirot (bug inside)
« Reply #12 on: 2014-10-13 16:54:29 »
Just for curiosity.
Why does the name appears in the battle box and not in the limit message?

Because they're coded to pull the name from different places and they don't always match up. That's the easiest explanation.

Jeet

  • *
  • Posts: 155
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #13 on: 2014-11-05 23:55:41 »
I think you can modify the  DAT file ( you can do this with makou reactor the last version support PSX without bugs i think)

When the game force you to play a certain character you can see something like " change party member to barret" ( example for the battle vs dyne) , so there must be something similar for the last battle with " change party member to hi cloud" , all you have to do is set cloud instead of hi cloud and u ll have ur proper limit break name

The dat file for the last battle vs sephiroth is something like " LAST MAP"

Or you can try swaping hicloud for cloud.lzs with cdmage but im sure this will change nothing

meesbaker

  • *
  • Posts: 324
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #14 on: 2014-11-06 00:25:40 »
Nah you think they make a party slot for this model ?
Sure, loading the field party in battle is automatic but not the only way to create a formation for battle. I suppose the party is empty and the whole battle is completely scripted creating some character from Hicloud.lzs, giving him omnislash and Cloud's weapon, no materia or items and counterattack property.

Still looking into the field commands surrounding the start battle command is an awesome idea :)
I can't wait to see what they did there. Part of the mystery may definately lie there. Keep in mind though that the game jumps to the screen where all your party members are seen and give you items before that fight. Is that lastmap? I think it is an earlier one.

« Last Edit: 2014-11-06 00:27:28 by meesbaker »

spy__dragon

  • *
  • Posts: 96
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #15 on: 2014-11-06 22:53:57 »
I've tested to replace Hirescloud for cloud.lzs.
It works, but the name's cloud doesn't appear :(

So the file hirescould.lzs isn't it. It must be in scene.bin or name.mnu or kernel.bin because I don't know where I could find it...

Inside the dat las4_0 we can see in the new party, {CLOUD}, {NONE}, {NONE}.
« Last Edit: 2014-11-06 23:22:48 by spy__dragon »

meesbaker

  • *
  • Posts: 324
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #16 on: 2014-11-06 23:34:57 »
I think you don't get what NFITC1 was talking about. It says “Cloud Limit break“ if cloud.lzs is being loaded just because the party slot is filled by him. We don't have cloud.lzs loaded, though. Now if you change the target model that does not change the scripts of course it is not about the 3D model, it is for whatever reason why cloud.lzs is not loaded as usual.

Now you said the party is Cloud-empty-empty. Still I believe that the Cloud we control is a newly created character like some random enemy standing on our side. Did you find field commands erasing all of cloud's materia before the fight, adding omnislash, disabling item command, adding counter 100%??

I'm sure we are not controlling Cloud, this whole battle is scripted probably in the respective scene file. That way the game easily controls limit bar and atb with ease, this is just theater.

Vgr

  • Global moderator
  • *
  • Posts: 2163
  • If it quacks like a duck, it must be a duck
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #17 on: 2014-11-07 01:01:42 »
To be a bit more precise, the game loads another model and script, which is only ever used in that battle. An AI script makes the ATB bar locked at 254 (filled: 255) and progressively fills up the Limit bar (which was 0, since that 'character' was never used). When the limit bar reaches 255, the ATB advances one step, and it's Cloud's turn. It displays "LIMIT BREAK" like it does in any other battle, except without a name. During the time the limit level goes up, a camera script runs and some SFX are added in, too. Sephiroth's HP is set to 1, and his General Counter is set to end battle, as opposed to being his death counter, as you'd expect. This means you could potentially miss him and still win (although that's impossible, since I think Cloud's Hit% is 255%). If you wait long enough (Defend is not needed, you can simply wait), Sephiroth will attack, and Cloud will instantly counterattack, killing him. Sephiroth's attack takes 31/32 of the current HPs, making it impossible to lose this battle.

Some of this information may be inaccurate, and I may have forgotten a few things. Feel free to correct me.

nfitc1

  • *
  • Posts: 3011
  • I just don't know what went wrong.
    • View Profile
    • WM/PrC Blog
Re: Final Battle against Sefirot (bug inside)
« Reply #18 on: 2014-11-07 01:48:37 »
Sephiroth's AI is what causes HiResCloud to counter attack. There's nothing special about that HRCloud.

As Vgr said, the Turn Timer starts at 254, but the ATB is suspended until the camera is finished (that's the camera script's doing). If the player takes no action, Sephiroth will attack with a (seemingly) devastating attack that takes off 31/32 health. This COULD KILL if HRCloud has 1HP. However, this HRCloud is actually scripted to not die (I'm almost certain I've seen a video of this on the YouTubes). Sephy's script actually then tells Cloud to counter attack and the kill Sephy no matter what.

So, why the HRCloud? Because of the "thrilling" Omnislash camera. It's the same attack as regular Cloud, but it's linked to a different camera script. Speaking of, that's another thing HRCloud doesn't have in common with regular Cloud: He always comes knowing Omnislash and at Limit Level 4 regardless of what regular Cloud was before. Pretty much the only thing he has in common is stats and weapon (even accessory is blank).

This is also controlled by the formation type. This battle exclusively uses the formation type 7. It replaces regCloud with HRCloud, disallows running, does not grant additional commands, and prevents Change/Defend commands.

meesbaker

  • *
  • Posts: 324
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #19 on: 2014-11-07 05:05:37 »
Ah it is the formation type controlling that model, I see. I was already suspecting this when I said “it's scripted“ as you said Cloud is not in the battle. He may be in the party but the formation does not place him but HRCloud instead which is why nobody is mentioned in the Limit Break message.

Oh yeah, Sephiroth is scripted to die even if Cloud misses or deals 0 damage which can only be achieved by modding/hacking/cheating.

Anyway I also wonder how he gets a new camera. I always wondered that as the camera is defined on the attack. Is there 2 omnislashs?
« Last Edit: 2014-11-07 05:09:42 by meesbaker »

Vgr

  • Global moderator
  • *
  • Posts: 2163
  • If it quacks like a duck, it must be a duck
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #20 on: 2014-11-07 09:26:26 »
[...] prevents Change/Defend commands.

Defend can be used (without any effect) IIRC.

D a r / < F a L L

  • *
  • Posts: 17
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #21 on: 2014-11-07 11:17:14 »
Have you guys tried just to use aaaa field and rename all those into siaa ? that's what I did..

spy__dragon

  • *
  • Posts: 96
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #22 on: 2014-11-07 11:21:32 »
Have you guys tried just to use aaaa field and rename all those into siaa ? that's what I did..

And where did you edit that? What file? Is a field?
« Last Edit: 2014-11-07 11:24:34 by spy__dragon »

Vgr

  • Global moderator
  • *
  • Posts: 2163
  • If it quacks like a duck, it must be a duck
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #23 on: 2014-11-07 15:05:07 »
Those files are found in battle.lgp

D a r / < F a L L

  • *
  • Posts: 17
    • View Profile
Re: Final Battle against Sefirot (bug inside)
« Reply #24 on: 2014-11-07 17:34:03 »
If u need help spy send me a PM with ur email.