[Project] [Hatsune Miku - Project Mirai 2] Translation Project

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by Gadorach, Nov 10, 2014.

  1. Gadorach
    OP

    Gadorach Electronics Engineering Technologist

    Member
    952
    686
    Jan 22, 2014
    Canada
    Canada
    I'm currently in the middle of researching and compiling everything I can about this game and how it works. I expect this to be a somewhat long-term project. I'll update this thread as new data is found and the methods for using said data. Here's the current data I've compiled for it:

    File Tree: http://pastebin.com/bgJgBH5f

    Ignore output.txt, it was simply accounted for during the tree-building, as I forgot to specify another folder for it to go into.


    Types of files:

    .txt - Plaintext data - mostly used for databases and game settings, easy to edit.
    .bin - bin files - holds packed data for stages, models, textures, some code, etc.
    .icn - icon data - for the 3DS's data management app, I believe.
    .raw - picture data - only seen used for in-game wireless icon data
    .moflex - video+sound data - only used for the game's opening sequences
    .dsc - stage data - likely stands for "Diva Stage Config", or something along those lines. Holds all song stage data.
    .bcsdr - shader config data - multiple shaders for stage and text rendering are included
    .shbin - used by shader config probably, holds any additional data, unknown exact contents
    .bcasd - unknown, something to do with sound setup probably.
    .bcsar - CTR Sound Archive [ http://3dbrew.org/wiki/BCSAR ] - sound data
    .bcstm - audio stream - holds all main sounds files, including character sounds, sound effects, songs, etc. Can be played back with fubar2000 with the vgstream plugin.


    Plaintext-available content, and their known limitations:
    ------------
    pv_db.txt
    ------------
    Found in <pv> folder.

    This is the database that stores the PV data. This includes the song names loaded by the PV player, and the lyrics displayed on a per-line basis, and linked to a timing file that is likely stored in the stage data for the song in question.

    Known Limitations:

    UTF-8 encoding support only

    PV player can only display 49 characters total per line. It will cut off additional text from each end, and will continue to attempt to render the line up until about 75 characters before locking up, through centering the text displayed. At 60+ characters, if the last line was this long or longer, the game will lock up the console when attempting to either clear or display the next line. As I have no debugger at this point, I cannot find out which it is. Sometimes, instead of locking up, the script will simply fail to load that line at all, and move forward with no content until the next line is called.

    You cannot add lines to the song that aren't registered in the ".dsc" file for that song, as it won't know where/when to display them.

    Known Possible Uses:

    Can change character and stage data for in-game rendered songs.
    Can change Song names and Lyrics data for the PV Player.
    [note: this does not affect the song list menu at all, just the PV Player]
    Add and remove song data from the game [untested], will need stage data and stream data for the song to add a new one, unknown what triggers used to add or remove a song to/from the game song-list menu.

    Secrets:

    Found part of Leia's data in here, turns out it was meant to be packaged with the game, but got scrapped at some point.

    ---------------
    game_db.txt
    ---------------

    Found in root directory.

    This is the database that stores the main game setup data. This includes initial save data settings, judge timings, BPM fine-tuning, Banner order for the game list [modifications untested], Retail/Trial flags, and a game engine test.

    Known Limitations:

    UTF-8 encoding support only

    Known Possible Uses:

    Modify the initial unlocked songs to allow for quick ROM testing, or general cheating.
    Modify the initial awarded Mirai Points for easier testing.
    Modify the initial unlocked/applied character and costume, for easier texture-modding testing.
    Modify the header for the save data. Appears to just be a date, in this case: [0x20130920]
    Modify the banner order for the songs, perhaps their unlock order as well [untested]
    Run game engine tests, if desired. [untested]
    Make a demo with locked songs for people to try the game with. [untested]

    ------------------
    rob_act_db.txt
    ------------------

    Found in the root directory.

    Contains data pertaining to the character's actions on screen, and their animation sequences.

    Known Limitations:

    UTF-8 encoding support only

    Known Possible Uses:

    Add custom actions, or modify actions in the game to your liking with custom skeleton animation paths and preset animations. [untested]

    Example:
    Code:
    #Skeleton Movement Data
    actXXX.motion=MRM2_M2_XXX
     
    #Actions
    actXXX.YYYY.ZZZZ=AAA
     
    XXX = Action number
    YYYY = milliseconds to perform preset animation in
    ZZZZ = Preset animation name
    AAA = Version of preset animation to use
     
    EX:
     
    act079.motion=MRM2_M2_080
    act079.0110.eye=0
    
    ---------------
    score_db.txt
    ---------------



    Known Limitations:

    Known Possible Uses:

    Secrets:


    --------------
    boss_db.txt
    --------------



    Known Limitations:

    Known Possible Uses:

    Secrets:

    Might just be part of AN NSA SPY PROGRAM! O_O

    Code:
    #NSA download URL
    setting.url=https://npdl.cdn.nintendowifi.net/p01/nsa/YqwaX4YDDsNecFub/miku_01/miku_boss
    

    ---------------
    pv_field.txt
    ---------------



    Known Limitations:

    Known Possible Uses:

    Secrets:


    ---------------
    cardinfo.txt
    ---------------



    Known Limitations:

    Known Possible Uses:

    Secrets:


    ---------------
    poseinfo.txt
    ---------------



    Known Limitations:

    Known Possible Uses:

    Secrets:


    [TO BE UPDATED WHEN I HAVE MORE TIME]


    Feel free to help with the research for this game. The more hands helping the unpacking and research process, the faster it can be done.

    Example of Edited PV-Mode song-names:

    [​IMG]
     


  2. Gadorach
    OP

    Gadorach Electronics Engineering Technologist

    Member
    952
    686
    Jan 22, 2014
    Canada
    Canada
    [RESERVED]
     
  3. Gadorach
    OP

    Gadorach Electronics Engineering Technologist

    Member
    952
    686
    Jan 22, 2014
    Canada
    Canada
    [RESERVED]

    Edit: You guys do realize that I wasn't trying to start a meme or trend, right?

    If you're seriously reserving space for a legitimate reason, then cool, but it's just silly if you aren't. I'll update this thread with relevant data as possible, so there's no real need to reserve any space in the thread. My reservations are to more easily split sections of the process as they are reached.
     
    tjexp likes this.
  4. alexenochs
    This message by alexenochs has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  5. kyogre123
    This message by kyogre123 has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  6. hippy dave
    This message by hippy dave has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  7. alexenochs
    This message by alexenochs has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  8. Vengenceonu
    This message by Vengenceonu has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  9. Gadorach
    This message by Gadorach has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  10. alexenochs
    This message by alexenochs has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  11. Vengenceonu
    This message by Vengenceonu has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  12. alexenochs
    This message by alexenochs has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  13. Gadorach
    This message by Gadorach has been removed from public view by Depravo, Nov 10, 2014.
    Nov 10, 2014
  14. MarkDarkness

    MarkDarkness Deliverator

    Member
    708
    149
    Dec 17, 2009
    Poland
    That's a great initiative, Gadorach! It's great to see an effort being made in this direction on the 3DS.
     
  15. planetarian

    planetarian GBAtemp Regular

    Member
    133
    145
    Aug 5, 2014
    United States
    Hello fellow PM2 enthusiast!
    This project definitely has my attention, but more for auxillary purposes, since there's an official localization getting released next year.

    I'm greatly interested in learning more about the other formats, e.g. PVs and tracks and such. I'd love to build a PV viewer, or even an editor of some kind, if we could get to that point.

    I can't contribute much to this project at the moment as I've been quite busy already developing a CGFX viewer/exporter, but as it's nearing completion I'll definitely be keeping an eye on any developments here. If our goals overlap to a significant degree I'll look forward to collaborating =)

    I've actually been using PM2 models to test my (very much WIP) CGFX lib:
    [​IMG]
     
    Sinon, Margen67, laurorual and 5 others like this.
  16. LinkmstrYT

    LinkmstrYT ( ͡° ͜ʖ ͡°)

    Member
    1,459
    801
    Dec 16, 2013
    United States
    You wanted to see where I live? You stalker...
    I really can't wait for this to be finished. Unless SEGA pulls a fast one on us and announced that they're localizing it to the west... Which is entirely possible.
     
  17. planetarian

    planetarian GBAtemp Regular

    Member
    133
    145
    Aug 5, 2014
    United States
  18. XStationCube

    XStationCube Newbie

    Newcomer
    6
    0
    Jan 15, 2011
    United States
    They actually already have, like planetarian said. It'll also apparently have new content, though to my knowledge they haven't actually explained what that content is yet. http://blogs.sega.com/2014/07/02/ha...-appearance-on-nintendo-3ds-with-mirai-remix/

    Edit: Sniped.
     
  19. lcleong

    lcleong GBAtemp Fan

    Member
    356
    19
    Jul 5, 2008
    Malaysia
    i thought this game already have official localization which is coming out in usa next year?
     
  20. LinkmstrYT

    LinkmstrYT ( ͡° ͜ʖ ͡°)

    Member
    1,459
    801
    Dec 16, 2013
    United States
    You wanted to see where I live? You stalker...
    Huh...well...derp :P
     
  21. Gadorach
    OP

    Gadorach Electronics Engineering Technologist

    Member
    952
    686
    Jan 22, 2014
    Canada
    Canada
    That's awesome, and part of my plan here was to just be able to access and modify everything in the core game as I desired. I want to be able to make new songs, translation was more of a secondary initiative that I figured the community would get behind. I can't wait for your CGFXlib to be done, that's wonderful, and a PV Viewer is definitely something I could get behind. Whether an official translation is going to come out next year or not, the data we can pull here in doing is going to be useful for everything both of us wants to do. I really hope we can get to a point where we can make an "OpenMiku3DS", or something like that too.
     
  22. planetarian

    planetarian GBAtemp Regular

    Member
    133
    145
    Aug 5, 2014
    United States
    this just in: aside from being closer to having models sorted out, I have discovered the nightmare fuel that is PM2 models when all their expressions are visible at once. >_>

    [​IMG]
     
    medoli900, Margen67, tjexp and 4 others like this.
  23. Gadorach
    OP

    Gadorach Electronics Engineering Technologist

    Member
    952
    686
    Jan 22, 2014
    Canada
    Canada
    I'll admit, I didn't know there were so many different eyebrow positions. That's pretty wonderful. But yeah, definitely nightmare fuel right there.
     
  24. netnerd

    netnerd Advanced Member

    Newcomer
    53
    38
    Sep 13, 2013
    Melbourne
    Hey there, just thought I'd let you know about my own limited experimentation with Project Mirai 2.
    I've mainly done a few tests in relation to Leia, which is also in Mirai 1 and other than the lack of audio looks to be playable, although I'm not at that stage quite yet because I need to figure out how to not load another song's note path data so I can see the notes (loading up the dsc with Yume Yume resulted in notes following the Yume Yume path but with no panning - I'll have to try adding lines to see if it can run with no actual PV)
    game_db does seem to have some level of effect on unlocks, but I haven't tested very much - just that screwing with the order can change the initially unlocked songs.
    .dsc seems to hold the note chart, some PV events (loading of some resources and timed events I believe) and lyric timing. The format is similar to in Mirai 1, and older files may load with minimal modification (Leia is identical except for version bytes between the two games IIRC, probably because it doesn't use SP or anything special).
    pv_field is a cool file too. I had a glance at it and it seems to define layers for the renderer. Probably not too useful until we want to make custom PVs, but it could be fun to screw around with.

    Anyway, those are my observations so far. They're nothing special, but definitely something.
    Also, if anyone wants to help me out, makerom doesn't seem to be building romfs from extracted files past about 700MB (the rest is all zeros) which makes it hard to make changes. Is this a known issue or am I doing something wrong?
     
    Margen67, tjexp and planetarian like this.
  25. Tomy Sakazaki

    Tomy Sakazaki GBAtemp Advanced Fan

    Member
    766
    207
    Oct 23, 2006
    Brazil
    Sega of America didn't confirm what will be on Project Mirai Remix for the best it could have all songs from Mirai 1, 2 and some more, all charts and gameplay modes of songs that were present on Mirai 1 and 2, for the worst some songs from Mirai 1 and 2 may be removed, there could be only one gameplay style or a new one. I say that it's better to start on fan translation as a B plan.
     
  26. planetarian

    planetarian GBAtemp Regular

    Member
    133
    145
    Aug 5, 2014
    United States
    Well, SEGA's announcement was pretty clear-cut for the most part; everything they discussed was identical to Mirai2's setup, with the only real mystery being what extra content would be present.
     
  27. planetarian

    planetarian GBAtemp Regular

    Member
    133
    145
    Aug 5, 2014
    United States
    Out of curiosity, has anyone ever messed with the Project Diva files and figured out the note sequence format? I've always preferred the Mirai2 system over the Diva one, so I think it'd be kinda awesome to port some Diva songs over to Mirai2.
     
  28. Gadorach
    OP

    Gadorach Electronics Engineering Technologist

    Member
    952
    686
    Jan 22, 2014
    Canada
    Canada
    I'd like to as well, and if I figure it out, I'll post it here of course. I'm fairly familiar with the stepmania format, so I get the jist of how those types of files usually work. It's still not going to be anytime soon out of me though, but I'll definitely be looking into it if no one else does before I'm able.
     
  29. planetarian

    planetarian GBAtemp Regular

    Member
    133
    145
    Aug 5, 2014
    United States
    Actually, that's a pretty interesting thing to note in and of itself -- stepmania/DDR songs should be compatible with Mirai2 by nature, so one would simply have to write a converter. Not entirely sure there'd be much of a point to it, but it'd be kinda fun to do later just for kicks.
     
    Margen67 likes this.
  30. Gadorach
    OP

    Gadorach Electronics Engineering Technologist

    Member
    952
    686
    Jan 22, 2014
    Canada
    Canada
    True, but it would only be 4-key songs, and even then they would have to be down-stepped to accommodate for the lack of additional inputs. It would need special handling for things like hands and trips, and jacks would likely have to be limited to make it playable on the console. All in all, making new step-files would be the better road to travel, which wouldn't be too difficult, as I'm friends with a few renowned steppers, though mostly through other friends. If we can figure it out, getting them made will be a cinch.