« April 2006 »
S M T W T F S
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
You are not logged in. Log in
Entries by Topic
All topics  «
The Do-It-Yourself Corner
Watercrown News
Blog Tools
Edit your Blog
Build a Blog
View Profile
Watercrown Productions DevBlog
Monday, 10 April 2006
I See What You Did There.
Topic: Watercrown News

So The Do-It-Yourself Corner bombed. Maybe I should've given it more than three tries, but crimony, nobody even read my blog when I put those posts up.

If anybody wants to see more of The Do-It-Yourself Corner, I'll gladly provide, but I'm not going to waste my time writing something nobody's gonna read.

That time is better spent working on my translation. ^_^

Anyway. I had my first really big freak-out in a while just recently: I discovered that the Cleanup minigame inexplicably crashed if you made a mistake and restarted. As it happened, I missed a pair of jump instructions in a part of the script that I had absolutely no freakin' idea affected it. So the glitch is fixed and the translation continues.

Oddly enough, there are a few bugs in the game that aren't my fault at all.

1. There is a sign near the easternmost road up to the mountain that doesn't say anything. Press A in front of it all you want; this is the only sign I've found that doesn't give you a message of any sort.

2. After a certain point in the game, holes open up near your house that you can use to "teleport" to other areas in Sylvania. However, if you use the one that gets you across the river, the Drum Bridge rhythm minigame develops an odd bug. Seems that the flag that tells the script which side of the bridge you're on isn't set if you warp, and as a result you'll have to cross the bridge (by minigame or otherwise) twice to actually get to the other side.

There are probably more, but these are the only ones I can think of off the top of my head.

Another oddball glitch, introduced by my VWF, is that the icon for furniture that's not currently in your room (a tiny circle, as opposed to the large circle for furniture that is) vanishes if you select anything to bring up the "Move/Put Away" options. Seeing how it doesn't affect the other icons and its absence pretty much serves the same purpose, I may just remove the icon altogether...

Please read, please comment, and if you have a good reason not to do either, comment anyway and voice your grievances. I miss my readers...

Powered by Qumana


Posted by Ryusui at 11:12 PM PDT
Updated: Monday, 10 April 2006 11:12 PM PDT
Friday, 7 April 2006
The Do-It-Yourself Corner, Chapter 2: Are We Having Fun Yet?
Topic: The Do-It-Yourself Corner

So few people seem to be reading this...it's got me a little bit worried. ^_^;

DON'T PANIC!: The translation project is still proceeding. I haven't forgotten any of you. The final (to my knowledge) script block has been dumped and I'm formatting it as we speak. This particular one is full of all the little messages that you expect to see in RPGs when you pick up items or perform tasks.

I also discovered that my VWF has one last kink to work out: the VWF will be more or less perfected after I hone this final element. I think.

So without further ado, Chapter 2: Making the Table. Or whatever.

Like I said before: everything in a ROM is based around numbers. Those numbers mean different things depending on context: it's like having a language that only has 256 words, but their meaning and required grammar are completely different depending on whether our little 1337-speaker is, say, sitting in the bathroom, driving his car or ordering a cappuccino.

Unlike graphics, which are due to hardware conveniences usually stored in a format that someone somewhere has fully documented and fully implemented into a tile editor, there are as many possible ways to store text in a game as there are books in Borges' Library of Babel. Sometimes you get lucky, and a game uses an established encoding format: sitting down at Notepad, typing up a document, you are using in most cases the standard ASCII encoding system (interestingly, Sylvanian Families uses part of the ASCII set). Japanese also has many standards, such as EUC, JIS and its variants, and the variants and subsets of the Unicode system.

If you've ever cracked an alphanumeric 3-18-25-16-20-15-7-18-1-13, you're familiar with the concept behind a table. There are, however, three differences:

1. The encoded text will very likely not be signposted in any helpful way. You'll have to hunt for it in a sea of non-text gibberish data.

