Tooling & Editor Strategy - FatherNoTimeGames/JRPG-Classless GitHub Wiki

Tooling & Editor Strategy

Chosen Direction

We are using Option A: Godot Editor tooling.

The game will not include a runtime editor for the player. Instead, all authoring happens inside the Godot Editor using:

  • Custom Resource types.
  • @export variables.
  • Custom Editor plugins where needed.
  • Potentially custom docks, inspectors, or graph-style tools later.

Planned Tooling Areas

1. Skill Builder

Used to create skills from modular effect blocks.

2. Discipline and Ability Editor

Used to define classless progression categories.

Each ability entry should define:

  • Name.
  • Description.
  • Icon.
  • Unlock threshold.
  • Skill point cost.
  • Granted skill, passive, or modifier.
  • Optional proficiency bonus multiplier.

Current direction:

  • Purchased abilities grant a +20% proficiency bonus when used.

3. Core Stat and Weapon Scaling Editor

Used to define:

  • Core stats.
  • Stat responsibilities.
  • Weapon scaling splits.
  • Default 70/30 behavior.
  • Special weapon overrides.

4. Global Stat Growth Editor

Used to define:

  • Base stat influence.
  • Growth curve.
  • Diminishing returns.
  • Per-level growth preview.
  • Character-specific growth profiles.

5. Party Generator Editor

Used for the final random party generation system.

This tool should allow:

  • Generation of four random characters.
  • Rerolling individual characters.
  • Allocating starting stats.
  • Changing starting equipment.
  • Previewing starting archetype tendencies.

For the first version, this tool may only be used to create fixed predefined characters.

6. Mission Structure Editor

Used to define mission layouts:

  • Total encounters.
  • Boss positions.
  • Safe room positions.
  • Difficulty curve.
  • Loot tables.
  • Shop rules.
  • Retry/checkpoint behavior.

7. Enemy Builder

Used to define enemy archetypes and procedural variants.

Because enemy visuals are planned to come from hand-made model pools, this editor should separate:

  • Visual identity.
  • Stat identity.
  • Skill identity.
  • Affix identity.

8. Encounter Table Editor

Used to define how encounters are generated.

9. Loot and Affix Editor

Used to define procedural item generation.

10. Battle Camera Preset Editor

Used to define camera positions and transitions for combat.

11. Input Configuration

Godot’s built-in InputMap will be used for controller, keyboard, and touch-friendly UI actions.

Prototype input configuration should be tested across:

  • Keyboard.
  • Controller.
  • Touch.
  • Portrait orientation.
  • Landscape orientation.

Tooling Philosophy

Start with native Godot inspectors.
Only build custom editor UI when the workflow becomes painful.

Related pages: