# Overview

This section of the documentation contains details of the scripting API that Renowned Games provides. To use this information, you should be familiar with the basic theory and practice of scripting in Unity which is explained in the [Scripting section](https://docs.unity3d.com/Manual/ScriptingSection.html) of Unity manual.

The scripting reference is organised according to the classes available to scripts which are described along with their methods, properties and any other information relevant to their use.

API are grouped by namespaces they belong to, and can be selected from the sidebar to the left. For most users, the AITree section will be the main port of call.

***

AI Tree is divided into several assembly definitions to ensure proper project organization and to accelerate compilation speed.

<figure><img src="/files/6FB4RYcXlASFvEDVD611" alt=""><figcaption><p>Modules diagram</p></figcaption></figure>

AI Tree seperated on tow global namespace Runtime and Editor. Runtime code can be accessed and executed both in Build and Editor. Editor namespace can be executed only in Editor.

{% hint style="success" %}
You can access to Editor namespace via Runtime code, however you must wrap all editor code in **`#if UNITY_EDITOR`** block.
{% endhint %}

### AI Tree assembly

**`AITree.asmdef`** it's a main API which contains all base systems, like `BehaviourTree`, `Task`, `Key`, `Blackboard` and etc.

***

### Nodes assembly

**`AITree.Nodes.asmdef`** contains all built-in tasks.

***

### EQS assembly

**`AITree.EQS.asmdef`**  API which contains all classes related with environment query system.

***

### Perception System assembly

**`AITree.EQS.asmdef`**  API which contains all classes related with AI perception system and percpetion configs.

***

### ExLib assembly

**`ExLib.asmdef`** it's external Renowned Games library with miscellaneous helper stuff.

***

### **Apex** assembly

**`Apex.asmdef`** it's powerful and flexible attributes to improve workflow in Unity editor.

{% content-ref url="/pages/w1ZOWN2shNhplhpoztrs" %}
[Key](/ai-tree/api/runtime/key.md)
{% endcontent-ref %}

{% content-ref url="/pages/HmHP8GKstQ93ZrMXfIpf" %}
[Broken mention](broken://pages/HmHP8GKstQ93ZrMXfIpf)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://renownedgames.gitbook.io/ai-tree/api/overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
