Skip to content

Godot Steering AI Framework 2.0

Compare
Choose a tag to compare
@NathanLovato NathanLovato released this 11 Feb 19:46
· 33 commits to master since this release
v2.0.0

banner-fs8

The Godot Steering Toolkit is a framework to code complex and smooth AI movement in GDScript, using steering behaviors. It works in both 2D and 3D games.

Changelog

This release brings one new feature and bug fix, and breaking changes to the framework as we renamed all the classes.

Important: we renamed all classes from GST* to GSAI* (Godot Steering AI). When you upgrade the framework in your project, use the project search and replace feature in Godot (Ctrl Shift F) to find and replace GST with GSAI.

If you were using GSTKinematicBodyAgent or GSTRigidBodyAgent, search and replace them respectively with GSAIKinematicBody3DAgent and GSAIRigidBody3DAgent.

We decided to make this change as soon as possible, as the framework was released a few days ago.

Features

  • There is now a main scene with a demo picker, so you can select and play any demo on the fly.
  • The demo projects now support resizing and toggling fullscreen with F11.

Improvements

  • We handled all warnings in the framework, so using `it won't add warnings to your projects.

Changes

  • Renamed all classes from GST* (Godot Steering Toolkit) to GSAI* (Godot Steering AI).
  • Removed GSTNode2DAgent, GSTNodeAgent, and GSTSpatialAgent classes.
    • For specialized steering agents, GSAIKinematicBody2DAgent, GSAIRigidBody2DAgent, or their 3D equivalent.
    • If you intend to write your own movement system instead of using Godot's, the base class GSTSpecializedAgent is there to help you.
  • Renamed GSAIRigidBodyAgent and GSAIRigidBodyAgent to GSAIRigidBody3DAgent and GSAIRigidBody3DAgent respectively.
    • 3D nodes like Sprite, KinematicBody, etc. are being renamed to Sprite3D, KinematicBody3D, etc. in the upcoming Godot 4.0 release, to be consistent with 2D nodes. We decided to rename them now instead of breaking compatibility in a future release.

Bug fixes

  • GSTFollowPath no longer loops back around itself on open paths when predict_time is non-zero.

Getting Started

To get started, check out the framework's manual.

There, you can also find the full code reference.

Note: we generate the code reference from docstrings in the source code with GDScript Docs Maker.

There are many demos for you to play with and learn from in the project. We're also working on a more complete game, Harvester.

Contributing

If you encounter a bug or you have an idea to improve the tool, please open an issue.

Also, check out our contributor's guidelines

Support us

Our work on Free Software is sponsored by our Godot game creation courses. Consider getting one to support us!

If you like our work, please star the repository! This helps more people find it.

Join the community

  • You can join the GDQuest community and come chat with us on Discord
  • For quick news, follow us on Twitter
  • We release video tutorials and major updates on YouTube