Kaiju-Agents-Utility
Kaiju-Agents-Utility is an extension designed to help developers create intelligent agents within the Kaiju Agents framework. It provides tools and a structured approach for building utility AI, enabling agents to make smart decisions based on their environment. This extension is particularly useful for game developers and AI researchers working with Unity. It simplifies the process of defining agent behaviors, assigning actions, and evaluating their effectiveness. The system allows for easy configuration of considerations and actions, providing a clear visual representation of utility scores. Developers can quickly prototype and iterate on agent behaviors, leading to more sophisticated and adaptive AI systems. The extension offers a streamlined workflow for creating and managing utility-based AI agents.
This agent solves the problem of creating complex, decision-making AI agents in Unity by providing a structured framework and tools for defining utility functions and actions. Instead of manually coding intricate decision logic, developers can use this extension to easily configure agent behaviors and observe their performance, significantly reducing development time and complexity.
CAPABILITIES & CONSTRAINTS
README
# Kaiju Agents Utility **Extension for creating utility AI with [Kaiju Agents](https://agents.kaijusolutions.ca "Kaiju Agents").** This extension provides to a means to create utility AI with [Kaiju Agents](https://agents.kaijusolutions.ca "Kaiju Agents") based on a [sample by git-amend](https://youtu.be/S4oyqrsU2WU "git-Amend - Utility AI: Mastering Smart Decisions in Unity!"). ## Overview 1. Create a class which extends from [`KaijuUtilityBrain`](https://utility.kaijusolutions.ca/api/KaijuSolutions.Agents.Utility.KaijuUtilityBrain.html "KaijuUtilityBrain") and attach it to your agent. 2. Override the [`KaijuUtilityBrain.UpdateBlackboard()` method](https://utility.kaijusolutions.ca/api/KaijuSolutions.Agents.Utility.KaijuUtilityBrain.html#KaijuSolutions_Agents_Utility_KaijuUtilityBrain_UpdateBlackboard "KaijuUtilityBrain.UpdateBlackboard()"), and use the set methods to assign blackboard variables. 3. Create actions by extending [`KaijuUtilityAction`](https://utility.kaijusolutions.ca/api/KaijuSolutions.Agents.Utility.KaijuUtilityAction.html "KaijuUtilityAction"). 4. Create instances of the new actions. 5. Create and configure considerations by right-clicking in the project and going to `Kaiju Solutions > Agents > Utility > Considerations`. 6. Assign considerations to their actions. 7. Assign actions to the created brain. 8. When playing, the utility scores of all actions can be seen in the inspector of the brain. ## Installation 1. [Install Kaiju Agents](https://agents.kaijusolutions.ca/#installation "Kaiju Agents Installation Instructions"). 2. In your Unity project, from the top menu, go to `Window > Package Management > Package Manager` and click the `+` icon in the top left followed by `Install package from git URL...`. 3. Paste in one of the below options: #### Latest Release - Recommended ```text https://github.com/Kaiju-Solutions/Kaiju-Agents-Utility.git#release ``` #### Specific Release Replace the `#release` in the latest release installation with the version number of the given [release](https://github.com/Kaiju-Solutions/Kaiju-Agents-Utility/releases "Kaiju Agents Utility Releases"). #### Development This will pull directly from the main branch, and is not recommended unless there is a specific feature needed not yet in the latest release. ```text https://github.com/Kaiju-Solutions/Kaiju-Agents-Utility.git?path=/Packages/com.kaijusolutions.agents.utility ``` #### Updating - **You should first [update Kaiju Agents](https://agents.kaijusolutions.ca#updating "Kaiju Agents Updating").** - **Important:** Kaiju Agents Utility and any other Git-installed packages in your Unity project will not appear as needing updates under the `Updates` tab, and hence why you need to manually choose to update. - **Recommended:** Delete all existing [samples and exercises](https://agents.kaijusolutions.ca/manual/samples-and-exercises.html "Samples and Exercises") from your project's `Assets` folder. - In Unity, from the top menu, go to `Window > Package Management > Package Manager` and select `In Project`. - Select `Kaiju Agents Utility` and click the `Manage` button followed by `Update`. ## Samples and Exercises A sample implementation has been provided for the ["Microbes"](https://agents.kaijusolutions.ca/manual/microbes.html "Microbes") exercise of [Kaiju Agents](https://agents.kaijusolutions.ca "Kaiju Agents"). To get started with this: 1. Import the ["Microbes" exercise](https://agents.kaijusolutions.ca/manual/microbes.html "Microbes") from [Kaiju Agents](https://agents.kaijusolutions.ca "Kaiju Agents"). 2. Import the "Box Destroyer" sample of "Kaiju Agents Utility". 3. Find the imported core [Kaiju Agents](https://agents.kaijusolutions.ca "Kaiju Agents") assets of the ["Microbes" exercise](https://agents.kaijusolutions.ca/manual/microbes.html "Microbes"). 4. Select the "Microbe" prefab and remove the "Microbe Controller" component. Add a "Microbe Brain" component, and add all "Actions" provided by the sample.
PUBLIC HISTORY
IDENTITY
Identity inferred from code signals. No PROVENANCE.yml found.
Is this yours? Claim it →METADATA
README BADGE
Add to your README:
