{"id":13662998,"url":"https://github.com/active-logic/activelogic-cs","last_synced_at":"2025-04-25T13:31:14.356Z","repository":{"id":39223236,"uuid":"200862655","full_name":"active-logic/activelogic-cs","owner":"active-logic","description":"Behavior Trees and Case Logic for C#7","archived":false,"fork":false,"pushed_at":"2022-09-20T10:16:35.000Z","size":654,"stargazers_count":106,"open_issues_count":15,"forks_count":7,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-11-10T19:33:22.248Z","etag":null,"topics":["behavior-tree","behaviour-trees","control-flow","control-systems","game-ai","game-development"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/active-logic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-08-06T13:59:34.000Z","updated_at":"2024-06-28T15:44:30.000Z","dependencies_parsed_at":"2023-01-17T18:16:00.340Z","dependency_job_id":null,"html_url":"https://github.com/active-logic/activelogic-cs","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/active-logic%2Factivelogic-cs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/active-logic%2Factivelogic-cs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/active-logic%2Factivelogic-cs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/active-logic%2Factivelogic-cs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/active-logic","download_url":"https://codeload.github.com/active-logic/activelogic-cs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250824918,"owners_count":21493363,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["behavior-tree","behaviour-trees","control-flow","control-systems","game-ai","game-development"],"created_at":"2024-08-02T05:02:14.502Z","updated_at":"2025-04-25T13:31:13.751Z","avatar_url":"https://github.com/active-logic.png","language":"C#","funding_links":[],"categories":["C\\#"],"sub_categories":[],"readme":"# Active Logic\n\n[![Build Status](https://travis-ci.com/active-logic/activelogic-cs.svg?branch=master)](https://travis-ci.com/active-logic/activelogic-cs)\n[![codecov](https://codecov.io/gh/active-logic/activelogic-cs/branch/master/graph/badge.svg)](https://codecov.io/gh/active-logic/activelogic-cs)\n\nEasy to use, comprehensive Behavior Tree (BT) library built from the ground up for C# programmers:\n\n- Game logic, game AI (autonomous agents)\n- Asynchronous control applications\n- No DSL/builder pattern (tight integration)\n- Use standalone or borrow the \"ticker\" from a visual BT solution\n\n=\u003e [Quick-start guide](Doc/QuickStart.md) || [Unity quick-start guide](Doc/QuickStart-Unity.md) || [API reference](Doc/Reference/Overview.md) || [FAQ](Doc/FAQ.md)\n\n## Introduction\n\nActive Logic seamlessly integrates with C#:\n\n```cs\nclass Duelist : UTask{\n\n    float     health = 100;\n    Transform threat;\n\n    // BT selectors and sequences via || and \u0026\u0026\n    override public status Step()\n        =\u003e Attack()\n        || Defend()\n        || Retreat();\n\n    // Conditionals without 'conditional nodes'\n    status Attack() =\u003e (threat \u0026\u0026 health \u003e 25) ?\n        Engage(threat) \u0026\u0026 Cooldown(1.0f)?[ Strike(threat) ]\n      : fail(log \u0026\u0026 $\"No threat, or low hp ({health})\");\n\n    status Defend() =\u003e ...;\n\n    // ...\n\n}\n```\n[\u003e Complete sample](https://gist.github.com/eelstork/08b8fff3b776e8a9faa262a60a9a183b)\n\nActive logic is the first BT library providing tight integration with the host language\n(no DSL, no builder pattern, no lambdas or coroutines, no blackboard).\nThis means better performance (low/no GC), cleaner syntax and the freedom to structure your code as you wish.\n\n## Installation\n\nEngine/platform agnostic:\n- `dotnet add package ActiveLogic` (via [NuGet](https://www.nuget.org/packages/ActiveLogic/))\n\nUnity 3D:\n- Standard Edition [via the Unity Asset Store](http://u3d.as/1AZ8)\n- Active-LT [via UPM on Github](https://github.com/active-logic/active-lt)\n\nFrom source: no dependencies.\n\n## Language support\n\n- C# 7.2 or later\n\n## License\n\n- GNU Affero GPL v3.0. TLDR, use the software freely, *provided derivative works are free, open source*.\n- Unity Store Assets are covered by their [end user license agreement](https://unity3d.com/legal/as_terms).\n- Pending a standalone commercial license, read [here](Doc/Commercial.md)\n\n## Where next?\n\n- Read the [Quick start Guide](Doc/QuickStart.md) and the [FAQ](Doc/FAQ.md)\n- Check the [API reference](Doc/Reference/Overview.md)\n- Questions? Drop by the [discord forum](https://discord.gg/Jn9TQRR).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factive-logic%2Factivelogic-cs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factive-logic%2Factivelogic-cs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factive-logic%2Factivelogic-cs/lists"}