-
Notifications
You must be signed in to change notification settings - Fork 6
Skin Config
Anthony Samms edited this page Jun 2, 2026
·
1 revision
skin_config.json is the master configuration file for a skin, located at Graphics/skin_config.json. It controls screen resolution, UI element positions, font sizes, and localised text strings.
{
"screen": {
"width": 1280,
"height": 720,
"options": {
"delay_score_addition": true
}
}
}The screen entry defines the skin's native resolution. All coordinates in texture.json files are relative to this resolution. When the game renders at a different resolution, positions are scaled automatically.
Most entries follow this structure (all fields are optional):
"key_name": {
"x": 100,
"y": 200,
"width": 300,
"height": 50,
"font_size": 26,
"text": {
"en": "English text",
"ja": "日本語テキスト",
"zh": "中文文本"
}
}| Field | Description |
|---|---|
x |
Horizontal position or offset in pixels |
y |
Vertical position or offset in pixels |
width |
Width constraint in pixels |
height |
Height constraint in pixels |
font_size |
Font size in points |
text |
Localised display strings (en, ja, zh) |
Text strings support {0}, {1}, … placeholders for runtime values (e.g. "Song {0}").
| Key | Description |
|---|---|
free_play |
"Free Play" label position and text |
hit_taiko_to_start |
"Hit the Taiko!" prompt |
indicator_text |
Navigation hint text |
song_num |
Current song number label |
song_box_name |
Song name text in the song box |
song_box_bg |
Song box background width |
song_box_bpm |
BPM display in the song box |
song_hori_name |
Horizontal song name |
song_tja_count |
TJA chart count display |
song_select_indicator |
Input indicator position |
song_select_chara_1p |
Player 1 character position |
song_select_chara_2p |
Player 2 character position |
song_select_nameplate_1p |
Player 1 nameplate position |
song_select_nameplate_2p |
Player 2 nameplate position |
song_select_offset |
Song list horizontal offset |
boxes |
Song box vertical offset |
box_texture |
Box texture position |
selector_offset |
Selector arrow offset |
selector_balloon_offset_1/2 |
Balloon selector offsets |
preimage |
Song preview image position and size |
song_timer |
Song preview timer bar |
| Key | Description |
|---|---|
entry_game |
"Game" menu option text |
entry_practice |
"Practice" menu option text |
entry_settings |
"Settings" menu option text |
entry_ai_battle |
"AI Battle" menu option text |
entry_costume |
"Costume" menu option text |
entry_cancel |
"Cancel" option text |
entry_question |
Player selection prompt text |
entry_costume_menu_1p |
Costume menu position for Player 1 |
entry_costume_menu_2p |
Costume menu position for Player 2 |
entry_costume_text |
Costume selection header text |
entry_overlay_title |
Entry overlay title offset |
entry_overlay_entry |
Entry overlay option offset |
entry_box_text |
Menu entry box font size |
entry_box_spacing |
Spacing between menu entries |
entry_box_text_offset |
Menu entry text vertical offset |
entry_box_highlight_offset |
Menu highlight horizontal offset |
entry_drum_offset |
Drum icon position |
entry_chara_offset_l/r |
Character offsets for left/right players |
chara_entry |
Character position on the entry screen |
nameplate_entry |
Nameplate position on the entry screen |
nameplate_entry_left |
Left player nameplate position |
nameplate_entry_right |
Right player nameplate position |
indicator_entry_left |
Left player input indicator position |
indicator_entry_right |
Right player input indicator position |
| Key | Description |
|---|---|
nameplate_text_padding |
Inner horizontal padding |
nameplate_title_offset |
Title text vertical offset |
nameplate_name_offset |
Name text vertical offset |
nameplate_dan_offset |
Dan rank icon horizontal offset |
nameplate_text_name |
Name text position and font |
nameplate_text_title |
Title text position and font |
| Key | Description |
|---|---|
indicator_face_offset |
Face icon horizontal offset |
indicator_kat_offset |
Rim hit icon offset |
indicator_don_offset |
Face hit icon offset |
| Key | Description |
|---|---|
notes |
Notes lane vertical offset |
moji |
Score/combo text position |
moji_drumroll |
Drumroll counter position and width |
drumroll_width_offset |
Drumroll bar width adjustment |
past_judge_circle |
Past judgement circle horizontal position |
balloon_offset |
Balloon note offset |
balloon_pause_position |
Balloon pause position |
game_nameplate_1p |
Player 1 nameplate position in-game |
game_nameplate_2p |
Player 2 nameplate position in-game |
game_2p_offset |
Vertical offset for Player 2's lane |
offset_2p |
Additional 2P layout offset |
gauge_hit_effect_note |
Gauge hit effect position and height |
drumroll_counter_margin |
Drumroll counter digit spacing |
kusudama_counter_margin |
Kusudama counter digit spacing |
combo_margin |
Combo digit spacing |
score_counter_margin |
Score digit spacing |
judge_counter_margin |
Judgement counter digit spacing |
judge_counter_1 |
Good judgement counter position |
judge_counter_2 |
OK judgement counter position |
judge_counter_3 |
Miss judgement counter position |
judge_counter_4 |
Full combo indicator position |
song_info |
Song info text position and font |
gauge_2p_offset |
2P gauge vertical offset |
practice_progress_bar_width |
Practice mode progress bar width |
| Key | Description |
|---|---|
dan_title |
Dan title text position |
dan_subtitle |
Dan subtitle text position |
exam_box_offset |
Exam pass/fail box offset |
exam_gauge_offset |
Exam gauge offset |
exam_counter_margin |
Exam counter digit spacing |
dan_yellow_box_offset |
Dan yellow box offset |
dan_level_counter_margin |
Dan level counter spacing |
dan_hori_name |
Dan horizontal song name |
dan_game_hori_name |
Dan in-game song name |
dan_result_nameplate |
Dan result nameplate position |
dan_result_chara |
Dan result character position |
dan_result_hori_name |
Dan result song name position |
dan_result_info_height |
Dan result info panel height |
dan_result_song_name |
Dan result song name position |
dan_result_diff_num_margin |
Dan result difficulty number margin |
dan_score_box_margin |
Dan score box digit margin |
dan_total_notes_margin |
Dan total notes counter margin |
dan_exam_info |
Dan exam info panel size and position |
dan_select_indicator |
Dan select input indicator position |
dan_select_chara_1p/2p |
Dan select character positions |
dan_select_nameplate_1p/2p |
Dan select nameplate positions |
total_notes_counter_margin |
Total notes counter digit spacing |
| Key | Description |
|---|---|
result_chara |
Character position on result screen |
result_nameplate |
Nameplate position on result screen |
result_flowers_offset |
Flowers decoration offset |
result_score_margin |
Score digit spacing |
result_2p_offset |
2P result vertical offset |
song_info_result |
Song info on result screen |
song_num_result |
Song number on result screen |
high_score_indicator_margin |
High score indicator spacing |
| Key | Description |
|---|---|
modifier_name_auto |
"Auto" modifier label |
modifier_name_speed |
"Speed" modifier label |
modifier_name_display |
"Display" (hidden notes) modifier label |
modifier_name_inverse |
"Inverse" modifier label |
modifier_name_random |
"Random" modifier label |
modifier_text_true |
"On" text |
modifier_text_false |
"Off" text |
modifier_text_kimagure |
"Kimagure" random option text |
modifier_text_detarame |
"Detarame" random option text |
modifier_text |
Modifier text position |
modifier_offset |
Modifier row vertical spacing |
modifier_offset_2 |
Second modifier layout offset |
option_p2 |
Player 2 option panel horizontal offset |
option_text_in |
Option text horizontal indent |
| Key | Description |
|---|---|
genre_bg_offset |
Genre background horizontal start |
genre_bg_offset_2 |
Genre background secondary offset |
genre_bg_offset_3 |
Genre background tertiary offset |
genre_bg_left_max |
Genre background leftmost clamp |
genre_bg_extra_distance |
Extra scroll distance and width |
genre_bg_folder_background |
Folder background position and width |
genre_bg_folder_background_folder |
Folder-mode background adjustment |
genre_bg_folder_edge |
Folder edge decoration offset |
genre_bg_title |
Genre title text vertical position |
yb_diff_offset |
Yose box difficulty offset |
yb_diff_offset_diff_select |
Yose box difficulty select offset |
yb_diff_offset_crown |
Yose box crown offset |
yb_name |
Yose box song name position |
yb_subtitle |
Yose box subtitle position |
song_folder_top |
Song folder top horizontal offset |
| Key | Description |
|---|---|
diff_sort_star_num |
Difficulty star number offset |
diff_sort_stat_num_star |
Stat mode star number offset |
diff_sort_margin_1/2/3 |
Difficulty sort digit margins |
diff_sort_offset |
Difficulty sort horizontal offset |
diff_sort_offset_2 |
Second difficulty sort offset |
score_info_bg_offset |
Score info background vertical offset |
score_info_counter_margin |
Score info counter margins |
| Key | Description |
|---|---|
neiro_text |
Hit sound name text position |
neiro_counter_margin |
Hit sound counter digit spacing |
| Key | Description |
|---|---|
transition_title |
Transition screen title position |
transition_subtitle |
Transition screen subtitle position |
transition_offset |
Transition vertical offset |
transition_chara_offset |
Transition character vertical offset |
timer_text_margin |
Timer text horizontal margin |
Building
libs
- animation
- audio
- config
- filesystem
- global_data
- input
- logging
- ray
- scores
- screen
- script
- song_parser
- text
- texture
- video
- webcam
libs/parsers
objects
objects/game
- player
- background
- gauge
- judgment
- combo
- branch_indicator
- ending_animations
- gogo_time
- fireworks
- song_info
- transition
- result_transition
- judge_counter
- score_counter
- score_counter_animation
- balloon_counter
- drumroll_counter
- kusudama_counter
- drum_hit_effect
- lane_hit_effect
- gauge_hit_effect
- combo_announce
- note_arc
objects/global
objects/title
objects/entry
objects/settings
objects/result
objects/song_select
- player
- navigator
- box_base
- box_song
- box_folder
- neiro
- modifier
- ura_switch
- diff_sort
- search_box
- dan_transition
- genre_bg
- score_history
- song_select_script
scenes