Qhimm.com Forums
Miscellaneous Forums => Archive => Topic started by: ff7rules on 2009-02-18 11:39:19
-
I found this Gameshark code not so long ago and i was wondering is it possible to implement it to a certain enemy lets say Cactuar so you could fight Jumbo Cactuar eveytime you encountered that enemy it was its max size. Im doubting this is possible but i don't know for sure untill i ask, anyway heres the code.
Enemy 1: 8015475A ??00
Enemy 2: 801552F6 ??00
Enemy 3: 80155E92 ??00
Enemy 4: 80156A2E ??00
Enemy 5: 801575CA ??00
Enemy 6: 80158166 ??00
??=
05: Tiny
20: Twice normal size
30: Three times normal size
40: Four times normal size
50: Five times normal size
60: Six times normal size
70: Seven times normal size
7F: Greatest size possible
80: Upside down, greatest size possible
90: Upside down, seven times normal size
AO: Upside down, six times normal size
B0: Upside down, five times normal size
C0: Upside down, four times normal size
D0: Upside down, three times normal size
E0: Upside down, twice normal size
FO: Upside down, normal size
F5: Upside down, tiny
If the code alerted is in the enemy model itself i guess im out of luck but i don't know untill i ask eh?
-
I have absolutely no idea how this works, but since there is a different code for each of the six enemies, I wonder whether it might have something to do with the formation. The last seven bytes of formation data in the scene bin are unknown; I'll do a little investigating. Could you do some too?
Of course, I might be completely wrong about this ;-)
-
I'm going to check this out too! :)
-
Yeah im gonna check it out now first place ill look is in the formations theres also a code to change the color of the enemy are you interested in that too?
-
I haven't had any luck with this by changing the formations. I thought for a time that maybe this could be done by editing the six FF'd words in the records from 0x058 to 0x118, but nothing happened there either.
But I have found something interesting. I noticed that in scene76, in the first battle battle setup section (from 0x08 to 0x048) the fifth byte of the record for the first formation (the guards that attack Cloud at the station) was 09 and that for the others was 01. By swapping these around nothing happened to the first battle but it became much harder to escape from the others (it could still be done, but it took a long time).
I then looked at the byte at 0x010 of each record (F9 for the first formation and FD for the others) and decided to swap them (whilst keeping the byte at 0x04 swapped). The first battle became escapable as normal and the others became inescapable.
-
I believe this information to reside in the battle's memory, not in the character data itself. In the PC version, the address would be 0x800F8593. It's always inited with 10 and could be increased/decreased via scripts.
To Add/Subtract size (From Bomb's General Counter script):
12 60 20
11 98 40
80
02 60 20
01 98 40
80
60 XX
30
90
To Set a size:
12 60 20
11 98 40
80
60 XX
90
Where XX is how much size you want to give it. Looks to be a signed number in 16ths.
-
I've just tried putting this in the setup of the MP's AI and it works. :lol:
But unfortunately they start off normal size and then grow; that's a shame. :oops:
-
I've just tried putting this in the setup of the MP's AI and it works. :lol:
But unfortunately they start off normal size and then grow; that's a shame. :oops:
How big do they grow? also how come its like that? In some videos i have seen of people using the code there already big
good example http://www.youtube.com/watch?v=MKyleuIwLZc
-
I put 20 in there, so they grew to twice their normal size.
And that bit of script was taken from bomb's counter. Since he grows, maybe there is something in that that creates the growing effect (and presumable there would be some way to do it without seeing them grow).
Or maybe not.
-
Haha man try putting 7F hilarious!!!
-
Reminds me Metal Gear Solid VR missions.
(http://img54.imageshack.us/img54/4015/bigmpsuu6.jpg)
-
Reminds me Metal Gear Solid VR missions.
(http://img54.imageshack.us/img54/4015/bigmpsuu6.jpg)
RUN! its gruntzilla!!!!!!! :lol:
-
Gruntzilla is now a meme! (http://www.youtube.com/watch?v=Jfj3Q9ZJdlc)
-
Thats awesome man i should have a pic and a vid of jumbo cactuar tonight.
Enemy Brightness Mods
Enemy 1 color mod: 80154768 ??00
Enemy 2 color mod: 80155304 ??00
Enemy 3 color mod: 80155EA0 ??00
Enemy 4 color mod: 80156A3C ??00
Enemy 5 color mod: 801575D8 ??00
Enemy 6: 80158174 ??00
Any value will work (the entire spectrum is possible), but here are the extremes:
7F: Totally black. Being of darkness.
80: Really bright.
Just thought id post this 1 aswell see if it can be done seems abit pointless but meh.
-
I just put the following script in Red XIII's General Counter:
02 60 20 01 98 40 80 60 20 40 70 3B 00 93 28 45 B5 53 00 47 4F 4E 4E 41 00 42 4C 4F 57 01 01 01 FF
12 70 20 02 A0 20 90 60 02 61 A9 00 92 12 60 20 11 98 40 80 60 10 90 72 4D 00 12 60 20 11 98 40 80
02 60 20 01 98 40 80 60 01 30 90 73
I don't expect you to translate that immediately so here's what it does:
If Self.SizeMult = 32
{
Display "He's gonna blow!!!"
SelfTargetMask = SelfOpponent Mask
Perform "Cosmo Memory"
Self.SizeMult = 16
}
Else
{
Self.SizeMult = Self.SizeMult + 1
}
So basically everytime Red XIII takes damage he grows 1/16th normal size (except it looks more like 1/32). When he reaches twice his normal size he performs Cosmo Memory. I wanted it to look like he was shooting the beam out of his mouth, but I have to find the right multiplier for that. It's probably larger like 48 or so. It did try to perform Cosmo Memory once he got that large, but it didn't look right.
I think the command 92 (Attack) has other arguments than 20 and 24. Sephiroth's has 01 and 02. This might be significant.
In any case, it's a fun new effect we've discovered. :D
-
I just put the following script in Red XIII's General Counter:
02 60 20 01 98 40 80 60 20 40 70 3B 00 93 28 45 B5 53 00 47 4F 4E 4E 41 00 42 4C 4F 57 01 01 01 FF
12 70 20 02 A0 20 90 60 02 61 A9 00 92 12 60 20 11 98 40 80 60 10 90 72 4D 00 12 60 20 11 98 40 80
02 60 20 01 98 40 80 60 01 30 90 73
I don't expect you to translate that immediately so here's what it does:
If Self.SizeMult = 32
{
Display "He's gonna blow!!!"
SelfTargetMask = SelfOpponent Mask
Perform "Cosmo Memory"
Self.SizeMult = 16
}
Else
{
Self.SizeMult = Self.SizeMult + 1
}
So basically everytime Red XIII takes damage he grows 1/16th normal size (except it looks more like 1/32). When he reaches twice his normal size he performs Cosmo Memory. I wanted it to look like he was shooting the beam out of his mouth, but I have to find the right multiplier for that. It's probably larger like 48 or so. It did try to perform Cosmo Memory once he got that large, but it didn't look right.
I think the command 92 (Attack) has other arguments than 20 and 24. Sephiroth's has 01 and 02. This might be significant.
In any case, it's a fun new effect we've discovered. :D
Haha so what your saying is everytime Red XIII gets hit he grows? Thats insane lol so its literally the bomb effect but on Red that really is awesome! Also something i been meaning to ask would it ever be possible to fight yourself? Like use the model of the character then script AI for them im not planning on it at all just wanted to know if it can be done or not. For example like a Dark cloud or something.
-
I have been planning that!
Something along the lines of "Mad Cloud", when he's in the Lifestream.
-
Also something i been meaning to ask would it ever be possible to fight yourself? Like use the model of the character then script AI for them im not planning on it at all just wanted to know if it can be done or not. For example like a Dark cloud or something.
I don't see why not. You'd have to change an existing enemy's appearance to that of one of the characters and change that gamma multiplier you mentioned a few posts back to make them completely black. Could you make any enemy take on the appearance of any character? I don't know. I'm not sure if that information is changeable via script.
-
Also something i been meaning to ask would it ever be possible to fight yourself? Like use the model of the character then script AI for them im not planning on it at all just wanted to know if it can be done or not. For example like a Dark cloud or something.
I don't see why not. You'd have to change an existing enemy's appearance to that of one of the characters and change that gamma multiplier you mentioned a few posts back to make them completely black. Could you make any enemy take on the appearance of any character? I don't know. I'm not sure if that information is changeable via script.
I found this dunno if itll help ya. http://forums.qhimm.com/index.php?topic=7407.0
(http://www.imagenerd.com/uploads/jumbo_cactuar-P3Uv7.png)
Also He doesn't attack or anything just stands there dancing its really funny. I know why he doesn't attack i forgot to end that script :P
-
Could you tell me exactly what changes you made to the script?
-
Yeah sure i just inserted 12 60 20 11 98 40 80 60 7F 90 after 00 should i put it before it?
(http://www.imagenerd.com/uploads/jumbo_cactuar_script-sEw0U.png)
-
Okay...
I'm going to try something.
I'll report back in about 10 minutes, unless someone else solves the problem. :wink:
EDIT:
I managed to get this to work. I'm not sure what was going wrong, although I wonder whether you remembered to fix the pointers to the different sections of the AI?
Anyway, these are thee changes I made.
(http://img408.imageshack.us/img408/8120/cactuersaieh8.jpg)
I didn't try everything out since he was killed by Barret's counter attack before I got the chance. Tell me if this works.
-
Ended the script with Jumbo Cactuar, but he just keeps on dancing XD Also what is it your gonna try?
-
Did you start posting that just before I finished my edit? :wink:
Anyway, I made the changes shown in the picture (original AI at the top, new AI on the bottom). He grew to a huge size and then attacked me.
-
Yeah lol ill try what you posted now. Ill update when i have the answer if it worked or not.
Edit what excatly did you change? Mines seems to be different to that one
(http://www.imagenerd.com/uploads/jumbo_cactuar_script-sEw0U.png)
Oh i see now! nvm i thought it was all 1 thing! its the 2 separated. I only just relized i need more sleep :-P
-
Wait, are we editing different cactuars again?
I was editing the one in scene58; it looks like you're editing the one in scene65.
-
*Cries* Yeah thats the one from scene 65 ill start editing the 1 from scene 58 now XD sorry!
-
I assume that you don't want to fight a Jumbo Cactuar in Corel Prison :lol:
-
I assume that you don't want to fight a Jumbo Cactuar in Corel Prison :lol:
Meh why not :-P Anyway im tempted to have alook and see if i can find the codes for the battle models (Cloud,Tifa,Sephiroth etc)
Enemy IDs (Battle model)
To ADD enemies to a scene you have to find a scene that isn't full (has 3 enemies), and then add a ID. This part is the easy part 'cause the IDs is in the very beginning of the scenes. The 6 1st bytes. Which means each ID is 2 bytes long. To begin with, you should find a scene you know where the encounters in the game are. For testing purpose.
Lets say you want to use the MP's battle model. I believe the ID here is 0x0010. Then if ID 1 is XXXX and ID 2 is YYYY then ID 3 will be 0x0010.
Taken form Gjoerulv's guide
-
Wait, are you looking for those codes so that you can use them for enemy IDs? :?
If so, don't! :-o
I've tried to make allies into enemies that way and it doesn't quite work. There's trouble with weapons and the game freezes whenever they do anything. :cry:
-
Wait, are you looking for those codes so that you can use them for enemy IDs? :?
If so, don't! :-o
I've tried to make allies into enemies that way and it doesn't quite work. There's trouble with weapons and the game freezes whenever they do anything. :cry:
Is that http://www.youtube.com/watch?v=AyTaerNzGqw&feature=channel_page only possible because his AI is already in the game?
-
I'm not sure how that's done.
Although Sephiroth might not have the weapon problem that the other characters have...
-
Well watching Gameshark videos from GarlandtheGreat ff7 doesn't like it when something is cloned and it gets to close to it could be the case with this? Maybe try an ally that is not in the battle say Aerith since shes well you know.... However when you fight Yuffie with Yuffie the game is fine might be worth having alook at her script?
-
Yuffie as an enemy has her own special battle model, so there won't be the normal problems there.
In other news, I'm finally going to stop posting tonight, since I'm tired now...
-
Yeah lol ill try what you posted now. Ill update when i have the answer if it worked or not.
Edit what excatly did you change? Mines seems to be different to that one
(http://www.imagenerd.com/uploads/jumbo_cactuar_script-sEw0U.png)
Oh i see now! nvm i thought it was all 1 thing! its the 2 separated. I only just relized i need more sleep :-P
Your Header is wrong. The main script is pointing to a place still in the init script.
It should be:
20 00 36 00 FF FF FF FF FF FF FF FF FF FF D2 00
FF FF FF FF FF FF FF FF FF FF FF FF FF FF F2 00
If we're past this then just ignore me. ;)
-
I have a werid problem. Jumbo Cactuar does nothing and just dances i treid what LKM said to do it works he goes big and everything but then it freezes and the screen goes black anyone know what im doing wrong?
-
Make sure all the pointers are correct. Inside the sections as well. They should be if you only change the attacks in the AI. NFITC1 corrected the pointers ^. I haven't read the whole thread, but if you added attacks you must remember to tie an animation to each attack. If you altered the AI there can be problems in the AI itself.
-
Ok i didn't add any attacks to Cactuar yet so its not that i will look at the headers now though and see if there as there should be is the headers the old start the script? I was editing the wrong Cactaur earlier aswell so i confused everyone (including myself)
-
I think the command 92 (Attack) has other arguments than 20 and 24. Sephiroth's has 01 and 02. This might be significant.
20 and 24 are ID of action.
Posible actions are
800f692c + 03 [] action type (0x01 - player attack
0x02 - player magic
0x03 - player summon
0x04 - player item
0x05 - player steal
0x06 - player sense
0x07 - player coin
0x08 - player throw
0x09 - player morph
0x0A - player deathblow
0x0B - player manipulate
0x0C - player mime
0x0D - player enemy skill
0x0E - ???
0x0F - ???
0x10 - ???
0x11 - player mug
0x12 - player change
0x13 - player defend
0x14 - player limit
0x15 - this replaces with magic after modification
0x16 - this replaces with summon after modification
0x17 - this replaces with item after modification
0x18 - player slash-all
0x19 - player 2x-cut
0x1A - player flash
0x1B - player 4x-cut
0x1C - ???
0x1D - ???
0x1E - ???
0x1F - ???
0x20 - enemy attack
0x21 - ???
0x22 - run scripts
0x23 - ???
0x24 - ???
0x25 - ???
Else things that you can modify in battle unit data are as follows
800f83e0 unit data structure. (size 0x68). (address 0x4000).
800f8580 enemy start
00 [][][][] current status. Init with 0. Set sandess/fury flags from savemap structure in case of player. Add 0x00000001 if current hp of character is 0.
04 [][][][] some flags. Init with 0 in case of enemy. Set +0c in battle formation &0x1f here in case of enemy.
00000002 - looks like if this bit set we are left fighters (right otherwise) in case of side battle.
00000008 - seems like enabled units in battle. Init with this in case of player.
00000010 - units with activates auto script 0x01 (action).
00000020 - remove this flag if we add action with priority >= 2. Looks like defend flag (if we in defend state or not).
00000040 - set this bit if we in back row.
00000080 - set this bit for: enemies in case of battle type 0, player in case of battle 2, left row an player 2 in case of battle 4. func1b19ac.
00000100 - looks like nullify phisical attack.
00000200 - looks like nullify magic attack.
00000800 - probably bit for temporary unreachable unit (set in battle_update_unit_mask).
00002000 - set this bit if unit is dead in battle (if unit was dead at the begin of battle flag is not set).
00004000 - invisibility flag. All attack will miss this target.
08 [] index. Init with 0xff. Set player character id here in case of player. Set index in case of enemy.
09 [] level. Init with player level.
0a
0b [] store minimum elemental influence here (0 - death, 2 - 200%damage, 3 - normal, 4 - 50%damage, 5 - 0%damage, 6 - 100%absorb, 7 - fully recover)
0c [] formation number. Init with 0. If we init second unit of this type we increment this value by 1 for this unit. If 6 same unit on field they will have 0,1,2,3,4,5 as this value. Set player character id + 0x10 in case of player.
0d [] attack power (strength in enemy data format).
0e [] magic power (magic in enemy data format).
0f [] set evade from armor in case of player (defense% in game).
10 [] init with 0. Set 0x10 during player init. Idle action id.
11 [] init with 5 in case of player. Init with 1 in case of enemy. Hurt action id.
12 [] back damage multiplier. set from +a2[] in enemy data (usually 0x10).
13 [] model scale (just changing doesn't work)?. init with 10.
14 [] dexterity.
15 [] luck.
16 [] init with 0 in case of player.
17 [] store 0xff here at start of funcabb0c
18 [][] attack mask set during run command.
1a [][] - some mask (maybe mask of those who attack this unit)
1c [][] -
1e [][] -
20 [][] defense. Multiplied by 2 in case of enemy.
22 [][] magic defense. Multiplied by 2 in case of enemy.
24 [][] init with 0xffff. Set enemy id here.
26 [][] elements mask. add this to absorb elements mask during damage calc.
28 [][] current MP.
2a [][] max MP.
2c [][][][] current HP.
30 [][][][] max HP.
34
35
36
37
38
39
3A
3B
3C
3D
3E
3F
40
41
42
43
44 [][][][] Init with 0. Store status of this unit here during initialization.
48
49
4a
4b
4c [] Init with 1.
4d [] set magic evade (magic defense% in game) from armor equipped in case of player.
4e [] store row from battle formation here during init.
4f [] init with 0xff.
50 [][] init with 0.
52 [][] init with 0xffff.
54 [][] elements mask. add this to no damage elements mask during damage calc.
56 [] store 2 here during init in case of enemy. Init with 8 in case of player.
56 [][] ap.
58 [][][][] gil.
5c [][][][] exp.
60
61
62
63
64
65
66
67
-
Posible actions are
800f692c + 03 [] action type (0x01 - player attack
0x02 - player magic
0x03 - player summon
0x04 - player item
0x05 - player steal
0x06 - player sense
0x07 - player coin
0x08 - player throw
0x09 - player morph
0x0A - player deathblow
0x0B - player manipulate
0x0C - player mime
0x0D - player enemy skill
0x0E - ???
0x0F - ???
0x10 - ???
0x11 - player mug
0x12 - player change
0x13 - player defend
0x14 - player limit
0x15 - this replaces with magic after modification
0x16 - this replaces with summon after modification
0x17 - this replaces with item after modification
0x18 - player slash-all
0x19 - player 2x-cut
0x1A - player flash
0x1B - player 4x-cut
0x1C - ???
0x1D - ???
0x1E - ???
0x1F - ???
0x20 - enemy attack
0x21 - ???
0x22 - run scripts
0x23 - ???
0x24 - ???
0x25 - ???
Nice. Changing the 60 02 to 60 14 made the difference. So 92 is "Perform Command YY with index XXXX". Terrific! Cosmo Memory is working. However, he doesn't shrink back down after performing it. He kept getting bigger until he no longer fit on the screen and then shrunk back down to size 10h. Very strange.
-
I tried what LKM said to change and it still doesn't work heres what i have.
http://www.imagenerd.com/uploads/jumbo_cactuar_script_wrong-s53tq.png
Any ideas? Sorry to bother you again. Note this is the cactuer from scene 58, the other one was the one from scene 65.
-
The header is wrong. The 1st pointer is correct. The 2nd must be 0x0053 (not 0x0049), and the 8th 0x00C9 (not 0x00BF). I haven't seen more into it though, might be more.
-
The header is wrong. The 1st pointer is correct. The 2nd must be 0x0052 (not 0x0049), and the 8th 0x00C8 (not 0x00BF). I haven't seen more into it though, might be more.
No. The second must be at 0x53. 0x52 points to the 73h that ends the script so it wouldn't have a main if you did that. You have to point to the byte after the 73h.
ff7rules, do you even know what we mean when we're talking about a header? Read this (http://wiki.qhimm.com/FF7/Battle/Battle_scenes#AI_Data). If you still have questions feel free to ask again.
-
Sorry, you're correct. Dumb mistake. It's corrected. And it's 0x00C9 not 0x00C8.
-
Ok i get where the headers are and everything and they mostly consist of FFs however how do you work out where the new header is like the hex value? thats what i don't get sorry if this is really obvious. Does it always point to the starty of a new script or something?
-
See the first 73h in the picture you posted? The Header for the enemy you're modding starts right after it. 73hs are easy to recognize as marks in the AI, just make sure it isn't used inside an argument, like 72GoTo(0173) (this really is annoying when making AIs). Each pointer is 2 bytes long. (you knew this :P)
The 1st pointer is 0x20
The 2nd pointer is 0x49 should be 0x53
The 8th pointer is 0xBF should be 0xC9
These bytes represent the offset inside the AI. The offset they represent are the start of a section. They always land after a 73h, except the 1st which starts right after the header.
1st section is the SETUP
2nd section is MAIN
8th is PRE-TURN
Note that the header is also counted in when finding the offset. The 1st byte in the header is offset 0x00 of that enemy's AI. The 1st byte after the header is always offset 0x20, thus the 1st used pointer is always 0x20. If setup isn't used MAIN is in almost all cases 0x20 (Setup is then 0xFFFF). 0xFFFF simply means that the section isn't used.
-
The 8th section is actually Post-Attack. It did seem like it MIGHT have been Pre-turn, but it's really executed immediately after any attack is performed by any actor to any target. Otherwise it would activate when PCs' menus come up.
-
I think I get it now! so its referring to what byte in the enemy's AI so if you move it any at all its best to make a note of how much its moved by then add it to what it once was is this correct? Sorry if i seem thick but this is all new to me.
-
Wait, there's a difference between our scripts; ff7rules, you've got another ten bytes in there that I didn't have. I've highlighted them. That's what went wrong.
(http://img18.imageshack.us/img18/5976/jumbocactuarscriptwrongie0.png)
-
The 8th section is actually Post-Attack. It did seem like it MIGHT have been Pre-turn, but it's really executed immediately after any attack is performed by any actor to any target. Otherwise it would activate when PCs' menus come up.
You are prob right. It's been ages since I did any modding. Yeah, post-turn/attack sounds more correct as I recall. This script is run after each command by any battler.
I think I get it now! so its referring to what byte in the enemy's AI so if you move it any at all its best to make a note of how much its moved by then add it to what it once was is this correct? Sorry if i seem thick but this is all new to me.
At least if you insert or delete bytes inside the AI (add or remove). Basically if a section is longer or shorter that what it used to, all section's pointers after the one you altered needs to be adjusted to land after the 73hs.
Lets say I alter the MAIN section. The COUNTER GENERAL section's pointer is 0x0125, but MAIN got 5 bytes shorter. Thus I need to adjust the COUNTER GENERAL pointer to 0x0120. I don't need to adjust the SETUP pointer 'cause it's offset is unaffected by me altering MAIN. But every offset after MAIN is affected, thus the pointers needs to be adjusted for those sections.
Hope this made any sense.
And, just in case, you need to check the main pointers for the AI. You know the 6 1st bytes of the AI section in the scene. If you're altering the last enemy in the scene it doesn't matter, but if you alter the 1st or 2nd you need to adjust these pointers as well. These points to the offset of the Enemy's AIs. The 1st will always be 0x06.
-
Sorry if i seem thick but this is all new to me.
Don't worry about it; AI editing has a steep learning curve for people with no programming experience. I've messed up quite a few times and I can still only do basic things.
-
Thanks for pointing that out LKM! I have NO idea how that happened i deleted them and it works he grows big but when hes about to attack me it freezes :? Heres what i have now. My guess is the headers are wrong.
http://www.imagenerd.com/uploads/cacwrong2-syP0m.png
-
Yep, the headers are wrong now :-P
this would work with the headers I used; the script you were using before would work with the headers gjoerulv and NFITC1 suggested.
-
Yep, the headers are wrong now :-P
this would work with the headers I used; the script you were using before would work with the headers gjoerulv and NFITC1 suggested.
WHEY!!! it finally works! thanks so much for all your help guys! Think i might make a Big Tonberry aswell lol. Thanks LKM for saying that i feel better now lol it is hard to grasp but i bet once you do the rewards are defo worth it ;)
-
Hey, nice! What exactly were you trying to do? Sorry for my unknownness, too lazy to read it all... :P
-
Well when i made cactuar jumbo he just stood there and danced away didn't attack. I know now this is because the headers where pointing at nothing nd not the next part of the script (i think)
-
Thats awesome man i should have a pic and a vid of jumbo cactuar tonight.
Enemy Brightness Mods
Enemy 1 color mod: 80154768 ??00
Enemy 2 color mod: 80155304 ??00
Enemy 3 color mod: 80155EA0 ??00
Enemy 4 color mod: 80156A3C ??00
Enemy 5 color mod: 801575D8 ??00
Enemy 6: 80158174 ??00
Any value will work (the entire spectrum is possible), but here are the extremes:
7F: Totally black. Being of darkness.
80: Really bright.
Just thought id post this 1 as well see if it can be done seems abit pointless but meh.
OK it's got to where i actually want to do this now can anyone point me in the direction of how to accomplish an enemy been completely black?
-
Just a wild guess:
if 8015475A -> 4098, then
((CODE - 80154747) < 3) + 4000 = Script Address (all in hex)
Therefore 80154768 -> 4108
So try something like:
12 60 20
11 08 41
80
60 XX
90
to change a character's "gamma" (which I think this should appropriately be called).
02 60 20
01 08 41
80
that will retrieve the character's current gamma if you want to use that. Remember that this is a guess. I haven't tested this address yet.
PS: Something that I've seemed to notice. In LKM's video (http://www.youtube.com/watch?v=ZRj5wr-iwqA) of my Red XIII mod, you'll notice that Red grows very large, then doesn't shrink back once he's grown larger. A weird bug occurs where he stays large, then gets larger again and again before shrinking back again. I think this is because the command 92 automatically ends the script. I'll test this later, but I think this is the case. This was previously undocumented so I'm a little surprised by it.
-
Just a wild guess:
if 8015475A -> 4098, then
((CODE - 80154747) < 3) + 4000 = Script Address (all in hex)
Therefore 80154768 -> 4108
So try something like:
12 60 20
11 08 41
80
60 XX
90
to change a character's "gamma" (which I think this should appropriately be called).
02 60 20
01 08 41
80
that will retrieve the character's current gamma if you want to use that. Remember that this is a guess. I haven't tested this address yet.
PS: Something that I've seemed to notice. In LKM's video (http://www.youtube.com/watch?v=ZRj5wr-iwqA) of my Red XIII mod, you'll notice that Red grows very large, then doesn't shrink back once he's grown larger. A weird bug occurs where he stays large, then gets larger again and again before shrinking back again. I think this is because the command 92 automatically ends the script. I'll test this later, but I think this is the case. This was previously undocumented so I'm a little surprised by it.
I tried this and well he doesn't go black but something does happen every physical attack does 1 damage even overflows! I must of inserted it in the wrong place i inserted it at the start of his script the gamma has nothing to do with his script does it :lol: Also about red does the script just restart itself once he has shrunk down once? I noticed in the video he got bigger much faster the 2nd time he grew and that big he no longer could fit on the screen. Is he suppose to shirnk back down after using Cosmo Memory once?
-
PS: Something that I've seemed to notice. In LKM's video (http://www.youtube.com/watch?v=ZRj5wr-iwqA) of my Red XIII mod, you'll notice that Red grows very large, then doesn't shrink back once he's grown larger. A weird bug occurs where he stays large, then gets larger again and again before shrinking back again. I think this is because the command 92 automatically ends the script. I'll test this later, but I think this is the case. This was previously undocumented so I'm a little surprised by it.
Hmmm, no it's possible to make enemies do multiple commands in one dash through a script. Many enemies do this to attack 2 or more times in a row. I know cause I've tried it myself. Where is that mod of yours?
-
I just put the following script in Red XIII's General Counter:
02 60 20 01 98 40 80 60 20 40 70 3B 00 93 28 45 B5 53 00 47 4F 4E 4E 41 00 42 4C 4F 57 01 01 01 FF
12 70 20 02 A0 20 90 60 02 61 A9 00 92 12 60 20 11 98 40 80 60 10 90 72 4D 00 12 60 20 11 98 40 80
02 60 20 01 98 40 80 60 01 30 90 73
I don't expect you to translate that immediately so here's what it does:
If Self.SizeMult = 32
{
Display "He's gonna blow!!!"
SelfTargetMask = SelfOpponent Mask
Perform "Cosmo Memory"
Self.SizeMult = 16
}
Else
{
Self.SizeMult = Self.SizeMult + 1
}
So basically everytime Red XIII takes damage he grows 1/16th normal size (except it looks more like 1/32). When he reaches twice his normal size he performs Cosmo Memory. I wanted it to look like he was shooting the beam out of his mouth, but I have to find the right multiplier for that. It's probably larger like 48 or so. It did try to perform Cosmo Memory once he got that large, but it didn't look right.
I think the command 92 (Attack) has other arguments than 20 and 24. Sephiroth's has 01 and 02. This might be significant.
In any case, it's a fun new effect we've discovered. :D
That's what he posted on the first page man.
-
Ah I see. You can try to make an Self.SizeMult = Self.SizeMult - 16?
-
Question where are all the AIs and models for the battlers stored? Im going to try something.
-
Ah I see. You can try to make an Self.SizeMult = Self.SizeMult - 16?
Tried that. That's what I've done to "fix" it, but it still doesn't work.
I tried this and well he doesn't go black but something does happen every physical attack does 1 damage even overflows! I must of inserted it in the wrong place i inserted it at the start of his script the gamma has nothing to do with his script does it :lol: Also about red does the script just restart itself once he has shrunk down once? I noticed in the video he got bigger much faster the 2nd time he grew and that big he no longer could fit on the screen. Is he suppose to shirnk back down after using Cosmo Memory once?
According to Akari's notes a few pages ago, he says that that byte is part of physical defense (I told you it was a blind guess :) ). So setting that byte sets their defense up by at least 256. Possibly overflowing the defense rather than the damage. Since damage is always +1'd if the target's not immune to the type of damage it's only doing 1 damage.
Red's script is all in his general counter. It may even happen if he hits himself. Once he performs Cosmo Memory I can't get anything out of him on that script run. Here's what I currently have on his General Counter:
02 60 20 01 98 40 80 60 20 40 70 56 00 93 28 45
B5 52 00 47 4F 4E 4E 41 00 42 4C 4F 57 01 01 01
FF 12 70 20 02 A0 20 90 60 14 61 A9 00 92 93 54
45 53 54 FF 02 60 20 01 98 40 80 60 10 41 70 68
00 12 60 20 11 98 40 80 02 60 20 01 98 40 80 60
01 31 90 72 34 00 12 60 20 11 98 40 80 02 60 20
01 98 40 80 60 01 30 90 73
RedXIII_Gen_Counter
{
If Self.SizeMult = 20 then
{
Display "He's gonna blow!!!"
Self.Targets <- Self.AllOpponents
Perform("Cosmo Memory", "Limit")
Display "test"
Do While Self.SizeMult <> 10
Self.SizeMult <- Self.SizeMult - 1
Loop
}
Else
{
Self.SizeMult <- Self.SizeMult + 1
}
}
I'd love to test this, but ff7 won't start for me right now and I'm concentrating more on the LZS compression app you want. ;) Don't feel bad, that's what I'd rather be doing anyway. :D
-
AH that definitely explains it then lol still that could be usefull for an enemy im going to make later on. Thanks for making the LZS compression tool in the first place you have no idea how usefull its gonna be will open the door to allot more mods for the psx version thats for sure! I just watched Garlandthegreats newest video on youtube the 1 with Turquoise Weapon and noticed it changes color after the battle has started just like they grow once the battle starts so maybe it is part of the script?