Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mugen87/yuka
JavaScript library for developing Game AI.
https://github.com/mugen87/yuka
ai game-ai game-development javascript
Last synced: 29 days ago
JSON representation
JavaScript library for developing Game AI.
- Host: GitHub
- URL: https://github.com/mugen87/yuka
- Owner: Mugen87
- License: mit
- Created: 2017-07-07T21:19:47.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-09-24T11:53:23.000Z (about 2 months ago)
- Last Synced: 2024-10-13T04:31:37.177Z (about 1 month ago)
- Topics: ai, game-ai, game-development, javascript
- Language: JavaScript
- Homepage: https://mugen87.github.io/yuka/
- Size: 40.2 MB
- Stars: 1,113
- Watchers: 33
- Forks: 91
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# Yuka · [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/Mugen87/yuka/blob/master/LICENSE) [![NPM Package](https://img.shields.io/npm/v/yuka.svg)](https://www.npmjs.com/package/yuka) [![Coverage Status](https://coveralls.io/repos/github/Mugen87/yuka/badge.svg?branch=master)](https://coveralls.io/github/Mugen87/yuka?branch=master)
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.
## Documentation
You can find the Yuka documentation [on the website](https://mugen87.github.io/yuka/docs/).
## Examples
We have several examples [on the website](https://mugen87.github.io/yuka/examples/). 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.
## Chat
There is a [Discord server](https://discord.gg/MhnFwYM) if you want to chat about Yuka and game AI related topics.
## Resources
We recommend the following books in order to get familiar with most of Yuka's concepts:
[Programming Game AI by Example](https://www.amazon.com/Programming-Example-Wordware-Developers-Library/dp/1556220782) by Mat Buckland
[3D Math Primer for Graphics and Game Development](https://www.amazon.com/Math-Primer-Graphics-Game-Development/dp/1568817231/) by Fletcher Dunn and Ian Parberry
### License
Yuka is [MIT licensed](./LICENSE).