News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Psyklax

Pages: [1]
1
Gaming Discussion / Psyklaxia: my new YouTube channel!
« on: May 27, 2018, 05:25:29 am »
Hello all! I've been rather busy of late, mostly with Real Life stuff, but I've also found the time to prepare for this, my new YouTube channel! I'd been thinking about it for a while, but I'm finally ready.

The theme, funnily enough, is ROM hacking. I will provide short reviews of hacks, translations and homebrews, but the most important part (for me) will be tutorials. I'm making a series explaining ROM hacking to everyone, starting soon with a beginner's explanation of how computers actually work. They are a lot more work than reviews, of course, so most of the time you'll be seeing reviews.

Here's my first video, a review of Super Mario World: The Lost Adventure Episodes 1-3:
https://www.youtube.com/watch?v=OecCs8fnaYs

I've already got a bunch of videos done and ready to go, but for the sake of consistency (I know YouTube viewers prefer that) my videos are all scheduled to come out every Sunday at 09:15 UTC - so it will always be on Sunday wherever you are. ;)

Please subscribe, as there will be plenty more videos to come! Maybe I'll even review your hack! :) Enjoy!

2
ROM Hacking Discussion / Dumping/inserting byte values?
« on: March 03, 2018, 05:27:27 pm »
I'm working on a game that doesn't use typical pointer tables for the most part, so there are two things I need: first, something that can dump the addresses of all instances of a given value to a text file (so you could search for 7F and get a text file with every instance of 7F). Second, something that takes a text file with a list of addresses and values, and replaces the values at those addresses with the values given.

Now I mention it, that sounds exactly like an IPS file... maybe I can make my own IPS files for that purpose, but it doesn't solve the problem of extracting values (in my case, I want a list of every control code that ends a string, so I can build a text file for the second thing I mentioned).

Does anything like this exist? All my searches have come up blank. :(

EDIT: I was right - with a combo of a text editor, a spreadsheet and a hex editor, I made an IPS file for inserting updated pointer tables. Can't believe I actually put these in manually... :o Still, now I need something that does the ever-so-simple task of spitting out a text file with addresses of particular values...

3
Personal Projects / Steam Hearts (PC-98) English Translation
« on: January 28, 2018, 12:43:20 pm »
LATEST VERSION: 0.99
DOWNLOAD HERE

Anyone on the forum who knows me knows that I like to take on little projects that I find interesting, rather than trying to translate a massive RPG. When it comes to Japanese systems, the one with arguably the largest amount of untranslated games, and relative obscurity, has to be the NEC PC-98. I'm used to translating 8-bit console games, and a bit of 16-bit ones, but the PC-98 is a different kettle of fish because in terms of text, it uses a fixed Shift JIS font, rather than programmers including whatever font they like.

For a hacker, this is absolute bliss, because a large amount of time on a console translation (for me) is figuring out the masses of kanji, whereas having a game in Shift JIS means the entire dictionary of kanji is already done for you, so assuming you have the text easily available, you can just copy-paste it into your translation program of choice and get to work.

It is with this in mind that I'm embarking on potentially my first PC-98 translation: Steam Hearts.

It's a vertical shooter, and a reasonably fun one. Being a PC-98 game, of course, between levels you convince the boss to talk by using, er, not so work safe means. ;) That's the reality of PC-98 gaming, whether you like it or not (personally I find it a refreshing change from console games, but whatever).

Being a computer, hacking the PC-98 is also different in that games don't come in solid ROM form, but in various files on disks. The typical way to find games is in either floppy disk format (with several disks) or as a hard disk file (with the game installed on the HDD, along with whatever other files are necessary). The latter seems to be the best option, since a 10MB HDD is hardly that big of a deal in 2018. :) It also means that everything is in one place.

How the text is stored can vary. In the case of Steam Hearts, it appears that all of the text is inside numerous .EXE files, and if PC-98s are like regular DOS PCs, those are programs. The game doesn't have so much text, though, so I guess it made sense for them to keep the text inside the executable. The good news is that the text is sitting uncompressed and easy to find in the .EXE files. The bad news is that, because it's surrounded by code, I feel like a first-day hacker all over again, because I can only write inside the space available. :)



Each line is done separately, and in the first screenshot, I only have one line to play with, whereas I have two in the second. You'll notice the text is a bit large (limiting screen space), and I'm forced to fit the text in the space used by the original text (limiting storage space), but it's better than nothing, right? If I WERE a first-day hacker, I'd be pretty pleased with this, but the fact is that I'm not, so I want to do better. :D

My problems are two-fold: I don't know how to find the pointers saying where each line is stored, and I don't know how to switch the font to one that will allow 8-bit ANSI characters instead of 16-bit Shift JIS characters, thereby saving both screen space and storage space.

Look at the first screenshot for this translation of Marble Cooking: it uses a smaller font, but what's most interesting for me is that, internally, the hacker replaced the 16-bit Japanese text with 8-bit ANSI text and it works fine.

http://www.romhacking.net/translations/824/

The problem for me is that if I try 8-bit characters in Steam Hearts, I just get a load of random kanji, so if I could tell the game to use the other font, I will be able to get a better translation in there. Of course, I'll also need to find out how the game figures out where the lines are, of course, but all searches I've made to find any pointers have come up blank.

I'd like to go the debugging route, although the x86 is the only major CPU from the 70s/80s that I have no experience with. The Neko Tracer in the RHDN database is a good start, but I couldn't see anything in the trace that looked like a reference to the text. A RAM dump shows that the whole .EXE is stored in RAM, and the first line is at $36A82, so that gives me something to go on at least.

The between-level cutscenes seem to use the same font mentioned in that other hack, but when I replaced text with 8-bit characters, it just messed everything up. This makes me wonder why the other hack was able to use 8-bit characters without issue, since as far as I can tell, no other modifications were made to that game.

So, in summary, the translation side of this game is easy-peasy, but fitting into the game the kind of translation I'd like will require some hacking, and the main reason I made this thread was because I was hoping someone might be able to help. :) Normally I'd just use a debugger to break on a read to $36A82, but Neko Tracer only traces, rather than breaking, and all those damn registers make it hard for me to read a trace to figure out what's going on.

Anyone got any advice on this? If I can crack this game, maybe I'll have a go on some other ones... :)

4
Personal Projects / JRPGs: DoubleXP/DoubleGold
« on: November 29, 2017, 04:45:56 pm »
NOTE FOR NEWCOMERS: I've renamed my thread due to changing the goals of my project: now I'm doubling XP and Gold received, rather than making level upgrades and buyable items cheaper. Now enjoy my unchanged original post. ;)

I like a lot of things about JRPGs, but you know what I really can't stand?

Grinding.

