French Ship Madame De Pompadour
Simulation sociale et générateur d'histoires créant des récits de science-fiction inspirés de Star Trek. Développement en Python/Flask avec des structures de données, l'API Gemini et une interface utilisateur React/Vite/Tailwind.
Simulateur de vaisseau spatial utilisant l'IA et des actions aléatoires inspirées de Star Trek.
FS Madame de Pompadour est un simulateur narratif textuel qui crée des histoires dynamiques et imprévisibles se déroulant dans un univers de science-fiction. En cliquant sur « Suivant », vous faites avancer la simulation tour par tour, en observant une galerie de personnages interagir les uns avec les autres selon une combinaison de comportements prédéfinis et d’IA générative.

L’objectif est de créer un « terrarium numérique » où des dynamiques sociales complexes et des événements inattendus émergent de règles simples et de la puissance créative de l’IA.
Bienvenue à bord du FS Madame de Pompadour.
Le capitaine Pepillo se tourna vers le matelot Harold et aboya : « Faites-moi un rapport sur les mesures disciplinaires prises à l’encontre de Von. »
Le capitaine Pepillo se tourna vers le poste de communication et ordonna : « Joignez-moi le lieutenant Dubois immédiatement. »
Tedrick se pencha vers le matelot Waylon et murmura : « Tu as vu ce que Von a fait ? On dirait que le capitaine Pepillo est de mauvaise humeur aujourd’hui », tout en ajustant subtilement son uniforme pour paraître présentable.
Konstantin jette un rapide coup d’œil au matelot Harold, puis murmure discrètement au matelot Mohammed : « Je me demande ce que Von a bien pu faire pour se mettre le capitaine à dos cette fois-ci », tout en polissant discrètement une partie de la rambarde voisine.
Le matelot Von redressa nerveusement son uniforme, puis, croisant le regard du matelot Ezechiel, marmonna entre ses dents : « La journée va être longue », en espérant qu’Ezechiel lui réponde.
Le matelot Mohammed, remarquant que Konstantin astiquait discrètement la rambarde, jeta un coup d’œil à celle-ci et dit : « On dirait qu’il a besoin d’un bon coup de brosse, hein ? On devrait peut-être s’occuper de cette partie ensemble, Konstantin ? »
Le matelot Harold, remarquant l’atmosphère tendue et les ordres du capitaine, ajusta nonchalamment son propre uniforme et murmura au matelot Sébastien : « On dirait que Von est sur la sellette, hein ? Tu ne crois pas qu’on devrait aller prendre un café pour détendre l’atmosphère avant que nos tâches ne deviennent encore plus désagréables ? »
Constatant la tension, le matelot Westley se tourne vers le matelot Flin et lui demande : « Tu as entendu ce qui est arrivé à Von ? On dirait que le capitaine est de mauvaise humeur, on ferait peut-être mieux de s’assurer que nos postes sont impeccables. »
Le capitaine Pepillo demande l’avis professionnel du matelot Harold.
Le capitaine Pepillo se tourne vers le matelot Von et lui ordonne : « Von, faites-moi immédiatement un rapport sur votre poste actuel et l’état des systèmes. »
Le matelot Westley, remarquant l’ordre sévère donné par le capitaine à Von, se tourne rapidement vers le matelot Flin et lui dit à voix basse : « Flin, allons vérifier les placards de ravitaillement, je pense que le capitaine voudra peut-être faire l’inventaire des rations d’urgence », dans l’espoir de paraître occupé et d’éviter toute attention indésirable.
Le matelot Mohammed, voyant la tension qui règne autour du capitaine Pepillo, s’approche discrètement du matelot Ezechiel et lui chuchote : « Tu crois qu’on devrait préparer du matériel de nettoyage, au cas où le capitaine aurait besoin qu’on fasse quelque chose rapidement ? »


