Commencer
Comprendre le SDK
Ce que vous écrivez, ce que le SDK prend en charge et comment choisir votre point de départ.
Vous écrivez le comportement
Un mod définit des modèles de signaux, leurs réglages, leurs images et leurs règles. Le SDK lit les observations du jeu, résout les liens entre signaux et transmet les décisions. Les vitesses, permissions et règles de signalisation appartiennent au mod.
Deux façons d’utiliser Kotlin
| Usage | API | Exécution |
|---|---|---|
| Créer un mod de signalisation | nimby · signalMod | Kotlin/Native, chargé par le loader dans le jeu |
| Créer un outil, un TCO ou un banc de test | fr.nimby.sdk · NimbyClient | Application Kotlin/JVM connectée au processus du jeu |
Ces deux API servent des contextes différents. Le mod n’a pas besoin de rechercher le processus ni de charger manuellement la DLL SDK. L’application JVM ouvre une connexion explicite et la ferme avec use.
Les bases Kotlin utiles
| Écriture | Signification |
|---|---|
| val | Une valeur que l’on ne réaffecte pas. |
| fun | Une fonction. |
| enum class | Une liste de valeurs nommées : Closed, Open… |
| data class | Un ensemble de propriétés, copiable avec copy(). |
| Type? | La valeur peut être absente (null). |
| when | Choisir un résultat selon plusieurs conditions. |
| List<Type> | Une collection d’éléments de ce type. |
| { … } | Un bloc de configuration ou une fonction passée en paramètre. |
kotlin
val speedMps: Double? = null
val label = speedMps?.let { "${it * 3.6} km/h" } ?: "Indisponible"Ne remplacez pas une vitesse inconnue par zéro pour prendre une décision : une absence de mesure n’est pas une preuve d’arrêt.