I wanna go on an adventure, see cool places, fight cool baddies, but do I have to fight fifty of the same low-level baddies before I can enter the next dungeon? JPRGs are notorious for this, and I hate it. It's not difficult, it adds nothing to the experience, it just makes you waste hours of your life. Check out that guy who reached level 99 in Final Fantasy VII without leaving the first room. Sure, it took him a year or two, but it's not difficult!

Anyway, being a ROM hacker, I decided to do something about it, and set to work hacking some better-known JRPGs so that you only need HALF the normal experience points to go to each level. The procedure is usually pretty simple: it's typical to find a table in the ROM with the points values of each level, and once you've found it (GameFAQs does help with this), it's just a matter of copying it into a spreadsheet, halving it, and putting it back again.

A more difficult hack is to change it so that you only need half the gold/money to buy everything in the game: if you reach level 20 in half the time, you may have half the money, and still need to go grinding for it. Generally you don't find a big table with every single buyable thing, so I'll generally only do this if it's a) doable, and b) necessary for balance.

I'll put a zip file with my current work so far at the bottom of this post, but here's what I've successfully done up to this point:

Final Fantasy (NES) - HalfXP. Just to be sure, I completed the whole game with my patch already, using the easiest (and most boring) combo of three Fighters and a Red Mage. I've completed FF1 a good few times, and I didn't notice it becoming too easy - though I certainly didn't feel the need to grind at any point.

Final Fantasy 3 (NES) - HalfXP. Not tested but it works.

Dragon Warrior (NES) - HalfXP & HalfGold. I'm in the middle of testing this. It was easy to halve the gold for buyable items because there's so few, and they're actually in a big table, though the cost of inns remains the same. I needed to make the change, though, because both XP and Gold are seriously stingy in this game, meaning a LOT of grinding is required.

Dragon Warrior 2 (NES) - HalfXP. Not tested but it works (I think). I found the XP table anyway, all three characters' tables are together in the ROM.

Phantasy Star (SMS) - HalfXP. Briefly tested (I've completed the game in the past). This game is brutal to you at the start - you can easily die from your very first battle - so although it lightens up as the game progresses, I think it will benefit from this change.

That's all so far, and in the zip file you'll find IPS files for all of those. Phantasy Star and DW1 have two patches: the former has a patch for the popular Japanese translation by SMS Power - just patch it on top of that. The latter has both HalfXP and HalfXP+HalfGold. I recommend the second option.

I've tried Dragon Warrior 3, but the system it uses is a bit strange: it's not immediately obvious where the game gets its XP lookup from. I've not even attempted Final Fantasy 2 because of its bizarre levelling system (select, cancel, select, cancel...), but I'm open to suggestions of how to fix it (unless someone has already 'fixed' it somehow).

No 16-bit JRPGs as of yet, of course, but you have to start somewhere, so naturally I started where I'm most comfortable, the NES. Anyone who knows me by now is aware I have a habit of getting into projects involving multiple games, then getting distracted by other things and drifting off... :D

Suggestions? Any games you'd really like to play but are put off by the XP system? Specifically this is for games that clearly have too much grinding, rather than just plain cheating. I might have a look at Phantasy Star 2 for my first 16-bit game (I played it quite far through in the past, but wouldn't mind going back to it with less grinding).

Here's the zip! :)
http://s346165667.websitehome.co.uk/psyktrans/halfxp.zip

5
Personal Projects / Nintendo Vs - NES Hardware Hacks
« on: October 21, 2017, 02:07:10 pm »
Okay guys, I've got a new project. Good news is it won't be so hard to complete as previous projects of mine. Bad news is it's not quite as interesting. :D

I made a thread where I posted a bunch of Game Genie codes to activate free play on Nintendo Vs games so that you can play them on a real NES without worrying about inserting coins. Just one problem: each game used a PPU that had the colours intentionally mixed up for copy protection purposes, so the game looks all messed up. Sure, you can still play the games, but it's not much fun...

So I decided I needed to do some proper hacking: nobody's actually gonna plug an arcade board into their NES, so why not make a proper patch instead of changing one byte? I've started with Dr Mario - no reason - and got some interesting results.


http://s346165667.websitehome.co.uk/psyktrans/drmariovs.ips

Let me explain how I did it, first of all.

First, I used the information on the nesdev wiki that details the palette that Dr Mario uses (on the RP2C04-0003 chip). I put that information in a table file, and made another table file which corresponded to the correct order of colours. The palettes are stored in the game in a block (or in the case of Dr Mario, two blocks which are subtly different from one another). Once I found the block, I dumped each part with Thingy32 - yes, that ancient thing, but it was the best thing for the job in this case. I then looked at the dump, and manually typed in each colour, but with the correct table file. The result? All the colours now have their correct values. I'd love to automate the process, but Thingy32 just inserted a bunch of nothing when I tried, and I don't know of another program that would do it.

When I did this, however, two really weird things happened. Normally, you have to flip the dipswitches to activate free play mode, but after modifying the palettes, free play was automatically activated. I have no idea why... but it needs testing on a real NES, to see if it's not just FCEUX acting weird.

Second thing is one of the colours in the game. It appears that the game has a routine that changes the background colour depending on the level you're on, separate from the palette blocks. When I corrected the rest of the palette, it looked identical to the original game, but if you play the unmodified Vs ROM in FCEUX, the background is grey. Why? Because the colour used ($03) is grey on the RP2C04-0003 chip, but purple on a real NES. But the value is the same in both the original game and the Vs version. Is this a bug? I don't know. Another reason to test it on a real NES - and see a real arcade cabinet, too. I found one video on YouTube of it, but the quality meant it was inconclusive (it's like that dress all over again... :D ).

I finished off the hack by making the input just like the original: now you start the game by pressing Start, whereas on the Vs version you press Select on the title screen and A or B on the menu.

Admittedly, this isn't the best example of a Vs game worth playing on your real NES, as I imagine it's practically identical. Nevertheless, it's a first step, and if anyone has a flash cart and could try it on the real thing I would be VERY keen to hear feedback (I don't have a flash cart).

I created a new thread because if all goes well, you'll be seeing a lot more games in future. :)

EDIT: just noticed something after a quick test: the controllers are swapped! Never realised that that was a feature of the Vs system. Quite why they swapped the registers I don't know, but I think it's a simple fix. I also seemed to have a problem inputting my name in the high score table. Oh, and there's no pause function, obviously. :)

6
ROM Hacking Discussion / Nintendo Vs - Game Genie Free Play Codes
« on: October 20, 2017, 03:35:51 am »
A user in another thread asked about a Game Genie code for Vs Ice Climber to make it free play, therefore playable on a real NES using a flash cart, since you don't need to insert coins. The idea intrigued me: I'm a little surprised that Vs games work on the NES at all given that they use different PPUs between games, although the CPU is the same. But the idea intrigued me: I'd never really given Game Genie codes much thought before, as they just change one single byte in a ROM, which seems awfully primitive now. However, there's actually quite a fun challenge in trying to achieve what you want with just three bytes changed (a real Game Genie can only use three codes).

Of course gamehacking.org has thousands of codes for regular NES games, but I couldn't find anything for Vs games. The only ones there are cheats for Vs Super Mario Bros, which doesn't really solve the problem. So I took it upon myself to dive into every Vs game that is in the GoodNES set, and get them working with free play - or if they don't have it, make it as easy as possible to play.

Okay, enough talk, here are the codes. 8)

 Atari RBI Baseball
VTOYZNSX   Adds 1 credit at title screen
SXXNUEVK   Doesn't decrease credits at game start
SXNZKNVK   Doesn't decrease credits at inning break
 Balloon Fight
NOT WORKING ROM
 Baseball
NOT WORKING ROM
 Battle City
VTTKLT      Adds 1 credit at title screen
 Castlevania
OZUAZEPX   Free Play
 Clu Clu Land
OXAVKE      Free Play (must be input together)
LEPVOA      Free Play (must be input together)
 Dr. Mario
OZELEEPX   Free Play
 Duck Hunt
OZIASK      Free Play
 Excitebike
OXPGNN      Free Play
 Freedom Force
OZSVLVPX   Free Play (must be input together)
OZVTIVPX   Free Play (must be input together)
GAVTTVKY   Free Play (must be input together)
 Goonies, The
OXUNAOPX   Free Play
 Gradius
OZONASPX   Free Play
 Gumshoes
NOT WORKING ROM
 Hogan's Alley
OZIOZS      Free Play
 Ice Climber
OXLOIN      Free Play
 Mach Rider
OZPOVK      Free Play
 Mahjong
NOT WORKING ROM
 Mighty Bomb Jack
VTLEOZ      Adds 1 credit at title screen
OXZEXN      Doesn't decrease credits
 Ninja Jajamaru-kun
VTYXXI      Adds 1 credit at title screen
 Pinball
EYLEGA      Free Play
 Platoon
AESIKPPA   Free Play (must be input together)
OZOEEOPX   Free Play (must be input together)
OXNAKEPX   Free Play (must be input together)
 Slalom
XTPEKN      Free Play (must be input together)
OZPESN      Free Play (must be input together)
 Soccer
OZYYGX      Free Play
 Star Luster
VTGEIT      Adds 1 credit at title screen
 Stroke & Match Golf (Ladies or regular)
EYYEZA      Free Play
 Super Mario Bros.
OXLOYX      Free Play
 Super Sky Kid
VTZYUP      Adds 1 credit at title screen
 Super Xevious - GAMP no Nazo
VTXZXXSE   Adds 1 credit at power on
SXKZISVK   Doesn't decrease credits (must be input together)
SXKXASVK   Doesn't decrease credits (must be input together)
 Tennis
NOT WORKING ROM
 Tetris
OZPUVV      Infinite credits
 TKO Boxing
VTELSSSX   Adds 1 credit at title screen
 Top Gun
NOT WORKING ROM
 Wrecking Crew
NOT WORKING ROM but M01 hack does not require patching

Now some more explanation.

As you see, some ROMs from the GoodNES set would just give me a blank screen in FCEUX, so I had no choice but to give up on them. Thankfully most of the games have free play options with the correct dipswitch settings, so they were easy to hack. Usually I would find the part of the code that looks for the specific free play setting, and tell it to do free play anyway. Some games don't have a free play option, however, so I had to get creative to do it in just three bytes or less. The usual method was to somehow add a credit at the title screen or as the game boots, then - if necessary - tell it not to decrease credits after using them. Sometimes that's unnecessary because it will add a new credit anyway.

I hope these codes will be of use to anyone interested in playing Vs games on a NES - in fact, I'm keen to get some feedback of this actually working, since I can't test on a real NES myself. Of course, if you're using a flash drive you could just use hacked ROMs instead of putting in GG codes, but whatever.

A note: in the case of most of the non-free play games, you only get one credit, which is fine for a one player game but does mean you can't play two player - and since it's called the "Vs System", I imagine that that's part of the point. Adding more than one credit is a bit trickier than just adding one. Sometimes I would hack it so that it would keep adding credits ad infinitum, but that's not very elegant, especially since it would wrap around. If anyone finds having one credit to be a problem they can let me know, but I think it'll be fine for most people. :)

(also, Wrecking Crew has an M01 mapper hack in the GoodNES set that adds credits with Select, therefore a hack is unnecessary)

EDIT: another note. Using these codes will often mean you don't see the title screen/attract mode. I know that a more pleasant solution will be changing the coin mechanism to be the NES Start button (as Select is used to start the game here) but that would require telling the program to check a different register for a different value, and would need more than Game Genie to do properly. Plus, I still don't understand how the NES reads controller input...

7
Gaming Discussion / The Goonies, Japan only...?
« on: October 05, 2017, 05:20:58 pm »
I've been playing through the Famicom library from the first game, and I've reached 1986, and The Goonies. And I just had to start a topic to ask about this. It's a really fun game, it was by Konami, it's based on a popular US movie, there's no Japanese to translate in the game, it was released in Japan at the time Nintendo were rolling out the NES across the US... so what happened?

Why didn't it get a US release? Is there any logical reason? The only one I can imagine is Konami had no experience in the US at that time, but even that seems a stretch. A lot of Japan exclusives I've seen thus far are very much understandable, but not this. Anybody know why? :huh:

8
Gaming Discussion / Star Fox 2 has been dumped - and I've dumped the script
« on: September 29, 2017, 08:34:12 am »
TL;DR - Star Fox 2 got dumped from the SNES Classic, I've cracked the DTE compression on the in-game text, will release later today.

EDIT - Here's the text dump, the table file, and a list of useful ROM addresses.
http://s346165667.websitehome.co.uk/psyktrans/starfox2.zip

Long version - I'd been looking forward to Star Fox 2 coming out as I was curious to know how different it was from the beta everybody knows. So now the SNES Classic is out and obviously the ROM has already been dumped and is available online (no I won't link to it, I found it via a comment on a YouTube video). Immediately I opened up HxD to file compare this with the beta.

Everything was pretty similar until I reached a point where everything looked totally different, but immediately I understood what I was looking at. The beta is in Japanese while this is in English, and there were fragments of words in ASCII. It was obvious that they used a DTE routine for the dialogue. I was able to work out some of the pairs from using common sense: long words or set phrases where it was obvious what was missing. Gradually this led me to understanding more words, until eventually I had almost every pair sorted, with the rest established from editing the ROM and seeing what showed up in the game.

I was amazed at how quickly I worked it all out. As far as I can tell, I've now got the whole script done, though I haven't gone looking for pointers as that'll be a little more work. The text is very simple: it starts with a byte to say who is talking, plus another byte which shows when they're being attacked and panicking, for example. New lines are worked out by the game itself, and there's an end byte. So my guess is we'll have a simple pointer table pointing to the "face" bytes.

