Using LimboAI with C#

Here’s how you can use the module version with C# to write your tasks and states.

  1. Locate LimboAI NuGet package files.

Each provided build comes with a GodotSharp folder, which has packages under “GodotSharp/Tools/nupkgs/”. Note down the directory path; you’ll need it in the next step.

  1. Add a local source for NuGet packages using the following command:

dotnet nuget add source path/to/limboai/nupkgs --name LimboNugetSource
  1. Your C# project should be able to see LimboAI classes and compile.

Regarding GDExtension, I can only confirm success with the module version and C#. Unfortunately, I haven’t had any luck with the GDExtension version yet. If you’ve had success with GDExtension, please let me know via Discord or email.

Creating custom tasks in C#

🛈 Note: For more information, check out creating custom tasks in GDScript.

You can use the following script template for custom tasks:

using Godot;
using System;

[Tool]
public partial class _CLASS_ : _BASE_
{
    public override string _GenerateName()
    {
        return "_CLASS_";
    }

    public override void _Setup()
    {
    }

    public override void _Enter()
    {
    }

    public override void _Exit()
    {
    }

    public override Status _Tick(double delta)
    {
        return Status.Success;
    }

    public override string[] _GetConfigurationWarnings()
    {
        return Array.Empty<string>();
    }
}