> For the complete documentation index, see [llms.txt](https://renownedgames.gitbook.io/ai-tree/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://renownedgames.gitbook.io/ai-tree/api/runtime/service-node.md).

# Service Node

Type description and basic instructions.

### Description

Service Node is base abstract class for all service nodes.

To create a custom service node you should inherit from Service Node class and implement logic that is described below.

### OnTick

When inheriting from Task Node you have to override OnTick method.

```csharp
public class ExampleServiceNode : ServiceNode
{
    protected override void OnTick()
    {
        throw new NotImplementedException();
    }
}
```

* OnTick contains logic of service tick.
* OnTick gets called every time during node execution.

{% hint style="info" %}
To create custom service nodes in editor you should add [Node Content](/ai-tree/api/runtime/nodecontentattribute.md) attribute to your custom task node class.
{% endhint %}
