[PSX/PC] Field editor - Deling (1.0)

  • Thread starter Thread starter myst6re
  • Start date Start date
Status
Not open for further replies.
I'm liking the debug messages:


Code: [Select]
Code:
83:kitase130:Defeat IfritRaise flag235:   [I don't recognize any of this stuff on this map and it looks cool!Perhaps I just never used computer terminal - DLPB] 258:Event in the works!!!351That's it for today's CD.Thank you.352:This is it for today's CD.This is the end of DISC 3.369:Map is not connected.Go to control room where Seifer is waiting.528: ”Originally, the game was supposed to go to where the lifter is stationed but it will jump straight to the lab.“569:Remove items for debugging600:Temporary dialogue613:”The master fisherman's motions are all temporary.  They're not connected.“640:After events,go to Party setup menu.753:Rinoa's proud pose.800:We know that the soundis not timed well.No need to report it as a bug.[Was this ever fixed? - DLPB]804:Motion, placement are temporary805:Loud noise807:Loud gunfire808:In developmentCharacter not in motion with moviePlease wait[This was obviously fixed. In the final game, the camera pans and squall's position is correct. - DLPB]809:Movie&event in development.Test movie{NewPage}What to do in the parking lotGo to the desertDo not return to prison.  It crashes.810 and 811:TestElectric shock823:No motion825:No motions are included.They are floating.[Instructing that Rinoa and Squall are floating at this point - DLPB]826:Event in developmentNo lift implementedMatch character with soundReport only bugs for this scene872:Thank you, all QA personnel.That's all for today.947 and 950:Dragon's roar

@Myst6re:

Searching for opcodes and so on does not work backwards properly.

Any chance also of a pseudo-code search too?  And a search that can search for 2 opcodes at a time and not one?  Finding a music load was difficult because the value is pushed beforehand.


Really good job with this!
 
Last edited:
Any chance also of a pseudo-code search too?  And a search that can search for 2 opcodes at a time and not one?  Finding a music load was difficult because the value is pushed beforehand.
This bother me too, but for now... I need to made a new search type for the pseudo-code, that's not the easier part.

Also to answer Annie (I saw your message), I made a little user manual here: https://github.com/myst6re/deling/wiki/Custom-Fonts
 
Well you have done a hell of a job here myst6re. And thanks for it.

Although I have some questions, if someone has patience to answer them (from simple to harder):
1) In the encounter section, formations, what are they? monster types? is there an option to edit the those? (by export? or can I access to the binary code?)

2) Can I change the magic type of a draw point? (with the last version of Deling) if posible how?

3) Can I edit the starting exp points of Squall from 6500 to 6000?

4) And last one, can I edit some GF special abilites like Str Bonus (so instead of given 1 pt per level it gives 2 or 3)?

Yeah I know that most of these questions are just finding the correct byte in the bin and then replace the value, the tough part is finding it.
 
1) In the encounter section, formations, what are they? monster types? is there an option to edit the those? (by export? or can I access to the binary code?)
Encounter IDs. You can edit them via this:
https://www.ff7catalog.com/threads/11143/

2) Can I change the magic type of a draw point? (with the last version of Deling) if posible how?
This is the hardest one if you want to edit the magic drawn from magic ID.
All the lecture is here: https://www.ff7catalog.com/threads/11693/
If you don't want to replace magic but just replace drawpoints, then edit the variable pushed before DRAWPOINT in field script with Deling.

3) Can I edit the starting exp points of Squall from 6500 to 6000?

4) And last one, can I edit some GF special abilites like Str Bonus (so instead of given 1 pt per level it gives 2 or 3)?
Use Kernel editor: https://github.com/alexfilth/doomtrain
 
Last edited:
Maki is correct but with one clarification, if you want to just edit the initial exp points of Squall, you need to edit the init.out file - you can change the exp formula with kernel.bin but it'd give a different result, it's basically the initial save file and it's in this format: http://wiki.qhimm.com/view/FF8/GameSaveFormat.
If I remember correctly, the init.out file doesn't contain the preview stuff listed in the wiki and starts at the GF data.
 
Last edited:
Maki is correct but with one clarification, if you want to just edit the initial exp points of Squall, you need to edit the init.out file - you can change the exp formula with kernel.bin but it'd give a different result, it's basically the initial save file and it's in this format: http://wiki.qhimm.com/view/FF8/GameSaveFormat.
If I remember correctly, the init.out file doesn't contain the preview stuff listed in the wiki and starts at the GF data.
Indeed I didn't found starting exp in kernel.bin with doomtrain, I was overwhelmed by the things that I can edit with it, and start playing like a child with the enemy attacks, the devour results... But i want to keep it simple, so thanks for this tip of init.out it will help me to make my desired mod.

