Edit of asset "Utility AI (GDExtension)" Accepted

Old/Current New/Edit
Title Utility AI (GDExtension)
Description A set of nodes for making AI agents, with support to utility-based behaviour and state selection. Created using GDExtension and C++.

The extension contains:
- Utility-based AI Agent Behaviour nodes
- Utility-enabled Behaviour Tree nodes (can also be used as a regular behaviour tree)
- Utility-enabled State Tree nodes for hierarchical state management
- Node Query System for generalized Utility-based node queries, with time-budgeting

Binaries available for Windows and Linux. Web/Wasm and (unsigned) MacOS binaries are also included and are currently experimental.

The linked github release zip-file contains only the gdextension files. Please download the example project as a separate zip-file from the Releases page or using this direct link: https://github.com/JarkkoPar/Utility_AI_GDExtension/releases/download/v1.6/utility_ai_example_project_1.6.zip

The Utility AI GDExtension contains utility-based nodes for creating AI Agent Behaviours and a generalized Node Query System for performing "find top N nodes" queries. The Agent Behaviour, State Tree and the Behaviour Tree nodes can be used to create AI agents to your games, and the Node Query System to add searching and ranking of any type of node to find, for instance, the best tile to move to, the best cover point to take, the best buff to use, etc. The Node Query System has a time budgeting feature, which will spread out the queries to several frames when the given per-frame time budget is reached (i.e. it will keep your FPS up even with heavier queries).

To get started, open the included example project. It contains examples that will help you learn to use the nodes:
- Example 1 is a simple example with an AI agent that has very simple behaviours to follow the mouse cursor.
- Example 2 is a more elaborate example with an AI agent that has multiple behaviours and has two AI teams fighting for their lives.
- Example 3 shows a better way of using actions to make your actions more re-usable between AI agents.
- Example 4 shows how to use the UtilityAIArea2DVisibilitySensor to let your AI see and hear player actions in the game world.
- Example 5 shows how to use the Behaviour Tree nodes with the Node Query System, and demonstrates the time budgeting feature.
- Example 6 is a 3D example that shows how to create a simple cover system and an AI that tries to hide behind cover, using the AI Agent Behaviours, Behaviour Tree nodes and the Node Query System.

This repository contains the binaries and example project only. If you want the source code, follow the link in the readme.md to the source code repository.

Tutorials can be found here: https://github.com/JarkkoPar/Utility_AI_GDExtension/tree/main/tutorial

Full release notes for the latest release can be found here: https://github.com/JarkkoPar/Utility_AI_GDExtension/releases/tag/v1.6
A set of nodes for making AI agents, with support to utility-based behaviour and state selection. Created using GDExtension and C++.

The extension contains:
- Utility-based AI Agent Behaviour nodes
- Utility-enabled Behaviour Tree nodes (can also be used as a regular behaviour tree)
- Utility-enabled State Tree nodes for hierarchical state management
- Node Query System for generalized Utility-based node queries, with time-budgeting

Binaries available for Windows and Linux. Web/Wasm and (unsigned) MacOS binaries are also included and are currently experimental.

The linked github release zip-file contains only the gdextension files. Please download the example project as a separate zip-file from the Releases page or using this direct link: https://github.com/JarkkoPar/Utility_AI_GDExtension/releases/download/v1.6/utility_ai_example_project_1.6.zip

The Utility AI GDExtension contains utility-based nodes for creating AI Agent Behaviours and a generalized Node Query System for performing "find top N nodes" queries. The Agent Behaviour, State Tree and the Behaviour Tree nodes can be used to create AI agents to your games, and the Node Query System to add searching and ranking of any type of node to find, for instance, the best tile to move to, the best cover point to take, the best buff to use, etc. The Node Query System has a time budgeting feature, which will spread out the queries to several frames when the given per-frame time budget is reached (i.e. it will keep your FPS up even with heavier queries).

To get started, open the included example project. It contains examples that will help you learn to use the nodes:
- Example 1 is a simple example with an AI agent that has very simple behaviours to follow the mouse cursor.
- Example 2 is a more elaborate example with an AI agent that has multiple behaviours and has two AI teams fighting for their lives.
- Example 3 shows a better way of using actions to make your actions more re-usable between AI agents.
- Example 4 shows how to use the UtilityAIArea2DVisibilitySensor to let your AI see and hear player actions in the game world.
- Example 5 shows how to use the Behaviour Tree nodes with the Node Query System, and demonstrates the time budgeting feature.
- Example 6 is a 3D example that shows how to create a simple cover system and an AI that tries to hide behind cover, using the AI Agent Behaviours, Behaviour Tree nodes and the Node Query System.

This repository contains the binaries and example project only. If you want the source code, follow the link in the readme.md to the source code repository.

Tutorials can be found here: https://github.com/JarkkoPar/Utility_AI_GDExtension/tree/main/tutorial

Full release notes for the latest release can be found here: https://github.com/JarkkoPar/Utility_AI_GDExtension/releases/tag/v1.6
Category Scripts
License MIT
Repository Provider GitHub
Repository Url https://github.com/JarkkoPar/Utility_AI_GDExtension
Issues Url https://github.com/JarkkoPar/Utility_AI_GDExtension/issues
Godot version Godot 4.1
Version String 1.6 1.6
Download Commit 218073e2e64ff68add0bd25640107d01a8bf3d49 218073e2e64ff68add0bd25640107d01a8bf3d49
Download Url (Computed) https://github.com/JarkkoPar/Utility_AI_GDExtension/archive/218073e2e64ff68add0bd25640107d01a8bf3d49.zip https://github.com/JarkkoPar/Utility_AI_GDExtension/archive/218073e2e64ff68add0bd25640107d01a8bf3d49.zip
Icon Url https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/utility_ai.png
Preview Update
Type image
Image/Video URL https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_1.png
Thumbnail https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_1.png
Preview Update
Type image
Image/Video URL https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_2.png
Thumbnail https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_2.png
Preview Update
Type image
Image/Video URL https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_4.png
Thumbnail https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_4.png
Preview Update
Type image
Image/Video URL https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_6.png
Thumbnail https://raw.githubusercontent.com/JarkkoPar/Utility_AI_GDExtension/main/screenshots/example_6.png