Files
tekton/tools/README.md
T

51 lines
1.5 KiB
Markdown

# Tools
## rename_rig_in_glb.py
Renames the rig root node in each character GLB to a consistent name
(`Character`). This makes all characters share the same skeleton path
`Character/Skeleton3D:bone_name`, enabling a shared animation library.
```bash
python3 tools/rename_rig_in_glb.py
```
Modifies: `Bob.glb`, `Oldpop.glb`, `Masbro.glb`, `Gatot.glb`
- bob-rig → Character
- oldpop-rig → Character
- masbro-tpose → Character
- gatot-tpose → Character
Creates `.glb.bak` backups on first run. Re-runnable; restores from backup
each time to ensure idempotency.
After running, you must reimport in the Godot editor (or via
`godot --headless --import`).
## build_animation_pack.gd
Headless script that extracts all animations from `animation-0.glb`,
applies rest-pose correction against `Bob.glb` (the reference rig), and
saves as `assets/characters/animations/animation-pack.res`.
```bash
godot --headless --path . --script tools/build_animation_pack.gd
```
Run `rename_rig_in_glb.py` first so the reference skeleton has the
expected path.
The animation-pack contains 15 animations used by the player:
- idle, walk_forward, backflip_1
- take_tile_1, take_tile_2, drop_tile_1, drop_tile_2, spawn_tile_1
- pickup_1, put_1, holding_1
- hit_1, hitted_1, getting_hit_1, stun_1
All tracks use original Blender bone names with path
`Character/Skeleton3D:bone_name` so they resolve regardless of which
character model is active.
## generate_version_json.py
Generates version.json for game update checks.