Écosystème CrOliX
Actif 2025

Imitation learning

Lun'Gula

replay → model.

CrOliX

Les replays de jeu contiennent des milliers d'heures de comportement humain expert : des décisions à la milliseconde, des patterns de mouvement, des stratégies implicites que personne ne documente.

Lun'Gula les parse, les transforme en séquences de features, et entraîne un modèle à reproduire ce comportement. Conçu comme un framework générique : chaque jeu ne nécessite qu'un parser de format replay et un encodeur d'état. Dataset, boucle d'entraînement, architecture LSTM, export ONNX : tout est partagé.

Pipeline en quatre étapes : Game Parser (décode le format natif replay + beatmap → GameFrame[]), ReplayDataset (sliding-window samples, contexte → action suivante), LSTM Agent (2 couches, AdamW, MSE, split validation), ONNX Exporter (format cross-platform : Python, Node.js, C++). Détection automatique du backend de calcul : CUDA, DirectML (AMD/Intel Windows), ROCm (AMD Linux), MPS (Apple Silicon), CPU. Système de plugins par jeu : implémenter BaseReplayParser + BaseGameEncoder, déclarer dans le CLI.

01
Game Parser Décode le format natif replay + beatmap → GameFrame[]
02
ReplayDataset Sliding-window samples, contexte → action suivante
03
LSTM Agent 2 couches, AdamW, MSE, split validation, auto-détection device (CUDA/DirectML/ROCm/MPS/CPU)
04
ONNX Exporter Format cross-platform : Python, Node.js, C++
PythonONNXLSTMDirectML
GitHub ↗
Framework générique (BaseReplayParser + BaseGameEncoder)
Parser osu! (.osr + .osu → GameFrame[])
Architecture LSTM 2 couches
Boucle d'entraînement (AdamW, MSE, validation split)
Export ONNX cross-platform
Auto-détection device (CUDA · DirectML · ROCm · MPS · CPU)
CLI lungula train avec toutes les options
CI/CD

En cours

  • Entraînement sur corpus large (objectif 1000+ replays)
  • Validation et benchmarking du modèle

Ensuite

  • Inférence temps réel in-game
  • Support d'autres jeux (parser plugins)