I don't know how useful this is to anyone, but I did it anyway. If you want to translate Star Fox 2 to a language other than English, I've given you a head start. :) I would be releasing my work now, but I ran out of time and had to head out, but rest assured I'll be releasing it once I get home. I might go looking for pointers, but I'll release the unformatted text first.

Is this relevant to anyone's interest? :)

PS I didn't know whether to post this in Gaming Discussion or ROM Hacking Discussion, as it's kind of in between...

9
Gaming Discussion / UDP netplay not working
« on: September 04, 2017, 11:44:04 am »
So I wanted to do some netplay with my brother and he doesn't like Retroarch. I knew ZSNES 1.41 does netplay despite its age, so we tried it. We both forwarded a particular port, I put in his IP, and it said it found me, but wouldn't start. This was with UDP, which I know is quicker because of a lack of error correction (sort of). We switched to TCP and it worked, but inevitably there were pauses, which made Mario Kart a little tricky.

I'd like to use Retroarch instead obviously but I guess that uses UDP only. So basically I can't figure out why UDP doesn't work. Googling tells me it's possible that my ISP is blocking UDP but I find that unlikely. Anyone else had problems with UDP who got it working?

10
Personal Projects / Translating every Master System game
« on: August 15, 2017, 09:34:37 am »
Some of you may have noticed my other thread regarding the translation of early Famicom games, and there are so many games with Japanese that I'm amazed at the progress I've made, knowing that there are far too many remaining. But I thought I'd take on another challenge: making EVERY Sega Master System game available in English. There are two things that make this far easier to accomplish than the Famicom task: there are far fewer games on the SMS, and the system was far more successful in Europe and Brazil than Japan, so the majority of games are already in English.

I've made a list based on a list from Wikipedia, which includes 341 games, total. I worked through the list and removed any games which were released in the US or Europe. I then examined any that weren't released in either of those - mostly Japan and Brazil - for any non-English text. This reduced the already small list dramatically.

There are some games which were only released in Brazil, but they're just ports of Game Gear games, so the underlying code is identical. So here's my list of what remains:

Code: [Select]
Name (GoodSMS) Translated?
---------------------------------------------------------------------------
20-em-1 No
Argos no Juujiken Yes - Psyklax
Castelo Ra Tin Bum No
Ferias Frustradas do Picapau No
High School! Kimengumi Yes - Nick and Aya
Hoshi wo Sagasite... Yes - Filler, SSTranslations
Loletta no Syouzou No
Mahjong Sengoku Jidai No
Megumi Rescue No
Nekyuu Kousien No
Phantasy Star Yes - SMS Power & Localised
Sangokushi 3 No
Sitio do Picapau Amarelo No
Solomon no Kagi - Oujo Rihita no Namida No
Sukeban Deka 2 Yes - Enigmaopoeia, SSTranslations
Super Racing No
Tensai Bakabon No

A good few of them are Brazilian games with Portuguese text. I had Street Fighter 2 on the list, but it's just the copyright info at the beginning so I didn't see any reason to translate that. I didn't want to start this thread until I'd done something myself, though, so I have: Argos no Juujiken. It's a port of the arcade game Rygar, so I replaced the title screen with the one used in the arcade. I think it made the transition down to the SMS's palette rather well! :)



If you're interested in how I managed it, I'll write it in a spoiler box (for anybody who's like "tl;dr").

Spoiler:
So I knew nothing about the Z80, but my work on the NES gave me some experience with assembly, and since the Z80 is also 8-bit, the basic idea is very similar. I read a couple of good docs hosted on smspower, and quickly figured out how things work. I examined a couple of different games before starting on Argos no Juujiken.

It didn't take me long to figure out how the game takes graphics from the ROM and inserts them into VRAM. The NES and SMS do graphics quite differently, since the NES CPU can't write directly into the pattern table: natively the NES needs the 512 tiles of the pattern table to be fixed, and it took MMCs in many different varieties to swap out the graphics. The SMS CPU just writes directly into VRAM, so the graphics in VRAM are constantly changing. I noticed Sonic the Hedgehog keeps the same tile numbers for Sonic all the time, choosing to swap out different animation frames when needed.

Anyway, I could see that the ROM being loaded into RAM changed several times during the title, and I guess correctly that it was bank switching with a mapper. What I was happy to discover (through smspower again) was that Sega made a mapper that most games used, so it's very easy to use. Givem that there's no division between program and graphics data (like the NES), I wondered if I could just add 16KB on the end of the ROM and bank switch to it for my new title. Amazingly, it worked. So expansion is significantly easier than the NES!

I was excited at the possibilities of the SMS palette after my NES experiences, so I thought I could paste in the original arcade title and it would still look pretty good. I first created the SMS's 64 colour palette in GIMP, then made a screenshot of Rygar in MAME. I indexed it to adapt it to the SMS palette, and it looked pretty good (I tried doing it by hand, but GIMP did a better job). I then replicated this palette in Tile Molester, and it pasted in with no problems.

So after putting my new tiles in the right place, the new title screen looks great. There is one problem, though: loading graphics into VRAM takes CPU time, and since I load more tiles than the original game, the music pauses for six frames, which is quite noticeable. I do think that it's a minor thing, however. I must say that I was surprised that adding 16KB worked, though - I figured I'd need a more round number. Perhaps someone could try this on a real SMS with an Everdrive to see how it looks.

I haven't released it yet, but I will do soon.

So, I've made a start, anybody want to make suggestions regarding my list? Or anything else? :)

11
Script Help and Language Discussion / Time Stranger dialogue
« on: July 27, 2017, 03:07:02 pm »
Hey guys, I'm in the process of translating Time Stranger for the Famicom. It's a text-heavy game, and I don't want to paste too much on here, but some of the language has got me puzzled. Being a Famicom game, it IS kana only which makes life that much harder, but hopefully together we can figure it out. :)

I'm gonna provide my entire dump, made using Table21, which I used on a previous translation and although there may be better ones out there, this one was super simple to use, completely adaptable to any game, and just gets the job done.

Anyway, enough blah blah, here's the two scripts to peruse or ignore at your will:
http://s346165667.websitehome.co.uk/psyktrans/timestranger-dump-10.txt
http://s346165667.websitehome.co.uk/psyktrans/timestranger-dump-14.txt
(10 and 14 refers to the bank offset, as it takes up two banks)

For now I'm just gonna paste a couple of lines that bother me and we'll see if anyone can help. I'll post more as I go along. Context: you're a time travelling timecop who goes to various time periods relevant to Japanese history. The first encounter is with Nobunaga, known in the west for games like Nobunaga's Ambition. His castle is being attacked by Mitsuhide's forces, and you beam in with your time machine.

This line is causing me problems, though obviously I get the gist (you die):

1004A
[0211]「おまえは へんじをしらないようだな。」%[0513]なかぬなら ころしてしまえ ほととぎす%[0515]のぶながに きりころされました。%[9517]THE END%

(FYI the first number is where the pointer is, the numbers in brackets say where on the screen the line starts)

My rough guess is "'You don't have an answer, eh?' _____ You're killed by Nobunaga".
It's the middle line that confuses me. Again, doesn't matter that much cause, you know, you die. But still. :)

