376
Scripting and Reverse Engineering / Re: Question about the final battle of the game (1 on 1 with sephiroth)
« on: 2009-02-13 18:21:29 »
So it will do it for all the enemys in that scene then?
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.
I use HxD. It's freeware ftw!
I see. That's not where you put the ID!
It must go in the battle setup. From 0x08 to 0x048 in the scene files there are four 20-byte-long records, one for each of the formations. the first two bytes in each record tell the game what background to load, the next two tell it which formation ID to put in when the current formation is beaten (if it's FF FF, nothing will happen). Try putting 6c 01 at 0x00A of scene82 (between 0B 00 and 09 00), then fight the Guard Scorpion. Hopefully, Air Buster will show up after he dies.
I didn't have any crashes when I did this (although the game froze up when loading new enemies after certain enemies were beaten). Can you tell me exactly what you are doing?
This is for 8, not 7. It could be interesting, 8 doesn't have nearly enough modding tools.
Well first of all, hello all!!! This is my first post!!! I've been trying to find a way to edit FFVIII in game text so I can tweak the existing story line a bit. I have been researching for days. I wish I new C#/C++ but I don't have a clue when it come to that. I have Microsoft Visual Studio Pro 2008 and I don't even know how to use it LOL. I read here about using Wallmarket but I don't know how to find or make Kernel.bin. also when I use EIGHT.exe to view some of the FIELD files .msd all the dialogue is jibberish. and the 3,4,5,6,7 files show error this dialogue should have never been shown. I have hexeditor as well but again I'm not a programmer I don't know how to interpit code. So I was wondering if someone can steer this noob in the right direction. like maybe how to utilize the tools I have or download another program that mey simplify the text editing task. Thanks in advance for your help.
You might want to read the discussion in the second half of this thread. I see no reason why it shouldn't be possible for the PSX version.
Quote from: NFITC1Oh! If you want to change the camera angle at the beginning of the battle you'll have to change the formation setup at the beginning of the scene.
Whist I was trying some things out after my discoveries in the scene.bin file*, I found that there is something to do with camera angle in the section of the scene file named "battle setup 2" in the wiki (from 0x0058 to 0x0118). After I put the data from this part of the scene232 file into the scene117 file I fought Rufus with the camera angle from the Safer Sephiroth fight.
* BTW, I was able to do this! Nearly all the bosses, one after the other
If you don't want Sephiroth to die in one hit you'll have to change his General Counter. That's what's causing him to die.
Also, please try to punctuate your posts better. They're really hard to read the way you're doing it.
0x0000 | 12.PushValue(2060)
0x0003 | 10.PushValue(402C)
0x0006 | 80.MaskSet
0x0007 | 60.PushByte(01)
0x0009 | 90.SetAddr
0x000A | 73.ScriptEn
So the series of camera angles at the start is classed as an attack? thats whats confusing me since when i tried just for the hell of it to replace another bos with sephiroth since i don't have any disc 3 data yet and wanted to see if my changes worked with the boss it loaded. Showed sephiroth the black screen but it looked like when it goes to the camera screens it froze and crashed could be because i had 2 people in my party i dunno.
Oh! If you want to change the camera angle at the beginning of the battle you'll have to change the formation setup at the beginning of the scene. I'm sorry, I thought you were talking about the "Done-In" animation. For that battle those will appear somewhere in this range of bytes in that scene:
0x01C - 0x02F
0x044 - 0x057
0x088 - 0x0B7
0x0E8 - 0x117
Unfortunately, there's not a lot of public documentation on these pieces so I'm not sure what they do. Regardless I believe that intro camera angles exist somewhere in there.
The animation and camera are completely controlled by the attack itself. Don't change any of that. Also don't forget that the 32 bytes preceding that script will need to be updated to reflect the beginning point of each script section.
I'm using PSXMC to convert my videos in AVI. But the problem is : videos with sound are in MOV format, and videos with no sound are in STR format. So, I havn't found a tool which convert in MOV format. For the reinsertion, I will see after this.
0x0000 | 12.PushValue(2060)
0x0003 | 10.PushValue(402C)
0x0006 | 80.MaskSet
0x0007 | 60.PushByte(01)
0x0009 | 90.SetAddr
0x000A | 73.ScriptEnd
0x0000 | 12.PushValue(0000)
0x0003 | 02.LoadAddr(2060)
0x0006 | 90.SetAddr
0x0007 | 12.PushValue(0020)
0x000A | 02.LoadAddr(2050)
0x000D | 01.LoadAddr(4060)
0x0010 | 80.MaskSet
0x0011 | 60.PushByte(10)
0x0013 | 40.IfEqual
0x0014 | 90.SetAddr
0x0015 | 12.PushValue(2070)
0x0018 | 02.LoadAddr(0020)
0x001B | 90.SetAddr
0x001C | 60.PushByte(20)
0x001E | 61.PushWord(03BF)
0x0021 | 92.RunCmd
0x0022 | 12.PushValue(2060)
0x0025 | 02.LoadAddr(0020)
0x0028 | 90.SetAddr
0x0029 | 12.PushValue(2070)
0x002C | 02.LoadAddr(0000)
0x002F | 90.SetAddr
0x0030 | 60.PushByte(01)
0x0032 | 60.PushByte(00)
0x0034 | 92.RunCmd
0x0035 | 73.ScriptEnd
0x0000 | 12.PushValue(2070)
0x0003 | 02.LoadAddr(2060)
0x0006 | 90.SetAddr
0x0007 | 60.PushByte(20)
0x0009 | 61.PushWord(03C0)
0x000C | 92.RunCmd
0x000D | 12.PushValue(2060)
0x0010 | 10.PushValue(4023)
0x0013 | 80.MaskSet
0x0014 | 60.PushByte(00)
0x0016 | 90.SetAddr
0x0017 | 12.PushValue(2060)
0x001A | 10.PushValue(4024)
0x001D | 80.MaskSet
0x001E | 60.PushByte(00)
0x0020 | 90.SetAddr
0x0021 | 60.PushByte(22)
0x0023 | 60.PushByte(0F)
0x0025 | 92.RunCmd
0x0026 | 73.ScriptEnd
0x0000 | 12.PushValue(2070)
0x0003 | 02.LoadAddr(2060)
0x0006 | 90.SetAddr
0x0007 | 60.PushByte(20)
0x0009 | 61.PushWord(03C0)
0x000C | 92.RunCmd
0x000D | 60.PushByte(22)
0x000F | 60.PushByte(0F)
0x0011 | 92.RunCmd
0x0012 | 73.ScriptEnd
0x0000 | 12.PushValue(2110)
0x0003 | 02.LoadAddr(2110)
0x0006 | 60.PushByte(08)
0x0008 | 36.Or
0x0009 | 90.SetAddr
0x000A | 73.ScriptEnd
The battle is in the scene.bin file scene232.
The field file that takes you to the battle is called las4_0. Towards the end of the very first script in the file there is a pointer to battle 39D, the formation ID for this fight.
1. Yes, it's totally possible to make him a better final-battle. There's room for 32 attacks in any scene and his scene only uses 17. Don't touch Done-In. It's very specific attack that needs to stay the same. Feel free to add more attacks.
2. Yes, his AI will need significant re-writing. From TFergusson's Enemy Mechanics guide this is his script:Code: [Select]AI: Setup
{
Sephiroth's [402C] = 1
}
AI: Main
{
Choose Cloud
Use <Cut> on Target
Set Cloud as Self
Choose Sephiroth
Use Attack Command on Target
}
AI: Counter - General
{
Choose Self
Use <Done-in> on Target
Remove Self
RunCmd 0x22/0x0F
}
AI: Counter - Death
{
Choose Self
Use <Done-in> on Target
RunCmd 0x22/0x0F
}
AI: Counter - 13 [Post-Defeat/Battle]
{
[2110] = [2110] OR 0x08
}
There's plenty of things that could be changed, but don't leave out the Initialize script, RunCmd 22h/0Fh in the Counter-Death script or the Post-Battle script. Since we don't know for sure what they do.
402C is almost certainly "Don't allow death visual". ie, when target "dies" it flashes red and disappears. If this is set then the target won't do that. It's mostly only used in boss battles when the boss has a specific run-away animation.
Command 22/0F and the 2110 OR 08 have unknown functions.
Still, shouldn't be too hard to do.
Hello,
I'm re-translating Final Fantasy VII for PSX with lasyan3's tools, and I would like to translate the two videos with text. I have succeded to extract this videos, and I can modify them with VirtualDub. But this videos are not in STR format, but in MOV format. I can convert my AVI modify videos in STR but not in MOV. And also, I don't know how to reinsert the videos.
Thanks !
I was thinking i could have either loads of soldiers who are elites like head of security or leave it as schizo but i had plans for him as an optional boss on disc 3 but i could use him twice i guess i was thinking possibly swapping him for reno and rude but it would create a problem later on in the disc as you do fight them both on disc 1 so i couldn't alter them.
Actually you would be using him three times, [Gaia's Cliff] or did you think of that?
and what are you planning with the Guard Scorpion?
Ultima Weapon!
Nah...
how about Rude, or, if you wanted it to die, than why not tone down one of the elevator bosses ?
I'd say that nearly all of the enemies could do with being a bit stronger. I don't mean that every battle should be a fight for survival, but that one shouldn't be able to win fights in one minute by holding down X. A bit of HP and stat boosting should do for most of the random encounters.