52 lines
3.6 KiB
Markdown
52 lines
3.6 KiB
Markdown
# YataiDON14
|
||
|
||
4:3, **960×720** YataiDON child skin (parent: **PyTaikoGreen**), a hybrid of two local
|
||
child skins. **Generated. Do not edit files here by hand**: edit the source skin, then
|
||
rebuild.
|
||
|
||
| part | source | how |
|
||
|---|---|---|
|
||
| boot/loading (`Graphics/loading`, `loading_progress_bar`) | YataiDONNantoka | ×1.5 |
|
||
| title / attract, entry (main menu / mode select), song select, settings, dan select, dan result, game over | **YataiDONJuuyon** | copied verbatim (already 960×720) |
|
||
| song transition ("進場": `Graphics/global/rainbow_transition`, `Scripts/global/transition.lua`, global animation ids 0–5) | **YataiDONNantoka** | ×1.5 |
|
||
| enso (`Graphics/game`, `Graphics/background`, `Scripts/game`, `Scripts/background`), which also covers dan and practice gameplay | **YataiDONNantoka** | ×1.5 |
|
||
| result (`Graphics/result`, `Scripts/result`) | **YataiDONNantoka** | ×1.5 |
|
||
| sounds: entry/title/song_select/settings + top-level `don.wav`/`ka.wav` (menu drums) | Juuyon | verbatim |
|
||
| sounds: game, result, hit_sounds | Nantoka | verbatim |
|
||
| Videos, LICENSE-juuyon.txt | Juuyon | verbatim |
|
||
|
||
"×1.5" means every PNG is LANCZOS-upscaled to `round(w*1.5) × round(h*1.5)`, and all
|
||
geometry is multiplied by 1.5:
|
||
* texture.json: `x, y, x2, y2`. `crop` is scaled too, but only when the PNG it cuts from was upscaled with it.
|
||
* animation.json: `total_distance, start_position, waypoint`.
|
||
* skin_config: `x, y, width, height, font_size`.
|
||
|
||
Durations, frame counts, alpha, sizes-as-ratios, `outline`, `game_gauge_cells` (a count) and
|
||
`game_gogo_fire_fade` (a flag) are left as they are.
|
||
|
||
Lua scripts are copied **verbatim**. Nantoka's Lua is written in 640×480 coordinates, so its
|
||
Lua-drawn parts are misplaced until those scripts become resolution-independent
|
||
(`K = screen_width / 640`).
|
||
|
||
## Shared-folder conflicts (resolved in the builder)
|
||
|
||
* `Graphics/global/overlay` comes from Juuyon, which hides the allnet indicator. Nantoka's version drew it at the bottom right.
|
||
* `Graphics/global/animation.json`: ids 0–5 (rainbow/transition, song text fade, result shutter) are Nantoka's ×1.5. All other ids come from the parent ×0.75, which is what Juuyon already gets by fallback.
|
||
* `Graphics/background/footer` comes from Juuyon, because `settings.cpp` draws it. Every other background subset is Nantoka's. Juuyon's `background/renda` and enso backgrounds are dropped.
|
||
* `Scripts/global`: `transition.lua` and `result_transition.lua` are Nantoka's. `timer.lua` (song select) is Juuyon's.
|
||
* `Sounds`: `hit_sounds/` is Nantoka's (in-game drum). The top-level `don.wav`/`ka.wav` (menu drum) are Juuyon's.
|
||
* `skin_config.json`: `screen` is Juuyon's, except that the enso/result options (`delay_score_addition`, `dan_game_rank_plate`, `combo_color_tiers`, `gauge_cell_fade_in`) are Nantoka's. The per-key owner table is `KEY_OWNER` in the builder. A game key that only Juuyon defines (`game_branch_indicator_y_offset`) is dropped, so it falls back to the parent (×0.75, the same as Nantoka's own fallback ×0.5 scaled by 1.5).
|
||
* Patch applied to this copy only: Juuyon's `song_select.lua` `draw_selector` sets the Lua global `NK_SELECTED_DIFF`, which Nantoka's transition iris reads for its per-course colour.
|
||
|
||
## Rebuild
|
||
|
||
```
|
||
python D:/YataiDON_agents/yd14/build_yd14.py # wipes and regenerates this folder
|
||
python D:/YataiDON_agents/yd14/build_yd14.py --no-cache # also re-upscales every PNG
|
||
```
|
||
|
||
A new skin_config key in either source stops the build until it gets an owner in `KEY_OWNER`.
|
||
|
||
Credits: juu-yon art (太鼓さん十四, MIT, see LICENSE-juuyon.txt) via YataiDONJuuyon;
|
||
taikonantoka theme art via YataiDONNantoka. Local only.
|