Getting started
Understand the SDK
Choose an API for signals, in-game tools or a connected application.
From behaviour to a visible result
The SDK lets you describe a signal and its rules, add an in-game tool, or read a game from a Kotlin application. This manual starts with those outcomes: available data, supported operations and ways to verify your project. Basic Kotlin knowledge is enough to start the first signal.
You choose aspects, speeds, images, settings and domain rules. The SDK provides observations and high-level functions to apply your decisions. Unknown information must remain unknown; your model explicitly defines its fallback behaviour.
Choose the right entry point
| Your project | API | Starting point |
|---|---|---|
| Signalling mod | nimby · Kotlin/Native | signalModel → signalMod → createMod |
| Tool with in-game buttons and panels | nimby · Kotlin/Native | toolMod → ToolContext |
| External application: monitoring, analysis or testing | fr.nimby.sdk · Kotlin/JVM | Nimby.connect → Game |
The two Kotlin APIs have distinct types. An in-game tool uses nimby, just like a signal mod. An external application uses fr.nimby.sdk, opens its connection and closes it when finished. Always check the Native or JVM label in the reference before copying an import.
Kotlin basics used in examples
| Syntax | Reading |
|---|---|
| val | A reference that is not reassigned. |
| fun | A function with parameters and a result. |
| enum class | Named values for your aspects or reasons. |
| data class | Grouped properties, with an explicit copy() operation. |
| Type? | A value that may be absent: null. |
| when | Choose a result based on conditions. |
| List<Type> | A collection of elements of the same type. |
| { … } | Configuration or behaviour passed to a function. |