2. The cipher you're trying to crack isn't written in English: it's written in Japanese. The classic "Etaoin Shdrlu" will not save you.

3. You won't just be working out letters/symbols. Some numbers do not represent text, but are nonetheless significant. Line breaks, page breaks, text effects...all of these are represented with their own numbers, and are collectively referred to as "control codes." Ignore them only at your peril. (Sylvanian Families uses so many of these that its script can be considered a compiled programming language.)

Right. I won't insult your intelligence any longer with vague references to "numbers." If you know anything about computers, you know they don't count "one, two, three". These numbers I've made so much of come down to rows upon rows of tiny on/off switches. Natively, a computer "thinks" in binary, or "base 2": it uses the numbers 0 and 1 and a place value system to represent every number from 0 to whatever. (An old joke says that there are 10 kinds of people in the world: those who understand binary and those who don't.)

Of course, most of your work will probably never delve directly into the magical world of binary. Binary digits, or "bits", are grouped in sets of eight, called "bytes", which can individually represent every value from 0 to 255, and this arrangement paves the way for a stopgap between the base 2 world of the computer's brain and the base 10 world of ours: the hexadecimal (base 16) number system. It uses the numbers 0-9 as well as the letters A-F to represent the numbers 0 through 15, and place value to accomplish the rest. The "tens" column represents "sixteens": 10 hex is 16, 20h is 32, 30h is 48, all the way up to FF, which is (15 * 16) + 15, or 255. So FF, the highest two-digit hexadecimal number, also conveniently represents the maximum number a byte can represent. (Also conveniently, 100h comes out to a clean 256.)

This is the "hex" in "hex editor": you will be looking at the ROM as byte data, represented in the form of hexadecimal numbers. Exciting, isn't it?

Now, down to business. Open up JWPce (or whatever) and load your ROM in Tile Molester (again, or whatever). Search the ROM for the font. Tile Molester should choose the appropriate format on its own, but on occasion you'll need to tweak it. SNES/SFC ROMs store graphics in a 4bpp format (you don't need to understand what that means right now), but the font is usually stored in a 2bpp format (the exact same one used by Game Boy, in fact). It might be stored in an unusual format, so if you don't find it using the default, try a different one.

If you can't find the font and you've tried all the different formats, then choose a different project. Its time will come. You are but a learner now, but when next you meet, you'll be the master...and you'll have a neat helmet, a red lightsaber and James Earl Jones doing your voice. Or something like that.

Games often have multiple fonts: if you find one that's not the main font, note its location anyhow. Sylvanian Families actually had me stymied for a while because even though I found the actual font the game printed, it was not in the same order as the game's table: another font elsewhere, however, was. Once we've found the font, which we will assume is in the same order as the table, we go on to the next step, which actually involves playing the game. ^_^

Even if you can't actually understand a word of it, pay attention for any patterns of characters in the game's text that are close together in the font. We'll need to know such chinks in the game's armor for our final step, which involves our hex editor's special power tool for table making: the Relative Search function. Relative Search takes a pattern of characters and searches for it in the ROM: if you searched for "king", it would search the ROM for every set of four bytes that have the same relation between them as the letters in the word (which, in theory, will help us determine what values represent what letters). For example, if all our relative search matches for "king" are identical, then it's safe to assume we've found the values for "k", "i", "n" and "g", and we can extrapolate the rest with the aid of the font.

The same thing applies here, only we'll be doing it with Japanese characters. We can't search for "king", but we can search for patterns. Let's assume our font has all the "plain" characters in order and leaves special characters such as dakuten and small kana outside the main run. For the sake of argument, let's say this is a "Ghost in the Shell: Stand Alone Complex" game and we've decided to use the name of those lovable, inescapable Tachikoma as our key. In Japanese, Tachikoma is written in katakana as "TA-CHI-KO-MA", which are close enough in the font for us to Relative Search. So let's take a look at the syllabary, and assign English letters to each one:

