<br />
<b>Warning</b>:  Undefined variable $auth in <b>/home/pevo0181/public_html/pia-soft.com/cleania/routes/index.php</b> on line <b>542</b><br />
<br />
<b>Warning</b>:  Trying to access array offset on value of type null in <b>/home/pevo0181/public_html/pia-soft.com/cleania/routes/index.php</b> on line <b>542</b><br />
# ♟ Dames Internationales — Guide complet

Jeu de dames 10×10 (règles FMJD) avec mode local et multijoueur en ligne.

## Structure du projet

```
damegames/
├── package.json
├── README.md
├── server/
│   ├── server.js          ← Serveur Express + Socket.IO
│   ├── gameLogic.js       ← Règles FMJD complètes
│   └── roomManager.js     ← Gestion des salles en ligne
└── client/
    ├── index.html         ← Interface du jeu
    ├── style.css          ← Design bois & or
    └── game.js            ← Logique client + Socket.IO
```

---

## Installation locale (Windows)

### Prérequis
- [Node.js](https://nodejs.org) v16+ installé

### Étapes

```bash
# 1. Aller dans le dossier du projet
cd "C:\Users\kc sagesse\Desktop\damegames"

# 2. Installer les dépendances
npm install

# 3. Démarrer le serveur
npm start
```

Ouvrir dans le navigateur : **http://localhost:3000**

---

## Déploiement sur O2Switch

### 1. Uploader les fichiers
- Connectez-vous à votre cPanel O2Switch
- Allez dans **Gestionnaire de fichiers**
- Créez un dossier `damegames` dans `public_html` ou ailleurs
- Uploadez tous les fichiers du projet

### 2. Activer Node.js
- Dans cPanel, ouvrez **Node.js Selector** (ou "Setup Node.js App")
- Cliquez **Create Application**
- Paramètres recommandés :
  - **Node.js version** : 18.x ou 20.x
  - **Application mode** : Production
  - **Application root** : `damegames` (chemin relatif)
  - **Application URL** : votre domaine ou sous-domaine
  - **Application startup file** : `server/server.js`
- Cliquez **Create**

### 3. Installer les dépendances sur O2Switch
- Dans Node.js Selector, cliquez **Run NPM Install**
- Ou via SSH : `cd ~/damegames && npm install`

### 4. Démarrer l'application
- Cliquez **Start** dans Node.js Selector

### 5. Configuration du port
O2Switch gère le proxy automatiquement. Le fichier `server.js` utilise :
```js
const PORT = process.env.PORT || 3000;
```
O2Switch injecte `process.env.PORT` automatiquement.

---

## Fonctionnalités

### Mode Local (2 joueurs, même écran)
- Alternance automatique des tours
- Toutes les règles FMJD appliquées

### Mode En Ligne
- Créer une salle → partager le code à 6 caractères
- L'adversaire rejoint avec le code
- Synchronisation en temps réel via Socket.IO
- Gestion des déconnexions

### Règles implémentées ✅
- Plateau 10×10
- Pions : déplacement diagonal avant uniquement
- Dames : déplacement libre en diagonal (toute la diagonale)
- Prise obligatoire
- Rafle maximale (obligation de prendre le maximum de pièces)
- Promotion automatique en dame
- Détection de fin de partie

---

## Développement

```bash
# Mode développement (redémarre auto à chaque changement)
npm run dev
```

---

## Technologies utilisées

| Technologie | Rôle |
|-------------|------|
| Node.js + Express | Serveur HTTP |
