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:
---------------
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
---------------
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:
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: