{"repo":"nikkorn/mistreevous","free":true,"listed":false,"github":"https://github.com/nikkorn/mistreevous","clone":"git clone https://github.com/nikkorn/mistreevous.git","description":"A tool to build and execute behaviour trees in JavaScript and TypeScript","language":"TypeScript","stars":137,"topics":["behaviour-trees","behavior-tree","gamedev","library","javascript","artificial-intelligence","behaviour-tree","ai","behaviour","game"],"license":"MIT","category":"game-templates","readme_excerpt":"Mistreevous Mistreevous is a lightweight, TypeScript-based behaviour tree library for Node and the browser. Define complex AI behaviours using either JSON or a clean, minimal DSL (MDSL). Built for modularity, clarity, and fast iteration — perfect for games, simulations, and interactive agents. ✨ Key Features 🔹 Minimal DSL or JSON-based definitions – define behaviours clearly and concisely 🔹 Built-in composite, decorator & leaf nodes – model complex logic using a toolbox of predefined node types 🔹 Async & promise-based actions – handle long-running behaviours and actions asynchronously 🔹 Lifecycle callbacks – define callbacks to invoke when tree nodes start, resume, or finish processing 🔹 Global functions & subtrees – reuse logic and subtree definitions across multiple agents 🔹 Guards – dynamically interrupt or cancel long-running behaviours 🔹 Randomised behaviour – weighted choices, random delays, seedable RNG for deterministic tree processing 🔹 Debugging tools – inspect the state of running tree instances and track node state changes 🔹 Works in Node & browsers – lightweight, fast, and easy to integrate anywhere 🌳 What are Behaviour Trees? Behaviour trees are hierarchical structures designed to model decision-making processes and are used to create complex AI via the modular composition of individual tasks, making it easy to sequence actions, handle conditions, and control flow in a readable and maintainable way. 🛠️ There is an in-browser editor and tree visualiser","default_branch":null,"files":null,"tree":[],"storefront":"/r/nikkorn","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/nikkorn/mistreevous/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}