More Hackin’

16 years ago by Mato

Only been a short day, but made some more good hacking strides. Thought I’d document them before they get lost under more hacking stuff.

Main things are that I finally (after hours of headache) modified that one font routine to print all 16 rows, so now outside item descriptions and menu box titles display fully (compare with yesterday’s pics to see what I mean). That took way more work than it should have, gah.

Also modified and incorporated sblur’s old 8-bit hack that affects outside item descriptions and a small handful of other things. I still need to revise it to handle byuu’s new control code format, should be pretty simple though.

Then I took a break and decided to mess with the enemy description text. Right now it’s still in 16-bit format, might not even be a need to convert it to 8-bit, given what little room there is on-screen to write the descriptions. But I’m hoping we can maybe get some sort of VWF for them, since Itoi’s descriptions of the enemies are pretty funny, and I’d hate to have to chop up the descriptions like crazy just because of limited screen space 🙁


  • Font routine hacked!
    Item descriptions work too!

  • Item name text gets cut off
    for weird hardware reasons 🙁

  • Hurray for shared routines

  • Boo for unshared routines 🙁

  • Enemy description hack test

  • An old ROM hacking custom 😛

As I look around my desk, I didn’t realize how many crazy notes I’ve written down while hacking M3’s code. It makes me look like a crazy mad scientist, so I thought it’d be fun to show just some of the stuff here 😛

I’m not a very good ASM hacker though. I bet most good hackers could do that all in their head.

Well anyway, that’s all for today. For the most part, I know what needs to be hacked to get these menus to be 100% good, it’s mostly just a matter of hacking tons more 8-bit-loading code, tons more string length-counting code, and tons more VWFs. I don’t know why these menus are so weird; the battle routines all pretty much share all the same routines. The main menu programmers must’ve been a crazy team.

Posted on Friday, November 23rd, 2007 at 1:58 pm by Mato, filed under Uncategorized. You can follow any responses to this entry through the RSS 2.0 feed. Comments and pings are currently closed.

52 Responses to “More Hackin’”

  1. Sherwin said 16 years ago:

    Cooool more proress! Keep it up, you guys are so dedicated!

  2. Eltee said 16 years ago:

    Haha, keep up the good work.

    SEXY BEAM, SHOOT!

  3. Abysmal said 16 years ago:

    Awesome. Doing some great work. I love that “WTF” in the notes. I kinda wondered what the Luxury_Banana was for though. Anyways, keep it up!

  4. tibbs said 16 years ago:

    Wow…

    You seem to be spending all your free time working on this, and yet, when you DO take breaks, they’re for scanning your notes and to keep us updated on the progress of the project…
    If that’s not dedication, I don’t know what it is.

    I’m just speechless…
    You’re awesome, that’s all…

  5. Tonto said 16 years ago:

    Either the menu guys were a crazy team, or maybe they weren’t really a team at all and they did a bunch of work separately, and then someone just hacked it all together.

  6. Z. Mortimer said 16 years ago:

    It’s good that you know how to get the rest of the menu hacked…I’m sure that it’s not easy with all of those unshared routines. I’m glad for you that it’s coming along well, and very quickly considering that there are only a few of you.

    Good luck and, of course, thank you!
    -Z. Mortimer

  7. Mato said 16 years ago:

    Abysmal: That Luxury Banana thing is there because I was working on hacking a routine to count the length of strings. I got the routine hacked, but because the original game only allowed for 9 letters per item name, long names get partially overwritten by the following names, creating super long names and just causing ugliness. That’s what that whole “WTF” page is about, the game magically creates an address out of thin air for the second item name. I can’t figure it out right now, but I need to fix it so that I can move the second name away so that there won’t be the overwriting problem. So basically, like I mention a lot, fixing one thing will break other things, and that’s what that whole Luxury Banana thing is about.

    Incidentally, here’s a pic of the problem in action. Just gotta figure out that magical address thing 🙁

  8. Black Death said 16 years ago:

    Post moar pictures of coding.

  9. Ness2991 said 16 years ago:

    Mother 3 is coming along nicely. It’s Awesome! I PK LOVE it! Wow, I’m a nerd. But still… Mother 3 seems even closer to being translated than ever! I’m pretty stoked. It seems like alot of people appreciate it, and there’s no doubt why. You guys are workin’ your butts off! I hope you just realize how much we all appreciate your hard work. I love Mother 3, but I don’t think I would have the patience to TRANSLATE it…
    Thanks a bunch.
    -Ness 2991
    P.S. What the crap is sexy beam?

  10. EliotAndrews said 16 years ago:

    Awesome notes and great shots too! I love checking this site.

  11. Mato said 16 years ago:

    Ness2991: In this context, I somehow started a weird fad among ROM hackers/translators by using the phrase “Sexy Beam” in sample screenshots, or just to be goofy and have fun.

    I just restored my old Sexy Beam shrine, so you can see it here. Those were all submitted by lots of different people. Luckily the fad/custom didn’t last TOO long 😛 Though I still do use it as a “Hello, World” type phrase.

  12. TheReaper said 16 years ago:

    Another good update and its very good news to hear that now the outside item descriptions and menu box titles display fully another problem solved,also I hope you get some sort of VWF for Itoi’s descriptions of the enemies and thanks for sharing your hacking notes but the only thing I understood in those notes was wtf,anyway keep up the amazing work you guys.

  13. kerofrog said 16 years ago:

    Keep up the good work! :]

  14. TheGuy said 16 years ago:

    I can’t believe you don’t have Silent Hill 3 listed on your sexy Beam page.
    http://www.youtube.com/watch?v=RDBX4tKDoCw

    Unless you were just going for stuff that you personally hacked.

    Anyhow,
    Great work as always.

  15. alimus said 16 years ago:

    I ROFL’d at the sexy beam.

    PK SEXY BEAM!

  16. neonix said 16 years ago:

    i want mah cheese! and mah mother 3! Keep up the great work guys! I love the consistent progress updates!

  17. InexplicableForm said 16 years ago:

    Mato, what do you mean by “following names,” are these the names of other items in your inventory, or names in the entire list of items? If its the former case, what happens if there are no other items, does it list the full “Luxury Banana” or still cut it off after the 10th character?

    Since it originally was designed for 9 character words and it gives weird results after displaying the 10th character, I think the problem might be related to the code expecting some “end of string” character by the 10th character and not finding it. I could be totally wrong I know nothing about GBA coding/hacking.

  18. Mato said 16 years ago:

    The item to the right is what overwrites part of the item to the left, and that’s what causes the no-end-of-string problem. The problem is just making the program write the second string farther ahead in memory (looks like there’s plenty of room for it), but like I mentioned, the problem is it’s hard to tell how the address for the second string gets magically created. But that’s how this hacking is, you just have a headache for many hours and then finally you figure it out, so it’s no big deal.

  19. Jeeves said 16 years ago:

    I’m curious, in the enemy log, do you only have one line of space to put an enemy’s name in the list?

  20. Mato said 16 years ago:

    Yeah, only one line. I’m hoping a VWF will help, and if stuff still goes too long, I might make a secondary list of enemy names that are slightly abbreviated and then have the game use that list for that menu.

  21. A Fan said 16 years ago:

    So “Make Laugh” is a skill? Wouldn’t “Amuse” sound better? Or is there something I don’t know about it having not played M3 yet? 🙂

  22. dave said 16 years ago:

    make laugh sounds better than amuse.

  23. Vince said 16 years ago:

    Amuse sounds better than make laugh, but in the context I think make laugh works better

  24. Moulinoski said 16 years ago:

    …Wow. This totally broke my “Tomato posts every four-five days” calculation. Oh well, SEXY BEAM!!! XD *thumbs up and a sexy beam @ you, Mato!*

  25. Jcgamer60 said 16 years ago:

    Amuse does sound better than “Make Laugh”, but if it works better in the context of Mother 3 I won’t mind.

  26. KMeist Hax said 16 years ago:

    Well that explains all the random crashing and bugs.

    Pointer math.

  27. dave said 16 years ago:

    amuse and make laugh are not interchangeable. it’s that way for a reason, obviously. don’t question the mato’s translation skillz

  28. Valygar said 16 years ago:

    I totally prefer the original song from dschinghis khan:

    http://www.youtube.com/watch?v=BQAKRw6mToA

    If you don’t know it (but I think you do) you’ll be amazed!

    PD: Of course, great work tomato. It’s me who is really amazed seeing how hard is to hack the game and how much effort you guys do.

  29. Mick said 16 years ago:

    Yeah, Moulinoski, when I saw that there was already an update, that post where you said every 4-5 days was the first thing that popped in my mind. Ah well, I look foward to these updates, so it’s a good thing.

  30. Aasimov said 16 years ago:

    Wow, epic lawl at the awesome notebook pages.
    Keep up the epic hacking work, my friends!

    Tomato can shoot his Sexy Beam at me any day…
    >.>

  31. Vinchenz Rock said 16 years ago:

    Hey, Tomato, it seems like you got a lot of text on your hands… if you really need help with the script in the game, I’d love to help! I know you don’t know me nor does anyone else but I always wanted a hand with this game’s english script…

  32. Yokai said 16 years ago:

    Out of curiosity… Should “ligher” just be Light? For translation sake?

  33. tibbs said 16 years ago:

    “Vinchenz Rock said:
    Hey, Tomato, it seems like you got a lot of text on your hands… if you really need help with the script in the game, I’d love to help! I know you don’t know me nor does anyone else but I always wanted a hand with this game’s english script…”

    Hum… aren’t you just trying to get the English text before everyone else…? ^^ nice try, but…

    “Yokai said:
    Out of curiosity… Should “ligher” just be Light? For translation sake?”

    I think “Lighter” is actually the NPC’s name to whom it belongs(I guess).

  34. Yokai said 16 years ago:

    I understand that Tibbs, I’ve played through this game once, however I think Lighter is a bad choice in name because it is a part-of-speach not typical in the English language.

  35. Yokai said 16 years ago:

    Errr excuse me, I guess that requires more explanation….

    “Not typical in the English Language…” When names are involved.

  36. hunter said 16 years ago:

    why don’t you call him “zippo”, or “bic”?

  37. 7ucky said 16 years ago:

    Leaps and bounds… leaps aaaand bounds. Keep the good stuff comin’! 😀

  38. Jeeves said 16 years ago:

    Hey, Tomato, it’s me, the guy who was having some trouble getting the game to save on Mac VBA before. I just found something that I think you might want to include in your FAQ links or something. I didn’t think it existed, but I just found an OS X Universal binary version of VBA 1.7.2 on this page:

    http://tleaves.com/misc/VisualBoyAdvance.html

    This runs much more snappily and is more stable on Intel Macs than the non-universal version. I wish I knew about this during my playthrough of the game. It can run on PowerPC Macs as well but I don’t know if it’s better or not.

    Anyway I don’t want to sound like I’m ordering you around or anything but it probably would be a good thing to link to somewhere, it should be very helpful to anyone on an Intel Mac.

  39. tibbs said 16 years ago:

    Yokai said 2 hours:
    I understand that Tibbs, I’ve played through this game once, however I think Lighter is a bad choice in name because it is a part-of-speach not typical in the English language.

    Ah yeah, I see what you mean, but it might be related to “Flint” (Lighter…) maybe, don’t really know how it is in Japanese… And there’s another character called Duster as well which isn’t really a name either ^^ (Oh I just found something that might be related to the “Western” aspect of the game, from Wikipedia “A term given to a style of stories and movies about the Western Half of the United States (cowboys), sometimes also known as Westerns. “)

  40. A Fan said 16 years ago:

    As I understand it from past explanations, those people are named after parts of a gun. Which is, yes, very weird, but the Japanese seem to like meaningful names, especially when they’re puns of some kind. Just watch any anime, heck, in Death Note, Light mentions how his name is written as [moon] [death][god] for just one example. They’re bound to drive any poor translator crazy, because they’re hard or impossible to preserve in translation.

    But that’s why Mato makes the big bucks in his day job, I suppose 🙂

    —–

    As for ‘Make Laugh’ vs. ‘Amuse’, I think it was pointed out that the character actually forces enemies to laugh, although I’m not sure how (I’ve been waiting impatiently to play this, as evidenced by all the times I’ve posted here…). That said, see the original meaning of the word:

    “[T]he first meaning of amuse was ‘to divert the attention of in order to mislead,'” (Source: http://thesaurus.reference.com/search?q=amuse&x=0&y=0 )

    Some of you may have heard of that quip about being ‘amused to death’, so it’s at least credible as an attack name, although whether it preserves the exact sense of the original is unknown to me. I just thought I’d throw it out there as an idea and let Mato use his best judgment.

  41. Vinchenz Rock said 16 years ago:

    “Hum… aren’t you just trying to get the English text before everyone else…? ^^ nice try, but…”

    No. I’ve already beat the game and I understand everything in my little own way. I really don’t need to read the same thing over and over again… however, like I said, I’d love to have a hand in the script. I’m a writer and I’m currently writing a book (although a dark one…). I think I’d do a good job at localizing something like this and I’d really like to have a try.

  42. Vince said 16 years ago:

    Hey Tomato, I know it’s probably difficult to gauge, but would you be able to guess how far are you guys along in the hacking/translation? 30% done? 50% done? Sorry if it’s a dumb question…

  43. Dtotheon said 16 years ago:

    It’s cool that you guy put so much time into this when you don’t need to. We are the ones that can’t read Japanese.

    Thank you

  44. Mato said 16 years ago:

    A Fan: I might change it, not sure yet. There’s a nuance there that it’s an attempt, and maybe you can show people a dictionary’s definition of the word, but for people to have to read a dictionary to pick up that info seems a little unfair. That said, I don’t like how it currently is, but there are more pressing issues right now. Amuse sounds a little too generic though, especially since I think dancing/apologizing/miming would fall under the category of amusing too. But there are still a few more drafts to go through.

    Anyway, it’s stuff like this that often makes me not want to post screenshots, people picking apart the tiniest of things that aren’t close to being finished 😐

    Vinchenz Rock: Thanks for the offer, but we already have probably more than enough writing-type people on the project. Gideon himself is an aspiring novelist, and demi’s always been good with this sort of thing. Then there’s me, and a couple others. So we got our bases covered in that department. If you happen to know how to hack GBA code, though… 😛

    Yokai: I don’t feel comfortable changing characters’ names just because. If there’s a good reason for a change, then sure, but the guy’s son is even named Fuel, should we change his name too? Should we change all names that seem strange? If so, then why does EarthBound have Poo? I’m not against name changes, but needless changes just irk me for some reason.

    Jeeves: Thanks! I’ll update the menu patch page about it sometime, and when the final patch comes out in 3084 I’ll be sure to mention it in the readme and elsewhere 🙂

    KMeist Hax: That’s not really the cause of those crashes and stuff, overwriting memory and really weird code is the problem mostly.

    Vince: Check the FAQs page, it talks about percentage stuff.

    —–

    Slight update: I *finally* figured out that WTF stuff and eventually got the routine to bend to my will and allow 20 characters per item name. But somehow that broke the item VWF so the names get printed all over the screen, so I gotta fix that now, but won’t have time for a few days. More details (and hopefully pics of it working correctly) sometime this week hopefully.

  45. ParodyKnaveBob said 16 years ago:

    Thanks again for the oh-so-frequent updates. And thanks also for the trip down memory lane: ah, my old days of programming on paper — no school worksheet was safe! Haven’t done that in years… Hm…

  46. ParodyKnaveBob said 16 years ago:

    Slight update: ha ha ha! Sheesh, Mr. ‘Mata, can you -get- a break? ~chucklingOL~ Good to hear the update, though. Nifty.

    Make Laugh: I know, I know, drafts and revisions and WIPs and stuff. I’ve gotta say, though, “Make ‘Em Laugh” 1. flows nicely, 2. would fit the space, and 3. has a little flare of Americana flair, a precedent well-established in M/EB stuff (and yeah I’ve heard about the culture shift in M3 — it’s just a thought). http://en.wikipedia.org/wiki/Make_%27Em_Laugh

  47. Simon Roberts said 16 years ago:

    Haha, Sexy Beam strikes again! I made the Chrono Trigger one when I was in high school, that’s how long it’s been. Hooray for Internet nostalgia!

  48. DK2300 said 16 years ago:

    Hey on that sexy beam shrine what is that game just below the card captor one? the one with no text in the box? Just wondering cause it looks kinda cool.

  49. Mato said 16 years ago:

    DK2300: I don’t know, but it looks like a Ranma 1/2 game.

  50. Vince said 16 years ago:

    Ah, I figured such was the case, but thanks for being patient and answering anyway.

  51. A Fan said 16 years ago:

    > Anyway, it’s stuff like this that often makes me not want to post screenshots, people picking apart the tiniest of things that aren’t close to being finished 😐

    Well, I certainly don’t mean to offend 🙂 Of course we understand that it’s a work in progress. The only reason to post something like that isn’t to say “you suck” but to try to help out in any way possible. And you must realize, there really aren’t very many ways we CAN do that, which sucks from our end where we can’t help but want to 🙁

    I don’t claim to understand GBA programming, but I’m not unfamiliar with assembly in general. Heck, we apparently took the same class on it under the same teacher only a couple of years apart. Is there any good way to learn about it?

    Even something like that Little Pink Book for the Motorola 86HC11 might be nice (hell, I still have mine…). Doubt I could learn enough fast enough to contribute anything worthwhile with the project this far along, but you never know. I’ve looked at the debug output in VBA once or twice and I can see from the register layout that it is a RISC architecture, I can at least guess at what the opcodes do, etc. even if I have little knowledge of the GBA hardware architecture and I don’t know which memory addresses contain the interesting tidbits.

    But it’s not easy to help when all you know to do is fire up VBA and stare at all the pretty hex dumps scrolling past you 🙂

    It was all 0s and 1s, and I even think I saw a 2!
    It’s okay, Bender. There’s no such thing as 2.

  52. bungiefan said 16 years ago:

    DK2300: That’s the Ranma Super Famicom RPG, which has an English patch somewhere.