Files
DartGame/SOURCES.md

103 lines
3.8 KiB
Markdown

# Sources
Every binary artifact in this repo was exported from a source file in Nextcloud. This maps one
to the other.
**Nextcloud share:** `DartGame/sources/`
> ⚠️ **Keep this current.** It is the only thing linking the two halves of the project. A
> programmer looking at `dartboard.glb` has no other way to find out where it came from.
---
## Models
| Repo artifact | Nextcloud source |
|---|---|
| `game/core/board/dartboard.glb` | `sources/dartboard/dartboard.blend` |
| `game/core/dart/dart.glb` | `sources/dart/dart.blend` |
---
## Fallback textures
These live in `core/`, **not** `content/`. They're the defaults that ship with the mesh so the
board renders correctly with zero mods loaded. They are not skins.
The board has 21 material slots (`sector_1``sector_20`, `bulls`); the 20 sector materials share
the two `sector_*` images by default.
| Repo artifact | Nextcloud source |
|---|---|
| `game/core/board/dartboard_bulls.png` | `sources/dartboard/textures/default/bulls.kra` |
| `game/core/board/dartboard_sector_black.png` | `sources/dartboard/textures/default/sector_black.kra` |
| `game/core/board/dartboard_sector_white.png` | `sources/dartboard/textures/default/sector_white.kra` |
| `game/core/board/dartboard_flat_tire.png` | `sources/dartboard/textures/default/flat_tire.kra` |
| `game/core/board/dartboard_spider.png` | `sources/dartboard/textures/default/spider.kra` |
| `game/core/dart/dart_body.png` | `sources/dart/textures/default/body.kra` |
| `game/core/dart/dart_wings.png` | `sources/dart/textures/default/wings.kra` |
> The `dartboard_*` / `dart_*` prefixes are Godot's — it extracts the textures embedded in the
> `.glb` on import and names them after the model. Don't rename them; the materials reference
> them by that name.
---
## Skins — bulls
| Repo artifact | Nextcloud source |
|---|---|
| `game/content/official/skins/bulls/neon_hiero.png` | `sources/dartboard/textures/bulls_skins/neon_hiero.kra` |
## Skins — sectors
| Repo artifact | Nextcloud source |
|---|---|
| `game/content/official/skins/sectors/neon_hiero_black.png` | `sources/dartboard/textures/sector_skins/neon_hiero_black.kra` |
| `game/content/official/skins/sectors/neon_hiero_white.png` | `sources/dartboard/textures/sector_skins/neon_hiero_white.kra` |
## Skins — flat tire
| Repo artifact | Nextcloud source |
|---|---|
| `game/content/official/skins/flat_tire/ocean_fire.png` | `sources/dartboard/textures/flat_tire_skins/ocean_fire.kra` |
| `game/content/official/skins/flat_tire/toon_purple.png` | `sources/dartboard/textures/flat_tire_skins/toon_purple.kra` |
---
## Generated, not exported
These are produced **by Godot**, not by Blender or Krita. They have no Nextcloud source.
| Artifact | What it is |
|---|---|
| `game/core/board/dartboard_collision.res` | Trimesh (`ConcavePolygonShape3D`), 1358 faces. Generated from the `dartboard` mesh via Mesh → Create Collision Shape → Trimesh, then extracted from the `.tscn` with Shape → Save As. **~9 MB.** |
| `game/core/board/spider_collision.res` | Same, for the spider wire. |
> Regenerate these if the board geometry changes. They are **not** rebuilt automatically on
> re-export.
---
## Not yet exported
Sources that exist in Nextcloud but have no artifact in the repo yet.
| Nextcloud source | Destined for |
|---|---|
| `sources/dart/textures/wings/red_blue.kra` | `content/official/skins/flights/red_blue.png` |
---
## When you re-export
1. Export from the Nextcloud source
2. Drop the artifact into the repo path above
3. Commit the artifact **and its `.import` file** together
4. Update this file if anything new appeared
**Names must match.** `neon_hiero_black.kra``neon_hiero_black.png`. We drifted once already
(`purple_toon.kra` vs `toon_purple.png`) — that's exactly what this file exists to catch.
If a row is missing, the artifact has no traceable source. Add it, or find out why it exists.