Skip to main content

Log

Patch 0.8.5

  • fix: sorted issues with houses duplicating each agent in resident list
  • fix: sorted issues where agents might not spawn if bespoke agents are…
  • enhance: code cleaning and typo
  • fix: add animation system selector check back in
  • feat: added in check for if agent is holding anything within using slots
  • fix: issue where animation selection groups were not saved
  • enhance: added in check for if hands are empty (all item filter set to null)
  • enhance: added ability to set custom rotate animations using animations sets
  • fix: sorted issue with animation editor not closing on creating a new trigger
  • fix: sorted issue with new trigger not updating label
  • fix: updated condition to check right ownership group (personal to self)
  • enhance: added wiki link (found in CIVIL-AI-SYSTEM -> Help -> Wiki)

Patch 0.8.4 (20/01/25)

  • Enhance: mounting system setup
  • Enhance: includes seating system (has mount from slot, dismount to slot and seat teleporting)
  • Enhance: Custom editor for Mount Service
  • Enhance: Custom editor for Seat Service
  • Enhance: Aligned naming's (NPC removed and replace with Agent)
  • Fix: resolved the issue with building positions not supporting more than one agent even if more than one agent should be
  • Fix: solved issue of animation being interrupted on endpoint length 'Point' mode
  • Fix: sorted issue with poolEntryRequirements throwing when creating new pool entries (Character pool should be easier to work with)
  • Fix: resolved issue with buildings not being allowed to add scene items to owned list
  • Fix: sorted issue where bespoke agents are counted twice
  • Chore: updated license to cover some 'resource' files

Patch 0.8.3 (07/01/25)

  • Bugfix: Sorted Item 'Reserved' being ignored on locating items where appropriate
  • Bugfix: Sorted display issue with population region inspector at runtime
  • Bugfix: Sorted issue with items not properly being ‘reserved’ and set ‘in use’ by agents
  • Bugfix: Sorted issue with building projects
  • Enhance: Added Custom inspector for Character pool
  • Enhance: Added Custom inspector for Character pool Service
  • Enhance: Added Custom inspector for Character pool Workplace requirement
  • Enhance: Added support for requirements in Character pool entries
  • Enhance: Added validation check before setup of bespoke agents at runtime (this should stop them from being runtime issues if there is a problem, warning will be produced in console)
  • Enhance: Clean up of some naming and general code quality
  • Enhance: Added default Agent template which is used to populate character pool data entries
  • Enhance: Added default Character Pool Data
  • Enhance: Improved default pool id selection with real time updating the editor (delete the current default, will switch to a valid option)

Patch 0.8.2 (25/12/24)

  • enhance: Added in Dynamic Getting Started Help Window
  • enhance: Added Getting Started support for example scene
  • enhance: Added Getting Started support for new scenes
  • enhance: Added Getting Started support for Behaviour Tree Editor
  • enhance: Added current action display for agent inspector
  • enhance: Added Behaviour Tree candidates list for agent inspector
  • enhance: Added Behaviour Tree display (work and needs) for agent inspector
  • enhance: Added Needs being displayed for agent inspector
  • enhance: Added formatting system
  • enhance: Added pause system (classes which are pausable inherit IPausable interface, when subscribed to a pause class when that class is paused it propagates)
  • enhance: Added pause button to agent inspector
  • enhance: Add handling of workplace having no work roles
  • enhance: Added warning for workplace having no work roles
  • enhance: Added early error on play if work behaviour is missing
  • enhance: Added menu handling if no work behaviour is set
  • enhance: Added the ability to set 'time of day' and 'day' within the module settings menu
  • enhance: Made setup between different pipelines with example scenes more straightforward (use the correct package in the file to have it automatically applied)
  • bugfix: Fixed issue with copying empty work roles
  • bugfix: Fixed issue ordering of needs weighting

Patch 0.8.1 (06/12/24)

  • Custom Menu for Bespoke Agent setup (Add to the scene, have an animator setup and add the 'BespokeAgent' component)
  • Set time of day and day within the module settings
  • Fixed errors shown at runtime when clicking on an agent
  • Suppressed infrequent runtime error (will be looked into further, issue might change timing of agent slightly)
  • Population Regions now respect the character pool assigned for them to use
  • Removed runtime issue with empty entries within character pools
  • Fixed bug within Module settings menu

