Jeu vidéo · Roguelite · Pixel art / En développement

MechaRogue

Un agent gouvernemental coordonne la défense contre des attaques extraterrestres en dispatchant des binômes pilote/robot sur des missions à résolution automatique. L'interface diégétique est le gameplay -pas un HUD, une salle de commandement.

Aperçu - captures à venir

GIF dispatch complet - sélection → confirmation → résolution → tampon 384×216 · upscale ×3
APPROVED MISSION ABORTED CRITICAL

Concept

Une salle de commandement comme interface

Inspiré de Neon Genesis Evangelion, MechaRogue pose l'hypothèse que l'interface diégétique - écrans de monitoring, tampons de validation, countdowns - peut être le vecteur de tension principal sans recourir à de l'action directe.

Le joueur ne pilote rien. Il gère des ressources humaines et mécaniques sous contrainte de temps, avec une information incomplète sur l'issue des missions. La résolution est automatique - la décision, pas.

Mécaniques

  • Core loop , spawn procédural, dispatch, résolution automatique, réparation, vague suivante
  • Système de combat à trois seuils , victoire / succès partiel / échec
  • Traits pilotes actifs influençant les probabilités , Courage, Résistance, Anxiété
  • Countdown par mission, réparation par timer, régénération passive
  • Panel de prévisualisation paire pilote/robot avant confirmation de dispatch

Décisions d'architecture

Custom Resources typées pour les données +
PilotData, RobotData, MissionData en Custom Resource Godot. Typage fort, éditables dans l'Inspecteur, dupliqués au chargement pour isoler les états runtime des .tres sources. Évite toute mutation des assets de référence pendant une run.
Timer global vs timers distribués +
La régénération HP passive est gérée par un seul timer dans GameManager plutôt qu'un timer par robot. Décision de scalabilité consciente - N robots = N signaux en parallèle sinon. Alternative rejetée car coût non justifié pour le gain de granularité.
Layout flat Control + zones intermédiaires +
Anchors sur des Control nodes dédiés, containers internes en Full Rect. Solution à un bug Godot classique où les anchors posées directement sur des containers produisent des comportements incohérents entre l'éditeur et le runtime.