I found it at (by comparing the saves in the mcr) 0x0BF9D800, first disc us version. I hate LE and BE cuz 08FF is FF08.

More exactly at 0x0BF9DC404-05 holding 6419

At least that seems to work, see pic: https://www.dropbox.com/s/ejl8i6afxvh6v56/6k-exp.jpg?dl=0
 
Last edited:
Heh, there is quite a lot of stuff to edit in Doomtrain. Me, alex and Maki have been working on it quite a lot. I think it's only the Duel stuff that's left to code before an initial release.
There's still a bunch of unknown bytes in the kernel.bin and I'm still working on reverse engineering it, so there might be a couple more things to edit in future releases but the bulk of stuff is there.
If I recall, you can't actually change the amount with Str Bonus in Doomtrain, I think you can only edit if an ability has that effect or not - I think the actual ability stuff is done in the game code.
 
If I recall, you can't actually change the amount with Str Bonus in Doomtrain, I think you can only edit if an ability has that effect or not - I think the actual ability stuff is done in the game code.
Yes the only bonus that can be changed (from what i found), is the amount of HP gained with Devour. The rest is fixed.
 
Hi there !

I'm looking for the code which determines the disabling of magic command in Ultimecia's castle. I want to use it in another field in the game. It seems that it's hardcoded and I can't see it in the script. Does anyone know how it works ?
 
The opcode for enabling abilities is here:
http://wiki.qhimm.com/view/FF8/Field/Script/Opcodes/159_SEALEDOFF

see field 98 (testbl9) - the bosses call this field after defeating them.
For an example of this, see fehall2->boss->push (Ultimecia Castle- Hall)

The toggle to enable/disable locking are probably the LASTIN opcodes in ffbrdg1 and LASTOUT opcodes in fehall1.

I'd make sure you set field byte 334 back to its original value once you're done with it, otherwise you might get some abilities already unsealed when you enter Ultimecia Castle.

I think SEALEDOFF only removes the seal immediately and temporarily. Changing field byte 334 adds the flag to the save for save game loading and LASTIN/LASTOUT toggles.
LASTIN/LASTOUT probably set a flag in the save game and activate/deactivate seals - there's probably exe code that deals with the game loading case.

I'm not 100% sure on all that lot since I've not tested it but it should give you a good starting point.
 
Last edited:
Thanks, I've put this in the script and it works fine, magic is disabled:

Code: [Select]
Code:
PSHN_L      1LASTINPSHN_L      1SEALEDOFFPSHN_L      4SEALEDOFFPSHN_L      8SEALEDOFFPSHN_L      16SEALEDOFFPSHN_L      32SEALEDOFFPSHN_L      64SEALEDOFFPSHN_L      128SEALEDOFF
Just one thing I'm not sure: how do I set byte 334 back to its original ?
 
http://wiki.qhimm.com/view/FF8/Field/Script/Opcodes
at a guess:
Code: [Select]
Code:
PSHN_L     0POPM_B     VAR334
also SEALEDOFF doesn't change byte 334, so saving/loading or calling LASTIN/LASTOUT would probably reset the seals - you have to edit this byte manually, see field 98 (testbl9)
What you should really do is set field byte 334 to 253 (enables everything aside from magic) before calling LASTIN, you wouldn't need all those SEALEDOFF calls then.

so for entering the area:
Code: [Select]
Code:
PSHN_L     253POPM_B     VAR334PSHN_L     1LASTIN
and leaving the area:
Code: [Select]
Code:
PSHN_L     0POPM_B     VAR334LASTOUT
note that this way only works if you do not intend to remove the magic seal. If you need to remove the magic seal in the area, you'd need conditionals on some of the code.
 
Last edited:
OK, thanks ! :D

(HS: you didn't see my post on Ifrit thread or you don't know how to do it ? ^^)
 
Hi!

I'm trying to put a new timer at the end of CD1 during the Edea's parade, it works well but when I enter the battle against the two Iguion, the timer stops. I've tried tu put a DISPTIMER and a GETTIMER but no, that doesn't work... any idea ?
 
I believe you need to edit the flags for the encounter in scene.out:
see here and here
Code: [Select]
Code:
+0x04: Shows the timer on battle. Like in dollet withdraw combats, or missile base.
 
Last edited:
Oh yes, of course. I use this tool but I forgot this flag. Thanks !
 
im sry for being newb but i searched around, how do we use these tools on this forum for the iso files
 
Is it me or dieling doesn't save my changes guys, when i change the script like Girl Next Door did in the disabling magic code or fiddling with the codes and try to save my changes doesn't seem to be saved can anyone explain to me what am i doing wrong  :-(
 
Do you compile your changings before saving ?

Also, it could be the fact that you have the field.fs opened in 2 tools in the same time.
 
Status
Not open for further replies.
Back
Top