I'll upload my work in progress translation soon, and anyone who wants to help can browse my translation and see if I'm a bit off somewhere. Despite translating several games, my Japanese is still far from good, and I have to use WWWJDIC and a grammar guide for almost every line. :-[ I studied years ago but I'm out of practice...

12
Gaming Discussion / How do Famiclones work?
« on: June 11, 2017, 06:34:56 am »
I have to say that I like Famiclones: I have one in the shape of a Mega Drive 2, labelled as Dendy (how the NES was known in Russia and other former Soviet countries) and it's a cheap and fun option for playing NES games through a CRT, without using a real NES (and the fact that you don't need to knock out the 10NES chip to play these wonderful multicarts is even better :D )

My question is: how do they work? I can read Wikipedia about NOAC stuff but it doesn't really explain it to me. I like emulation but I know it just can't beat the real thing. These Famiclones aren't emulation... but they're not exactly the real thing... what are they? How do they replicate what an original NES CPU and PPU do? And are there any flaws that would affect the playing accuracy? Other than little graphic and sound things that aren't really that big of a deal. I've noticed sometimes the audio on mine isn't quite perfect, like with Ninja Gaiden III (music sounds a little quiet). But what really matters is the playing, and I'm curious what's going on inside.

And you don't need to mention MMC4 and MMC5, Castlevania III, Disk System etc, I know it ain't gonna play them, but that's not a big deal, I can live without a few things (there's always emulation). So anyway, how exactly do these things replicate a real NES?

ps I'll take a Famiclone over a Retron 5 any day of the week. If I want emulation I can do it on an Android TV box, at least systems like the AVS have a point to them.

13
Personal Projects / Translations of early Famicom games
« on: June 02, 2017, 04:55:57 am »
CURRENT TRANSLATION TABLE
Last modified: 8 October 2018
Code: [Select]
Name (GoodNES) Translated?
---------------------------------------------------------------------------
 1983
Gomoku Narabe Renju Yes - Psyklax
Mahjong Yes - Psyklax
Popeye no Eigo Asobi Yes - KingMike
 1984
4 Nin Uchi Mahjong Yes - GAFF Translations
 1985
Choujikuu Yousai - Macross Partial - Makimura Manufacturing
Hon Shougi - Naitou 9 Dan Shougi Hiden Yes - Psyklax
Ikki Yes - Psyklax
Kekkyoku Nankyoku Daibouken Yes - Quest Games
Ninja Jajamaru-kun Yes - Stardust Crusaders, Aishsha
Obake no Q Tarou - Wanwan Panic Yes - Pacnsacdave & Localised - Chubby Cherub
Onyanko Town Yes - Pacnsacdave
Penguin-kun Wars Yes - Penguin Translations
Portopia Renzoku Satsujin Jiken Yes - DvD Translations
 1986
Aigiina no Yogen - From The Legend of Balubalouk Yes - Psyklax
Atlantis no Nazo Yes - Pacnsacdave
Banana Yes - KingMike
B-Wings Yes - Stardust Crusaders
Daiva - Imperial of Nirsartia Yes - MrRichard999
Doraemon Yes - Sky Yoshi
Dragon Ball - Shen Long no Nazo Yes - TransBRC & Localised - Dragon Power
Ganbare Goemon! - Karakuri Douchuu Yes - Spinner8
Ganso Saiyuuki - Super Monkey Daibouken Yes - Pacnsacdave
Ge Ge Ge no Kitarou - Youkai Dai Makyou Yes - Aishsha & Localised - Ninja Kid
Hokuto no Ken Yes - Stardust Crusaders
Hottaaman no Chitei Tanken Yes - SixFeetUnder
Kanshakudama Nage Kantarou no Toukaidou Gojuusan Tsugi Yes - KingMike
King Kong 2 - Ikari no Megaton Punch Yes - DvD Translations
Mississippi Satsujin Jiken Yes - GAFF Translations
Musashi no Ken - Tadaima Shugyou Chuu Yes - GAFF Translations
Nagagutsu wo Haita Neko - Sekai Isshuu 80 Nichi Daibouken Yes - Psyklax
Sansuu 1 Nen - Keisan Game Yes - Pikachumanson
Sansuu 2 Nen - Keisan Game Yes - Pikachumanson
Sansuu 3 Nen - Keisan Game Yes - Pikachumanson
Sansuu 4 Nen - Keisan Game Yes - Pikachumanson
Sansuu 5 & 6 Nen - Keisan Game Yes - Pikachumanson
Seikima II - Akuma no Gyakushuu No
Sherlock Holmes - Hakushaku Reijou Yuukai Jiken Yes - Filler, Psyklax
Space Hunter Yes - Zatos, Fyr
Super Star Force Yes - GAFF Translations
Super Xevious - Gump no Nazo Yes - Psyklax
Takeshi no Chousenjou Yes - KingMike
Tatakae! Chou Robotto Seimeitai Transformers - Convoy no Nazo Yes - Stardust Crusaders
Toki no Tabibito - Time Stranger No
Urusei Yatsura - Lum no Wedding Bell Yes - Stardust Crusaders
Valkyrie no Bouken - Toki no Kagi Densetsu Yes - DvD Translations
Wing of Madoola, The Yes - Psyklax
 1987