A-ko
B-sa
C-shi
D-su
E-se
F-so
G-ta
H-chi
I-tsu
J-te
K-to
L-na
M-ni
N-nu
O-ne
P-no
Q-ha
R-hi
S-fu
T-he
U-ho
V-ma

(Trust me, that "A-ko" isn't in there on purpose. I've never even watched it. >_>)

So the pattern we're looking for is going to be "GHAV". If we get results from the Relative Search that are all the same, we've found "TA", "CHI", "KO" and "MA" and can begin work on extrapolating the rest of the table. If not, we'll have to refine our search a bit, maybe choose a different pattern to look for...

But once we're sure we've found the correct pattern, we can start work on the table!

Table files are usually saved with the extension ".tbl", but they can really be any plain text format. WindHex seems to support Shift-JIS exclusively; Atlas and romjuice are fine with UTF-8. So we'll probably have to save it in two formats; no biggie for JWPce.

Let's first start with a blank table. Assuming there are 256 characters or fewer in the font, go into JWPce, switch to regular ASCII mode, then start with this:

00=
01=
02=
03=
04=
05=
06=
07=
08=
09=
0A=
0B=
0C=
0D=
0E=
0F=
10=
11=
...

And work your way through to...

...
EE=
EF=
F0=
F1=
F2=
F3=
F4=
F5=
F6=
F7=
F8=
F9=
FA=
FB=
FC=
FD=
FE=
FF=

And make sure there's a blank line at the end. Copy-and-paste helps a lot; just make sure you don't have any duplicates.

Switch back to Japanese mode and put down the symbol each byte value represents after its corresponding equals sign. Once you're done with that, work out the control codes: in the simplest case, you'll just have line break and page break codes to puzzle through. If every line ends in "FE" and a page of text ends in "FF", mark those values with "<line>" and "<end>" or whatever suits your fancy. If you're not so lucky, there will be more, but you can work them out by playing the game and taking note of what happens when text with those control codes appears on screen. Mark any unknown non-text values with the number in pointy brackets, like "<1F>", <CE>", "<D5>", "<42>", etc. There's a good reason for this, but it'll wait till another time.

There are probably people out there much better suited to writing a readme for romhacking beginners, and those same people are probably watching my silly, inefficient style and laughing. It's entirely possible I'm doing more harm than good by writing these, but I thought I'd fill in the space between major project updates by giving back to the online community. These are the techniques I've used, for the most part, anyhow, and they've served me in good stead.

Until next time, ladies, gentlemen, Demi-Fiends and you fuzzy things sitting on a shelf.


Powered by Qumana



Posted by Ryusui at 10:03 PM PDT
Thursday, 6 April 2006
The Do-It-Yourself Corner, Chapter 1: Getting Started
Topic: The Do-It-Yourself Corner

Before I begin, I'd like to say that working on Sylvanian Families for GBC has given me more experience with translation hacking than any project I've ever attempted. I dare say it's given me more experience with translation hacking than any one game could provide. It's like the game equivalent of the Chateau d'If, only warm and fuzzy: I came in Edmond Dantes, hopelessly naive sailor, and I came out as the Count of Monte Cristo, implacable agent of divine justice with a buried fortune at his disposal, deus-ex-machina powers that most shonen manga heroes would be envious of and characters like Zorro and Batman claiming their heritage from me. Well, not really, but you get the idea.

On that note, I'd really, really like to claim I'm an expert on the topic of translation hacking, but I can't. Sylvanian Families really is only one game, no matter how hard it is to get a translation inserted, and there are probably monsters out there lurking in some game ready and willing to tear my head off if I even think about translating them.

You know, if I keep beating around the bush like this, the DIY Corner is going to become the Lecture Circuit. So here it goes, as best I can: the real, genuine Chapter 1.

