← all repositories
GDQuest/godot-steering-ai-framework

Steering behaviors for Godot, minus the scene-tree spaghetti

A GDScript framework that ports 1990s AI movement algorithms into Godot 2D/3D without forcing you to build a Rube Goldberg machine of nodes.

1.5k stars GDScript Agents
godot-steering-ai-framework
Velocity · 7d
+0.6
★ / day
Trend
steady
star history

What it does

This is a steering behaviors framework for Godot, written in GDScript. It gives you seek, flee, path following, group avoidance, leader following, and blended behaviors—then gets out of your way. You copy the addons/ folder into your project and wire the output into whatever physics body you already have: apply_impulse for RigidBody, move_and_slide for KinematicBody, or whatever else you’re using.

The interesting bit

Every class extends Godot’s Reference type, not Node. That means no invisible tangle of scene-tree nodes just to make an NPC walk around a rock. The framework is explicitly modeled on GDX-AI for LibGDX, which is a choice that values portability over novelty.

Key highlights

  • Works in both 2D and 3D without separate code paths
  • Covers individual behaviors (seek, flee, look at), blended behaviors, and group behaviors (avoid neighbors, follow leader)
  • Agent stores position, orientation, max speeds, and velocity; behavior calculates acceleration; you apply it
  • Demos included for learning
  • Documentation hosted separately on GitBook

Caveats

  • The README’s “How it works” section contains a typo (“you can contain that has to do with the AI’s movement”)—minor, but suggests the docs haven’t been tightened recently
  • Issue link in the README points to a different GDQuest repo (gdscript-docs-maker), which may confuse bug reporters
  • Godot 4 compatibility is unclear; the documentation URL references “Godot 3” in its path

Verdict

Worth a look if you’re building a Godot game with lots of moving entities and want steering logic that lives in code, not nodes. Skip it if you need a full decision-making or pathfinding stack—this handles frame-to-frame movement, not long-term planning.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.