User:GGAB3/Sandbox: Difference between revisions
No edit summary |
mNo edit summary |
||
| (8 intermediate revisions by the same user not shown) | |||
| Line 3: | Line 3: | ||
For the later games (Project DIVA F2nd and Project DIVA X) the <code>pv_db</code> file is encrypted using DIVAFILE encryption. They need to be decrypted before editing. | For the later games (Project DIVA F2nd and Project DIVA X) the <code>pv_db</code> file is encrypted using DIVAFILE encryption. They need to be decrypted before editing. | ||
Multiple <code>pv_db</code> databases can not be loaded sequentially. Instead, only the contents of the last loaded <code>pv_db</code> file gets parsed by the game, overwriting the '''''entire''''' base game <code>pv_db | Multiple <code>pv_db</code> databases can not be loaded sequentially. Instead, only the contents of the last loaded <code>pv_db</code> file gets parsed by the game, overwriting the '''''entire''''' base game <code>pv_db</code> as a result. | ||
<code>pv_db</code> | <code>pv_db</code> files can have a prefix in their file name to indicate a specific use case: | ||
* <code>'''mdata'''_pv_db</code> - Primarily used in Project DIVA Arcade Future Tone's [[MDATA]] system. It is also seen in games such as Project DIVA Mega Mix+, where it is used as the dlc <code>pv_db</code>. | * <code>'''mdata'''_pv_db</code> - Primarily used in Project DIVA Arcade Future Tone's [[MDATA]] system. It is also seen in games such as Project DIVA Mega Mix+, where it is used as the dlc <code>pv_db</code>. | ||
| Line 11: | Line 11: | ||
== Structure == | == Structure == | ||
Similarly to other plain text databases in Project DIVA, '''proprieties'''/'''keywords''' are separated by <code>.</code> and '''values''' are attributed to certain proprieties using <code>=</code>. All lines in the database need to be written in lexicographical order (a → z, 0 → 9) in order to be parsed correctly by the game. | Similarly to other plain text databases in Project DIVA, '''proprieties'''/'''keywords''' are separated by <code>.</code> and '''values''' are attributed to certain proprieties using <code>=</code>. All lines in the database need to be written in lexicographical order (a → z, 0 → 9 etc.) in order to be parsed correctly by the game. | ||
Each entry in a <code>pv_db</code> begins by specifying the PV slot to which we can attach a propriety and attribute a value, like this: | Each entry in a <code>pv_db</code> begins by specifying the PV slot to which we can attach a propriety and attribute a value, like this: | ||
| Line 17: | Line 17: | ||
<code>pv_###.propriety=value</code> | <code>pv_###.propriety=value</code> | ||
Example: | |||
Proprieties can also be chained or composed of | <code>pv_268.date=202001001</code> (meaning pv_268 [Catch the Wave]'s date is 01 Jan 2020.) | ||
Proprieties can also be chained or composed of arrays: | |||
{| class="wikitable" | {| class="wikitable" | ||
|<code>pv_268.songinfo.lyrics=kz</code> | |<code>pv_268.songinfo.lyrics=kz</code> | ||
| Line 27: | Line 29: | ||
|<code>pv_268.lyric.001=Catch the wave君と</code> | |<code>pv_268.lyric.001=Catch the wave君と</code> | ||
<code>pv_268.lyric.002=掴む音で</code> | <code>pv_268.lyric.002=掴む音で</code> | ||
<code>pv_268.lyric.003=まだまだ歌おう</code> | <code>pv_268.lyric.003=まだまだ歌おう</code> | ||
<code>pv_268.lyric.004=Wave your handsもっと</code> | <code>pv_268.lyric.004=Wave your handsもっと</code> | ||
| | |array properties | ||
|} | |} | ||
| Line 36: | Line 40: | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
! colspan=" | ! colspan="5" |Keywords and derived keywords | ||
!Valid values | !Valid values | ||
!Description | !Description | ||
|- | |- | ||
| colspan="4" | | | rowspan="6" |another_song | ||
====== bpm | | colspan="4" |name | ||
| | |||
| | |||
|- | |||
| colspan="4" |name_en | |||
| | |||
| | |||
|- | |||
| colspan="4" |song_file_name | |||
| | |||
| | |||
|- | |||
| colspan="4" |vocal_chara_num | |||
|enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET] (?) | |||
| | |||
|- | |||
| colspan="4" |vocal_disp_name | |||
| | |||
| | |||
|- | |||
| colspan="4" |vocal_disp_name_en | |||
| | |||
| | |||
|- | |||
|auth_replace_by_module | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
| colspan="5" |bpm | |||
|any number | |any number | ||
|BPM of the song. Not directly used in the game but '''required for loading the PV'''. | |||
|BPM of the song. Not directly used in | |- | ||
| colspan="5" |chainslide_failure_name | |||
| | |||
| | |||
|- | |||
| colspan="5" |chainslide_first_name | |||
| | |||
| | |||
|- | |||
| colspan="5" |chainslide_sub_name | |||
| | |||
| | |||
|- | |- | ||
| colspan=" | | colspan="5" |chainslide_success_name | ||
| | | | ||
| | | | ||
|- | |- | ||
| | | rowspan="5" |chrcam | ||
== | | rowspan="4" |'''''[array index]''''' | ||
| colspan="3" |chara | |||
|enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||
| | |||
|- | |||
| colspan="3" |id | |||
| | | | ||
| | | | ||
|- | |- | ||
| colspan=" | | colspan="3" |name | ||
| | | | ||
| | | | ||
|- | |- | ||
| colspan=" | | colspan="3" |org_name | ||
| | | | ||
| | | | ||
|- | |- | ||
| colspan="4" | | | colspan="4" |length | ||
====== | | | ||
| | |||
|- | |||
| rowspan="6" |chreff | |||
| rowspan="5" |'''''[array index]''''' | |||
| rowspan="3" |data | |||
| rowspan="2" |'''''[array index]''''' | |||
|name | |||
| | |||
| | |||
|- | |||
|type | |||
|enum: [AUTH3D, AUTH3D_OBJ] | |||
| | |||
|- | |||
| colspan="2" |length | |||
| | |||
| | |||
|- | |||
| colspan="3" |id | |||
| | |||
| | |||
|- | |||
| colspan="3" |name | |||
|enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||
| | |||
|- | |||
| colspan="4" |num | |||
| | |||
| | |||
|- | |||
| rowspan="5" |chrmot | |||
| rowspan="4" |'''''[array index]''''' | |||
| colspan="3" |chara | |||
|enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||
| | |||
|- | |||
| colspan="3" |id | |||
| | |||
| | |||
|- | |||
| colspan="3" |name | |||
| | |||
| | |||
|- | |||
| colspan="3" |org_name | |||
| | |||
| | |||
|- | |||
| colspan="4" |length | |||
|any number representing a date formatted like <code>yyyymmdd</code> | |any number representing a date formatted like <code>yyyymmdd</code> | ||
|Date of the song's addition to the game. Not directly used in game but '''required for loading the PV'''. | |||
|Date of the song's addition to the game. Not directly used in | |||
|- | |- | ||
| colspan="5" |date | |||
| | |||
| colspan=" | |||
| | |||
| | | | ||
|- | |- | ||
| | | rowspan="13" |difficulty | ||
| | | rowspan="3" |attribute | ||
| | | colspan="3" |extra | ||
| | |bool | ||
| | |||
|- | |- | ||
| rowspan=" | | colspan="3" |original | ||
|bool | |||
| | |||
|- | |||
| colspan="3" |slide | |||
|bool | |||
|Specifies if the chart has Slide notes in it. It also adds the slide icon in the Song Select Screen. | |||
|- | |||
| rowspan="10" |easy | |||
normal | normal | ||
| Line 99: | Line 196: | ||
encore | encore | ||
| rowspan=" | | rowspan="9" |'''''[array index]''''' | ||
|edition | | rowspan="3" |attribute | ||
| | |extra | ||
|bool | |||
| | |||
|- | |||
|original | |||
|bool | |||
| | |||
|- | |||
|slide | |||
|bool | |||
|Specifies if the chart has Slide notes in it. It also adds the slide icon in the Song Select Screen. | |||
|- | |||
| colspan="2" |edition | |||
|any number | |||
|<code>1</code> sets the chart as "extra". Normally only used to set an additional <code>extreme</code> entry as '''Extra Extreme'''. | |||
|- | |- | ||
|level | | colspan="2" |level | ||
|string formatted like <code>PV_LV_'''XX'''_'''Y'''</code>, | |string formatted like <code>PV_LV_'''XX'''_'''Y'''</code>, | ||
where XX is a number from <code>01</code> to <code>10</code> (including leading 0) and Y is either <code>0</code> or <code>5</code>. | where XX is a number from <code>01</code> to <code>10</code> (including leading 0) and Y is either <code>0</code> or <code>5</code>. | ||
|Sets the chart's star rating. | |Sets the chart's star rating. | ||
|- | |- | ||
|level_sort_index | | colspan="2" |level_sort_index | ||
|any number | |any number | ||
| | | | ||
|- | |- | ||
|script_file_name | | colspan="2" |script_file_name | ||
|path to the script file, relative to the folder the content is being loaded from: <code>rom/...</code> | |path to the script file, relative to the folder the content is being loaded from: <code>rom/...</code> | ||
|Specifies where the chart's [[DivaScript|script]] is located. | |Specifies where the chart's [[DivaScript|script]] is located. | ||
|- | |- | ||
|script_format | | colspan="2" |script_format | ||
|hex number representing the contents of the <code>.dsc</code>'s first 4 bytes | |hex number representing the contents of the <code>.dsc</code>'s first 4 bytes | ||
|Specifies the [[DivaScript#DSC Formats|script format]]. | |Specifies the [[DivaScript#DSC Formats|script format]]. | ||
|- | |- | ||
|version | | colspan="2" |version | ||
|any number | |||
| | |||
|- | |||
| colspan="3" |length | |||
|number of items in array for each difficulty | |||
|Sets the length for each difficulty. Usually set to <code>1</code> and only set to <code>2</code> for <code>extreme</code> entries that have Extra Extreme. | |||
|- | |||
| colspan="5" |disable_calc_motfrm_limit | |||
|bool | |||
| | |||
|- | |||
| rowspan="9" |disp2d | |||
| colspan="4" |set_name | |||
|string from the corresponding <code>aet_gam_pv###.bin</code> Aet Set. | |||
|Links an Aet Set to be called and displayed in the PV. | |||
|- | |||
| colspan="4" |target_shadow_type | |||
| | |||
| | |||
|- | |||
| colspan="4" |title_2d_layer | |||
| | |||
| | |||
|- | |||
| colspan="4" |title_end_2d_field | |||
| | |||
| | |||
|- | |||
| colspan="4" |title_end_2d_low_field | |||
| | |||
| | |||
|- | |||
| colspan="4" |title_end_3d_field | |||
| | |||
| | |||
|- | |||
| colspan="4" |title_start_2d_field | |||
| | |||
| | |||
|- | |||
| colspan="4" |title_start_2d_low_field | |||
| | |||
| | |||
|- | |||
| colspan="4" |title_start_3d_field | |||
| | |||
| | |||
|- | |||
| colspan="5" |edit | |||
| | | | ||
| | | | ||
|- | |- | ||
| colspan=" | |edit_chara_scale | ||
| | | colspan="4" |bool | ||
| | | | ||
| | | | ||
|- | |||
|edit_effect | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|edit_effect_low_field | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |- | ||
| | |effect_se_file_name | ||
| | | | ||
| | | | ||
| - | | | ||
| | | | ||
| | |||
| | |||
|- | |||
|effect_se_name_list | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |- | ||
| rowspan="3" |ex_song | | rowspan="3" |ex_song | ||
| rowspan="2" |'''''[ | | rowspan="2" |'''''[array index]''''' | ||
| colspan=" | | colspan="3" |chara | ||
| | | | ||
| | | | ||
|- | |- | ||
| colspan=" | | colspan="3" |file | ||
| | | | ||
| | | | ||
|- | |- | ||
| colspan=" | | colspan="4" |length | ||
| | |||
| | |||
|- | |||
| colspan="5" |eyes_base_adjust_type | |||
| | |||
| | |||
|- | |||
| colspan="5" |eyes_xrot_adjust | |||
| | |||
| | |||
|- | |||
| colspan="5" |eyes_rot_rate | |||
| | |||
| | |||
|- | |||
|frame_texture | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_a | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_b | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_c | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_d | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_e | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_type | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_a_type | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_b_type | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_c_type | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_d_type | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|frame_texture_e_type | |||
| | |||
| | |||
| | |||
| | |||
| | | | ||
| | | | ||
|- | |- | ||
| colspan="4" | | |hand_item | ||
| colspan="4" |'''''[array index]''''' | |||
| | | | ||
| | | | ||
|- | |- | ||
| colspan=" | | colspan="5" |hidden_timing | ||
|decimal number | |decimal number | ||
|Controls the [[Hidden Modifier]]. | |Controls the [[Hidden Modifier]]. | ||
|- | |- | ||
| colspan=" | | colspan="5" |high_speed_rate | ||
|decimal number | |decimal number | ||
|Controls the [[High Speed Modifier]]. | |Controls the [[High Speed Modifier]]. | ||
|- | |- | ||
| | | colspan="5" |is_old_pv | ||
|bool | |||
| | |||
|- | |||
|lyric | |||
lyric_en | lyric_en | ||
| colspan=" | | colspan="4" |'''''[lyric array index]''''' | ||
(3 digits, including leading 0's) | (3 digits, including leading 0's) | ||
|String containing the lyric. | |String containing the lyric. | ||
Each numbered lyric can be called in the [[DivaScript|PV script]]. | Each numbered lyric can be called in the [[DivaScript|PV script]] in any order. | ||
| - | | | ||
|- | |||
| rowspan="2" |mdata | |||
| colspan="4" |dir | |||
| | |||
| | | | ||
|- | |- | ||
| colspan="4" |flag | |||
| | | | ||
| | | | ||
|- | |- | ||
| Line 198: | Line 488: | ||
motion6P | motion6P | ||
| colspan=" | | colspan="4" |'''''[motion array index]''''' | ||
(2 digits, including leading 0) | (2 digits, including leading 0) | ||
| | | | ||
| | | | ||
|- | |||
| rowspan="2" |movie_list | |||
| colspan="3" |'''''[array index]''''' | |||
|name | |||
|path to a movie file, relative to the folder the content is being loaded from: <code>rom/...</code> | |||
| | |||
|- | |||
| colspan="4" |length | |||
|number of items is array | |||
| | | | ||
|- | |- | ||
| colspan=" | | colspan="5" |movie_file_name | ||
|path to a movie file, relative to the folder the content is being loaded from: <code>rom/...</code> | |||
| | | | ||
|- | |||
| colspan="5" |movie_pv_type | |||
|enum: [ONLY, ALTERNATELY, PARALLEL, EFFECT] | |||
| | | | ||
|- | |||
| colspan="5" |movie_surface | |||
|enum: [BACK, FRONT] | |||
| | | | ||
|- | |- | ||
| | |npr | ||
| | | colspan="4" |chara_lightness | ||
| | | | ||
| | | | ||
|- | |||
|osage_init | |||
| | | | ||
| | | | ||
| | | | ||
| | | | ||
| Line 223: | Line 528: | ||
| | | | ||
|- | |- | ||
| | | colspan="5" |pack | ||
| | |||
| | | | ||
|- | |||
| rowspan="13" |performer | |||
| rowspan="12" |'''''[array index]''''' | |||
| colspan="3" |chara | |||
|enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||
| | | | ||
|- | |||
| colspan="3" |costume | |||
| | | | ||
| | | | ||
|- | |- | ||
| | | colspan="3" |exclude | ||
| | | | ||
| | | | ||
|- | |||
| colspan="3" |fixed | |||
| | | | ||
| | | | ||
|- | |- | ||
| colspan="3" |item_back | |||
| | | | ||
| | | | ||
|- | |||
| colspan="3" |item_face | |||
| | | | ||
| | |||
|- | |||
| colspan="3" |item_neck | |||
| | | | ||
| | | | ||
|- | |- | ||
| colspan="3" |item_zujo | |||
| | | | ||
| | | | ||
|- | |||
| colspan="3" |pv_costume | |||
| | | | ||
| | |||
|- | |||
| colspan="3" |pseudo_same_id | |||
| | | | ||
| | | | ||
|- | |- | ||
| | | colspan="3" |size | ||
|enum: [NORMAL, PLAY_CHARA, PV_CHARA, SHORT, TALL] | |||
| | | | ||
|- | |||
| colspan="3" |type | |||
|enum: [VOCAL, PSEUDO_DEFAULT, PSEUDO_SAME, PSEUDO_SWIM, PSEUDO_SWIM_S, PSEUDO_MY_CHARA, GUEST] | |||
| | | | ||
|- | |||
| colspan="4" |num | |||
| | | | ||
| | | | ||
|- | |||
| colspan="5" |pre_play_script | |||
|bool | |||
| | | | ||
|- | |- | ||
| Line 257: | Line 593: | ||
| colspan="3" |file_name | | colspan="3" |file_name | ||
| | | | ||
| | |||
| | |||
|- | |||
|pv_item | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
| colspan="5" |pvbranch_success_se_name | |||
| | | | ||
| | | | ||
|- | |- | ||
|rank_board_id | |rank_board_id | ||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|remix_parent | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|resolution_scale | |||
| | |||
| | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
|resolution_scale_neo | |||
| | | | ||
| | | | ||
| Line 339: | Line 711: | ||
| | | | ||
|- | |- | ||
| | |song_name_reading_en | ||
| | |||
| | |||
| | | | ||
| | | | ||
| Line 348: | Line 719: | ||
| | | | ||
|- | |- | ||
| | | rowspan="9" |songinfo | ||
songinfo_en | |||
| colspan="4" |arranger | |||
|string | |||
| | | | ||
|- | |||
| rowspan="2" |ex_info | |||
| rowspan="2" |0 | |||
1 | |||
2 | |||
3 | |||
''[this is '''not''' a proper array]'' | |||
| colspan="2" |key | |||
|string | |||
| rowspan="2" |Used for custom songinfo credits. | |||
'''''ex_info isn't displayed in MM+ by default''''' | |||
|- | |||
| colspan="2" |val | |||
|string | |||
|- | |||
| colspan="4" |guitar_player | |||
|string | |||
| | | | ||
|- | |||
| colspan="4" |illustrator | |||
|string | |||
|'''''illustrator isn't displayed in MM+ by default''''' | |||
|- | |||
| colspan="4" |lyrics | |||
|string | |||
| | | | ||
|- | |||
| colspan="4" |manipulator | |||
|string | |||
| | | | ||
|- | |||
| colspan="4" |music | |||
|string | |||
| | | | ||
|- | |- | ||
| | | colspan="4" |pv_editor | ||
|string | |||
| | | | ||
|- | |||
| colspan="5" |sudden_timing | |||
| | | | ||
| | | | ||
|- | |||
|stage_param | |||
| | | | ||
| | | | ||
| | | | ||
| | | | ||
| | | | ||
| | | | ||
|- | |||
| rowspan="3" |title_image | |||
| colspan="4" |aet_name | |||
|string | |||
| | | | ||
|- | |- | ||
| colspan="4" | | | colspan="4" |end_time | ||
|number | |||
| | | | ||
|- | |||
| colspan="4" |time | |||
|number | |||
| | | | ||
|- | |||
| colspan="5" |use_osage_play_data | |||
|bool | |||
| | | | ||
|} | |} | ||
__FORCETOC__ | __FORCETOC__ | ||
Latest revision as of 18:16, 27 January 2026
Project DIVA games store general information about the PVs in a database file called pv_db.txt, located in the rom folder. The data inside is stored in plain text, meaning the file can be opened and edited using any text editor, such as Notepad.
For the later games (Project DIVA F2nd and Project DIVA X) the pv_db file is encrypted using DIVAFILE encryption. They need to be decrypted before editing.
Multiple pv_db databases can not be loaded sequentially. Instead, only the contents of the last loaded pv_db file gets parsed by the game, overwriting the entire base game pv_db as a result.
pv_db files can have a prefix in their file name to indicate a specific use case:
mdata_pv_db- Primarily used in Project DIVA Arcade Future Tone's MDATA system. It is also seen in games such as Project DIVA Mega Mix+, where it is used as the dlcpv_db.mod_pv_db- Custom prefix read by DivaModLoader for Project DIVA Mega Mix+ mods. The contents of eachmod_pv_dbgets loaded sequentially, in the mod load order. Entries pointing to the same PV slot get overwritten in load order.
Structure
[edit | edit source]Similarly to other plain text databases in Project DIVA, proprieties/keywords are separated by . and values are attributed to certain proprieties using =. All lines in the database need to be written in lexicographical order (a → z, 0 → 9 etc.) in order to be parsed correctly by the game.
Each entry in a pv_db begins by specifying the PV slot to which we can attach a propriety and attribute a value, like this:
pv_###.propriety=value
Example:
pv_268.date=202001001 (meaning pv_268 [Catch the Wave]'s date is 01 Jan 2020.)
Proprieties can also be chained or composed of arrays:
pv_268.songinfo.lyrics=kz
|
chained properties |
pv_268.lyric.001=Catch the wave君と
|
array properties |
List of valid pv_db keywords
[edit | edit source]All the keywords that can be used in pv_db are defined in the game's internal systems. Here is a table with all the keywords that can be used after pv_###.:
| Keywords and derived keywords | Valid values | Description | ||||
|---|---|---|---|---|---|---|
| another_song | name | |||||
| name_en | ||||||
| song_file_name | ||||||
| vocal_chara_num | enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET] (?) | |||||
| vocal_disp_name | ||||||
| vocal_disp_name_en | ||||||
| auth_replace_by_module | ||||||
| bpm | any number | BPM of the song. Not directly used in the game but required for loading the PV. | ||||
| chainslide_failure_name | ||||||
| chainslide_first_name | ||||||
| chainslide_sub_name | ||||||
| chainslide_success_name | ||||||
| chrcam | [array index] | chara | enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||
| id | ||||||
| name | ||||||
| org_name | ||||||
| length | ||||||
| chreff | [array index] | data | [array index] | name | ||
| type | enum: [AUTH3D, AUTH3D_OBJ] | |||||
| length | ||||||
| id | ||||||
| name | enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||||
| num | ||||||
| chrmot | [array index] | chara | enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||
| id | ||||||
| name | ||||||
| org_name | ||||||
| length | any number representing a date formatted like yyyymmdd
|
Date of the song's addition to the game. Not directly used in game but required for loading the PV. | ||||
| date | ||||||
| difficulty | attribute | extra | bool | |||
| original | bool | |||||
| slide | bool | Specifies if the chart has Slide notes in it. It also adds the slide icon in the Song Select Screen. | ||||
| easy
normal hard extreme encore |
[array index] | attribute | extra | bool | ||
| original | bool | |||||
| slide | bool | Specifies if the chart has Slide notes in it. It also adds the slide icon in the Song Select Screen. | ||||
| edition | any number | 1 sets the chart as "extra". Normally only used to set an additional extreme entry as Extra Extreme.
| ||||
| level | string formatted like PV_LV_XX_Y,
where XX is a number from |
Sets the chart's star rating. | ||||
| level_sort_index | any number | |||||
| script_file_name | path to the script file, relative to the folder the content is being loaded from: rom/...
|
Specifies where the chart's script is located. | ||||
| script_format | hex number representing the contents of the .dsc's first 4 bytes
|
Specifies the script format. | ||||
| version | any number | |||||
| length | number of items in array for each difficulty | Sets the length for each difficulty. Usually set to 1 and only set to 2 for extreme entries that have Extra Extreme.
| ||||
| disable_calc_motfrm_limit | bool | |||||
| disp2d | set_name | string from the corresponding aet_gam_pv###.bin Aet Set.
|
Links an Aet Set to be called and displayed in the PV. | |||
| target_shadow_type | ||||||
| title_2d_layer | ||||||
| title_end_2d_field | ||||||
| title_end_2d_low_field | ||||||
| title_end_3d_field | ||||||
| title_start_2d_field | ||||||
| title_start_2d_low_field | ||||||
| title_start_3d_field | ||||||
| edit | ||||||
| edit_chara_scale | bool | |||||
| edit_effect | ||||||
| edit_effect_low_field | ||||||
| effect_se_file_name | ||||||
| effect_se_name_list | ||||||
| ex_song | [array index] | chara | ||||
| file | ||||||
| length | ||||||
| eyes_base_adjust_type | ||||||
| eyes_xrot_adjust | ||||||
| eyes_rot_rate | ||||||
| frame_texture | ||||||
| frame_texture_a | ||||||
| frame_texture_b | ||||||
| frame_texture_c | ||||||
| frame_texture_d | ||||||
| frame_texture_e | ||||||
| frame_texture_type | ||||||
| frame_texture_a_type | ||||||
| frame_texture_b_type | ||||||
| frame_texture_c_type | ||||||
| frame_texture_d_type | ||||||
| frame_texture_e_type | ||||||
| hand_item | [array index] | |||||
| hidden_timing | decimal number | Controls the Hidden Modifier. | ||||
| high_speed_rate | decimal number | Controls the High Speed Modifier. | ||||
| is_old_pv | bool | |||||
| lyric
lyric_en |
[lyric array index]
(3 digits, including leading 0's) |
String containing the lyric.
Each numbered lyric can be called in the PV script in any order. |
||||
| mdata | dir | |||||
| flag | ||||||
| motion
motion2P motion3P motion4P motion5P motion6P |
[motion array index]
(2 digits, including leading 0) |
|||||
| movie_list | [array index] | name | path to a movie file, relative to the folder the content is being loaded from: rom/...
|
|||
| length | number of items is array | |||||
| movie_file_name | path to a movie file, relative to the folder the content is being loaded from: rom/...
|
|||||
| movie_pv_type | enum: [ONLY, ALTERNATELY, PARALLEL, EFFECT] | |||||
| movie_surface | enum: [BACK, FRONT] | |||||
| npr | chara_lightness | |||||
| osage_init | ||||||
| pack | ||||||
| performer | [array index] | chara | enum: [MIK, RIN, LEN, LUK, KAI, MEI, NER, HAK, SAK, TET, EXT] | |||
| costume | ||||||
| exclude | ||||||
| fixed | ||||||
| item_back | ||||||
| item_face | ||||||
| item_neck | ||||||
| item_zujo | ||||||
| pv_costume | ||||||
| pseudo_same_id | ||||||
| size | enum: [NORMAL, PLAY_CHARA, PV_CHARA, SHORT, TALL] | |||||
| type | enum: [VOCAL, PSEUDO_DEFAULT, PSEUDO_SAME, PSEUDO_SWIM, PSEUDO_SWIM_S, PSEUDO_MY_CHARA, GUEST] | |||||
| num | ||||||
| pre_play_script | bool | |||||
| pv_expression | file_name | |||||
| pv_item | ||||||
| pvbranch_success_se_name | ||||||
| rank_board_id | ||||||
| remix_parent | ||||||
| resolution_scale | ||||||
| resolution_scale_neo | ||||||
| sabi | play_time | |||||
| start_time | ||||||
| se_name | ||||||
| slide_name | ||||||
| slidertouch_name | ||||||
| song_file_name | ||||||
| song_name | ||||||
| song_name_en | ||||||
| song_name_reading | ||||||
| song_name_reading_en | ||||||
| songinfo
songinfo_en |
arranger | string | ||||
| ex_info | 0
1 2 3 [this is not a proper array] |
key | string | Used for custom songinfo credits.
ex_info isn't displayed in MM+ by default | ||
| val | string | |||||
| guitar_player | string | |||||
| illustrator | string | illustrator isn't displayed in MM+ by default | ||||
| lyrics | string | |||||
| manipulator | string | |||||
| music | string | |||||
| pv_editor | string | |||||
| sudden_timing | ||||||
| stage_param | ||||||
| title_image | aet_name | string | ||||
| end_time | number | |||||
| time | number | |||||
| use_osage_play_data | bool | |||||