Arabian Dream Scheherazade Localised - The Magic of Scheherazade
Artelius No
Attack Animal Gakuen Yes - PentarouZero
Batsu & Terii - Makyou no Tetsujin Race Yes - Zynk Oxhyde
Bio Senshi Dan - Increaser Tono Tatakai Yes - Abstract Crouton Productions
Black Bass, The Yes - GAFF Translations
Chester Field - Ankoku Shin e no Chousen Yes - Aeon Genesis (inc)
City Adventure Touch - Mystery of Triangle Yes - Filler
Digital Devil Monogatari - Megami Tensei Yes - EsperKnight, Stardust Crusaders
Dragon Scroll - Yomigaerishi Maryuu Yes - KingMike
Erunaaku no Zaihou Yes - MrRichard999
Esper Bouken Tai Yes - Aishsha
Family Jockey Yes - MrRichard999
Family Mahjong No
Family Tennis Yes - Goldenband
Family Trainer 4 - Jogging Race Yes - MrRichard999, Jink640
Family Trainer 5 - Meiro Daisakusen No
Family Trainer 8 - Totsugeki! Fuuun Takeshi Jou Yes - MrRichard999, AgentOrange
Ge Ge Ge no Kitarou 2 - Youkai Gundan no Chousen Yes - Aishsha, Djinn
Getsufuu Maden Yes - RPGe
Ginga no Sannin No
Golf Club Birdie Rush Yes - MrRichard999
Haja no Fuuin No
Hana no Star Kaidou Yes - GAFF Translations
Herakles no Eikou - Toujin Makyou Den Yes - DvD Translations
Hi no Tori - Houou Hen - Gaou no Bouken Yes - Stardust Crusaders
Higemaru Makaijima - Nanatsu no Shima Daibouken Yes - Snark
Hikari no Senshi Photon - The Ultimate Game on Planet Earth Yes - KingMike
Hokkaidou Rensa Satsujin - Okhotsk ni Kiyu No
Hoshi wo Miru Hito No
Ide Yousuke Meijin no Jissen Mahjong No
Igo - Kyuu Roban Taikyoku Yes - Helly, MrRichard999, Proveaux
Ikinari Musician Yes - Psyklax
Indora no Hikari Yes - KingMike
Jikuu Yuuden - Debias Yes - Gil Galad
JJ - Tobidase Daisakusen Part 2 Yes - DvD Translations
Jongbou No
Karaoke Studio No
Karaoke Studio Senyou Cassette Vol 1 No
Kyonshiizu 2 No
Labyrinth Yes - Suicidal Translations
Law of the West No
Lost Word of Jenny Yes - Zynk Oxhyde
Lupin Sansei - Pandora no Isan Yes - Vice Translations
Magnum Kiki Ippatsu - Empire City - 1931 Yes - Psyklax
Majou Densetsu II - Daimashikyou Galious Yes - Manipulate
Mezase Pachi Pro - Pachio-kun No
Minelvaton Saga - Ragon no Fukkatsu Yes - Aishsha
Mirai Shinwa Jarvas Yes - Stardust Crusaders, Aishsha
Momotarou Dentetsu - Peach Boy Legend Yes - KingMike
Morita Shougi No
Nangoku Shirei!! Spy vs. Spy Yes - Pacnsacdave
Nekketsu Kouha - Kunio-kun Localised - Renegade
Outlanders Yes - GAFF Translations
Pocket Zaurus - Juu Ouken no Nazo Yes - DvD Translations
Pro Yakyuu - Family Stadium '87 No
Romancia Yes - DvD Translations
Saint Seiya - Ougon Densetsu Yes - KingMike
Sanma no Mei Tantei Yes - cccmar
Spelunker 2 - Yuusha e no Chousen Yes - Stardust Crusaders
Star Wars (Namco) Yes - Gil Galad
SWAT - Special Weapons and Tactics Yes - Filler, Psyklax
Taito Grand Prix - Eikou e no License Yes - MrRichard999
Takahashi Meijin no Bugutte Honey Yes - FlashPV
Tenka no Goikenban - Mito Koumon No
Tetsudou Ou - Famicom Boardgame Yes - MrRichard999, Proveaux, Jink640
Tokoro San no Mamoru mo Semeru mo Yes - Psyklax
Tsuppari Oozumou No
Uchuusen - Cosmo Carrier No
Valis - The Fantastic Soldier Yes - Satsu, Sliver X
Woody Poko Yes - Sqpat
Yamamura Misa Suspense - Kyouto Ryuu no Tera Satsujin Jiken No
Youkai Kurabu Yes - Stardust Crusaders
Zoids - Chuuou Tairiku no Tatakai No
Zombie Hunter Yes - KingMike

I thought I'd start a new thread in the Personal Projects section, as I've started a little project: going through the earliest Famicom games in order and trying to get everything translated.

Before MMC chips gave Famicom/NES games access to lots of memory, there wasn't much space for anything, especially graphics. So most of the early games are either already in English, or have very little text at all. So, I just wanted to try to get as many games translated as possible. I'm going by the list of Famicom releases on Famicom World:
http://famicomworld.com/game-list/?fc=1&o=1&order=release&q=

Some early games have already been translated: Popeye no Eigo Asobi, 4 Nin Uchi Mahjong, Kekkyoku Nankyoku Daibouken, Ninja Jajamaru-kun, Penguin-kun Wars, and Portopia Renzoku Satsujin Jiken (a particularly cool translation, as it's the first Famicom game with a text focus). This goes up to the end of 1985, and there are a few games left over. Mostly it's just title screen hacks, but there are one or two exceptions.

I've already done Ikki, a simple title hack. I've submitted it to the database but this is what it looks like anyway:


Now I'm working on two other games: Choujikuu Yousai - Macross (a title hack) and Gomoku Narabe Renju (a full translation, but there's not a lot of text there).

Macross has an interesting (to me) title because it uses a mixture of BG and OBJ tiles.

Here's the title:

and here it is without the BG tiles:


Obviously it uses the horizontal/vertical flipping abilities of OBJ tiles to save ROM space. I've been learning about sprites and I think I'll be able to do it. Just need to draw a nice picture, now.

As for Gomoku, it's a bit more involved, but the main thing I've found is how the game determines if it uses 8x16 or 8x8 sprites. In the main game screen it uses 8x16:

So when I turn that flag off it looks like this:

The question is whether it's worth switching to 8x8, given the amount of extra crap I'll then have to deal with (adding more sprites to compensate etc). There's room for more sprites, but the ROM will be the problem.

That's all I can show for now, I'll be interested to see any comments you may have! :)

14
Hello all, long time no write.

I was brought back to activity thanks to forum member cabbage, who found my awful old Knight Rider Special translation and noticed a couple of NOPs in the code would change the text to 8x16 instead of 16x16. That simple change encouraged me to use KingMike's old DTE help doc to work out if I could use DTE in this game, and sure enough, I managed it. To cut a long story short, several days' work has resulted in a complete retranslation of the game.

Nothing remains from my old translation, it's totally new. The voice samples are untranslated - I don't know if anyone knows anything at all about replacing voice samples (can't think of a single translation that has ever done that).

I've already submitted it to the database, but if anyone cares to try it now, here's the link from my personal site:

http://s346165667.websitehome.co.uk/psyktrans/kr-v2.0.zip

Both headered and non-headered ROMs will work as I've included BPS patches for both. :)

Take a look and let me know what you think!

15
Personal Projects / Battle Robot Retsuden: English translation
« on: May 01, 2016, 05:57:38 pm »
Hey guys, I'm back! :)

I've been out of action for a while for various reasons: I drifted off my translation of the second Detective Conan game for the GBC as I needed some simple programs for text insertion and never got round to having them done. I've received a couple of messages about Hyper Iria, but anyone who wants to know why I abandoned that need only look at the thread.

Anyway, I became interested in Battle Robot Retsuden for the SNES, and even translated the intro and the first scene, along with all the menus, just for fun. A while later I looked again at it and thought "hmm, wonder if I can translate this properly?" I'd never managed to get a SNES translation right, with Hyper Iria being the closest I came to success. This time, however, everything seemed to be in my favour, as I'll explain later.

First, check out my "proof of concept" (ie getting it to a workable state, and proving that I can do a full translation given more time).

https://youtu.be/ahiczRf-ejs

(does the forum support embedding YouTube vids? Couldn't find any info)

I'll try to be brief in explaining everything about the project, but feel free to ignore all of this and just give me feedback. :D

First, before you ask, I know the menu looks bad. "Bridge", plus three two-letter abbreviations. It's ugly, but this is the one area that I'm struggling with, because I don't fully understand what's going on. I'll explain later.

So I checked the ROM and it's HiROM, 24Mbit, so tons of room in there. The main font is 16x16, but the last four horizontal pixels are ignored, resulting in 12x16 for each character. This would be a good moment to introduce variable width font (VWF) but I can't code, and I've not found much luck in the RHDN forum on implementing a typical routine for VWF. However, the video shows a very thin font, giving me lots of screen space to play with.

That's because each 12x16 character tile is now two alphabet characters.

Yes, it sounds crazy, but there's a good reason for this: the ROM includes lots of kanji. There are four "banks" (not quite corresponding to true SNES banks) with 255 characters in each (plus the control code 00). This means 1020 characters used purely for text - and they use every single space. I did the maths and worked out I could do every single combination I could possibly need (a to z in both positions, punctuation, capital letters when required), and still have plenty of room left over. Perhaps a weird way of getting a nice thin font onscreen, but as you can see, it works like a charm.

At every turn during research for this hack, everything went right. I found the pointers and routed some dialogue text to a different bank, meaning I'll never run out of ROM space (as there's a ton of empty space on the cart, plus using digraphs means I use half as many bytes anyway). Almost everything is now pretty clear to me, and I'm confident that the only thing stopping me from a complete translation is my free time, which is quite limited at the moment I'm afraid.

Now to the one problem: the menus. Most of the menus are just a problem because there's no screen space: I can only use two tiles (ie 24x16) and that's that, so my choice of words is limited as you see. Not much I can do about it without going deeper. The bigger problem is the main menu, and I'll need to explain why.

They're a special case in that they have two characters, but after the first character there's a bunch of code before the second character (which seems to introduce a space) and if I ignore it the space disappears - but the selection highlight introduces an ugly block in the space to the right of the second character. If I just use three characters instead, it doesn't quite fit in the space, and graphically affects the menu. I'll post screenshots if anyone's interested.

A similar problem occurs on the start menu at the beginning. I used "kill" (two tiles) because I couldn't use "delete" (three). The reason is the selection: the game is clearly expecting two tiles and glitches elsewhere on the screen when you throw in three. This wouldn't be a problem if the text just displayed passively, but my guess is the code for highlighting it is done differently than the code for displaying the text unhighlighted. If anyone has experience of this, please get in touch, as it's the one issue I need to crack before I can deliver a full translation.

So, I could talk all day about it, but I'll let my work thus far speak for itself. Being an 'action' game, my plan is to make the game totally playable first: menus, weapons, unit names and so on. The actual story will be the last thing to do, since most people will probably skip through it anyway.

Looking forward to your comments! :D

16
Detective Conan
The Mechanical Temple Murder Case
VERSION 1.0

http://www.4shared.com/zip/qesKshnYce/c1-v10.html
Mirror

Here you are, guys. 100% complete. Everything's done at last.

I wasn't sure about making a new thread, but I figured it's worth it for the finished article - and I couldn't wait another 7 days to avoid the double-post rule. :) I'd like to add it to the RHDN database, but not sure how. I imagine it's not that difficult.

Thanks to all the guys on here who've encouraged me. It's been a lot of work, but worth it in the end, I think. Hope there are some Conan fans who will be happy to try this out at last.



The question is: what do I do now?

Oh yeah...

That... 8)

17
Hello all! In the breaks between doing Detective Conan and Hyper Iria, I've translated a PC Engine game! :D

Knight Rider Special is a cross between Chase HQ and RoadBlasters, with a famous American licence. I was amazed that such an American game never got either an American release nor a translation, so I took it upon myself to do it. :)



http://www.4shared.com/zip/U-YcTr8J/kr-v10.html

Have a go, and let me know what you think. Read the text in the zip for more info. ;)

EDIT: Damn it, I just remembered: this MUST be applied on a headerless ROM! I had to remove the header on mine. Think I may have to change the zip text file to make that clear. It's easy to delete the header: just stick it in a hex editor and remove the first 200 hex bytes (from $000 to $1FF). Do you guys think I should just change the patch to work on a headered ROM? It's not so difficult to do.

18
Personal Projects / Hyper Iria
« on: July 04, 2013, 07:18:37 am »
Hyper Iria, an as-yet untranslated action platform adventure thingy for the SNES.


I confess, I don't have a lot to show here, but I do know that if I can get a little help on this, then translating this game will be relatively straightforward. I don't know why nobody has tried this already.

I started a thread in ROM Hacking Discussion about displaying the 8x16 font in Tile Molester. Once I stopped being an idiot and figured it out, I replaced it with the VWF font used in Final Fantasy on the GBA (it was one of the only fonts I could find in the RHDN database, and since I used the Final Fantasy 1 font for my Detective Conan hack, I figured another Final Fantasy would be nice).

As soon as I started playing around, though, I realised one thing:

Yes, yes it does.

Actually, the in-game text itself (your computer pal BOB gives you information on where to go etc) is so rudimentary ("Go left", "Go up those stairs" etc) that a VWF, while nice, is really not essential. What IS essential, however, is getting the full use of that 12x2 character box in which to put the messages.

The problem is that age-old one of a Japanese message only needing, say, seven characters, and thus cutting off at seven, rather than the full 24 that I'd like to use (no new line control codes used, either). So rather than VWF, I think there are two more important options:

1) figure out how the pointers work, and stick all the new text somewhere else (eg in an expanded part of the ROM), or
2) DTE.