If you've ever had any serious interest in games, you've probably had a title you really, really wish you could play in your native tongue, but for some reason, the powers that be denied you your gaming goodness. You've found the ROM, downloaded it, played it, got frustrated at having absolutely no idea what was going on or having to constantly consult a dictionary, got more frustrated that no one but you seems to know your game exists and hence nobody's tried to translate it. Or maybe you just want to prove your translation skills and have a likely target in mind.

That said, translation hacking is often a multi-person job, but it can be done by one person working alone, assuming he/she is skilled at all the tasks required: the bare essentials are script dumping/insertion, graphics editing, and of course, the actual translation.

For the sake of argument, I will assume that you, the reader, have either 1. enough of a grasp of Japanese to translate with the aid of a dictionary or 2. a ready, willing and able translator on hand. If you have neither, I strongly suggest you visit the following link:

http://www.animelyrics.com/forum/topic_show.pl?tid=6109

Do not ask the users there to teach you. Use the resources provided in this link. The Japanese forum on AnimeLyrics.com is for language help and advice, not for dumping your translation woes upon.

At the absolute least, you should learn the kana, the syllabic writing system which represent the basic atoms of the Japanese language. There are around 100 total, split between two systems: the hiragana, cursive letters used to write native words, and the katakana, which more resemble print and are used like italics are in English: for emphasis and for writing words of foriegn origin. Some games, Sylvanian Families included, also throw in a smattering of simple kanji; you should prepare yourself with the appropriate resources.

Trust me. Even if you have a translator handy, it pays to know these.

Right. On to the more tangible requirements. Apart from the game and a good emulator (one with tile and map viewing is preferable; for the trickier parts, make sure you have memory viewing and some debugging functions), you will require:

