{"repo":"andrew-gresyk/HFSM2","free":true,"listed":false,"github":"https://github.com/andrew-gresyk/HFSM2","clone":"git clone https://github.com/andrew-gresyk/HFSM2.git","description":"High-Performance Hierarchical Finite State Machine Framework","language":"C++","stars":627,"topics":["hfsm","fsm","fsm-library","state-machine","cpp","cpp11","modern-cpp","template-metaprogramming","header-only","mit-license"],"license":"MIT","category":"game-templates","readme_excerpt":"--- High-Performance Hierarchical Finite State Machine Header-only heriarchical FSM framework in C++11, with fully statically-defined structure (no dynamic allocations), built with variadic templates. --- Compiler Support - Visual Studio: 2015, 2017, 2019, 2022 - GCC: 10, 11, 12, 13, 14, 15 - GCC (ARM): 13 - Clang: 13, 14, 15, 16, 17, 18 - AppleClang (Intel): 17 - AppleClang: 15, 17 --- Quick Start - Minimal Example - Extended Tutorial --- See Also - HFSM2 UPlugin : Unreal Engine plugin for HFSM2 library - FFSM2 : High-Performance Flat Finite State Machine - FFSM2 UPlugin : Unreal Engine plugin for FFSM2 library - HFSM Mono : Monospaced bitmap Unicode fonts for HFSM2 and FFSM2 libraries --- Documentation - Wiki --- Feature Highlights - Permissive MIT License - Written in widely-supported modern(ish) C++11 - Header-only - Convenient, minimal boilerplate - Fully static, no dynamic allocations - Uses inline-friendly compile-time polymorphism, no virtual methods are used - Type-safe transitions: FSM.changeTo () with optional payloads - Flexible configuration using HFSM2 ENABLE macros - Scalable, supports robust state re-use via state injections - Hierarchical , with a selection of composite (sub-machine) and orthogonal regions - Gamedev and embedded friendly - Also supports traditional event-based workflow with State::react() - Inspect anything: previous and current transitions, state activation status, and more! - Game AI-friendly with dynamic planning support - Utility theory s","default_branch":null,"files":null,"tree":[],"storefront":"/r/andrew-gresyk","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/andrew-gresyk/HFSM2/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."}