I have a very important question regarding DTE. I followed KingMike's lovely DTE tutorial for the NES (although I have to say, there are a few little errors here and there which made following the code more difficult, but I figured out the true values eventually). Now, would that code at the bottom of the tutorial work, with perhaps minor alterations, in ANY NES game? And if so, is there a DTE routine I could use from someone's SNES game to use in this? I ask because I know almost nothing about ASM (in fact, all I know is what I read in KingMike's tutorial :D ) but it seems to me that an ASM hack like DTE would, in theory, work on any game. Anyone care to tell me about this? Unless I can hack the pointers in this game, I will need DTE.

So about the pointers. I have experience with GBC pointers on my Conan project, and they make perfect sense to me:  that's a text-heavy game, so several entire banks are reserved for just text, while the pointers to that text appear to be at the beginning of the ROM in the main code. There are some small bits of text for menus and such which are also lumped in with the pointers, but they use 2-byte pointers which are also very simple, and I'm able to edit those too. But this? I can't figure it out.

I read AnusP's document on NES and SNES pointer hacking, and sadly it didn't seem to help me here. This is NOT a text-heavy game (RPGs are text-heavy, whereas I could translate all the text in this game in a day or two). Therefore, it seems to me that the text is lumped in with the main code, instead of stuck in a nice big bank ready to mess with. So I can't quite figure out how the pointers work, or even if it uses pointers at all (I imagine it does, but still). I've examined quite a few lines of text and noticed patterns, and already figured out which byte before the text is used to say which face goes next to the text. Other than that, I'm a bit stuck. Any experts on SNES pointers out there want to give me a clue what to look for?

Finally (sorry for such a long first post) there's another font used for the menu screen describing each mission. The font in the ROM is a bit messed up: it uses 8x7 tiles I think, so it's all just stuck together, and somehow the shading at the bottom of each letter gets added on-screen. Here's the font in question:

As you can see, it's not as neat and tidy as I'd like. On the other hand, it DOES include a capital Latin alphabet, so I could just use that and be done with it. Alas, the problems continue.

The encoding on the menu screen is a nightmare. The control code '20' (which is the same as capital M) seems to produce a space BEFORE the preceding character, and can't be changed, moved or removed without the whole line disappearing. Plus, the codes for new lines are pretty hard to fathom, and also don't seem to like being messed with.

Here are before and after shots of the screen in question.

Notice the spaces in the same place on both. I can't move or change those spaces, or the whole thing goes wrong. As for the dakuten symbols above, that's no problem: I've figured out how to turn them off. But as you can see, I have more problems than dakuten.

So, thank you for reading, and I hope someone can help me out with my problems. :)

19
ROM Hacking Discussion / SNES fonts
« on: July 01, 2013, 08:32:36 am »
Okay guys, this is probably a n00b question, but since I can't find much info anywhere, here goes.

While working on my rather easy (though time-consuming) Detective Conan GBC game, I've been wondering about hacking a SNES game, since the SNES is my favourite system and it'd be nice to do something for it, to learn a thing or two. Alas, all of my efforts have thus far been in vain, as it seems that SNES games are far more difficult to hack than NES or GB games. Maybe I'm wrong, but that's the way it seems: often I can't even find any text through relative searching.

But I stumbled across a game called Hyper Iria, which judging by a forum search, some of you have heard of. Cut a long story short, I did a relative search, actually found some text for once, now I've got my table sorted. So the next task is to replace the font. This is where I'm struggling.

The main in-game text is 8x12 (though most of the characters are only 10 pixels high). Since I have no experience with SNES games, and I couldn't find any documentation on this, I have no idea if the way this game stores the font is typical or not. Basically, the top half is at the bottom, and the bottom half is at the top, with different colours. I prepared a pic to demonstrate.



Yes, I know it says 8x10, because I thought that's what it was. Now I realise one or two kanji are slightly taller, but whatever.

Now, I'd be quite happy to just take a font, chop it in two and reverse it, but the problem is when the top and bottom collide, as they invariably do (I used the 'ka' here because it's a rare example of when it DOESN'T collide). In that case, the colours change. Basically, I have no idea how this should be done, and I wanted to know if anyone had any idea of how to just make a new font in this way.

I also have problems finding the pointers for the text, but that's another problem for another day... ;)

20
Personal Projects / Detective Conan: GBC games translation project
« on: May 22, 2013, 04:18:08 pm »
Greetings all, this is my first post, but it's been a long time coming, so I may take a while.

I got interested in rom hacking a while ago, mainly for the purposes of translation, and I even had a stab at translating Captain Tsubasa for the NES... until I realised that it was released (in bastardised form) as Tecmo Cup Soccer Game in the USA. My interest waned a little after that...

Years later, however, I thought about it again, and couldn't think of what to translate. Until I came across the Detective Conan games for the Game Boy Color. The three games by Banpresto were ideal for several reasons:

1) they hadn't been fully translated before;
2) they were for the GBC (simpler system to hack, but with the bonus of enormous carts);
3) I'm a fan of the Conan anime, which helps;
4) I imagine there are plenty of other Conan fans who would actually like to see this.

So, for my first translation project, I decided to tackle Detective Conan on the GBC.

All three of them.



The basic architecture is the same in all three games. The first one seems a little simpler but sets up all the graphics and ideas, and uses more or less the same stuff as the other two. The second is very similar but presumably a bit more complex (I haven't played much of any of them, I confess). And the third is double the cart size (16Mbit rather than 8Mbit), which allows for a bigger game, but also gives me much more empty space to fit my text in.

Which is another point: this game was my first test of hacking pointers. A big shout out to Coolboyman for his Gameboy pointer hacking doc (http://www.romhacking.net/documents/413/), it really helped me to get this working. Basically I've been picking things up pretty quickly in terms of hacking, and although I know almost nothing about ASM, some compression would be handy on this. I had a play with another tutorial for the NES, but unless someone can tell me how a NES ASM routine could be adapted for the GBC, I'm stuck. I think there's enough free space to exploit in these ROMs, though.

As for the language, that's the hard part. I used to learn Japanese years ago, and although I have a reasonable grasp of grammar, I suck at vocab, so every sentence takes a while, using WWWJDIC on virtually everything. It's a slow process, but hopefully my translation is reasonable. And hey, it's better than nothing.

I suppose hacking AND translating all three games, alone, is a big task, but I don't want anyone to think this'll be done overnight. I wanted to get to a stage that I call 'Proof of Concept': as in, you can play all three games with my patches up to the point that you start moving around and talking to people, and everything is in English. I didn't just fix a menu and upload it (I saw that someone else already did that), I wanted to show (me as well as you guys) that I was capable of doing this.

The hard part is done: the technical side of the game is more or less completely clear to me, most of the graphics are done, and the first chunk of text is done. All that remains is a hell of a lot of dialogue - and this is one text heavy game (or games). Now I've got all three games to version 0.1, if you like, I think I'll take a little break, then get to work on the first game.

I feel like writing a much more in-depth report on my work on my blog at some point, for any newbies who'd like to follow in my footsteps. But for now, enjoy the fruits of my labour, and any comments are welcome!

Detective Conan: The Mechanical Temple Murder Case
名探偵コナン からくり寺院殺人事件


http://www.4shared.com/zip/ep8VmYgT/c1_online.html

Detective Conan: The Legend of the Strange Rock Island Treasure
名探偵コナン 奇岩島秘宝伝説


http://www.4shared.com/zip/6g7D7rYO/c2_online.html

Detective Conan: The Cursed Sea Route
名探偵コナン 呪われた航路


http://www.4shared.com/zip/q9vSO4fu/c3_online.html

NOTE: In the second game, the description of where the boat lands is still in Japanese, because I couldn't find it in the game, strangely. There is no text in the ROM that matches it, so any help would be appreciated.

Pages: [1]