Skip to main content
Version: 0.14.0

Requirement System

This guide gives a quick overview on how the requirement system works. This is currently used in the behaviour trees, the animation system and barks.

Requirement Collection​

The collection is a group of requirements, when matching is done it is on each requirement at a time. Every requirement must be met to count as a match.

Requirement​

Created to contain a list of conditions which must be all met for the requirement to be considered matched.

Conditions​

Used to allow for checking properties of an object within the system. Different types of conditions allow for different checks to take place.

Items​

There are several conditions which can be used relating to items. These include; the name, the type or the size.

Time of Day​

This condition can be used to specify a certain time of day for it to be met. It can be between, before or after a certain time of day.

Agents​

These conditions check what a Civil AI agent is doing: its state, its active behaviour, whether it has an action, its job, and its needs (the active need, the highest need, and a need's value or weight).

Job Equals lets you pick a job from the jobs in the work tree selected in module settings. It stores the job's id rather than its name, so renaming the job doesn't break the condition. Conditions made before 0.14.0 matched the job by name. They keep working, and switch to the job's id the first time you open them.

tip

The Civil AI conditions aren't listed under New when you add a condition to a requirement. Create the condition from Create > BardTreeLtd > Civil AI > Requirement > Condition, then add it with Prexisting.