# Documentation Warfactory

## 🏭 Vue d'Ensemble du Projet

Warfactory est un jeu de simulation industrielle militaire inspiré de Factorio, utilisant une **architecture modulaire révolutionnaire** optimisée pour le développement avec **Claude Code**.

## 📚 Documentation Principale

### Architecture & Design
- **[Vue Ensemble](vue-ensemble.md)** - Vision, philosophie et design du jeu
- **[Architecture Technique](architecture-technique.md)** - Multi-serveur, engines, spécifications
- **[Architecture Modulaire](architecture-modulaire.md)** - 🔥 **NOUVEAU** : Architecture triple interface
- **[Claude Code Integration](claude-code-integration.md)** - 🔥 **NOUVEAU** : Guide développement IA
- **[Player Integration](player-integration.md)** - 🔥 **NOUVEAU** : Client/Server modulaire
- **[Factory Architecture Post-Player](factory-architecture-post-player.md)** - 🔥 **NOUVEAU** : Factory engine optimisé
- **[Transport Economic System](transport-economic-system.md)** - 🔥 **NOUVEAU** : Système transport & économique

### Systèmes de Jeu
- **[Gameplay Industriel](gameplay-industriel.md)** - Production, ressources, optimisation
- **[Système Militaire](systeme-militaire.md)** - Design véhicules, combat
- **[Économie & Logistique](economie-logistique.md)** - Marchés, chaînes d'approvisionnement
- **[Mécaniques de Jeu](mecaniques-jeu.md)** - Recherche, progression, administration

### Systèmes Techniques
- **[Systèmes Techniques](systemes-techniques.md)** - Tiles, mémoire, chunks
- **[Map System](map-system.md)** - Génération procédurale, 218+ éléments
- **[Arbre Technologique](arbre-technologique.md)** - 3000+ technologies
- **[Métriques Joueur](metriques-joueur.md)** - Analytics (3.1GB par partie)

### Résolution de Problèmes
- **[Coherence Problem](coherence-problem.md)** - Contradictions résolues
- **[Questions Ouvertes](questions-ouvertes.md)** - 11 items à résoudre

### Planification
- **[Contexte Narratif](contexte-narratif.md)** - Background et univers
- **[DLC Prévus](dlc-prevus.md)** - Contenus futurs
- **[Updates Long Terme](updates-long-terme.md)** - Roadmap

## 🚀 Architecture Révolutionnaire

### Triple Interface Pattern
```
IEngine        → Coordination (Debug → Production → DataOriented)
IModuleSystem  → Exécution (Sequential → Threaded → Cluster)
IModule        → Logique Pure (Tank.so, Economy.so, Factory.so)
IIO            → Communication (Intra → Local → Network)
```

### Avantages Claude Code
- **Contextes micro** : 200 lignes vs 50K+ lignes
- **Build autonome** : `cd modules/tank/ && cmake .`
- **Hot-reload** : Modifications instantanées
- **Développement parallèle** : Multiple instances Claude Code

## 🎯 Focus Development

### Phase Actuelle : Architecture Modulaire
- ✅ **Interfaces C++** : IEngine, IModuleSystem, IModule, IIO
- ✅ **Modules de base** : Factory, Economy, Logistic
- ✅ **Build autonome** : Chaque module = contexte indépendant
- 🔄 **Prochaine étape** : Implémentations concrètes

### Workflow de Développement
```bash
# Développement module spécifique
cd modules/factory/
cmake . && make factory-module     # → factory.so

# Test isolé
./build/factory-module

# Hot-reload dans le jeu principal
# Aucun restart nécessaire !
```

## 🎮 Vision du Jeu

### Concept Core
- **Factory + Military** : Production industrielle + doctrine militaire
- **Échelles multiples** : Local (usines) → Régional (logistique) → Global (diplomatie)
- **Progression** : PMC → Entreprise → Corporation → Super-pouvoir

### Mécaniques Principales
1. **Production Factorio-like** : Chaînes d'assemblage, optimisation
2. **Design véhicules** : Grille irrégulière, placement composants
3. **Combat auto-battler** : Frontlines persistantes, supervision joueur
4. **Économie dynamique** : Marchés, inflation, cycles économiques

## 📖 Comment Utiliser Cette Documentation

### Pour les Développeurs
1. **Commencer par** : [Architecture Modulaire](architecture-modulaire.md)
2. **Puis** : [Claude Code Integration](claude-code-integration.md)
3. **Ensuite** : [Vue Ensemble](vue-ensemble.md) pour le contexte

### Pour les Game Designers
1. **Commencer par** : [Vue Ensemble](vue-ensemble.md)
2. **Puis** : [Gameplay Industriel](gameplay-industriel.md)
3. **Ensuite** : [Système Militaire](systeme-militaire.md)

### Pour Claude Code Sessions
1. **Toujours lire** : `/modules/{module}/CLAUDE.md`
2. **Context limité** : Module spécifique uniquement
3. **Build autonome** : `cmake .` depuis le module
4. **Max 300 lignes** : Logique pure, zéro infrastructure

## 🔄 Statut du Projet

### ✅ Complété
- **Design complet** : 15+ documents de spécification
- **Architecture modulaire** : Triple interface implémentée
- **Build system** : CMake + defensive programming
- **Structure modules** : Factory, Economy, Logistic

### 🔄 En Cours
- **Transport System** : Mode hierarchy (ship/train/air/truck) avec cost optimization
- **Market Mechanics** : Economic phases, order stacking, dynamic pricing
- **Trading Companies** : Arbitrage, transport optimization, market making
- **Geographic Economics** : Infrastructure investment, regional specialization

### 📋 Prochaines Étapes
- **TradingModule Implementation** : Business models (arbitrage, optimization, market making)
- **MarketModule Implementation** : Economic phases, order matching, price discovery
- **InfrastructureModule Implementation** : ROI calculation, regional development
- **Integration Testing** : Transport system avec ProductionModule

---

## 💡 Philosophy

**"Complexity through Simplicity"** : Créer un jeu AAA complexe via une architecture de modules simples, chacun compréhensible et modifiable par Claude Code en isolation totale.

**Résultat** : Développement 10x plus rapide avec qualité maintenue.

---

## 📋 Build Commands Quick Reference

```bash
# Module development (autonomous)
cd modules/factory/
cmake . && make factory-module    # Build factory.so
./build/factory-module           # Test standalone

# Core system
cmake . && make warfactory-core   # Build core engine
./build/bin/warfactory-engine    # Run main engine

# Full system
make warfactory-modules          # Build all modules
make test-all-modules           # Test all modules
```

## 🔧 Legacy Documentation

### Ancienne Architecture (référence)
- **[Engines Documentation](./engines/)** - Anciens engines (supplanté par modules)
- **[Client Documentation](./client/)** - Interface system
- **[Server Documentation](./serveur/)** - Coordination (supplanté par IEngine)

Ces documents restent utiles pour comprendre le design original, mais l'implémentation actuelle utilise l'architecture modulaire.