Wednesday, 21 August 2013

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?

Tuesday, 2 July 2013

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.

Saturday, 13 April 2013

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...

Saturday, 23 February 2013

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...

Monday, 11 February 2013

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.

Saturday, 2 February 2013

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. 

Monday, 7 January 2013

VX Status Report

Well, I've got a status report on the upcoming VX support.

Basically, it's almost entirely working. There's a handful of issues remaining, but only one is a real problem.

  • Real problem: Save files can contain large portions of events, including dialog. So I need to work out how these can be translated, or else updating games might be impossible.
  • Minor problem: Ruby can have code embedded inside a string. That means I need to figure out how to escape this properly
  • Minor problem: Ruby can visit attributes/dict elements in an inconsistent order, meaning things can potentially jump around inside patch files - this needs to be fixed
Also, VX support will mark the debut of patch format 3.0. This fixes a handful of issues with the old patch format. Contexts become much more detailed, and each translatable string only appears in the patch once - even if it appears in multiple files - with a different translation being possible for each context.

I will however point out that for the time being 2k games will remain using the old 2.0 format. That's because I've not yet modified the 2k code.