Tuesday, August 4, 2020

Updated guide on how to patch the game using the GL6 repository files Part 1 (Overview)

Over the last year the way we compile our repository scripts changed a little bit, so heres an updated How-To guide on how to compile the repository scripts into the games .DAT files.
But first, a quick overview on the different tools we use for our project:


- PCSX2
https://pcsx2.net/
I personally use the PS2 emulator to test the game


- PCSX2 debugger
a useful debugger for checking the MIPS code that is being processed in the background while the game is running.


- PCSX2dis (ps2dis)
https://forums.pcsx2.net/Thread-PCSX2dis-v1-1-A-ps2dis-inspired-PCSX2-enabled-Game-Hacking-Tool-W-I-P-13-02-2015
Another useful tool:
"PCSX2dis is an ambitious new hacking tool based on old hackers' favourite ps2dis. Created for advanced hackers and beginner/intermediate hackers who wish to learn ASM hacking, this is an all-purpose tool fixed to a modded version of PCSX2, designed to make PS2 game hacking easier than ever, all in realtime!"
Afaik, only works with PCSX2 1.2.1.


- bitbucket
https://bitbucket.org/Risae/growlanser-6-english-translation/src/master/
We are using the repository tool "Bitbucket" to share and store our project.
It contains all the games script files and also files for various software that we are using.
We are using GitHub Desktop to sync our repository files to our local hard drive:

https://medium.com/@rvrajavijay/how-to-use-bitbucket-repository-in-the-github-desktop-fae2ef61135d

With this you can download the repository to your local computer and work on the files in there.
Any changes you make you can "commit" to the repository for all of the team to access.
The changes will be documented and everybody can see what changed.
A lot easier than working on the scripts files inside the bitbucket web view.


- abcde (Cartographer and Atlas)
https://www.romhacking.net/utilities/1392/
abcde is a tool to dump (Cartographer) and re-import (Atlas) the Growlanser 6 script file text.
I already dumped all of the script files that exist in Growlanser 6, so currently we only use its Atlas function to reinsert it into the games files.
The control codes for abcde are stored inside "/GL 5 and 6 abcde scripts/abcde.tbl" and so far i think i have all of the ones that are used inside the table file.


- quickBMS
https://aluigi.altervista.org/quickbms.htm
quickBMS is a tool to dump and reinsert game specific files.
For example, Growlanser 6 uses ".DAT" archives that stores the game files.
We are using quickBMS to dump all of the files that are inside the .DATs using a custom script which is saved in "/GL 5 and 6 quickBMS scripts/growlanser.bms"


- Xpert 2
http://xpert2.blogspot.com/
Xpert 2 is a tool to dump the contents of the games ISO and rebuild it.
Since the filesizes of the modified .DAT files are going to be bigger than the original, Xpert lets us create a new ISO with the bigger files.


- Apache2.0
https://www.psx-place.com/resources/apache.697/
Apache was another ISO tool to dump and hotswap files inside the games ISO.
Because of the fact that most of the game files are going to be bigger in size we sadly can't use it anymore.


- deltapatcher
Deltapatcher is a useful tools to create patched for the ISO, but this only works if the modified ISO is not bigger in size than the original.
Because of the new quickBMS script we don't have any script size limitation anymore, but this also means that we can't use deltapatcher because the filesize of the original ISO will increase.


- rainbow
https://github.com/marco-calautti/Rainbow
Rainbow is a tool to view the TIM2 (.tm2) image files


- Ghidra with the Emotion Engine processor
https://github.com/NationalSecurityAgency/ghidra
https://github.com/beardypig/ghidra-emotionengine
Ghidra lets us decompile the "ELF" file (SLPM_667.16).
The ELF file contains various text that only can be translated in there, but its almost all been translated.


- armips
https://github.com/Kingcom/armips
We are using armips to quickly modify the ELF file, mainly for the Variable Width Font code.


- TileShop
https://www.romhacking.net/forum/index.php?topic=30404.0
A tool to view the Growlanser 5/6 font files.
Uses XML files to tell the program how the font file is build up.


- wxMEdit
https://wxmedit.github.io/
A bit outdated Hex editor which supports Shift-JIS.

No comments:

Post a Comment