Dans cet instantané tiré de la simulation FS Madame de Pompadour, on observe un écosystème social complexe et dynamique en pleine évolution. Le système démontre sa capacité à générer un récit émergent non pas par le biais d’événements pré-scénarisés, mais en permettant à des agents indépendants d’interagir, créant ainsi une trame de vie riche et crédible sur les ponts inférieurs.
La simulation démarre avec un catalyseur évident : une figure d’autorité de haut rang, le capitaine Pepillo, qui instaure immédiatement une tension à enjeux élevés par le biais d’ordres directs. Cette « cascade de commandes » devient le point d’attraction central de tout l’écosystème social. Remarquez comment ses exigences ne se contentent pas de déclencher les scénarios individuels des personnages, mais initient au contraire un événement unifié et sous haute pression. Cela met en évidence la nouvelle orientation du système vers une structure hiérarchique, où les actions d’un seul agent peuvent dicter l’orientation, l’ambiance et l’objectif stratégique de tous les autres personnages dans l’environnement partagé.
À mesure que les ordres du capitaine se répercutent au sein de l’équipage, on assiste à l’émergence de stratégies sociales sophistiquées et réactives. Les membres d’équipage ne se contentent pas de poursuivre leurs tâches sans importance ; ils commencent immédiatement à s’adapter à cette nouvelle réalité. Observez comment des personnages comme Tedrick et Konstantin forment des petits groupes de conversation temporaires pour échanger des ragots et analyser la situation, en tentant de donner un sens à cette nouvelle dynamique de pouvoir. Plus impressionnant encore, le matelot Westley fait preuve d’un niveau supérieur de logique émergente en élaborant activement une stratégie de survie : il suggère que lui et un camarade de l’équipage donnent l’impression d’être occupés à des tâches officielles afin d’éviter la colère du capitaine. Il ne s’agit pas d’un comportement préprogrammé, mais d’une conclusion sociale logique générée par l’IA en réponse à une menace perçue, démontrant ainsi une solide capacité d’évaluation des risques.
Cette brève séquence révèle un puissant moteur de narration émergente qui mêle de manière fluide les rôles professionnels et l’anxiété personnelle. On voit le membre d’équipage Harold contraint de passer d’une conversation informelle et feutrée à l’expression d’un avis formel et professionnel à la demande du capitaine, ce qui illustre la capacité du système à gérer des contextes sociaux contradictoires. L’ensemble de la simulation s’articule autour du conflit central avec Von, créant ainsi une pression narrative unifiée plutôt qu’un ensemble de drames distincts et discrets. Le moteur a évolué au-delà de la simple reproduction d’une trame de vie, démontrant désormais sa capacité à simuler un réseau complexe de calculs sociaux, d’alliances stratégiques et de pensée collective émergente en situation de contrainte.
FS Madame de Pompadour repose sur une architecture web moderne et découplée, séparant le moteur de simulation backend de l’interface utilisateur frontend pour plus de modularité et de performances.
Backend : Python, Flask et Gemini
L’ensemble du cœur et de la logique de simulation réside dans le backend Python.
- Python : Le choix naturel en raison de ses puissantes capacités de traitement des données et de son écosystème robuste en matière d’IA et d’apprentissage automatique. L’approche orientée objet permet de créer des classes
CrewmanetActorManagermodulaires et faciles à étendre. - Flask : Un framework web léger et flexible utilisé pour créer l’API avec laquelle le front-end communique. Sa seule responsabilité est de recevoir une requête pour le tour suivant, de déclencher la logique de simulation et de renvoyer le résultat.
- Google Gemini : Le « fantôme dans la machine ». Le projet s’intègre à l’API Gemini pour alimenter son système d’actions intelligentes. Lorsqu’un personnage décide d’agir « intelligemment », le backend envoie une requête — contenant le contexte du vaisseau, le rôle du personnage et l’historique récent des actions — au modèle Gemini, qui renvoie alors une action créative et adaptée au contexte.
Front-end : React, Vite et Tailwind CSS
L’interface utilisateur est une application monopage (SPA) moderne et rapide.
- React : une puissante bibliothèque JavaScript permettant de créer des interfaces utilisateur dynamiques et basées sur des composants. L’intégralité du journal des événements est un composant React qui se met à jour efficacement à mesure que de nouvelles actions sont reçues du backend.
- Vite : un outil de build front-end de nouvelle génération qui fournit un serveur de développement extrêmement rapide et des builds de production optimisés.
- TypeScript : utilisé pour ajouter un typage statique au code JavaScript, améliorant ainsi l’expérience développeur et réduisant les bugs.
- Tailwind CSS : Un framework CSS axé sur les utilitaires qui permet une mise en forme rapide et cohérente directement dans le code HTML, comme en témoignent les noms de classes des composants.
Architecture globale
Le déroulement d’un tour est simple et efficace :
- L’utilisateur clique sur le bouton « Suivant » dans l’interface utilisateur basée sur React.
- Le front-end envoie une requête
fetchau point de terminaison/actiondu back-end fonctionnant sous Flask. - Le serveur Flask appelle l’
ActorManagerPython, qui exécute un tour de simulation, en appelant éventuellement l’API Gemini. - Le backend renvoie la chaîne d’action résultante sous forme d’objet JSON.
- Le frontend React reçoit le JSON, met à jour son état et affiche le nouvel événement à l’écran, en faisant défiler automatiquement jusqu’à la dernière entrée.
