Yuka is a JavaScript library for developing Game AI.
- Autonomous Agent Design: Yuka provides a basic game entity concept and classes for state-driven and goal-driven agent design.
- Steering: Use the build-in vehicle model and steering behaviors in order to develop moving game entities.
- Navigation: Graph classes, search algorithms and a navigation mesh implementation enables advanced path finding.
- Perception: Create game entities with a short-term memory and a vision component.
- Trigger: Use triggers to generate dynamic actions in your game.
- Fuzzy Logic: Make your game entities smarter with Yuka's fuzzy inference system.
- JSON: Save and load the current state of your game by using a serialization/deserialization API based on JSON.
Yuka is a standalone library and independent of a particular 3D engine.
You can find the Yuka documentation on the website.
We have several examples on the website. If you download the repository and execute npm install && npm start
in the main directory, you can start a local server and check out the examples on your computer.
There is a Discord server if you want to chat about Yuka and game AI related topics.
We recommend the following books in order to get familiar with most of Yuka's concepts:
Programming Game AI by Example by Mat Buckland
3D Math Primer for Graphics and Game Development by Fletcher Dunn and Ian Parberry
Yuka is MIT licensed.