Qhimm.com Forums
Miscellaneous Forums => Scripting and Reverse Engineering => Topic started by: LeeHiOoO on 2008-09-24 13:19:40
-
OK the thing is.... i need to resize the small window at shop menu... the one that contains the text "Buy Sell Exit"
I managed to do this in psx version messing up with the shop.mnu file in hex editor
But I need to do it with the pc version.. and we all know that the menu files were coded into the .exe but i can't see to find it where to do it...
I need to do this because I'm translating and it didn't look good using abbreviation forms of 'buy' 'sell' and 'exit' in my language...
Then the texts need more space... also i would need to change the selection icon placement to fit the selections...
Remembering... i know where the texts are... i need to deal with the window size and selection icon placement...
Hope someone can help me with this... :?
-
You could check where the text is referenced in the exe - then just change the other function parameters to place the text. The window (background) drawing function should be nearby, just scroll up few lines in the disassembler and you'll find it.
-
yeah... i thought something like that would be the best way to find out how to do it...
unfortunately... I'm suck @ programming atm... I'm still 'learning' to do programming stuff... i have only a basic knowledge about some programming languages, but ASM is not included tho
so i would need a little more help on this :oops:
-
There you go:
The window:
0x00524098 - posX (2 bytes)
0x0052409A - posY (2 bytes)
0x0052409C - width (2 bytes)
0x0052409E - height (2 bytes)
Selection icon:
0x0031A0C6 - distance between each selection icon placement (1 byte)
You already know where the text is. Offsets are from 1.02 english ff7.exe (I think).
-
OMG!!!Thanks! How did u found that so fast?
How can i search those things on my own? I may have some other things like that to edit ..
Really appreciated! :-)
EDIT: I managed to successfully edit this window and adjust selection icon placement to fit... but i got another issue now, when i select the "SELL" option... the blinking selection icon that would indicate that I've selected it, actually it blinks on its original position... =/
I'm really looking forward to learn to find those by myself...
*tries to mess up with IDA pro... also trying to learn ASM* :-)
-
Oh, my bad. The other address is:
0x00319FEB
Just fire up any debugger and see what actually got changed. I'm sure you'll work it out.
-
OMG!!!Thanks! How did u found that so fast?
Check the txt under his handle. I kid, I kid.
-
Ok! "blinking icon placement" fixed xD
Thank you very much dziugo!
i really need to do this stuff on my own... where can i start to learn that stuff?
i tried to found who calls the texts disassembler... found some memory pointers... but i couldn't really find what calls window positions related and cursor =/
dziugo can u plz tell me what disassembler/debugger r u using?
btw, im trying with IDA and L. Spiro MHS
-
I'm using ollydbg, but any debugger will do.
FF7's code for PC is not optimized, and that's good for those who disassemble it. One method which works great when tracking things down in FF7 (provided they appear on the screen), is to find the call which uses the pointer to the memory location, and NOP the call (replace the call with five NOP commands). If it's not displayed anymore in the game, you've just nailed down the function you were looking for. Set a breakpoint there, try to resume the gameplay, and look what arguments are actually passed into the function. Try to change the arguments a little and see what will be the effect of that. Most of the arguments will be pretty logical (like position of the text, size of the window, etc.). And if the game crashes after you've changed the code, well, try again with something else :P
-
Hey dziugo! thanks for ur tips... I managed to find some stuff on my own.. like the Pause window at battle...
i found X-Y Pos... width-height for window and text position...even the delay for the blinking effect of the text and more stuff...
I didn't change it anyway... i was just testing if i could find something on my own...
but now i need to find something and I'm stuck...
it's the command window for Defend... i actually translated it.. and i would need to change the width of the window...
but i can't seem to find the call for the text... because the text its on the kernel2.bin and i know ff7 loads the kernel2 texts in module ff7.exe address 9A13## ... and i think the calls for 'non-static data' (meaning it is the data that is not loaded from the ff7.exe file) its kinda different..
If you could help me on this... :|