#ai #bevy #ecs #game-ai #observer #utility-ai

bevy_observed_utility

Ergonomic and Correct Utility AI for Bevy Engine

1 unstable release

0.1.0 Aug 19, 2024

#827 in Game dev

MIT/Apache

130KB
2K SLoC

bevy_observed_utility

A state-of-the-art utility AI library for Bevy, built using ECS observers, with a focus on ergonomics and correctness.

See the documentation for a complete walkthrough example of using the library.

Design Goals

In order of priority:

  • Correctness
    • Scoring entity trees are scored in depth-first post-order traversal, ensuring that all children are scored before their parents.
  • Ergonomics:
    • Adding scoring, picking, and actions to pre-existing entities should have little boilerplate.
  • Modularity:
    • Adding new kinds of scoring and picking should be easy.
    • Adding different ways of handling actions should be easy.
    • Both turn-based and real-time games should be supported.
  • Performance:
    • Pay only for what you use: Scoring and picking observers are only added if they are used.
    • Scoring and picking should be reasonably fast. Action performance is up to the user.

License

bevy_observed_utility is dual-licensed under either:

  • MIT License
  • Apache License, Version 2.0

at your option.

Dependencies

~25MB
~465K SLoC