Lux-Pain Re-translation

Discussion in 'NDS - ROM Hacking and Translations' started by DR_Chain, Apr 9, 2014.

  1. DR_Chain
    OP

    DR_Chain Member

    Newcomer
    14
    15
    Apr 9, 2014
    Netherlands
    Just putting this out here, in case anyone was planning on picking this up as well.

    I've been thinking of translating the game Lux-Pain, from Japanese.
    There is an official version out there, but the translation for that is kind of... lacking, so to say.
    I've played the game and enjoyed it a lot, but because of the translation it was very confusing.

    This is by no means a professional re-translation.
    It's a one-man project and just for fun.

    Also I've never done a project like this before


    At first this was just for myself.
    I wanted to improve my Japanese and just finished replaying this game.
    As it had some awkward English, why not kill two birds with one stone?
    And I thought there might be others who'd like a translation a little easier to read, so I made this post.

    I'll try to translate 1 chapter at a time.
    However, progress will be slow.
    Just a warning, don't get your hopes up to much. (^▽^;

    If anyone's willing to check the grammar and spelling of the translation that'd be great.
    Also I know NOTHING about programming.
    So if there's someone who, if I ever finish this, would be willing to make a patch that'd be awesome.
    Or tell me how to do it myself would be great too.
    (Although it's probably going to be a while before we even get to that point.)

    EDIT:
    Also there's this site:
    http://www.maql.co.jp/special/game/ds/lux-pain/index.html

    Which is the official Japanese site.
    It contains 5 Web Novels and I'm also considering translating these.
    There's no set plan or schedule so I'll just see which way life takes me.

    EDIT 2:
    I made a BLOG(?) for this.
    It won't have any regular or consistent updates though (Because I suck at time management, and there's life)
    But here's the link, check it out if you have some time
    There's not much on there for the moment though
    https://lux-pain-project.tumblr.com/
     
    Last edited by DR_Chain, Feb 27, 2017
    yule80, Skelletonike and Ulieq like this.


  2. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,169
    8,908
    Nov 21, 2005
    I would like to hear more about this iffy translation. I have not put enough time into the game to say I have played it at this point though so I can not come from that angle.

    I quite like retranslation and improvement hacking but I have been caught out more than once with people wanting a purely literal translation -- fully interpreted has its uses but I do skew more towards favouring the less literal and more readable stuff.
     
    yule80 likes this.
  3. GHANMI

    GHANMI GBAtemp Advanced Fan

    Member
    966
    491
    Jun 10, 2012
    A lot of files (extension ahx) seems compressed but have their hexadecimal data finish with this:
    AHXE(c)CRI (plus two 00 bytes)
    (on second thought it seems like those are voice samples... an undub has been done already by the way and swaps those)

    Under evt I suspect those are the text files, but besides the SC01 header everything seems compressed (nothing appears under the hex viewer). Don't know more since I can't do asm, so, sorry for this useless post.
     
  4. Skelletonike

    Skelletonike ♂ ♥ Gallant Pervert ♥ ♀

    Member
    2,907
    775
    Dec 26, 2008
    Steam City
    Oh, this is quite a great idea, just yesterday I was wondering about it as I looked at my Lux Pain cart. x'D
    I've finished the game twice, but even so the game get's me lost several times, the grammar, among other things, makes no sense at a lot of times. Not to mention that there's tons of nonsensical sentences.
    Anyway, this would be a great idea and I'd love to play the game in a proper way for once. =O
     
  5. Ulieq

    Ulieq GBAtemp Fan

    Member
    363
    73
    Jan 14, 2014
    United States
    Los Angeles, California
    Nice, can't wait.
     
    yule80 likes this.
  6. DR_Chain
    OP

    DR_Chain Member

    Newcomer
    14
    15
    Apr 9, 2014
    Netherlands
    (Sorry for the late reply, I had some schoolwork to finish)

    Well for example: the voice acting and text often don't match, So you don't know which one you should see as "this is being said" (btw, in the japanese version it DOES match)
    or they switch between America and Japan as the country where the story is taking place, and this just makes things confusing.
    or just translate it literally.
    (It's been a while since I played, so I might have left something out or mixed something up.)

    Hmmm, I do like literal translations, but literal doesn't always make sense in English if you're not used to it (Japanese to English literal translation, I mean)
    I also translate text from Japanese fanart/writing, but the people who read that are used to reading it , the translation, the literal way.
    But with games people don't always have prior knowledge of Japanese, so it won't make sense to them if you translate literally.
    So I'll try to write it in a way that is recognizable to people who don't know much about Japan, and also keep as close to the original meaning as possible.
    Since this game is more for the teenage crowd, I think the audience would be able to understand it even if it's a little literal.

    I'll be posting the chapters one by one, if you think there's something wrong with the translation, or the way I wrote it, please tell me and if there's indeed room for debate, I'll consider and try to make something different of it.
     
    yule80 likes this.
  7. neoxephon

    neoxephon GBAtemp Fan

    Member
    437
    138
    Jul 13, 2009
    United States
    USA

    The script isn't compressed. First dialogue of the game is located in \evt\park_00.evt, use a hex editor with Shift-JIS (wxMEdit is good).

    For whatever reason, the game uses double-byte English characters. The font does not have single-byte.

    The script doesn't use a pointer system. It simply uses the control code FF to tell the game when a string ends and then one byte of padding before the next string begins.

    Increasing the file size by even just one byte causes the game not to work correctly. It's been years since I've done anything with a NDS game, but if I remember right this is a common thing.
     
  8. Kelebek

    Kelebek GBAtemp Regular

    Member
    165
    62
    May 25, 2012
    It does use a pointer system. This one's beyond my ability though, I can't figure out WHERE it's pulling the string number from. Anyway for the evt files:

    SC01 signature, followed by a list of absolute address for table starts. The first one always seems to be at 0x18, leaving 5 tables total. If the tables are invalid they're just set to the end of the file.

    String offsets are in the table at 0x10. Not sure what the first word is, but after that are the string starts / 0x2 from the start of the text table. The text table is the last table in the list defined at 0x14. Has a bunch of control codes in it. ff00 is a new line, 0000 marks the end of the string I think. There's a few others, all seem to begin with either FF or 00.

    So that's the strings and their positions, which is all fine and technically doable if all you do is replace existing strings. But for adding strings, that's where I have no idea. I think you would need that to enable you to make new pages if you need space. I don't think a single string has the ability to start a new page itself. I can't figure out how the game is getting the position of the opcode which is defining the correct string. The opcode looks to be 4d though, but I'm entirely not sure.
     
  9. DR_Chain
    OP

    DR_Chain Member

    Newcomer
    14
    15
    Apr 9, 2014
    Netherlands

    ----------UPDATE----------

    Currently working on Chapter 00.

    Okay, I played through the whole game again.
    And realized that I would probably need the actual text files for some parts.
    Because sometimes the dialogue chances depending on your choices.
    If someone could provide them that'd be a huge help, because I don't know how to do so myself.
    For now, I can still translate by hand tho.

    Also, I am thinking about letting honorifics and suffixes stay as is?
    Like "Onii-chan" or "-San" (but not like "Seinen" or "Shoujo", just the ones used to address someone personally I guess).
    Since it's taking place in Japan and all.
    I mean, for example, when some French character shows up in games they can say "Bonjour" or whatever as well, so I thought why not?
    (Plus, this was originally meant to be just for myself, so...)
     
    yule80 and GHANMI like this.
  10. GHANMI

    GHANMI GBAtemp Advanced Fan

    Member
    966
    491
    Jun 10, 2012

    Get the Tinke tool, open the Japanese rom with it, open the folder evt.
    Choose one of those, open with a hexadecimal tool (Tinke has an internal one).
    Choose Shift-JIS.
    Japanese text will appear. Sentences are separated with FF characters to tell where one of those end.

    Now that's how you get the original script.

    If you want to translate it, I recommend you try opening those same files but from either the English rom or the French rom if you can recognize the corresponding sentences (since that language has longer sentences by design, your translation can fit in less or equal characters -provided you don't get too wild with it-. Since it uses a pointer system, put FF whenever you want to finish the sentence if it's short than the replaced faulty official localized script.)
    And actually modify the text in the hex editor this time around.

    See if fileswapping is possible between versions. Chances are the graphics with text on them that need swapping are marked en/fr/ge/it in the PAL rom.
     
  11. DR_Chain
    OP

    DR_Chain Member

    Newcomer
    14
    15
    Apr 9, 2014
    Netherlands

    Thank you very much, also for explaining.
    I'll try it out.
    Could I ask you for help if I get stuck?


    So... In short I have to watch how many letters/symbols I use?


    Um, I am a person who has no experience with programming.
    So it's a little confusing for me, sorry.
     
    yule80 and GHANMI like this.
  12. Lycanroc

    Lycanroc Midnight Wolf

    Member
    2,003
    2,386
    May 11, 2014
    Germany
    Ibbenbüren
    Bump

    Is this still going?
     
    ComeTurismO likes this.
  13. GHANMI

    GHANMI GBAtemp Advanced Fan

    Member
    966
    491
    Jun 10, 2012

    Nope. It's cancelled. Abandoned. Finito. Boom.
    The fact that the translator went for A WHOLE 15 DAYS (OH GOD, THE HORROR!) without posting reports to his superiors at work in this forum means that he/she has suddenly abandoned this fun hobby of his/her, which would be a serious slacking off from an important life-changing duty.
    HOW DARE HE/SHE!

    Your bump is appreciated and valuable so that we can denounce those lazy @&%! translators who dare not to post online at least once per 24 hours. Would it kill them to post on forums about how much progress instead of doing said progress or just enjoying their lives as they see fit?
     
    Ammako, potato3334 and Skelletonike like this.
  14. Lycanroc

    Lycanroc Midnight Wolf

    Member
    2,003
    2,386
    May 11, 2014
    Germany
    Ibbenbüren
    Not sure if sarcastic or serious... Oh well, off to play the official translation then D:
     
    ComeTurismO likes this.
  15. Skelletonike

    Skelletonike ♂ ♥ Gallant Pervert ♥ ♀

    Member
    2,907
    775
    Dec 26, 2008
    Steam City
    In case it wasn't obvious, he was being sarcastic, translation projects tend to take a long time. Take a look at Kingcom's website, he releases like two updates a year, which doesn't mean he has stopped working on the projects.

    Unless there's anything worth reporting, they don't really bother to post about it.
     
    Lycanroc and GHANMI like this.
  16. DR_Chain
    OP

    DR_Chain Member

    Newcomer
    14
    15
    Apr 9, 2014
    Netherlands
    Yes, this is still going

    I'm not sure if I should have, but I kind of had to laugh when I read this.
    But it's fine. You know, asking never hurts.

    To clarify for anyone who is wondering like NikolaMiljevic:
    I am working on it.
    But for me, it seems kind of pointless to update everyday, when progress isn't that fast (Since I am but one person)
    "Today I did this and this, but I'm not finished yet so I can't show you", is not something that I feel like I need to update for.
    Because I wouldn't have anything to show yet anyway.
    It just seemed more, you know, efficient if I report and update when I ACTUALLY made some progress.

    This just came in, it's pretty much like this.
     
    yule80, Ammako, Lycanroc and 2 others like this.
  17. DataDrain

    DataDrain Member

    Newcomer
    37
    2
    Nov 28, 2006
    Oh dear God, yes. Yes, please. I loved Lux Pain so much but the translation was so godawful.

    I don't have much experience in translation or programming, but I have a very good grasp on the English language if you ever need a proofreader or editor or something.

    I'm seriously so excited for this. Good luck!!
     
    yule80 likes this.
  18. Schizoanalysis

    Schizoanalysis From somewhere inside the rabbit hole...

    Member
    2,785
    368
    Jun 23, 2009
    ...
    Thanks for your work!

    Looking forward to this!
     
  19. DR_Chain
    OP

    DR_Chain Member

    Newcomer
    14
    15
    Apr 9, 2014
    Netherlands

    Thank you and oh, yes please.
    If you would proofread that'd be a great help.


    Thanks for your support :D
     
  20. DR_Chain
    OP

    DR_Chain Member

    Newcomer
    14
    15
    Apr 9, 2014
    Netherlands
    Just out of curiosity, I have a question.
    so I downloaded Tinke.
    And I can find the text I need just fine.
    (At least so far so good)
    But there's one thing I don't understand:
    Why is the first half of the text I get a mix of (probably) code and Japanese characters?
    (Again, just so you know: I have about zero experience with this kind of thing)