1. A graphics editor. Your ordinary Paintbrush won't help you with this: in fact, not even Photoshop will help you. Directly, anyway. Games store their graphics in a myriad of strange (but usually efficient) formats that can't be read by ordinary graphics programs. I used to swear by Tile Layer Pro, but the Java-based Tile Molester (pardon the name; it's not mine) beats it in practically every concievable way. Most graphics editors, Tile Molester included, also allow you to export graphics in BMP format for editing in your favorite paint program: this is handy when it finally comes time to do the title screen. If you run into something tricky, FEIDIAN is a tool written in PHP for extracting graphics from a ROM directly into BMP format, but if the game you've chosen has anything Tile Molester can't view on its own, you should probably see if you can find an easier project. ^_^;

2. A hex editor. This has absolutely nothing to do with spells or curses: a processor, be it in a game console or sitting behind a prominent "Pentium 4 HT" label, is ultimately a sophisticated abacus for shuttling numbers, and as such a game, from the emulator's viewpoint, is merely a long list of numbers to shuttle around. Even the game's resources. The graphics editor, as with any paint program, takes those numbers and assembles them into the graphics they're meant to represent: the hex editor takes those numbers and presents them to you at face value. You see, even the all-important text is stored as numbers, and by using the two aforementioned editors in tandem, you will assemble a table that allows you to see what numbers represent the game's text and where and how it's stored. I strongly recommend Bongo's WindHex for this.

3. A script dumper. Once you've taken care of the above, you can use this program to extract the game's text, or "script", according to the table you compile. I've been using romjuice, but it comes compiled for Linux with C source code: you could get a C compiler and compile it for your own machine, or I could get off my butt and provide my Windows-compiled version if you need it.

4. Klarth's Atlas. Generically speaking, you want a script inserter, which will take your translated script and transform it into the digits that the game understands using your table as its guide, but Atlas is the best I've found, and if you have some skill with C, you can tailor Atlas to your precise needs (although it should have everything you need already if you've chosen a simple project).

5. A word processor with Japanese support. As noted above, actual Japanese knowledge is purely optional, but knowledge of the basic kana and possibly a few simple kanji is a must. JWPce is a great freeware program which supports multiple formats: WindHex, to my experience, requires its tables be in Shift-JIS format, and if you wish to reinsert Japanese text for any reason, Atlas supports UTF-8 (although I'm uncertain what other formats it supports). For some strange reason, I can't remember what format, or formats, romjuice supports. Of course, you could always construct a table using the romaji (literally "Roman letters", i.e. the English alphabet) equivalents of the Japanese symbols, but I can't recommend this.

Some games will require tools other than the ones outlined above, but for a simple, tutorial-worthy project, this is all we require.

This chapter is called "Getting Started", and that's precisely what we've done: gotten started. I seem to have a nasty habit of either having too little to say or embarking on page-long rants where they're not needed. Tune in next time for our next step: making the table!


Powered by Qumana



Posted by Ryusui at 9:27 PM PDT
Updated: Thursday, 6 April 2006 10:40 PM PDT
Wednesday, 5 April 2006
Welcome to the Do-It-Yourself Corner!
Topic: The Do-It-Yourself Corner

Translation is not an easy business.

I've seen people on the Internet who seem convinced that there is a magic bullet, an almighty program capable of taking a game and rendering it into perfectly legible, natural English. I've seen people who seem to think that there is an infallible, one-for-one conversion between every word in Japanese and every word in English, and think that the humble "kuso"-which literally means "fecal matter" but can be considered a catch-all for any four-letter word from "darn" on up-must always, always be considered to mean the s-word. I've seen people who swear by translations that are full of untranslated words that are pure gibberish to English speakers and insist that any work that leaves out these precious honorifics and distinctly Japanese quirks of speech is inferior. And perhaps most maddening of all, I've encountered people who seem to regard translation from Japanese to English as a simple cryptogram game, that the entirety of the language can be rendered into perfectly comprehensible English by simple letter substitution. (All the previous ones can be attributed to pure ignorance, but that last one is bred of an annoying, arrogant assumption that all languages are ultimately related to or derived from English, or that English is the only "real" language and that all others are merely games derived by foriegn people to frustrate Westerners.)

Thank God none of the people following my work are like that. ^_^

So. Since you all seem to be sane, sensible people, or perhaps I'm just viewing my blog through rose-colored glasses (is that why the background looks purple to me? Just kidding there), I thought I'd share some pointers in case one of my readers has some obscure Japanese or otherwise foriegn-language title that nobody thought to release in their native tongue. I have only one request of my readers:

If that game is ever released in English or whatever language you speak, make sure you buy the legit version. The retrogaming features on the Nintendo Revolution have me excited: with games from every Nintendo platform as well as Sega and TurboGrafx-16/PC Engine titles slated to be represented, a whole lot of great, overlooked titles may very well be released on our shores. Like Mother 1 (a.k.a. Earthbound Zero), Castlevania: Rondo of Blood or Starfox 2, which was never officially released anywhere (find the full beta ROM and AGTP's translation patch; you'll forget Adventures and Assault ever happened!).

...Crimony. I've spent so much time on the setup that if I keep going, I won't have anything left to post about. Consider this a "to be continued" on the topic of Do-It-Yourself fan translations: I'll start off with the basics tomorrow!


Powered by Qumana



Posted by Ryusui at 10:48 PM PDT
Updated: Wednesday, 5 April 2006 11:15 PM PDT
Tuesday, 4 April 2006
We Return You Now To Your Regularly Scheduled Progress Update...
Topic: Watercrown News

Three whole days and no comments for my big self-expose? I'm crushed. Well, not really. Still: if you have any reason whatsoever to read this, even if that reason is pure boredom, it wouldn't hurt you to post a comment or two. No spam or cursing, please.


Anyways. If this post looks a little different from the usual, that's because I decided to try Lycos' new Qumana blogging tool. The verdict's still out on whether Qumana's more trouble than it's worth, but I kinda like it thus far. ^_^


And now the progress update. Out of 14 text blocks (that I know of), 2 are 95% translated (although one has yet to be reformatted for my VWF), 8 overall have been converted for re-insertion, and 13 have been dumped (gotta get to work on that last one). Sorry if those numbers seem small. Translation itself is only about 20% of the job: 75% is setting up the scripts so that they re-insert without glitches, and the remaining 5% is research.


Ah, research. The three big hurdles I've yet to surmount in this translation are all research-based. In order from smallest hurdle to largest:



  1. The "Hanauranai Jiten", or "Encyclopedia of Flower Meanings". Once you give Emma Furbanks the flower she asks for, she'll give you this book: enter your birthdate and it gives you your flower, its meaning and a little fortune. Since there are 365 days in a year (you know, I never thought to check if the game supports leap years), that's 365 fortunes to translate and just as many flower names to identify. This is more a matter of scale rather than outright difficulty: there's probably more text devoted to the Encyclopedia than there is in the first four Legend of Zelda games combined. Not to mention all the flower names I'll have to work on. (If it puts things into perspective, two of those 14 text blocks are devoted entirely to the Encyclopedia. That's a seventh of the game's text.)

  2. The furniture list. Sylvanian Families is first and foremost a toyline, and what better advertising could there be than to feature all the furniture you can collect in the game itself? (Side note on that: the "Room" menu option is now "Furniture", as it was in the original Japanese version. Amazing what a little VWF can do.) Counting the three different houses, you have 69 collectibles to buy with your hard-earned Dream Points, and all of them no doubt have different names in the Western world. So that's 69 names for me to hunt down. If anybody has anything akin to a catalogue with pictures and names for all the Sylvanian Families furniture ever released outside of Japan, I desperately need it.

  3. The intro monologue. I've gotten tantalizing hints that there is an official English version used somewhere in the world, but all the facts I've recieved thus far say there's no such creature. This is by far the most important piece of information I have yet to obtain for my translation. This monologue is featured in four out of the five games I've looked at and it can be found on sylvanian-families.jp, the official website. (The link to the page is http://sylvanian-families.jp/info/map.html.) If there is an official English version, omitting it or using my own translation would be...well, stupid.


I repeat: I can probably handle the Encyclopedia of Flower Meanings on my own, but I have to have the furniture catalog and opening monologue. If you can provide any help with those, please comment. Even if you can't provide any help with those, comment anyway. I'm happy to do this project just for myself, but it'd be nice if I knew someone else was interested...



Powered by Qumana



Posted by Ryusui at 8:41 PM PDT
Saturday, 1 April 2006
The Sad, Sad Tale Of Chickenfoot. Wait...
Topic: Watercrown News
In response to my first and only comment, and in celebration of this respected holiday, I've decided to tell the tale that, up until now, I have said would be "best left for another time."

The story is thus:

My name is Desty Nova. I eat flan and I perform horrible, gruesome experiments on human test subjects. My dream is to take over the world MUWAHAHAHAHAHAHA!...

Happy April Fools' Day. There, I've gotten it out of my system.

No, really, the actual tale begins, oh, several years ago. Before I get really started, I will warn you that this tale has actually precious little to do with the Sylvanian Families franchise but absolutely everything to do with why I'm doing the game.

Back then, Gundam was big in the States and I was just learning what else Japan had to offer. The thing that surprised me, though, was the strange feelings of nostalgia and deja vu that sometimes accompanied my anime viewing. A random comment about the old Unico movie that aired years and years ago on the Disney Channel set me off on a fact-finding mission: the movie, as I remembered it, turned out to actually be a pair of movies, and while the name Osamu Tezuka meant nothing to me at the time, the fact that the movies were ultimately Japanese in origin struck a chord. Slowly, I began to realize just where my feelings of nostalgia and deja vu came from: in the late 80's and early 90's, I couldn't get enough of the Nick Jr. lineup on Nickelodeon, which further Internet searching revealed to be comprised mainly of localized import series from Japan.

I was raised on anime and didn't even realize it.

So. My cause celebre for a time was a series called Maple Town, or "Maple Town Story" (a trifling difference, but back then, I was the Internet equivalent of a monkey with a revolver; using the "inferior" American name around me would inevitably provoke torrents of page-long rants), for the sole reason that I remembered nothing of it except the names "Patty Rabbit" and "Bobby Bear" and maybe 5 seconds' worth of material. It took me a long time, during which I lost interest twice and annoyed the dickens out of possibly as many message boards (if I met my younger n00b self on the Internet, I'd probably beat the intellectual @#$% out of him), but I eventually accumulated enough knowledge about the series that I felt my quest was at an end. I even managed to score the Japanese soundtrack and VHS tapes.

However, my searches also unearthed information about another (then) complete unknown: a franchise called "Sylvanian Families". Back then, I wasn't sure of the relation (although I think I held something of a preconception that it was an "inferior" rival series...yes, my views were disturbingly black-and-white back then), and I assumed that like Maple Town, the franchise had vanished into the dust of history sometime in that strange twilight era of the late 80's/early 90's. So it was to my great surprise when, on GameFAQs' board for the game Tail Concerto, somebody posted a link to screenshots of a game called WanWan Meitantei that bore a passing resemblance to Tail Concerto's characters. It wasn't WanWan Meitantei that surprised me, though. It was the other game featured prominently on the linked page, the game I address now as "Sylvanian Families 5".

This was a complete 180 from my assumption. Maple Town was long dead, and Sylvanian Families (as I knew by then) predated it: how on Earth could it still be around? With five (actually six and now seven) video games? This chance discovery merited further investigation: I obtained the fifth game and afterwards found the first and second: none of them are exactly the next Harvest Moon or Final Fantasy, but I found them much more to my liking than, say, Animal Crossing.

The final ingredient in this bizarre Goldberg-esque contraption is the fact that I've had sort of a curse for years: I've always wanted to make a game, but I always either discover I don't have the talent or I lose interest. I've completed only one project to my satisfaction; a thoroughly pathetic text adventure that is now, for the better, lost. Failing creation, I've trifled with fan translations; mostly the same result, but for whatever reason this project has been the one I've stuck with the longest. As you can guess, it's been something of a love/hate relationship: by many standards, the game is incomparably dull (the fact that the storyline involves flowers and fairies that aren't homicidal maniacs will probably keep all but the most hardcore away) and can be finished in a single evening (I've done it myself!); it's based on a toyline I really have no intention of ever collecting (although I will say that anyone who doesn't find the Sylvanians outright adorable had better check to see if there isn't a Nobody walking around with their soul), and yet it has trapped me in the most cunning and ingenious way possible: it tricked me into thinking I could translate it just as easily as I could beat it. It's a kids' game! Almost pure kana, with a smattering of kanji that could be counted on your fingers! And yet its script is a nightmare that I could only tackle by further modifying the legendary Atlas, the inserter that handled Front Mission Gunhazard! This is a project for a master romhacker, a Sisyphean effort with maximum difficulty and minimum reward...

And I have no problems whatsoever being the one who fate has chosen to do it. ^_^

On that front: thanks to bgb, I've tuned up my VWF code even further. Now it doesn't break if a particular part of the game stores the variables for the current line and number of characters printed in an odd place. GB mode is still a little glitchy, but I'm starting to suspect it's a quirk with bgb and not my code this time. A couple of script bugs have been squashed; the game now should be mostly playable again (albeit still about half in English and half in Japanese, and parts of the script haven't been reformatted to take advantage of the VWF).

As for the story of how I learned Japanese...much shorter, much less interesting, and most certainly best suited for another time.

See you, Space Samurai. Or whatever.

Posted by Ryusui at 10:44 PM PST
Tuesday, 28 March 2006
Update Wars Episode 3: O RLE? (Or, How I Learned To Stop Worrying And Love C)
Topic: Watercrown News
The following update is the result of six days of random mental meandering. Don't worry; there's a point to this story.

Thanks to VBA-SDL-H, I've cracked my first compression routine. It took me a single evening to reverse-engineer the routine and the next two days to write a compressor for it. And I've never done anything remotely compression-like. First VWF, now compression. Holy cow. What's next?

The compression routine in question belongs to Sylvanian Families 5 for GBA, a.k.a. "Sylvanian Families: Yousei no Sutekki to Fushigi no Ki - Maron-Inu no Onna no Ko". (I'm still working on a proper subtitle for that, but the original means something like "Fairy's Stick and the Mystic Tree - Brown Dog Girl", the last part being the protagonist's non-name. Just call her "Esme Huckleberry". Everybody else does.) While it has little to do with my current project, you may rest assured that when it finally comes time for me to do the GBA games, you'll have proper English title screens to look at.

The second part of this story, and by far the more relevant one, is that while I was staring at another one of the SF1 script's nightmare-to-format case routines (the previous issue with the embedded pointers having evaporated), another crazy idea struck me. Perhaps emboldened by my recent adventures in programming, not to mention the fact that I had already done something of this sort before, I decided to modify Klarth's Atlas once again. Now internally titled "Hitoshura SF" (in honor of "Kagutsuchi", an ancient app I coded in Multimedia Fusion for pretty much the same purpose, suffixed with "SF" for obvious reasons), my modified Atlas handles the game's lists with minimal madness.

So there you have it. I'm back on track, and never again will one of the game's scripts rise up to give me pain. Or so I assume.

Posted by Ryusui at 7:32 PM PST
Wednesday, 22 March 2006
The Genius Madmen Strike Back.
Topic: Watercrown News
I was wondering why a couple of the text blocks seemed to have a distinct lack of pointers. Now I know why.

The pointers are embedded in the text blocks.

I haven't quit, I promise, but I've gotten sidetracked after discovering this new stumbling block. Oddly enough, Atlas seems to be having problems inserting the type of embedded pointer I need, and it might be due in no small part to my tweaks...

Posted by Ryusui at 10:23 PM PST
Thursday, 16 March 2006
Even More VWF News (But No Screenshots!)
Topic: Watercrown News
The author(s) of the bgb emulator should take pride in the fact that they've managed to hold up my entire project.

My VWF code was running smoothly until it hit upon the ugly bits of reality emulated by bgb. See, it's wholly possible for code to run absolutely perfect on an emu, but not work on an actual console. I'd explain the details, but the short version is, bgb emulates one "feature" of a real Game Boy that no other emulator I've seen has: you can't read from or write to VRAM (a.k.a. video memory) except during a VBlank (a.k.a. "vertical blanking interval", that brief pause where the screen is refreshed; imperceptible to the human eye but quite significant in the magical nano-timescale world of graphics programming). So I've taken the effort to fix up my code (nothing major, really) so that it only reads to or writes from VRAM during a VBlank. GBC mode works perfectly now, but GB mode is still a touch buggy. A little more work and it should be perfect in both...

On the brighter side, if bgb hadn't shown me up, it would've happened after I released my translation to the waiting public, and then I'd be known as the guy who released the Sylvanian Families VWF translation that didn't work on an actual Game Boy. So thanks, author(s) of bgb, and thanks to evo for introducing me to it.

I'm still amazed how much screen space my VWF affords me. I can cram text onto one page that would've taken me two or three before. My translation looks much more professional when I can fit more than one sentence on screen at a time...

Posted by Ryusui at 11:24 PM PST
Saturday, 11 March 2006
The Good News And The Bad News.
Topic: Watercrown News
The good news is, the VWF works glitch-free in a lot more places now.

The bad news is...it seems that there are still some bugs to iron out in places I overlooked.

The bugs will not go unsquashed for long, though. You can count on that. ^_^

Posted by Ryusui at 10:15 PM PST

Newer | Latest | Older