[PC] Enemy editor - IFRIT (0.11C)

  • Thread starter Thread starter gjoerulv
  • Start date Start date
Status
Not open for further replies.
I'll take a look at the opcode, it might be that I've set a byte wrong.

EDIT: looks like I'm writing 02 06 C8 00 XX XX XX XX instead of 02 06 C9 00 XX XX XX XX. I guess in this case C8 is used for player characters and C9 is used for monsters.
The reason for this issue is that a lot of the conditionals seem have this byte set to C8 when it's not used but it doesn't seem to be the case here - you're also likely to get this issue if you recompile the code.
Partly the reason the AI stuff is still in beta is because a lot of the stuff is still unknown :P.
You'd probably have to change it manually after compiling it for now until I get around to fixing the issue.
 
Last edited:
Hi !

I have a problem with the AI of Tomberry. I want to change the condition of spawn ot Tomberry Sr. Put 1 battle instead of 20 or 50 to make it spawn. Here's the code:

Code: [Select]
Code:
save.var51 += 1die()if (battle == 236) {    if (save.var51 >= 20) {        if (save.var52 == 0) {            unknown33()            launch(0)            return        }    }}if (battle == 237) {    if (save.var51 >= 50) {        if (save.var52 == 0) {            unknown33()            launch(0)            return        }    }}
When I put 1 instead of 20 and 50, it corrupts the file. How I can do that manually ?
 
0xC3E0 from 0x14 to 0x01
0xC405 from 0x32 to 0x01

I'd be interested to know why the file ended up corrupted though.
 
Thanks !

I don't know why it corrupts the file but what I know is that I have troubles with fonctions which have self.var or save.var. Here's an example with the Fastitocalon fake. Its AI:

Code: [Select]
Code:
if (rand() % 3 == 0) {    return}if (self.status == CONFUSION) {    target(207)    if (self.varDC == 0) {        target(200)        domoveid(2)        self.varDC = 1        changeresistance(3, 900)        changestat(1, 10)        changestat(3, 10)    }    else {        target(207)        domoveid(1)    }    return}if (self.varDC == 0) {    target(201)    domoveid(0)}else {    target(201)    domoveid(1)}
When I try to change a simple number, I can compile it, save and when I go back to the file, the AI has changed to something bugged:

Code: [Select]
Code:
if (rand() % 3 == 0) {    return}if (self.status == CHARGED) {    target(207)    if (self.hp == 20) {        domoveid(2)        self.varDC = 1        changeresistance(3, 900)        changestat(1, 10)        changestat(3, 10)    }    else {        target(204)        domoveid(1)    }    return}if (self.hp == 7) {    domoveid(0)}else {    target(201)    domoveid(1)}
 
I believe the majority of the corruption is a problem that I fixed on July 25th, you can get the updated version here.
The issue was that variables in if statements weren't being compiled properly and ended up missing 2 bytes.
 
Oh great, I've missed this update. I've tried it and it works fine, thanks.
 
Sorry for the double post.

Now, I want to use save.var for sidequests but I wonder how it works. I tought it use  this list of variables: http://wiki.qhimm.com/view/FF8/Variables but no, that's not the case. So, where I can find the good list and is there some unused ?
 
Those variables are only for field scripts, the battle ones are listed here:

and the 8 save vars are as follows:
Code: [Select]
Code:
0x0CF4 4 bytes Unknown0x0CF8 4 bytes Battle: Tonberry killed count0x0CFC 4 bytes Battle: Tonberry Sr killed (yeah, this is a boolean)0x0D00 4 bytes Unknown0x0D04 4 bytes Battle: First "Bug" battle (R1 tip)0x0D08 4 bytes Battle: First "Bomb" battle (Elemental tip)0x0D0C 4 bytes Battle: First "T-Rex" battle (Mental tip)0x0D10 4 bytes Battle: First "Irvine" battle (Irvine's limit break tip)
The offsets are probably slightly wrong but they're in the right order.
the first one is save.var50 and the last one is save.var57.

You could probably edit out some of the tutorial code in the AI or use one of the unknown ones if they're not used.
save.var50 is used by the Guard AI - I'm not sure where it's set though, I couldn't find any instances of save.var53.
 
Last edited:
Hum fine, so I can use 6 save vars (I've deleted the AI tutorials), that's not much.... anyway thanks for the help. :)
 
letting u know version 0.11B - IN DIRECTORY MODE - doesnt save at all just gives errors when changing stats. and its over saving other files im not even editing

single file open - save works fine
 
Last edited:
Hello, can somebody make a video-tutorial how use this program? (Even with notepad writing will be enough, is not necessary voice-video)

This program works for FF8 PSX ver? FF8-PC-Standard Ver ? or FF8-Steam version ?.
 
 A basic example of changing stats of "Ifrit" lets say would be enough for newbies like can learn how use that! Thanks.
 
Last edited:
letting u know version 0.11B - IN DIRECTORY MODE - doesnt save at all just gives errors when changing stats. and its over saving other files im not even editing

single file open - save works fine
Others have reported the same, but I've never been able to reproduce that bug. I would need as much info as possible to figure out what's going on in these cases. As of now I don't even have the game installed; need to reinstall and take a look.

Ifrit should work for all versions. On Ps1, I believe you can simply open the dat files directly. It's been a while since I seriously worked on this so I would need to refresh myself as well. :P
 
hey gjoerulv

i am using psxfin the emulator to play my ps1 games, so how can i use the ps1 enemy editor to open up the dat files

and where are the ps1 dat file stored
 
Hey gjoerulv

Great tool, I'm glad to be able to edit some monsters and make the game more challenging.

One note, the number besides Magic on [Draw tab] alters the "draw resistance" of that specific magic, the higher the number the harder to draw. But I actualy dont know where it fits in the formula, so a little more testing is required.

Cheers
 
Hi there, im trying to edit just to see how it works. I just put on glacial eye the magic apocalypse to cast and saved
but when i try to put into the battle.if (intothe steam/steamapp/common/FFVIII/data/EN)

this shows up
Sem-titulo.jpg


any help?
 
I sent you a PM, but I think the problem is that you extract from a battle.fs that does not have battle.fi and battle.fl in the same folder. Same thing when you pack/create a new battle.fs: Both battle.fi and battle.fl must be in that folder you create battle.fs in UNLESS you extracted all the files.

EDIT:
I updated first post in this thread to hopefully clarify things. Please read if you're confused; I try to explain as best I can, but I suck at explaining lol :P
 
Last edited:
Status
Not open for further replies.
Back
Top