Skip to content

Latest commit

 

History

History
114 lines (89 loc) · 5.68 KB

File metadata and controls

114 lines (89 loc) · 5.68 KB

Kickdot

Kickdot for Godot 4.7+

Godot 4.7+ Version 0.1.0 MIT License Requires Synty Sidekick content

Note

Kickdot is in early development (0.x). Character assembly, colors, the editor dock, and facial animation are working and tested, but the API may still change. Back up your scenes.

Kickdot is a Godot editor plugin that turns Synty's Sidekick assets into a modular character creator inside the editor - pick a species, a preset outfit, and a part for every slot, shape the body with sliders, and repaint the palette, all on a real node in your scene that updates as you edit. Characters are stored as .sk files, the Sidekick character format, and every choice is driven by the official Sidekick metadata database.

Kickdot in the Godot editor

Installation

Kickdot is not on the Asset Library yet. Until then:

  1. Copy addons/kickdot into your project's addons/ folder.
  2. Enable Kickdot in Project -> Project Settings -> Plugins.
  3. Open the Sidekick dock and follow the setup panel.

That's the whole install. The setup panel handles the rest: it installs the godot-sqlite dependency if needed (asking for an editor restart), fetches the Sidekick base model and metadata database from Synty's public release, and imports the .unitypackage content packs you own. Then press New Character to add a character node to your scene and shape it live from the dock - species, parts, sliders, and colors all apply as you change them. There is no build step.

Requires Godot 4.7 or newer. Synty content is not included - you bring your own (see Licensing).

Tip

No content packs yet? Synty's Sidekick Modular Characters Starter Pack is free, and it's enough to create complete characters and try everything here.

This repository is the full development project (test scripts, render harnesses). The addon itself is entirely contained in addons/kickdot.

Features

  • Character assembly driven by the official metadata database: species, preset outfits, a picker per part slot, body sliders, wrap-slot automation, and randomize buttons, all filtered to the content packs you actually have.
  • Palette coloring with per-group presets and per-property swatches; edits repaint the character live, no rebuild.
  • An editor dock bound to the selected SidekickCharacter node, with proper undo/redo, and .sk files that round-trip losslessly.
  • Scenes stay small and editable: the node stores the recipe, generated meshes live once in a binary cache, and the skeleton survives rebuilds so animations keep working.
  • Facial animation: a SidekickFacialController node with an expression dropdown, 48 semantic sliders, a baked face pose/cycle AnimationLibrary, and .fcp preset round-trip.
  • Body animation: Sidekick-rig clips drop straight into an AnimationPlayer; other humanoid clips (Mixamo etc.) retarget with generated bone maps - see demos/animations/README.md.
  • Export as GLB, or bake to a static .scn/.tscn with the material baked in.

Project settings

Everything lives under Project Settings -> Kickdot.

Setting Default What it does
paths/asset_scan_root res://synty_assets Where Synty content is imported to and scanned from
paths/database res://synty_assets/db/side_kick_data.db The Sidekick metadata database
paths/base_model res://synty_assets/meshes/SK_BaseModel.fbx The shared rig
paths/textures_dir res://synty_assets/textures Base palette maps
paths/generated_cache res://addons/kickdot/cache Binary cache for generated meshes and baked data
build/combine_meshes false Merge all parts into a single mesh
build/combine_body_blend_shapes true Keep body blend shapes when combining
build/combine_facial_blend_shapes true Keep facial blend shapes when combining
build/own_generated_meshes true Show and save generated meshes in the scene tree
build/material_override (empty) Use your own material instead of the built-in shader
build/animation_library (empty) Animation library to attach to new characters
options/show_all_color_properties false Show color rows for cells the current parts don't use
options/show_missing_parts_warning true Warn when a recipe references parts you don't have

Tests

Test scripts live in tests/ (assembly checks, exports, retargeting, visual renders). Run any of them like:

godot --headless -s res://tests/smoke_test.gd --path .

Render tests need a window; drop --headless for those.

Licensing

The addon code is an original clean-room GDScript implementation, released under the MIT License.

Synty's meshes, textures, and metadata database are not included - they are covered by the Synty EULA. You need your own Sidekick licence to use this addon for anything.

godot-sqlite by 2shady4u is MIT-licensed and installed as a dependency.