Assets
Custom models
Original meshes and animations for towers and projectiles.
Start from the template
python tools/mod_model.py template mods/throwbot
python tools/modsdk.py build mods/throwbot/mod.py
Enable Throwbot and start a new game: a blue animated robot with a gold custom projectile and a release socket. Everything in it is original art; no game art is included.
Use a model
mod = Mod("my-mod", "My mod")
tower = mod.tower("robot", base="DartMonkey")
tower.model("robot")
tower.projectile(display=mod.model("bolt"), damage=3, pierce=4)
Put baked models in mods/my-mod/assets/robot/ and assets/bolt/; the folder name must match the mod ID.
tower.model reads the baked socket and applies the primary muzzle and release lead to every inherited upgrade tier.
Secondary weapons keep their original sockets.
Import an OBJ mesh
python tools/mod_model.py import robot.obj --texture atlas.png --out mods/my-mod/assets/robot --muzzle 4 8 6 --release 0.15
- Y up, +Z forward, feet at the origin, in game units (the starter is about 14 units tall).
--muzzle X HEIGHT FORWARDis the hand/barrel release point;--releaseis seconds into Attack.- Add
--attack frame01.obj frame02.obj …(identical topology and face order) to bake a throw, and--fpsfor the sample rate. - Without attack frames, the model aims and fires but has no throwing motion.
Bake a rigged Blender animation
blender --background robot.blend --python tools/blender_mod_model.py -- --out mods/my-mod/assets/robot --idle 1 60 --attack 61 90 --release 70 --texture atlas.png
- Blender is Z up, −Y forward.
- Add an Empty named
Muzzle, parented to the throwing hand or barrel. - Put the meshes to export in a collection named
RustTD6. - Rigs and modifiers are baked into vertex poses. Use one PNG atlas; Blender material shaders aren't imported. Keep topology stable.
At most 60,000 split vertices, 600 frames per clip and 128 MiB of uncompressed poses per model. Lower-poly models and fewer samples load faster.
Blender and Python never run during gameplay; meshes and poses go through the native renderer. Models don't add simulation behaviour: the cloned tower and weapon supply targeting and projectile rules. Custom models are local-only for now; co-op rooms reject custom-art mods with a clear message.