GDQuest/godot-steering-ai-framework

Planning the first version: minimum viable product

NathanLovato opened this issue · 3 comments

The readme is still a little technical and outlines many features the framework could have.

To get started, we need to ensure that there are enough developers who want this tool to support its development. And to convince people that it's useful, we're going to create a minimum viable product.

This first milestone is the smallest package we can have that contains the essentials to start solving concrete problems Godot users, developers and designers alike, have.

To help us figure that out, I'd need:

  1. A short list of the most important general game design problems the framework can solve. A non-exhaustive ordered list, from the most to the least common problem.
    • This list will help set our focus, help us scope each version, and stay focused on solving problems that people actually have. Otherwise, we may end up with features that nobody will use.
    • It's also a list to help explain why this framework is useful to the game designers or developers, especially for people who have little exp with AI or have never heard of steering behaviors before.
  2. A proposal for a minimum viable product. What's the subset of features we need for a usable v0.1 that'll help people already? Everything that's not absolutely essential or really common should be counted out of this proposal. A [nested] list of feature names without description is enough for me.

From the MVP document:

System

  • Standard types
  • Combinations: Blended/Priority
  • Seek/Flee
  • Arrive
  • Pursue/Evade
  • Face
  • FollowPath
  • Separation
  • AvoidCollisions
  • Should work in 2D and in 3D

Demos

  • 1 toy demo for each behavior
  • 1 in context game demo that features at least two types of agents

Documentation

  • Getting started manual
  • Quick reference for the behaviors

Pushed the starting work once I got through my bugs with Godot, and the code is open for any reviewing/thoughts/comments.

We have everything for this, closing. The demo being a longer project, and as it has its own repo, let's track issues for it there