Files
Freeforall/README.md
2026-03-23 19:44:55 +01:00

126 lines
3.6 KiB
Markdown

# Free For All - Arena Shooter v1.1
Jeu de tir en arene locale multijoueur en HTML5, inspire de Retimed.
## Lancer le jeu
Ouvrir `freeforall.html` dans un navigateur (Chrome, Firefox, Edge).
## Controles
| Touche | Action |
|--------|--------|
| Z / W | Sauter |
| Q / A | Aller a gauche |
| D | Aller a droite |
| S / Fleche bas | Traverser une plateforme |
| Espace | Sauter |
| Souris | Viser |
| Clic gauche | Tirer |
- Double saut disponible (2 sauts max avant de retoucher le sol)
- Traverser les plateformes vers le bas avec S ou fleche bas (sauf le sol)
## Fonctionnalites
- **Selection du personnage** au demarrage
- **Selection de la map** : Classique, Tours, Pyramide (chacune avec son theme visuel)
- **Bots IA** configurables (1 a 5 selon le nombre de personnages)
- **Arme** : chargeur de 6 balles par defaut, rechargement via caisses de munitions sur la map
- **Effets visuels** : particules de sang, flash rouge a l'impact, etincelles de tir, particules de double saut
- **Corps realistes** : torse, bras articules, jambes avec genoux, chaussures, arme detaillee
- **Victoire / Defaite** : premier a 10 kills gagne la partie
## Maps et themes
| Map | Ambiance | Plateformes | Decor |
|-----|----------|-------------|-------|
| Classique | Nuit etoilee | Metal avec rivets | Lune, etoiles scintillantes |
| Tours | Chateau medieval | Pierre et briques | Silhouettes de tours, brume |
| Pyramide | Desert | Gres / sable | Soleil, dunes |
Chaque map supporte un arriere-plan personnalise. Placer une image dans `img/` et modifier `bgImage` dans le theme correspondant :
```js
bgImage: 'img/mon_fond.png',
```
## Options
Accessibles depuis le menu avant de lancer une partie :
- Points de vie (50 - 500)
- Balles par chargeur (2 - 30)
- Taille des balles (3 - 15)
- Temps de reapparition des caisses de munitions (1 - 15 sec)
- Rebond des balles sur les murs et plateformes (on/off)
## Ajouter un personnage
1. Placer l'image (PNG ou JPG) dans le dossier `img/characters/`
2. Ajouter le nom du fichier dans la liste `CHAR_FILES` tout en haut du script dans `freeforall.html` :
```js
const CHAR_FILES = ['nico.png', 'max.png', ..., 'nouveau.png'];
```
Le nom affiche, la couleur et la carte du menu sont generes automatiquement.
## Ajouter un arriere-plan
1. Placer l'image dans `img/backgrounds/`
2. Dans le theme de la map correspondante, modifier `bgImage` :
```js
bgImage: 'img/backgrounds/mon_fond.png',
```
## Structure du projet
```
Freeforall/
freeforall.html -- Le jeu complet (fichier unique)
README.md -- Ce fichier
img/
characters/ -- Visages des personnages
nico.png
max.png
greg.png
thomas.png
micka.png
guigui.png
theo.png
anais.png
arnaud.png
backgrounds/ -- Arriere-plans des maps
classic.png
medieval.png
pyramide.png
```
## Changelog
### v1.1
- Themes visuels uniques par map (arriere-plans, plateformes, ambiance)
- Support des images d'arriere-plan personnalisees par map
- Balles rouges/orange avec halo lumineux (visibles sur tout fond)
- Contour sombre autour des personnages pour meilleure lisibilite
- Caisses de munitions vertes avec halo bleu pulsant
- Noms des joueurs avec contour pour lisibilite
- Menu scrollable avec scrollbar stylisee
### v1.0
- Jeu de base : selection perso, 3 maps, bots IA
- Double saut, traverser les plateformes
- Panneau d'options (vie, munitions, taille balles, rebond, respawn)
- Corps realistes avec animations
- Effets de sang et flash rouge a l'impact
- Systeme de personnages dynamique
- Ecran victoire / defaite
## Technologies
- HTML5 Canvas
- JavaScript vanilla
- Aucune dependance externe