Minor 0.8.0 (29/11/2024)

  • Created dedicated animation system
  • Created Ownership service to manage agent items access
  • Merged buildings to have common type (easier api usage and mangement)
  • Add agent building relationship system to allow for more complex types
  • Test coverage massively increased to improve update confidence and speed (80 to 275)
  • New version of Node Groups (now called Behaviour Trees)
  • Renamed Job System to Work System
  • File structure improved
  • Behaviour Tree elements and UI elements separated out
  • Shortcut Menu grouping has been updated and easier to use
  • Updated Behaviour Trees all use dictionaries (improved performance)
  • Created Building UI to allow for easier and better experience
  • Reset system for building system
  • Created new mapping system for actions and naming (allow for future expansion of the system)
  • Common Engine for processing Behaviour Tree systems
  • Created Module System (Create settings which can be loaded in and out easily)
  • Renamed Civil Region to Population Region Service
  • Created Region Service which handles an ‘area’ of the world (can be created with any collider/s)
  • Created custom UI for Population Region service (includes details such as max population size, calculated in real time)
  • Setup a Unity utility process which improves consistency of the product
  • Cleaner and quicker Behaviour Tree loading and setting system (no more recompiling)
  • Created common id creation process and interface
  • Created custom Enumerator Service which allows for any script to run coroutines
  • Created character pool service (these can have more than one character pool group which can have as many gameObjects for your agents as you want)
  • Setup a Time service which handles time and days, easily accessible from the module service
  • Spawn Service which will support more than one type of world placement of agents (currently only support random)
  • Created general orchestrator service which can take any process (both need, work and rendering run through this single class now)
  • Added easier bespoke agent setup, add a class; drag the two buildings needed and select the job type
  • Nearly everything now has tooltips (excluding some older menus and behaviour tree)
  • Added an eventing system for agents instead of continues checking and updating system
  • Created an applicator pattern; agents now have classes to apply effects to them (movement, rotation etc) to allow for more expendability and options going forward
  • Building zones are now expanded, centre can be set at present with more options coming soon
  • Created fully support version upgrading (way easier to implement and will allow going forward updates from x versions back rather than current - 1)
  • All objects within the system are now stored in repository services, this means less in world costly calculations which should improve performance
  • Better interfaces between all systems, easier to add your own code or to use existing classes
  • Lots more smaller changes

Patch 0.7.1 (06/06/24)

  • fix: Sorted out AnimationGroup objects that were broken
  • fix: Disabled Requirement System from setup on Method nodes

Minor 0.7.0 (20/02/24)

  • enhance: Added ability to trigger interaction once per a 'use' loop
  • enhance: Added in the ability to trigger animations on Items when used
  • enhance: Added in 'Handle point' on Items which can be used to offset the item to help with positioning when they are used
  • fix: Removed bug from WorkController when Need System is not enabled
  • enhance: Added in animation 'collection' system (can have an array of animations for each action)
  • enhance: Added in animations being able to have a 'start', 'middle' and 'end' animation
  • enhance: Added in the ability to smooth rotate agents
  • enhance: Added in the ability to have an animation play on rotating of agents
  • enhance: Added in idle, run and rotate animation setting through a interface within the editor
  • enhance: Added in the ability to change idle, run and rotate animation at runtime
  • enhance: Added in the ability to have base animations change based on conditions and triggers
  • enhance: Added in the concept of 'Animation Groups'
  • enhance: Added in the ability to have agent speeds be different (setting within the global settings which is a +/- applied - i.e. 0.2 will be -0.2 and +0.2 range from the speed setting)
  • enhance: Added in an inventory system; agents can now carry as many items as you wish
  • enhance: Added in the 'Slot' system; visual show items on your agents
  • enhance: Added in the 'reserve' system, this acts like the 'In Use' from before
  • fix: changed 'In Use' to be when the agent is actually using the item
  • enhance: Improved item deleting; items should only ever be deleted using the AIOrchestator
  • enhance: Tidied demo scenes
  • enhance: Added in versions for Node Groups for updating
  • enhance: Added in three different action length modes; free (animation based), range (between two points) and set (hard cut off)
  • enhance: Added in animation set creation at runtime having two different modes: Order (works down the group)and Random (Any set of animations)
  • enhance: Added the ability to have rigid animation sets or mix and match across groups
  • enhance: Added in a UI library for the editors to allow for better consitency and end user experince
  • enhance: Added in an auto updater, simply copy your resource file across and on start up you will be prompted to update, nothing else needed

Patch 0.6.1 (24/11/23)

  • fix: Updated Pickup action to check if item is already in inventory
  • fix: Added in check for if item is in inventory on Locate Actions
  • enhance: Added in auto box collider on objects that need colliders if missing
  • fix: Fixed Weighting of Weighting Job Node Groupfix: Fixed Weighting of Weighting Job Node Group
  • chore: Removed 'Basic Setup' scene to help with onboarding
  • enhance: Added in text on Example Scene to help understanding of Scene
  • fix: Removed delay on startup for AI Agents

Minor 0.6.0 (13/11/23)

  • Added in out of box setup for A* Pathfinding Project (https://assetstore.unity.com/packages/tools/behavior-ai/a-pathfinding-project-pro-87744)
  • Added in out of box setup for Agent Navigation (https://assetstore.unity.com/packages/tools/behavior-ai/agents-navigation-239233)
  • Flowchart Editor now has SaveAs and Save actions (Save will save to the current project as SaveAs will allow you to create a new and name it)
  • Improved Flowchart Editor toolbar, enabling and disabling of buttons as they are applicable
  • Updated To Unity Version 2022.3.7f1
  • Improved Naming in Flowchart Editor to be more consistent (SaveAs popup name is now Save instead of export for example)
  • Fixed bug where 'Import' option in flowchart editor would show each entry more than once
  • Improved performance of Flowchart Editor by removing unneeded reloads and Asset Database saving triggers (edited)
  • Fixed Bug with 'InOrder' Iterator which would happen after long runtimes (3hrs+)
  • Fixed Issues where Settings would sometimes not save

Minor 0.5.0 (30/08/23)

  • Added in Bespoke NPCs, these are characters placed by the developer and will be linked into the Civil AI System
  • Fixed bug with Mounting Action (Now any item can be mounted, item selection on the action defines what item)
  • Handled errors within parts of the Editor Windows
  • Created from the Ground up the Flowchart system with some quality-of-life improvements
  • Flowchart Graph performance and scale has been massively improved
  • Flowchart Graph Import function added, design node groups separately on a smaller scale and experiment more easily, when done just add them into your larger setup
  • Flowchart Graph scaling and resizing improved
  • Flowchart Graph Nodes restructured to have a better flow when creating
  • Flowchart Graph on Save now automatically sets the Data up on save
  • Flowchart Graph Switching between types is now quicker and easier, no need to reload the last one
  • Flowchart Graph Styling is more in keeping with Unity and easier to understand
  • Flowchart Graph has been designed in a more modular way making future additions easier

Patch 0.4.3 (14/06/23)

  • Fixed issues with animations
  • Fixed error with Global Civil Manager
  • Removed some error warnings from unity on setup of flowchart system

Patch 0.4.2 (07/06/23)

  • Fixed Example Scene (Sawmill zone was incorrect)
  • Cleaned up SetAppliedActionRequirement function

Patch 0.4.1 (24/05/23)

  • Fixed issue with Auto Scene Setup

Minor 0.4.0 (15/05/23)

  • Performance Gains (In testing we saw 18%-41% average fps impovements - Dependent on scenario)
  • Refactoring to allow for easier switch to ECS when it is available
  • NPC culling based on range from Camera
  • Orchestrator system allowing for more control over when updates run
  • Dynamic NPC update rates (E.g., further from camera characters get less updates)
  • Improvements to allow for Off screen simulation support (items and npcs positions are stored within the orchestrator)
  • Performance based Example scenes
  • New Settings screen to fine tune the asset for your needs
  • Max batching of NPCs to provide a smoother experience
  • Fixed bug with switching of controllers
  • Fixed bug with rolling back of iterators
  • Added in support of custom Actions (Pass in an action object and flag as custom, this will allow for the action to be done but not progress any iterators)
  • Added in a new action ‘LOCATION_ENTRANCE’, dependent on the controller called from will either make the NPC go home or to their workplace
  • Major improvements to locating of objects making most actions cheaper to perform
  • Render control component to allow for easy stopping of rendering of objects

Patch 0.3.2 (28/02/23)

  • Interactor custom editor Interface
  • Interactor has new behavior allowing for spawning of items based on an item becoming used or not
  • Renamed Manager to 'Overview Manager' for better clarity
  • Added new option for exporting in AI Flowchart allowing for exported group to also be setup and ready for use in the scene
  • Added Local workplace work time which can overwrite node job work times
  • Added the ability to allow job types to not need to head to workplace entrance on start of their job
  • Fixed Random point within zone action bug
  • Updated file system to support both MacOS and Windows
  • Updated Overview Manager (was called Manager) to have scroll bars
  • Fixed spelling mistake in Civil manager
  • Fixed ownership system throwing null exceptions in some circumstances
  • Added Discord link within the Overview Manager
  • Added Settings system to allow for more settings within CIVIL-AI-SYSTEM
  • Added NavMeshAgent interface which allows for easier setup of Nav systems (feel free to reach out if you setup your own for packages and I can include them in future updates for all)
  • Added Settings section within Overview Manager which allows for setup of Nav Agent

Patch 0.3.1 (13/02/23)

  • Fixed issue with assigning max resident on houses

Minor 0.3.0 (01/02/23)

  • Added in the Need System – define what your NPCs need and how to achieve it with no need to code
  • Global Weighting System – Allow for granular weight of actions across controllers allowing you the designer to say which action is most important between work and needs
  • Local Weighting System – Allow weights to be set on each node within a level allowing for more control (Includes two new weighting iterators)
  • Overhauled and Rebuilt Ownership system –Items can now be owned by houses, workplaces and NPCs and each action can be defined to use these item pools as well as local area.
  • Improved Demo Scene to create and assign layers if they are missing so no need to setup anything on import (It is still recommended to use the ‘Fix Scene’ action in the Manager)
  • Added Item Interactor – Easy enable and disable other objects based upon if an object is in use or not
  • Type field added to Item – Group objects based upon their type, these can be used within the actions in the designer
  • Some refactoring allowing for future development work
  • Removed the need for the Global Civil Manager class
  • Improved loading of Civil Data
  • Added in Initial version of Room System – Used to assign personal objects to NPCs
  • Updated Editor Manager to improve usability and readability by having more defined styling and adding in tooltips
  • Optimizations to item discovery
  • Fixed issue with entrance points having problems with prefabs in some cases
  • Improvements to Prepopulation system making it more reliable

Minor 0.2.0 (05/12/22)

  • Created a common base for all nodes within the runtime version (An auto Updater is included)
  • Added in Job System folder in Resource folder
  • Added Iterator Support for all levels of nodes (Includes InOrder, Random, RandomUnique, UntilFail & UntilRequirementMet)
  • Fixed error with node selection that could sometimes happen at runtime
  • Added support for updating each loop for position
  • Improved Testing
  • Simplification of Work Controller
  • Removed Errors that could sometimes appear when using the AI flowchart

Patch 0.1.3 (17/11/22)

  • Added in support to remove prepopulation
  • Fix issue with work data missing on load if using prepopulation feature
  • Improved Readme with easy to click link for useful documentation
  • Improved data saving on Houses
  • Fix issue with NPC's being able to find disabled items

Patch 0.1.2 (17/10/22)

  • Fixed issue with Building project - Added '#if UNITY_EDITOR' flag around editor sections
  • Added in a prepopulate world function - Allows for removal of process at start of scene, can increase performance and improve continuity between loads
  • Added a 'Pause' function to the NPC's - this allows them to stop what they are doing and will continue like so with their action after the pause is up (and during work hours) - Wiki section can be found here

Patch 0.1.1 (11/10/22)

  • Fixed issue with out parameter 'actualID' - Functionallity has been checked and looks to be working, hotfix does seem the correct way to go
  • Added in a 'Fix Scene' action within ''AI Manager - Performable Actions' - this sorts out the layers of objects within the active scene (Wiki has been Updated with this)
  • Fixed Title for 'AI Manager'

First release (09/10/22)

  • Basic Animation System
  • Global Civil System
  • Local Civil System
  • Job System
  • Region population system
  • Local Character Pool
  • Quick Setup
  • AI Flowchart System
  • Automated unit tests
  • Wiki and Documentation
  • 11 Defined Actions
  • 3 Looking Mutations
  • Mount Controller