Friday, April 30, 2021

New make-shift Buildbot and a little Translation Update

Dear Citizen of Monopolis,

it's been quite a while since i last posted an update, but behind the scenes progress is still happening at a steady pace.
The last few days i have been trying various ways to completely automate the building/compiling process that we use to upload translated game files to our repository.
At first i tried to use Bitbuckets integrated CI/CD features called "Pipelines". But because of the fact that most of the programs i'm using are for Windows (armips for example, too lazy to make it work under Linux) i decided to make things even more complicated for myself and grabbed one of those 12 months free "Cloud On-Demang VMs" - proudly sponsored by our Chinese Overlords.
It only has 1 vCPU / 1 GB vRAM and its running the god awful Server 2019 Core, but i somehow managed to actually create a simple Buildbot that is able to compile and upload the latest game files, packages into a zip, onto our repository:

https://bitbucket.org/Risae/growlanser-6-english-translation/downloads/

The script is fairly simple and pretty much does the following:

1. pull the up-to-date files from the repository using GitHub Desktop's "git.exe"
2. execute the build.bat which resides in the repositories "GL6 Build" folder
3. delete the old "BuildBot-Growlanser_6_English.7z" from the reposity using Bitbuckets API
4. zip up all the compiled files
5. upload the zip file to the repositories using Bitbuckets API
6. delete the zip file from the local machine

All of this takes about 10 minutes overall and runs every hour. I could change it to once every 30 minutes, but there is not enough going on in our repository to do that.
So far i gotta say its been working like a charm. And since its running Server 2019 Core its actually not that process hungry:



For anybody interested, heres the script that does all of the magic:

:::: Get the latest repository files
cd /d C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\
C:\Users\Administrator\AppData\Local\GitHubDesktop\app-2.7.2\resources\app\git\cmd\git.exe pull

:::: Start the build.bat script
call "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\build.bat"

:::: delete old zip file
del "C:\BuildBot-Growlanser_6_English.7z"

:::: Zip up the Files
"C:\Program Files\7-Zip\7z.exe" a -t7z "C:\BuildBot-Growlanser_6_English".7z "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\GL6_FACE.DAT" "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\GL6_FILE.DAT" "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\GL6_SCEN.DAT" "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\SLPM_667.16"

:::: Delete compiled files
del "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\GL6_FACE.DAT"
del "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\GL6_FILE.DAT"
del "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\GL6_SCEN.DAT"
del "C:\Users\Administrator\Documents\GitHub\growlanser-6-english-translation\GL6 build\SLPM_667.16"

:::: delete last release from bitbucket
curl -X DELETE "https://USERNAME:PASSWORD@api.bitbucket.org/2.0/repositories/Risae/growlanser-6-english-translation/downloads/BuildBot-Growlanser_6_English.7z"

:::: change directory to C:
cd /d C:\

:::: Upload compiled files to Bitbucket Downloads
curl -X POST "https://USERNAME:PASSWORD@api.bitbucket.org/2.0/repositories/Risae/growlanser-6-english-translation/downloads" --form files=@"C:\BuildBot-Growlanser_6_English.7z"



Aside from the Buildbot, Haruka has been doing a tremendous amount of work on the actual translation.
If you've been following our commits on the repository, then you should have noticed that Haruka is almost done with the translation of the SCEN.DAT files.
Most of them received the status "[COMPLETED]" and only a few remain untranslated.
If you find issues ingame or notice things that have been translated incorrectly, then don't hesitate to let us know about it. You can always reach us in our Discord channel.

It will still take quite a while until we fully finish our fan translation of Growlanser 6, but heres hoping that this project will help new and old people get interested in Growlanser.