RPGMaker Trans v2.0 RC2 Released

So that took a little longer than I thought it would... the blame for this lies solely with Disgaea D2.

New RC is out, and it should actually work this time.

There's a few known bugs, but nothing is a deal-breaker as such:

  • Progress bar sticks at 99%, even after patching has completed.
  • CLI mode is untested, but probably won't work due to bugs in either Windows or the Python implementation on Windows. Not sure which.

Link: Dropbox

RPGMaker Trans v2.0 RC1 Released

OK, so the new version of RPGMaker Trans, after months of delays, is finally almost here. I'm releasing this as a release candidate because simply, due to Windows-problems, I haven't been able to do the level of testing on this that I'd like.

So disclaimer: I only think this works. No testing on the windows binary has been done, other than to confirm it runs. No guarantees. If your computer grows green hair and teeth and proceeds to eat your cat, I'm not to blame.

EDIT: Pulled due to a crippling bug. An RC2 will be released as soon as possible.
EDIT2: There are more bugs in the Windows version that I thought. RC2 may be delayed until Friday, depending on how fast I can squash them.

Progress

Checking in with a progress report... Nothing amazing, but here's the run down.

  • Translator core: 100% done.
  • CLI Mode: 100% done (could be improved, but error reporting will handle the current problems)
  • GUI Mode: 100% done
  • Final Testing: 50% done
For those wondering about CLI (command line interface, useful for scripting and stuff), it will hide behind a --cli switch. Thanks to the magic of Python,  there is already fully documented command line help, so it should be pretty easy to use.

I'm wary of saying it, but unless something goes badly wrong, expect a release within a week.

EDIT: So I'm updating this post with progress as stuff gets done. Italics and strikeouts indicate changes.

Incidentally

For those wondering about VX support, I refer thee to this article.
.
Basically, VX support is 95% done. The problem that remains is parsing Ruby to pull the strings out of it. It's not easy; most of my attempts either don't get all strings, or fall into some endless loop. Currently looking at the rubylexer library, or possibly Topaz's lexer - not sure if either is particularly usable for my purposes... but hopefully I can work something out.

With a bit of luck, there should be a new version of RPGMaker Trans, with a shiny new GUI and stuff, by the end of this week. Make that by the 15th. Some problems came up. Why do I even bother setting a date? Soon.

Stupid Python Multriprocessing Daemonic subprocess not being able to have child processes...

Patch Format v3

This isn't the long awaited next version announcement, but just some notes on what the new patch format is going to be like, and a request for anything I've missed. Now that that's out of the way...

As translators no doubt know, there's a few problems with v2 of the patch format. In no particular order, I think these are the top 3:

  1. Common strings to multiple files require multiple translations
  2. Big files
  3. No comments

At the very least, I'm aiming to fix all of these in the v3 format. 1) is already fixed (so no more translating "Yes" hundreds of times).  3) is almost done (suggestions on syntax? Currently there's a # COMMENT block, but that's not so easy to type...). 2) isn't started, but the plan is to have a couple of user definable variables which control how much goes into each file (one to control how big something has to be to be in it's own file, and one to control how many things to put into a single 'common' file).

Now: any translators want to suggest any other features that would be nice?

Fix

So, as people noticed, my auto-update code went a little bit rouge... Or something similar. If you're having problems with RPGMaker Trans saying there's a new version, please redownload. It should be fixed now.

Apologies.

Progress

Well, it's been a whilst since I did one of these...

Error Reporting: Big one really. As people know, RPGMaker Trans has some bugs which I'm really not sure what it is that they actually are. Well, the reason for this is using multiprocessing with Python tends to screw up the error reporting somewhat. Anyhow, I've finally managed to construct an error reporter that actually works, so hopefully I'll be able to get to the bottom of these errors soon.

QTUI: The new UI is pretty much done now. There's a few new bits of logic that are going to be added - it will be possible to select target directories, and RPGMaker Trans will 'remember' games accessed using the Browse button in its dropdowns.

VX: So it turns out that my current level of VX support isn't sufficient for some games - which it actually breaks when they're translated. I know the reason this happens, and am working on fixing it. Although the fix isn't pretty...

File hosting: Plan is to use Dropbox for now, and add Mega as an option later. I will also likely be making an auto-updater that automatically downloads new versions from Mega, which should be handy...

Grumbles... Mediafire...

Mediafire has decided that all 7z files are verboten. I've replaced the link with a Dropbox link for now, but depending on traffic that might not take.

I'll figure out a more permanent fix later on.

Other progress: Got VX save files to load. Started redoing some backend infrastructure of RPGMaker Trans to support VX games.

Update: I've had an email from Mediafires customer support crew- it seems that now there is a limit for the number of downloads that any free hosted file can have. So, that means that Mediafire has just gone from a good file host to probably one of the worst. Also explains why so many other Mediafire links have died recently...

Progress and such

In the spirit of actually trying to get things done, I'm going to start posting more regular progress reports. Not sure that it makes too much difference given that this is a low-traffic blog, but what the hey.

So, in the time since the last blog update these things have been worked on:

  • Bugs: Designed the fixes for the bugs (as said before, they're actually quite complex to fix), now just need to implement them
  • New feature: In-place patches. These won't create a copy of the game, so they're not useful for games which are in a constant state of flux or translations that are being updated frequently. However, once the game and translation are finished, in-place patching is a lot faster, so it's a nice feature.
  • New feature: QT based UI. Up until now, the UI of RPGMaker Trans has been based on wxWidgets. I'm migrating to a QT UI for primary reason that rewriting the UI properly will mean less work in enabling features, and the secondary reason that I really need to learn QT for other utilities I'm planning, as wxWidgets doesn't support certain features on Windows.
  • VX Support: Um... no progress on that yet, whoops.

Bugs and Workarounds

This post describes a couple of known bugs in RPGMaker Trans, and workarounds. I'm posting it because I'm somewhat overloaded at the moment, and fixing these is actually quite a bit more involved than most of the bugs I've seen so far. Well, for a good fix, at least.

Bug 1: Repeated Bad File Descriptor error
Cause: Patching from a ZIP which contains non-ASCII file names
Solution: Unzip the ZIP'd patch, and patch from the unzip'd version.

Bug 2: Files copying never finishes / files aren't copied to translated directory
Cause: Stale files in the _translated directory
Solution: Delete everything in the _translated directory apart from save games, and then re-run the patcher.
Solution 2: If the first solution fails, when the patcher enters its "waiting for file copying to finish state" close it. Then manually copy all files apart from LMU/LDB files from the base game to the translated game.