Skip to content

About

STATECRAFT AI — Simulation Géopolitique IA Locale

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

statecraft_ai

STATECRAFT AI — Simulation Géopolitique IA Locale

Simulation géopolitique mondiale propulsée par Ollama (IA locale, aucun coût de jetons).


Prérequis

  • Python 3.10+
  • Ollama installé et démarré

Installation

1. Installer Ollama

Téléchargez Ollama sur https://ollama.com et installez-le.

Puis téléchargez un modèle (au choix) :

# Modèle léger et rapide (recommandé pour débuter)
ollama pull llama3

# Alternatives selon votre machine
ollama pull mistral
ollama pull phi3
ollama pull gemma2
ollama pull qwen2

2. Installer les dépendances Python

cd statecraft_ai
pip install -r requirements.txt

3. Lancer le jeu

Terminal 1 — Démarrer Ollama :

ollama serve

Terminal 2 — Lancer le jeu :

python app.py

Ouvrez votre navigateur sur : http://localhost:5000


Fonctionnalités

🗺 Carte mondiale dynamique

  • 60 pays représentés avec coloration selon les relations
  • Vert = Allié · Jaune = Neutre · Rouge = Ennemi
  • Mise à jour automatique à chaque décision
  • Popup au clic sur un pays

⚙ Configuration de partie

  • Choix parmi 60+ nations mondiales
  • 9 époques historiques (Antiquité → Époque Moderne)
  • 4 langues disponibles
  • Sélection du modèle Ollama installé

💾 Système de sauvegarde

  • Sauvegarde manuelle à tout moment
  • Auto-sauvegarde à chaque fin de tour
  • Gestion de plusieurs sauvegardes
  • Chargement et suppression des sauvegardes

⏭ Système de tours avancé

  • Plusieurs actions par tour
  • Progression temporelle adaptée à l'époque
  • Événements mondiaux générés par l'IA à chaque tour
  • Actions autonomes des nations
  • Évolution dynamique des statistiques

🤝 Diplomatie complète

  • Dialogue par message avec chaque nation
  • L'IA joue le rôle du dirigeant étranger
  • Actions diplomatiques directes (Alliance / Paix / Guerre)
  • Historique de chaque conversation diplomatique

🧠 Conseiller IA proactif

  • Chat stratégique libre
  • Conseils par catégorie : Économie, Militaire, Technologie, Diplomatie
  • Analyse de la situation mondiale
  • Actions mondiales autonomes après chaque tour

📰 Événements mondiaux

  • 3 événements générés par l'IA à chaque tour
  • Classés par type et impact (positif/négatif/neutre)
  • Archivés avec date et numéro de tour

📜 Journal historique

  • Chronologie complète de la partie
  • Chaque événement daté et archivé

Modèles recommandés

Modèle RAM nécessaire Qualité narrative Vitesse
llama3 8 Go ⭐⭐⭐⭐ Moyen
mistral 8 Go ⭐⭐⭐⭐ Moyen
phi3 4 Go ⭐⭐⭐ Rapide
gemma2 8 Go ⭐⭐⭐⭐ Moyen
llama3:70b 40 Go ⭐⭐⭐⭐⭐ Lent

Structure des fichiers

statecraft_ai/
├── app.py              # Backend Flask + API Ollama
├── requirements.txt    # Dépendances Python
├── README.md           # Ce fichier
├── templates/
│   └── index.html      # Interface complète du jeu
└── saves/              # Sauvegardes (créé automatiquement)
    └── *.json

Dépannage

"Ollama non détecté" → Lancez ollama serve dans un terminal.

Réponses lentes → Utilisez un modèle plus léger (phi3, gemma2:2b).

Réponses en mauvais format → Certains modèles anciens gèrent mal le JSON. Préférez llama3 ou mistral.

Port 5000 occupé → Modifiez port=5000 à la fin de app.py.


Lanceurs disponibles

🖥 Windows — Double-clic

LANCER.bat

Vérifie Python, installe les dépendances, démarre Ollama et ouvre le navigateur automatiquement.

🖼 Interface graphique (Windows / macOS / Linux)

python lanceur.py

Lance une fenêtre de contrôle graphique avec :

  • État en temps réel de Python, Flask, Ollama et du serveur
  • Bouton de lancement en un clic
  • Journal de démarrage
  • Bouton d'arrêt propre

🍎 macOS / 🐧 Linux — Terminal

chmod +x lancer.sh
./lancer.sh

Vérifie l'environnement, démarre Ollama et ouvre le navigateur.

About

STATECRAFT AI — Simulation Géopolitique IA Locale

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors