Bible visuelle, narrative et sonore du jeu LUMEÇON, de son site vitrine et de son artwork. Autorité : agent
design-lead. Lecteurs : agents jeu (Godot 4), site, sound design, QA. Règle d’or : tout est procédural (CSG/mesh généré, shaders, particules, lumière, sons synthétisés par script). Aucune texture peinte, aucun sample enregistré. Chaque valeur ci-dessous est une cible chiffrée ; s’en écarter = mettre à jour ce fichier dans le même changement. Les marques CM Interactive / CM Soundworks / CARDOR Media gardent leurs couleurs ; ni le jeu ni le site ne reprennent la DA CARDOR (décision Nicolas, cf.brand/cardor/SOURCE.md).
1. Titre
| Titre retenu | LUMEÇON |
| Baseline | « Et les Montois ne périront pas. » |
| Sous-titre (stores, OG) | Un FPS infernal au cœur de Mons |
| Identifiant technique | lumecon (package Android org.cmi.lumecon, binaires Lumecon) |
Pourquoi : le Lumeçon est le combat (Saint Georges contre le Dragon, Grand-Place, dimanche de la Trinité) : c’est déjà un boss fight rituel vieux de plusieurs siècles. Le mot est court, unique, montois, et son « Ç » forme un signe graphique fort (crochet = queue spiralée du dragon).
Alternatives : DOUDOU — Ducasse Infernale (plus explicite à l’international) · TREIZE HEURES (le combat finit vers 13 h ; ici le carillon s’arrête à 12 h 58 et ne sonne jamais 13 h).
2. Pitch & lore
Pitch (1 phrase) : chaque année le Lumeçon renferme le Dragon pour un an ; cette année, le carillon du beffroi s’est tu à 12 h 58, le combat n’a jamais fini, et Mons a basculé dans une Ducasse infernale qu’il faut traverser à la lance, au plomb et au bronze.
Le monde
- La Nuit de Ducasse : Mons est figée dans une nuit qui ne finit pas, ciel rouge sombre, braises en suspension, rues pavées éclairées par les guirlandes de la Ducasse restées allumées. Le temps est arrêté : les aiguilles du beffroi sont bloquées sur 12:58.
- Le Dragon (« le Doudou ») : créature de facettes, de pierre et de braise, dont les fissures brûlent d’un vert acide (même vert que l’emblème CM Interactive : c’est voulu). Il s’est enroulé autour du beffroi, queue en spirale.
- Les sbires (tous fantastiques, issus du bestiaire du Lumeçon et détournés) :
- Hommes de feuilles : dans la tradition, ils protègent le Dragon. Ici, des colosses de lierre et de branches animés par la sève du Dragon.
- Diables : dans la tradition, ils harcèlent la foule avec des vessies gonflées. Ici, des lutins rouges rapides qui lancent des vessies de braise rebondissantes.
- Écaillons : éclats d’écailles détachés du Dragon, essaims volants. Création du jeu.
- Les alliés : les Chinchins (dans la tradition, ils accompagnent Saint Georges) sont les derniers Montois debout ; ils tiennent des barricades, ravitaillent, donnent les objectifs. Ils ne sont jamais ennemis.
Le joueur
Le Chinchin — nom de code de l’héritier d’une lignée de Chinchins, Montois d’aujourd’hui en armure de rue (gilet balistique, brassard de Ducasse, casque à visière). Il ne joue pas « un saint » : il reprend le rôle du combat parce que personne d’autre ne peut finir le Lumeçon. Muet en jeu (pas de doublage v1) ; ses répliques passent par le HUD (texte bref).
Objectif v1
Traverser la Grand-Place, passer l’Hôtel de Ville et le Jardin du Mayeur, monter au Square du Château et affronter le Dragon au pied du beffroi. Victoire = le carillon sonne enfin 13:00 (cinématique : les 49 cloches, les braises retombent en pluie d’or, aube bleue).
Règles de ton
| Faire | Ne pas faire |
|---|---|
| Rapide, brutal, metal, ironique à la montoise (« Ça va, fieu ? ») | Caricature belge, blagues sur la ville |
| Patrimoine magnifié (beffroi, collégiale, Grand-Place = repères héroïques) | Dégrader, piller ou profaner des lieux réels |
| Collégiale Sainte-Waudru = sanctuaire / checkpoint, jamais un champ de bataille | Ennemis ou gore dans un lieu de culte, symboles religieux détournés |
| Car d’Or = char doré, symbole de la ville qui « monte d’un coup » | Représenter la châsse ou des reliques |
| Chant du Doudou évoqué (rythme, fragments) | Parodier le chant ou les paroles |
| Violence stylisée PEGI 16 max (§3.8) | Sang réaliste, démembrement humain |
Lignes clés (HUD/site) : « Et les Montois ne périront pas. » · « 12:58. Le carillon s’est tu. » · « Finis le combat. » · « Touche le singe, ça porte chance. »
3. Direction artistique du JEU
3.1 Métaphore et piliers
« Pierre bleue sous la braise » : une ville de pierre froide et de brique, rongée par un feu vert et orange, sculptée en facettes nettes (low-poly assumé, rendu moderne PBR + glow).
| Pilier | Traduction |
|---|---|
| Facettes | Tout est low/mid-poly à flat shading (normales par face). Pas de pixel art, pas de texture peinte. Le détail vient de la géométrie, de la lumière et du bruit procédural. |
| Lisible à 30 m | Ennemis lisibles par silhouette + couleur d’émissif ; décor désaturé, ennemis saturés. |
| Braise & bronze | Deux sources de couleur chaude : braise (danger, feu) et bronze (cloches, armes, récompenses). Le froid (pierre bleue, nuit) est le fond. |
| Montois | Chaque arène a un repère réel reconnaissable (beffroi visible depuis presque partout = boussole). |
3.2 Palette monde (valeurs OKLCH → sRGB)
| Token | OKLCH | Hex | Usage |
|---|---|---|---|
world.nuit |
0.16 0.04 270 | #070C1E |
Ciel haut, ombres profondes |
world.fog |
0.24 0.04 288 | #1F1D31 |
Couleur de fog/brume (violet-bleu nuit ; la braise reste à l’horizon) |
world.pierre_bleue |
0.42 0.025 250 | #434E5B |
Pierre bleue du Hainaut (soubassements, pavés, beffroi) |
world.pierre_claire |
0.58 0.02 245 | #717C86 |
Arêtes usées, encadrements, pierre éclairée |
world.brique |
0.50 0.12 35 | #9B4630 |
Façades de brique |
world.brique_sombre |
0.36 0.09 30 | #64271F |
Joints, briques brûlées |
world.bronze |
0.58 0.10 65 | #A36D34 |
Cloches, armes, singe, statues |
world.feu |
0.78 0.17 60 | #FF992B |
Flammes, lanternes, émissif chaud |
world.braise |
0.70 0.20 40 | #FF6728 |
Braises, projectiles ennemis, lave |
world.doudou |
— | #C6FF3D |
Émissif du Dragon et de ses éclats (vert CM Interactive) |
world.feuilles |
0.55 0.14 140 | #3F842E |
Feuillage des Hommes de feuilles (albedo) |
world.neon |
0.75 0.14 210 | #00C5DF |
Rares néons modernes (pharmacie, enseignes) : 1 à 3 par zone max |
Répartition à l’écran (cible) : 70 % froids désaturés (nuit, pierre), 20 % brique/bronze,
≤ 10 % émissifs saturés (braise, vert Doudou, néon). Le vert #C6FF3D est réservé au Dragon
et à ses créatures : jamais sur un objet ami ou un pickup.
3.3 Éclairage (Godot 4)
| Paramètre | Desktop (Forward+) | Android (Mobile) |
|---|---|---|
| Tonemap | AgX (fallback ACES), exposure 1.3, white 6.0, ambient energy 1.5 | ACES, exposure 1.4 |
| Glow | on, intensity 0.9, strength 1.1, bloom 0.08, HDR threshold 1.0, niveaux 2-5, blend additive | on, niveaux 3-4 seulement |
| Fog de profondeur | density 0.012, couleur violet-bleu nuit #1F1D31 (les murs lointains virent au froid, pas à la brique), sky affect 0.2 (le ciel garde son dégradé nuit) |
idem, density 0.016 |
| Volumetric fog | density 0.025, albedo #2A2A3A, emission #100808 ×0.4, anisotropy 0.35, length 64 m |
désactivé → faux rayons : cônes additifs (shader unshaded, alpha 0.08, fresnel) |
| Lune / key | DirectionalLight, #9DB4FF, energy 0.35, angle 35°, ombres PSSM 4 splits, 80 m |
2 splits, 50 m |
| Ambiance | sky contribution 0.4, ambient #1B2236 |
idem |
| Lumières locales | Omni « guirlandes » #FFB060 energy 1.5 range 6 m (pas d’ombre) ; feux #FF6A20 energy 3, range 10 m, flicker bruit 6 Hz ±20 % |
max 8 lumières/objet ; guirlandes en émissif seul |
| SSAO / SSIL | SSAO radius 1.2 intensity 1.5 ; SSIL off v1 | off |
| GI | VoxelGI par arène (ou LightmapGI bake au build) | lightmap uniquement |
Ciel : shader sky_braise : dégradé world.nuit (zénith) → #1B121E (horizon violet sombre),
lueur d’incendie étroite à l’horizon côté beffroi (gaussienne #FF5A1F ×1.4, largeur 0.42 rad,
hauteur 0.1), fumée #0C0B12, étoiles masquées par la fumée (bruit FBM animé 0.01 u/s). Cible
mesurée sur les captures : le froid domine (≈ 70 % de l’image), la braise reste un liseré d’horizon
et la lumière des feux/guirlandes. Braises en suspension : GPUParticles3D 400 (desktop) / 120 (mobile),
taille 2-6 cm, émissif world.braise ×4, montée 0.3 m/s + turbulence.
3.4 Matériaux procéduraux (shaders StandardMaterial3D / ShaderMaterial)
| Matériau | Recette |
|---|---|
| Pierre bleue | albedo world.pierre_bleue + bruit cellulaire world-space (échelle 0.4 m, ±6 % luminance), roughness 0.85, arêtes éclaircies via courbure approx. (dot normale/face voisine ou triplanar sur bevel) vers pierre_claire |
| Brique | motif briques en shader (22 × 6.5 cm, joint 1 cm brique_sombre), variation par brique hash ±8 % teinte, roughness 0.9 ; normal map générée par le motif (dérivées) |
| Pavés | grille décalée 12 × 12 cm, pierre bleue plus sombre (L 0.34), roughness 0.6 + flaques (masque bruit, roughness 0.1) qui reflètent les braises |
| Bronze | metallic 1.0, albedo world.bronze, roughness 0.35, patine verte #4E7A62 dans les creux (AO) à 30 % |
| Écailles du Dragon | flat shading, albedo #1F2A1A à #34452A par face (hash), metallic 0.2, roughness 0.5 ; fissures = émissif #C6FF3D ×3 sur arêtes (barycentric wireframe shader, largeur 0.02) pulsant à 0.8 Hz |
| Feuillage | quads double face alpha-scissor (forme de feuille SDF dans le shader), albedo world.feuilles ±15 % teinte, subsurface/transmission 0.3, vent = sin(temps + position) 0.05 m |
| Verre de façade | albedo #0B1220, metallic 0.0, roughness 0.05, émissif intérieur aléatoire (30 % des fenêtres) #FFB060 ×0.6 |
3.5 Lisibilité FPS
- Contraste de valeur : décor L 0.15-0.60 ; ennemis portent toujours un émissif L ≥ 0.70.
- Code émissif ennemi (une couleur = une famille, doublé par la forme et le son) :
Hommes de feuilles = yeux/cœur ambre
#FFB347· Diables = rouge braise#FF3B2F· Écaillons + Dragon = vert Doudou#C6FF3D. - Projectiles ennemis : toujours émissifs ×4 + traînée, jamais de la couleur des projectiles du
joueur (joueur = blanc chaud
#FFF1D6/ bronze / cyan pour le Carillon). - Hit-flash : sur impact, l’ennemi passe en émissif blanc
#FFFFFF×2 pendant 60 ms (uniformhit_flash1→0, ease-out). Point faible touché : flash + étincelles bronze + son « tink » aigu. - Mort : l’ennemi se fige 80 ms (hit-stop global 40 ms pour les élites), puis se brise en facettes (fragments = triangles du mesh, impulsion radiale 4-8 m/s, durée de vie 1.2 s, fondu par dissolve bruit) + gerbe de braises ou de feuilles selon la famille.
- Outline : aucune en conditions normales ; option accessibilité « Contours ennemis » = inverse hull 2 cm couleur de la famille.
3.6 Caméra & viewmodel
| Paramètre | Valeur |
|---|---|
| FOV | vertical 70° par défaut (≈ 103° horizontal en 16:9), réglable 60-90° ; keep_aspect = KEEP_HEIGHT |
| Viewmodel | rendu sur couche 2 avec une 2ᵉ caméra FOV fixe 55° (SubViewport ou cull_mask), pour ne pas déformer les armes quand le FOV change |
| Hauteur des yeux | 1.65 m ; accroupi 1.0 m |
| Vitesses | marche 9 m/s (DOOM-like rapide), sprint non (vitesse de base suffit), dash 14 m/s 0.18 s, cooldown 1.2 s, saut 1.3 m |
| Head bob | amplitude 1.5 cm vertical, 0.8 cm latéral, fréquence liée au pas ; 0 si « réduire les mouvements » |
| Recul caméra | pitch kick par arme (§5), retour ressort k=180, amortissement 0.8 |
| Screen shake | trauma model (shake = trauma²), max 0.6° rotation, décroissance 1.5/s ; multiplicateur option 0-100 % |
| Viewmodel sway | décalage max 3 cm opposé au mouvement de souris, lerp 10/s |
3.7 Effets
- Muzzle flash : 2-3 quads croisés émissifs +
OmniLight3D1 frame (energy 4, range 4 m). - Impacts : étincelles GPUParticles (16, vie 0.25 s), décal procédural (cercle de suie bruité, max 64 décals, recyclés), éclats de pierre (6 petits tétraèdres physiques) sur pierre bleue.
- Dégâts reçus : vignette rouge
#EE343Balpha 0-0.35 en bord d’écran, flèche directionnelle (§7), aberration chromatique 0.004 pendant 120 ms (désactivable). - Soin/armure : bref voile bronze / cyan en bord d’écran 200 ms.
3.8 Violence — PEGI 16 max (recommandation)
Pas de sang. Les ennemis sont végétaux, minéraux ou démoniaques fantastiques : ils se brisent en facettes, éclatent en feuilles et sève ambrée, ou s’éteignent en braises. Aucun humain n’est blessé à l’écran (les Chinchins se replient, ils ne meurent pas). Le joueur mort : écran qui se fige en facettes et fondu au noir, pas de cadavre.
4. Bestiaire v1
PV calibrés pour l’arsenal §5 (Lance 40 / Carillon 7×12 / Roue 35 / Bourdon 300 en zone).
Les tailles sont la hauteur totale. Toutes les silhouettes sont des primitives (CSGShape3D ou
ArrayMesh généré) en flat shading.
4.1 Homme de feuilles — le tank
| Taille | 2.3 m, très large (1.4 m) — silhouette « buisson debout » |
| Primitives | tronc = capsule r 0.35 h 1.6 ; tête = sphère basse définition (icosphère subdiv 1) r 0.3 ; bras = 2 cylindres effilés 1.1 m terminés par 3 cônes (griffes de branche) ; couverture = MultiMesh 300 feuilles (quads 12 cm) distribuées sur la surface, orientées vers l’extérieur ; jambes = 2 capsules courtes |
| Couleurs | feuilles world.feuilles, tronc #3A2A1C, yeux + cœur visible entre les feuilles ambre #FFB347 ×5 |
| PV | 220 ; point faible : cœur ambre (×2 dégâts), découvert quand les feuilles sont arrachées (chaque tranche de 50 dégâts retire 25 % des feuilles) |
| Comportement | lent (3 m/s), avance tout droit, protège les Diables derrière lui (bouclier vivant) ; si le joueur est à < 4 m : coup de bras en arc (0.6 s de préparation, bras qui se lève = télégraphe) |
| Attaques | balayage 25 dégâts ; à distance : lance un fagot d’épines (projectile parabolique, 15 dégâts, émissif ambre) toutes les 4 s |
| Son signature | froissement de feuilles granulaire (bruit blanc filtré passe-bande 2-6 kHz, enveloppes de grains de 20 ms) + grognement grave de bois qui craque (bruit brun + résonances 80/140 Hz) |
| Mort | explosion de feuilles (MultiMesh libérée, gravité 0.4, tourbillon) + sève ambre en gouttelettes |
4.2 Diable — le harceleur
| Taille | 1.5 m, maigre, voûté, toujours en mouvement |
| Primitives | corps = cône inversé (épaules larges, taille fine) h 0.7 ; tête = boîte biseautée 0.25 m ; 2 cornes = cônes 0.25 m inclinés 30° ; bras longs = capsules fines r 0.05 ; queue = courbe (Path3D + CSGPolygon3D) terminée par un tétraèdre ; dans une main la vessie = sphère gonflée r 0.15 |
| Couleurs | corps #2A0E0E, facettes rouges #8E1E1A ; yeux, bouche et vessie rouge braise #FF3B2F ×4 |
| PV | 60 ; tête ×1.5 |
| Comportement | rapide (11 m/s), strafe en zigzag, saute sur les rebords, attaque en meutes de 3-5, fuit quand il reste 1 seul |
| Attaques | vessie de braise : grenade rebondissante (2 rebonds, explose à 2 s ou au contact, rayon 2.5 m, 20 dégâts, télégraphe = clignotement 4 Hz) ; griffure au contact 10 |
| Son signature | rire aigu en granulaire (formants « i/é », pitch 600-900 Hz, glissandos) + « boing » élastique des vessies (sinus avec pitch-bend descendant 300→120 Hz) |
| Mort | implosion en braises rouges + « pop » de la vessie |
4.3 Écaillon — l’essaim
| Taille | 0.7 m, volant à 1.5-4 m du sol |
| Primitives | octaèdre étiré (un sommet en pointe avant 0.5 m), 2 « ailes » = triangles plats animés (battement 12 Hz) ; noyau = petite icosphère émissive visible par une face ouverte |
| Couleurs | facettes #1F2A1A, arêtes et noyau vert #C6FF3D ×4, traînée verte |
| PV | 18 (meurt en 1 tir de presque toute arme) |
| Comportement | essaims de 6-12, boids (séparation 1.2 m), orbitent puis piquent en kamikaze (vitesse 16 m/s, télégraphe : le noyau passe à ×8 et un sifflement monte 0.5 s avant) |
| Attaques | impact kamikaze 15 dégâts ; en phase Dragon : tirent une aiguille verte (8 dégâts) |
| Son signature | bourdonnement cristallin (2 sinus désaccordés 220/223 Hz + harmonique 3 avec AM 12 Hz), sifflement de piqué (bruit filtré, sweep 1→4 kHz) |
| Mort | éclate en 8 triangles verts qui tombent en tournoyant, « tink » de verre |
4.4 BOSS — Le Dragon (« le Doudou »)
Écho direct de l’emblème CM Interactive (dragon low-poly en spirale, #C6FF3D) : facettes
assumées, gueule de crocodile, crête de pointes, queue enroulée en spirale.
| Taille | longueur 22 m (queue déroulée), hauteur au garrot 4 m, tête 2.5 m ; enroulé autour de la base du beffroi en phase 1 |
| Primitives | corps = plaques facettées qui se chevauchent le long d’une chaîne de 14 segments (rayon décroissant 1.6 → 0.3 m) suivant une spline animée, cou continu jusqu’à la tête ; queue enroulée en spirale qui s’affine ; tête de crocodile (×1.3) à 2 mâchoires + rangée de dents = cônes 15 cm ; crête = 30 cônes (h 0.3-0.9 m) le long du dos ; 4 pattes = 3 boîtes articulées + 3 cônes (griffes) ; extrémité de queue = touffe de crins (40 rubans fins, #D9D2C0) |
| Couleurs | écailles #1F2A1A → #34452A par facette ; fissures fines #C6FF3D ×3 pulsées (≈ 30 % des arêtes de facettes, jamais sur pointes ni cornes) + liseré fresnel 0.4 ; intérieur de la gueule #FF6728 ; yeux #C6FF3D ×4 |
| PV | 6 000 en 3 phases (2 000 chacune) |
| Points faibles | yeux (×2), touffe de la queue (×3, tradition : on arrache les crins du Doudou pour la chance) ; écailles du dos ×0.5 |
| Phase 1 « L’enroulé » | autour du beffroi ; souffle de flammes en cône (90°, 6 m/s de balayage, 12 dégâts/0.2 s, télégraphe = gueule qui rougeoie 1 s) ; queue qui fouette le sol (onde de choc à sauter, 30 dégâts) ; lâche 2 essaims d’Écaillons |
| Phase 2 « Le Lumeçon » | descend sur la place ; tourne en rond sur la piste (comme le Doudou dans la tradition) ; la queue passe à portée : la toucher = étourdit 3 s ; charges en ligne droite (40 dégâts, télégraphe = grattement du sol + rugissement) ; Diables en renfort |
| Phase 3 « Douze heures cinquante-huit » | les fissures passent à ×6, l’écran s’assombrit, pluie de braises ; le Dragon remonte sur le beffroi et crache des boules de feu en salves de 5 ; finisher : à 0 PV, prompt « Finis le combat » → le joueur plante la Lance (cinématique 6 s), le carillon sonne 13:00 |
| Son signature | rugissement = 3 couches (sub sinus 45 Hz glissant à 35 Hz, bruit rose passé dans un filtre à formants « a→o », distorsion waveshaper) ; pas lourds (boom 60 Hz + débris) ; crépitement permanent des fissures (bruit impulsionnel aléatoire 30/s) |
Alliés non combattants : Chinchin (1.75 m, capsule + casque boîte + brassard bronze, émissif
blanc chaud #FFF1D6 : jamais confondu avec un ennemi).
5. Arsenal v1
Couleurs « joueur » : blanc chaud #FFF1D6, bronze world.bronze, cyan carillon #7FE6FF.
| Arme | Rôle | Dégâts | Cadence | Munitions (max) | Touche |
|---|---|---|---|---|---|
| 1. Lance de Lumeçon | mêlée / poussée | 40 (coup), 120 (charge 0.8 s, recul ennemi 6 m) | 1.6 coups/s | ∞ | 1 / molette |
| 2. Le Carillon | fusil à pompe sonique | 7 ondes × 12 (dispersion 8°), portée efficace 15 m | 1.2 tir/s | Notes (49) | 2 |
| 3. La Roue | lanceur de roues d’or qui ricochent | 35 + 10 par ricochet (3 max), traverse les petits ennemis | 3 tirs/s | Rayons (120) | 3 |
| 4. Le Bourdon | arme lourde (BFG) | 300 dans un rayon de 6 m + onde 60 jusqu’à 14 m | 1 tir / 2.5 s (charge 0.7 s) | Bronze (6) | 4 |
5.1 Lance de Lumeçon
- Forme : hampe = cylindre r 2.5 cm, 1.8 m (on en voit 0.9 m) ; fer = losange (2 pyramides à base carrée) 30 cm, bronze poli ; ruban rouge-blanc (2 rubans procéduraux, physique de chaîne simple).
- Feedback : coup = estoc avant 0.12 s, traînée blanche ; charge = le fer chauffe (émissif
#FFF1D60 → ×4) et la caméra recule de 3 cm ; impact charge = hit-stop 60 ms + shake 0.4. - Son : « whoosh » (bruit filtré, sweep 400 Hz → 2 kHz, 150 ms) ; impact = transitoire métal + thump 90 Hz ; charge pleine = « ting » de cloche aiguë (partiel 2.4 kHz).
5.2 Le Carillon
- Forme : 7 petites cloches en couronne (sphères tronquées + lèvre torique, bronze) montées sur un barillet rotatif ; crosse = boîte biseautée pierre bleue ; marteau mécanique à l’arrière.
- Feedback : chaque onde = anneau torique translucide cyan
#7FE6FF(shader fresnel, alpha 0.5 → 0 en 0.25 s) qui grandit en avançant ; la couronne tourne d’1/7 de tour à chaque tir ; recul pitch 4°. - Son : accord de 3 cloches (synthèse additive §9.2, fondamentale aléatoire dans une gamme pentatonique sur G, attaque frappée + bruit 5 ms) + boom grave 70 Hz ; le tir suivant prend la note suivante de la gamme : tirer en rafale « joue » une mélodie.
5.3 La Roue
- Forme : lanceur en arbalète, sur l’avant une roue à 8 rayons (tore + 8 cylindres, or bronze
clair
#D9A54A) qui tourne en permanence (vitesse ∝ cadence) ; le projectile est une copie de la roue, 25 cm, qui tourne à 30 tr/s. - Feedback : traînée bronze circulaire, étincelles à chaque ricochet, la roue chargée sur l’arme se reforme par 8 rayons qui s’emboîtent (0.3 s).
- Son : « chunk » mécanique + sifflement rotatif (bruit filtré, modulé 30 Hz) ; ricochet = « ping » métallique (sinus 1.8 kHz + 4.1 kHz, décroissance 200 ms).
- Clin d’œil : la roue de l’emblème CARDOR Media (char du Car d’Or).
5.4 Le Bourdon
- Forme : grosse cloche (profil de révolution
CSGPolygon3Den mode spin, 40 cm) tenue à deux mains dans un cadre de fer ; batteur visible à l’intérieur, rougeoie pendant la charge. - Feedback : charge = la cloche vibre (shader de déplacement 2 mm, 40 Hz), les bords de l’écran
se resserrent (vignette 0.2) ; tir = sphère d’onde (déformation d’écran en réfraction via
SCREEN_TEXTURE, rayon 0 → 14 m en 0.4 s) + flash bronze ; 0 shake si « réduire les mouvements ». - Son : bourdon de beffroi (hum 55 Hz + partiels inharmoniques §9.2, déclin 6 s), sub-drop 80 → 30 Hz, compresseur de mix qui duck tout le reste de 6 dB 400 ms.
Pickups (formes simples flottantes, rotation 45°/s, bob 8 cm) : santé = gaufre de Ducasse (boîte quadrillée, +25), santé max = tarte au maton (cylindre plat, +100 jusqu’à 200), armure = brassard bronze (+25), munitions = boîtes biseautées à la couleur de l’arme.
6. Niveau v1 — « La Grand-Place jusqu’au beffroi »
Géographie stylisée (proportions inspirées du vrai Mons, pas un relevé). Longueur de parcours ≈ 520 m, durée cible 18-25 min. Le beffroi (87 m réels, ici 60 m pour le cadrage) est visible de presque toute la carte : c’est la boussole.
[Z5 SQUARE DU CHÂTEAU — ARÈNE BOSS]
beffroi ◉ (Dragon enroulé)
│ montée pavée
[Z4 RUE DES CLERCS — rampe, vue collégiale (sanctuaire)]
│
[Z3 JARDIN DU MAYEUR — arène en terrasses]
│ passage sous porche
[Z2 HÔTEL DE VILLE — singe, cour intérieure]
│
[Z1 GRAND-PLACE — grande arène ouverte, piste du Lumeçon]
│
[Z0 RUE DE LA CLEF — intro, barricade des Chinchins]
| Zone | Dimensions | Points d’intérêt | Encounters |
|---|---|---|---|
| Z0 Rue de la Clef | rue 8 × 80 m, façades brique 3 étages | barricade de chaises de terrasse, guirlandes, horloge du beffroi au loin (12:58), premier Chinchin (tuto) | tuto : 3 Diables isolés ; pickup Lance → Carillon en fin de rue |
| Z1 Grand-Place | place ~120 × 55 m, légère pente 2 %, pavés | piste du Lumeçon (anneau de barrières, Ø 40 m, au centre), façades à pignons, terrasses renversées, kiosque de friteries en feu (couvertures), Hôtel de Ville au nord | 3 vagues : (1) 6 Diables + 2 Hommes de feuilles ; (2) essaim de 10 Écaillons ; (3) 2 Hommes de feuilles + 8 Diables ; La Roue sur le toit d’un kiosque (accès par terrasses) |
| Z2 Hôtel de Ville | façade 45 m, porche 6 × 5 m, cour 20 × 15 m | singe du Grand-Garde à gauche du porche (secret), porche gothique sombre, cour avec arcades | couloir d’embuscade : 4 Diables tombent des arcades, 1 Homme de feuilles bloque la sortie |
| Z3 Jardin du Mayeur | jardin 40 × 30 m en 3 terrasses (Δ 2 m) | fontaine (eau = surface miroir), bancs, arbres torturés (cylindres + feuillage), hauteur = avantage | arène verrouillée : 3 vagues mixtes (≈ 30 ennemis), recharge Bronze → Le Bourdon au centre après la vague 2 |
| Z4 Rue des Clercs | rampe 6 × 110 m, pente 9 % | vue sur la collégiale Sainte-Waudru (silhouette gothique au loin, éclairée en bleu clair, intacte) ; parvis = checkpoint sanctuaire (aucun ennemi n’y entre, braises qui s’éteignent) | descente de 2 Hommes de feuilles qui roulent des fagots ; Écaillons en embuscade depuis les toits |
| Z5 Square du Château | plateau 70 × 50 m, beffroi au nord, murets, arbres | base du beffroi (Dragon enroulé), cadran géant 12:58, piste circulaire pour la phase 2, 4 colonnes de couverture (blocs de pierre bleue renversés), ravitaillement aux 4 coins entre les phases | boss §4.4 |
Métriques de gameplay : couloirs ≥ 4 m de large, plafonds ≥ 4 m (dash et sauts), couverts tous les 8-12 m en arène, hauteurs de rebord grimpables ≤ 1.0 m, un pickup de santé visible depuis chaque point d’entrée d’arène.
Secrets
- Le singe du Grand-Garde (Z2) : petit singe bronze 25 cm (sphères + capsules, flat shading), prompt « Caresser la tête » (main gauche à l’écran). Effet : « Chance de Mons » pendant 120 s : +25 % de chances de critique, pickups ×1.5, son de carillon joyeux (4 notes ascendantes) et icône singe bronze au HUD. Une fois par partie.
- Les crins du Doudou : 3 touffes de crins cachées (toit du kiosque Z1, derrière la fontaine Z3, sous un muret Z5). Chacune +10 PV max permanents pour la run ; 3/3 = arme « Lance d’or » cosmétique.
- Le terminal CM (Z0, vitrine d’une boutique au rez-de-chaussée) : écran CRT avec le dragon CM Interactive en vert (§10).
7. UI / HUD — design system du jeu « FORGE »
Distinct de CARDOR et du site. Métaphore : plaques de fer forgé rivetées sur pierre bleue, coins coupés à 45° (écho des facettes), chiffres massifs condensés, lueur de braise.
7.1 Typographie (OFL, fichiers .ttf/.woff2 embarqués)
| Rôle | Police | Usage |
|---|---|---|
| Display | Big Shoulders Display (Black 900, ExtraBold 800) | titre LUMEÇON, en-têtes de menus, « VAGUE 2 » |
| Chiffres HUD | Barlow Condensed (SemiBold 600 / Bold 700) avec tnum |
santé, armure, munitions, timer |
| Texte UI | Barlow (Regular 400 / Medium 500) | options, descriptions, sous-titres |
Ombre HUD : outline_size 0, shadow_offset (0, 2), shadow #000000 alpha 0.6 (lisible sur ciel
de braise).
7.2 Couleurs UI (contrastes calculés sur ui.bg #04080D)
| Token | OKLCH | Hex | Contraste | Usage |
|---|---|---|---|---|
ui.bg |
0.13 0.015 250 | #04080D |
— | fond menus (alpha 0.85 en jeu) |
ui.panel |
0.20 0.02 250 | #10161D |
— | plaques, cartes |
ui.panel_raised |
0.25 0.02 252 | #1A222B |
— | survol, ligne sélectionnée, onglet survolé (ajout FORGE) |
ui.line |
0.40 0.02 250 | #3E4752 |
— | bordures, séparateurs (non porteur d’info) |
ui.text |
0.94 0.02 85 | #F1EADC |
16.9:1 | texte principal (« os ») |
ui.text_dim |
0.68 0.02 250 | #8F9AA4 |
7.0:1 | libellés secondaires |
ui.accent |
0.70 0.20 40 | #FF6728 |
6.9:1 | focus, sélection, réticule (braise) |
ui.health |
0.64 0.21 24 | #F0444A |
5.4:1 | santé, dégâts (toujours avec chiffre + icône) ; relevé depuis #EE343B (4.49:1 sur ui.panel) ; jamais en texte sur ui.panel_raised |
ui.armor |
0.78 0.12 230 | #59C5F5 |
10.3:1 | armure |
ui.ammo |
0.80 0.14 85 | #E7B643 |
10.7:1 | munitions, pickups bronze |
ui.boss |
— | #C6FF3D |
16.1:1 | barre de vie du Dragon uniquement |
ui.on_accent |
0.13 0.015 250 | #04080D |
6.9:1 | texte sur bouton accent |
7.3 Tokens de forme et de mouvement
| Famille | Tokens |
|---|---|
Tailles de texte (réf. 1080p, mise à l’échelle par content_scale) |
t.xs 16 · t.sm 20 · t.md 24 · t.lg 32 · t.xl 48 · t.hud 64 (chiffres) · t.display 120 |
| Espacements | s.1 4 · s.2 8 · s.3 12 · s.4 16 · s.6 24 · s.8 32 · s.12 48 ; marge HUD = 48 px (safe area 5 %) |
| Rayons | 0 partout ; coin coupé cut.sm 6 px · cut.md 12 px · cut.lg 20 px (polygone, StyleBoxFlat corner_detail 1 + corner_radius simulé par biseau) |
| Bordures | 2 px ui.line ; focus 3 px ui.accent + glow 8 px alpha 0.5 |
| Durées | d.instant 60 ms (hit-marker) · d.fast 120 ms (hover/focus) · d.base 200 ms (panneaux) · d.slow 400 ms (transitions d’écran) · d.count 300 ms (compteurs qui défilent) |
| Easing | sortie Tween.EASE_OUT + TRANS_QUART ; entrée EASE_IN + TRANS_CUBIC ; jamais de rebond sur l’UI |
7.4 Composants
- HUD bas-gauche : plaque coupée 320 × 96 : icône cœur facetté + santé
t.hudui.health(texteui.textsi > 50) ; dessous armure (icône brassard,ui.armor) ; barre segmentée (10 segments de 10 PV) sous les chiffres. < 25 PV : pulsation 1 Hz de la plaque (désactivable). - HUD bas-droite : munitions de l’arme active
t.hudui.ammo/ max ent.mdui.text_dim; silhouette de l’arme (icône vectoriellePolygon2D) ; roue des 4 armes en icônes 40 px (actif = liseré accent). - Haut-centre : objectif (
t.sm, 1 ligne), horloge 12:58 stylisée (cadran 48 px) ; barre de boss = 60 % de largeur, 14 px,ui.boss, découpée en 3 tiers (phases), nom « LE DOUDOU » en Big Shoulderst.lg. - Réticule : point 4 px
ui.accent+ 4 tirets 10 × 2 px à 8 px du centre, contour noir 1 px ; écartement dynamique selon dispersion ; hit-marker = croix blanche 45°d.instant, kill = croixui.accent+ 1.5× ; options : 6 styles, couleur, taille 50-200 %. - Indicateurs de dégâts : arcs rouges autour du centre (rayon 160 px), 1 s.
- Menus : fond = scène 3D floutée (Gaussian 8 px) +
ui.bg0.85 ; liste verticale à gauche, itemst.lgBig Shoulders majuscules, item focalisé = barre accent 4 px à gauche + décalage 12 px + flèche « ▸ ». - Boutons : hauteur 56 (desktop) / 72 (tactile), padding horizontal 24, plaque
ui.panel, coincut.md; états : défaut / hover (bordureui.text_dim) / focus (bordure accent 3 px + glow) / pressé (fond accent, texteui.on_accent) / désactivé (alpha 0.4, jamais seul indicateur). - Sliders : rail 4 px
ui.line, rempliui.accent, poignée losange 20 px ; valeur numérique toujours affichée à droite ; ←/→ = pas de 5 %, Maj = 1 %. - Toggles : 2 cases « OUI / NON » texte (pas seulement une couleur).
- Contrôles tactiles (Android tablette) : stick gauche flottant (zone 40 % gauche de l’écran, Ø 180 px, deadzone 12 %) ; regard = glisser sur la moitié droite (sensibilité réglable, gyroscope optionnel) ; boutons ronds-coupés : Tir Ø 120 px (bas-droite, marge 48), Saut Ø 88, Dash Ø 88, Arme suivante Ø 72, Interagir Ø 72 (n’apparaît qu’en contexte) ; opacité 0.55, 0.85 pressé ; disposition éditable et sauvegardée ; cibles ≥ 48 dp.
- États de focus manette/clavier : toute l’UI navigable au D-pad/flèches ; focus initial toujours défini ; glyphes de boutons adaptés à l’entrée active (clavier, Xbox, PlayStation, générique) ; B/Échap = retour ; un seul style de focus (accent 3 px + glow), visible sur toute surface.
7.5 Accessibilité (menu « Accessibilité », proposé au premier lancement)
| Option | Défaut | Effet |
|---|---|---|
| Réduire flashs | non | hit-flash ×0.3, muzzle light off, flash du Bourdon remplacé par un fondu, pas d’éclair > 3/s (WCAG 2.3.1) |
| Réduire mouvements | non | head bob 0, shake 0, recul caméra ×0.3, aberration chromatique off |
| Mode daltonien | off | Deutéranopie / Protanopie / Tritanopie : remappe les émissifs ennemis (Hommes de feuilles → blanc-jaune #FFF3A0, Diables → magenta #FF4FD8, Dragon → cyan #5FE8FF) et santé → orange #FF9A3C |
| Contours ennemis | off | outline couleur de famille |
| Taille du texte | 100 % | 80 / 100 / 125 / 150 % (le HUD se réorganise, pas de chevauchement) |
| Sous-titres | on | sous-titres + sous-titres sonores (« [rugissement au nord] ») fond ui.bg 0.75 |
| Réticule toujours centré | on | point fixe même sans arme (anti-cinétose) |
| FOV | 70° | 60-90° |
| Aide à la visée | on (tactile/manette) | légère adhérence, off au clavier-souris |
| Maintien / bascule | maintien | pour charge Lance et Bourdon |
Contrastes : tout texte ≥ 4.5:1 sur son fond (voir §7.2) ; information jamais portée par la couleur seule (icône + chiffre + forme).
8. Design system du SITE vitrine « NUIT DE DUCASSE »
Cousin du jeu, pas jumeau : même nuit, même braise, mais affiche de Ducasse plutôt que HUD. Métaphore : « l’affiche collée sur la pierre bleue, la nuit du Lumeçon » — typographie condensée géante, grands aplats sombres, une seule braise d’accent, captures du jeu comme matière.
8.1 Piliers
| Pilier | Traduction |
|---|---|
| Affiche | Titres énormes en capitales condensées, mises en page à forte asymétrie, numéros de section |
| Une braise | un seul accent --accent (CTA, focus, état actif) ; le vert Doudou n’apparaît que dans les images du jeu et le logo CM Interactive |
| Captures d’abord | les rendus du jeu portent la couleur ; l’UI reste en pierre bleue sombre |
| Rapide | statique, polices auto-hébergées (woff2 subset latin), images AVIF/WebP, LCP < 2 s |
8.2 Couleurs (OKLCH, contrastes WCAG calculés)
| Token | OKLCH | Hex | Contraste |
|---|---|---|---|
--canvas |
0.155 0.018 255 | #070D14 |
— |
--surface-1 |
0.195 0.020 255 | #0F151E |
— |
--surface-2 |
0.235 0.022 255 | #171F28 |
— |
--surface-3 |
0.285 0.024 255 | #222B36 |
— |
--line-1 |
0.33 0.022 255 | #2E3641 |
1.6:1 sur canvas (décoratif) |
--line-2 |
0.50 0.025 255 | #5A6472 |
3.3:1 canvas · 3.1:1 surface-1 (bordures de composants, WCAG 1.4.11 ; relevé depuis L 0.45) |
--text-1 |
0.96 0.008 80 | #F5F1EC |
17.4:1 canvas · 12.8:1 surface-3 |
--text-2 |
0.80 0.015 250 | #B7BFC7 |
10.5:1 canvas · 7.7:1 surface-3 |
--text-3 |
0.68 0.018 250 | #9099A3 |
6.8:1 canvas · 5.8:1 surface-2 · 5.0:1 surface-3 (relevé depuis L 0.66 pour l’AA sur surface-3) |
--accent |
0.72 0.19 42 | #FF7333 |
7.2:1 canvas · 6.2:1 surface-2 |
--on-accent |
0.18 0.03 42 | #1D0D07 |
7.0:1 sur accent |
Pas de mode clair (site nocturne assumé) ; color-scheme: dark. Pas de dégradés décoratifs hors
du hero (lueur radiale --accent à 12 % d’opacité derrière le titre).
8.3 Typographie (OFL, auto-hébergée)
| Rôle | Police | Réglages |
|---|---|---|
| Display | Archivo variable, wdth 62 (ExtraCondensed), wght 800-900, capitales, letter-spacing -0.01em |
titres, chiffres clés |
| Texte | Archivo wdth 100, wght 400/600 |
paragraphes, UI |
| Meta | JetBrains Mono 500, capitales, letter-spacing 0.08em |
numéros de section, plateformes, versions |
Échelle (fluide, 360 → 1440 px) :
| Token | Valeur | Interligne |
|---|---|---|
--fs-xs |
clamp(0.75rem, 0.72rem + 0.15vw, 0.8125rem) |
1.4 |
--fs-sm |
clamp(0.875rem, 0.85rem + 0.12vw, 0.9375rem) |
1.5 |
--fs-base |
clamp(1rem, 0.96rem + 0.2vw, 1.125rem) |
1.6 |
--fs-lg |
clamp(1.25rem, 1.15rem + 0.45vw, 1.5rem) |
1.4 |
--fs-xl |
clamp(1.75rem, 1.5rem + 1.1vw, 2.5rem) |
1.1 |
--fs-2xl |
clamp(2.5rem, 1.9rem + 2.8vw, 4.5rem) |
0.95 |
--fs-hero |
clamp(4rem, 2.2rem + 9vw, 11rem) |
0.85 |
Mesure de texte : 62ch max.
8.4 Espace, rayons, motion
| Famille | Tokens |
|---|---|
| Espacements | --sp-1 4px · --sp-2 8 · --sp-3 12 · --sp-4 16 · --sp-6 24 · --sp-8 32 · --sp-12 48 · --sp-16 64 · --sp-24 96 · section clamp(4rem, 3rem + 5vw, 8rem) |
| Rayons | --r-0 0 (défaut) · --r-cut coin coupé 10 px via clip-path (cartes, boutons) · --r-pill 999px (badges plateforme uniquement) |
| Grille | 12 colonnes, gouttière 24, marges 16 (mobile) → 48 (≥ 1024) ; max 1320 px |
| Durées | --dur-1 120ms (hover) · --dur-2 240ms (révélations) · --dur-3 480ms (hero) · --dur-4 900ms (lueur de braise, boucle) |
| Easing | --ease-out cubic-bezier(.22,1,.36,1) · --ease-in-out cubic-bezier(.65,0,.35,1) |
| Règles | uniquement transform/opacity/filter ; révélations au scroll : translateY 24px + opacity, une fois ; prefers-reduced-motion → aucune translation, fondus ≤ 120 ms, braises du hero figées |
8.5 Primitives
Button (primaire : fond accent, texte --on-accent, coin coupé ; secondaire : bordure --line-2,
texte --text-1 ; hauteur 48, cible ≥ 44 px ; focus = outline: 3px solid var(--accent); outline-offset: 3px) · Badge plateforme (mono, pill, --surface-2) · Card (surface-1,
bordure line-1, coin coupé, hover = bordure line-2 + image scale 1.03) · SectionHeader (numéro
mono « 03 — ARSENAL » + titre display) · StatBar (barres de stats d’armes/ennemis : 10 segments,
remplis accent, valeur en clair à côté) · Gallery (lightbox accessible, flèches + Échap) ·
DownloadCard (OS détecté mis en avant, autres en liste) · Quote (citation montoise en display
italique simulée par font-style: oblique 8deg).
8.6 Sections du site
| # | Section | Contenu |
|---|---|---|
| 00 | Hero | key art plein cadre (rendu Godot), titre LUMEÇON --fs-hero, baseline, CTA « Télécharger » (OS détecté) + « Voir la bande-annonce » ; horloge 12:58 en mono ; braises animées CSS (20 particules, transform only) |
| 01 | Le jeu | pitch, 3 piliers (Rapide · Montois · Procédural), boucle vidéo muette 10 s |
| 02 | Bestiaire | 4 cartes (3 ennemis + Dragon), silhouette, PV/vitesse en StatBar, une ligne de lore |
| 03 | Arsenal | 4 armes, rendu de viewmodel, stats dégâts/cadence/munitions |
| 04 | Mons | le lore + les vrais lieux (Grand-Place, beffroi UNESCO, collégiale, singe, Lumeçon) avec un ton respectueux : « Le jeu est fantastique ; la Ducasse est bien réelle, venez la voir. » |
| 05 | Galerie | 8-12 captures, lightbox |
| 06 | Télécharger | Windows (.exe zip), macOS (.dmg universel), Linux (AppImage / .tar.gz), Android tablette (.apk / store) ; tailles, versions, config minimale, sommes SHA-256 |
| 07 | Crédits | « Un jeu CM Interactive · Son CM Soundworks · Une production CARDOR Media » avec les 3 logos en couleurs de marque ; polices et licences |
| 08 | Presse | kit presse (zip : logos, key art, captures, fiche), contact, fiche technique |
| — | Footer | logo CM Interactive, mentions légales, PEGI 16 (indicatif), langues |
9. Direction sonore (CM Soundworks)
Tout est synthétisé par script (ex. Python + numpy → WAV 48 kHz 24 bit → OGG Vorbis q6 pour le jeu, OGG/MP3 pour le site). Pas de sample enregistré. Chaque son a un générateur paramétrique et une graine fixe (reproductible).
9.1 Palette
| Couleur sonore | Rôle |
|---|---|
| Cloches de bronze (carillon détourné) | identité : armes, UI, récompenses, horloge |
| Tambours de Ducasse (grosse caisse, caisse claire en roulements) | tension, vagues, musique |
| Metal / indus (guitares synthétiques saturées, basses sub) | combat |
| Feu et pierre (crépitement, grondement, éboulis) | Dragon, ambiances |
| Foule absente | la ville est vide : échos lointains de fanfare déformée, plus aucune voix |
9.2 Recettes de synthèse
- Cloche (additive, partiels inharmoniques d’une cloche accordée, relatifs à la note nominale f) : hum 0.5f (déclin 8 s), prime 1.0f (5 s), tierce mineure 1.2f (4 s), quinte 1.5f (3 s), nominale 2.0f (3 s), 2.5f (1.5 s), 3.0f (1.2 s), 4.2f (0.6 s), 5.4f (0.4 s) ; amplitudes 0.4/0.6/0.5/0.3/1.0/0.3/0.25/0.15/0.1 ; désaccord ±0.3 % par partiel (battements) ; attaque = bruit filtré passe-haut 2 kHz, 5 ms (marteau). Désaccord +15 cents aléatoires sur les cloches « corrompues » du Dragon.
- Tambour de Ducasse : grosse caisse = sinus 120 → 45 Hz en 80 ms + clic 3 ms ; caisse claire = bruit blanc passe-bande 1.5-6 kHz (déclin 150 ms) + sinus 190 Hz ; roulements = 16ᵉ avec jitter ±6 ms et vélocités aléatoires 0.6-1.0.
- Guitare metal : Karplus-Strong (bruit initial filtré, feedback 0.996) → waveshaper tanh ×12 → passe-bas 5 kHz → simulation de baffle (EQ : -6 dB à 100 Hz, +4 dB à 2.5 kHz, coupe 6 kHz) ; doublée gauche/droite avec 12 ms et ±5 cents.
- Feu : bruit brun + crépitements (impulsions Poisson 30/s, passe-bande 3 kHz).
- Réverbération : convolution par IR synthétique (bruit exponentiel décroissant RT60 2.5 s pour la Grand-Place, 4.5 s pour le porche, 1.2 s pour les rues).
9.3 Motif du Doudou
L’air du Doudou est traditionnel (domaine public), mais on ne le reproduit pas note pour note : on en garde une évocation — la carrure de marche en 2/4 et une cellule rythmique « longue- brève-brève-longue » jouée sur 3 notes descendantes au carillon. Ce motif (« motif Doudou ») sert : écran titre (carillon lent, désaccordé), victoire (carillon juste, plein, 49 cloches), secret du singe (4 notes), fin de vague (2 coups). Les paroles ne sont jamais chantées ; seule la baseline « Et les Montois ne périront pas » est utilisée, écrite.
9.4 Événements SFX (v1)
| Événement | Synthèse | Durée | Bus |
|---|---|---|---|
| Pas pavés | impulsion bruit passe-bande 800 Hz-3 kHz + thump 120 Hz, 6 variantes, pitch ±5 % | 90 ms | SFX |
| Saut / atterrissage | souffle + thump 70 Hz (atterrissage ∝ vitesse de chute) | 150 ms | SFX |
| Dash | bruit filtré sweep 300 Hz → 3 kHz + doppler | 200 ms | SFX |
| Armes ×4 (tir, recharge, vide) | cf. §5 ; « vide » = clic métal 4 kHz 20 ms | — | SFX |
| Hit-marker | « tick » sinus 2.4 kHz 30 ms | 30 ms | UI |
| Kill | cloche aiguë courte (nominale 1.6 kHz, déclin 300 ms) | 300 ms | UI |
| Dégâts reçus | thump 80 Hz + souffle grave + filtre passe-bas global 300 ms (muffle) | 300 ms | SFX |
| Santé basse | battement de cœur 70 BPM (2 thumps 50 Hz) | boucle | SFX |
| Pickups | santé = « crunch » de gaufre (bruit granulaire) + note de cloche ; armure = clang 600 Hz ; munitions = cliquetis | 200 ms | SFX |
| Ennemis ×3 + Dragon | cf. §4 (spawn, alerte, attaque télégraphiée, douleur, mort) | — | SFX |
| Singe (secret) | 4 notes de carillon ascendantes + rire étouffé lointain | 1.5 s | SFX |
| Checkpoint sanctuaire | accord de cloches douces + coupure du crépitement | 3 s | Ambiance |
| UI focus / valider / retour | tick 1.8 kHz / cloche 1.2 kHz / tick 900 Hz | ≤ 120 ms | UI |
| Horloge 12:58 | tic-tac lent 40 BPM, de plus en plus fort près du beffroi | boucle | Ambiance |
9.5 Ambiances (boucles 60-90 s, raccords sans clic)
- Ville en braise : vent (bruit rose filtré, modulation lente 0.05 Hz), crépitement lointain, fanfare fantôme (cuivres synthétiques en ondes carrées passés dans une réverb 6 s, très bas, -32 dB).
- Porche / cour : goutte-à-goutte, résonance grave 60 Hz, réverb longue.
- Jardin : feuillage, fontaine (bruit + filtre en peigne), insectes absents (silence inquiétant).
- Square du Château : souffle du Dragon (respiration 0.2 Hz, sub 40 Hz), cloches qui vibrent par sympathie.
9.6 Musique
- Style : metal industriel 150-170 BPM, accordage drop C, kicks doubles, + carillon et tambours de Ducasse comme instruments principaux.
- Adaptative en 3 couches par zone : exploration (tambours + nappes + carillon lointain),
combat (+ guitares, + double pédale), intensité (+ lead de cloches, motif Doudou en
contrechant) ; transitions sur la mesure (quantification 1 mesure) via
AudioStreamInteractiveou mixage de pistes synchronisées. - Boss : thème propre en 3 parties (une par phase), tempo 160 → 172 ; phase 3 = carillon désaccordé ; victoire = carillon juste, 13 coups.
9.7 Mixage (bus Godot)
| Bus | Niveau | Traitement |
|---|---|---|
| Master | 0 dB | Limiter -1 dBTP ; cible -16 LUFS intégrés (desktop), -14 (Android) |
| Music | -8 dB | Compressor sidechain sur SFX (ratio 3:1, -4 dB max), duck -6 dB lors du Bourdon |
| SFX | -3 dB | Reverb send par zone ; priorité : joueur > Dragon > ennemis proches > lointains ; max 32 voix |
| Ambience | -14 dB | low-shelf -3 dB sous 80 Hz pour laisser la place au Dragon |
| UI | -6 dB | sec, pas de reverb |
Spatialisation : AudioStreamPlayer3D, atténuation inverse distance, unit size 4 m, max 60 m ;
filtre passe-bas d’occlusion (raycast) 5 kHz → 1.2 kHz derrière un mur.
Options : volumes par bus, « réduire les sons aigus brusques », mono (accessibilité).
10. Placement des marques
Fichiers sources (ne pas modifier, cf. brand/cardor/SOURCE.md) : interactive.svg,
interactive-512.png, sound.svg, cardor-monogram.svg, cardor-emblem.svg. Les logos gardent
leurs couleurs (Interactive #C6FF3D, Soundworks #7B5CFF, CARDOR or #D4A84B) et ne sont jamais
recolorés aux couleurs du jeu ; zone de protection = 25 % de la hauteur du logo.
| Lieu | Logo | Détail |
|---|---|---|
| Splash jeu n°1 (1.5 s, passable) | CARDOR Media monogramme | « une production CARDOR Media », fond #000, fondu 300 ms |
| Splash jeu n°2 (2 s, passable) | CM Interactive (dragon) | le dragon s’allume facette par facette (shader de révélation), petit grondement + cloche |
| Écran titre (coin bas-droit) | CM Interactive 48 px | discret ; version du jeu à côté |
| Options › Audio (en-tête) | CM Soundworks (beffroi) 32 px | « Son : CM Soundworks » |
| Crédits | les 3 | ordre : CM Interactive (développement), CM Soundworks (son), CARDOR Media (production) |
| Site — footer | CM Interactive | + lien studio |
| Site — §07 Crédits | les 3 | taille identique, alignés |
| Icône / OG | aucun logo studio | le jeu porte sa propre identité |
Clins d’œil CM Interactive (easter eggs)
- Terminal CM (Z0) : vitrine d’une boutique de réparation « CM » avec CRT affichant le dragon
low-poly en vert et un prompt clignotant
cm@mons:~$ doudou --wake; l’interagir lance une minuscule animation ASCII. - La Roue (arme 3) : la roue à 8 rayons évoque l’emblème CARDOR.
- Cloches violettes : une des 49 cloches de la cinématique finale est teintée
#7B5CFF(CM Soundworks). - Affiche de Ducasse (Z1) collée sur un mur : « CM Interactive présente : LUMEÇON » en petit.
- Code de triche
iddqd-like : taperDOUDOUdans le menu pause = le Dragon du boss passe en rendu « logo » (vert plat, sans ombre) pour une capture.
11. Artwork & production des visuels
Tout visuel est soit un rendu de la scène Godot (scène de capture game/tools/capture.tscn,
qui compose les plans dans le vrai niveau : caméra, ennemis et Dragon posés, VFX joués, puis
arbre de scène mis en pause = photo figée), soit une composition par script (Python/Pillow :
polygones, dégradés, polices OFL). Pas de peinture. Inventaire, poids et commandes :
bible/README.md. Palette machine : bible/palette.json.
| Visuel | Formats | Production |
|---|---|---|
| Key art | bible/renders/key_art.png 1920 × 1080 (+ WebP/AVIF) |
plan key_art : le Doudou sort de son enroulement autour du beffroi (12:58), tête tournée vers le Chinchin vu de dos, Lance levée, braises ; caméra basse 1 m, FOV 70°, lumière d’appoint ambre + verte. Rendu sur-échantillonné --ss=2 ; une version 3840 × 2160 s’obtient en changeant size du plan (rendu en SubViewport, indépendant de la fenêtre) |
| Logo-titre | SVG + PNG 2048 (site/src/assets/brand/lumecon-title.svg, site/public/press/lumecon-logo-2048.png) |
« LUMEÇON » en Archivo ExtraCondensed Black vectorisée (choix du site : une seule famille display ; écart assumé avec Big Shoulders Display, qui reste la display de l’UI du jeu), cédille = queue spiralée facettée, dégradé bronze #E7B643 → braise #FF6728 |
| Captures | 1920 × 1080 PNG (9 plans) | grand_place, combat_diables, homme_de_feuilles, ecaillons, dragon_phase2, beffroi, singe, arsenal, key_art ; HUD absent, viewmodel de l’arme sur la couche monde |
| Cartes bestiaire | 1200 × 1500 PNG (bestiaire_<kind>) |
studio neutre --surface-1 #0F151E, sol sombre, 3 points (key #FFB060, fill #9DB4FF, rim #C6FF3D ; rim #7FE6FF pour l’arsenal, le rim n’éclaire pas le sol) |
| Bande-annonce | 1080p60, 60-90 s | --write-movie de Godot sur une séquence scriptée (caméra sur Path3D) + musique du jeu (à faire) |
| Icône d’app | SVG master 1024 game/icons/icon.svg |
tête du Doudou de profil, facettes #1F2A1A → #3E5232, œil et fissures #C6FF3D, gueule #FF6728, crête de 4 épines, sur fond nuit #070C1E à halo de braise radial (#FF6728 → #64271F → nuit) ; bible/tools/make_icons.py |
| · Windows | game/icons/icon.ico 16/24/32/48/64/128/256 |
≤ 32 px = tête simplifiée (8 facettes, sans dents ni fissures) |
| · macOS | game/icons/icon.icns 16 → 1024 + icon-macos-1024.png |
carré arrondi (grille 824/1024, rayon 185), sujet à 80 % |
| · Linux | icon.png 1024, icon-512.png, icon.svg (hicolor) |
|
| · Android | game/icons/android/ foreground/background/monochrome 432 × 432 (sujet dans les 264 px centraux), legacy-192.png |
à brancher dans export_presets.cfg launcher_icons/* |
| Open Graph | bible/renders/og.png 1200 × 630 (< 300 Ko) + web/og.webp |
recadrage du key art, voile --canvas à gauche, logo-titre, baseline en Archivo ; zone sûre 1080 × 540 |
| Favicon site | SVG + 32 PNG + 180 apple-touch | dérivé du Ç-dragon du logo-titre (site) |
| Versions web | bible/renders/web/*.webp, *.avif, *-960.webp |
bible/tools/make_web.py |
| Kit presse | zip | logo-titre, key art, captures, icônes, fiche technique PDF |
Rendu headless : Godot a besoin de xvfb-run + --rendering-driver opengl3 (renderer
Compatibility, llvmpipe sans GPU) ; le renderer dummy de --headless ne produit pas d’image.
Commande : make screenshot (tous les plans) ou
./scripts/screenshot.sh res://tools/capture.tscn -- --shot=key_art --ss=2. Les plans sont
définis dans game/tools/capture_shots.gd (données) ; ennemis posés sans cible (pas d’IA),
figés par la pause de l’arbre après ~2,5 s (lumière et particules stabilisées). Le rendu
Compatibility n’a ni brouillard volumétrique ni SSAO : les captures sont un peu plus plates
que le jeu en Forward+.
12. Checklist de conformité (pour QA)
- Le vert
#C6FF3Dn’est porté que par le Dragon, ses créatures, la barre de boss et le logo CM Interactive. - Chaque ennemi est identifiable en silhouette noire seule ET en mode daltonien.
- Aucun lieu de culte n’est un lieu de combat ; aucune représentation de reliques.
- Options « Réduire flashs » et « Réduire mouvements » coupent bien tous les effets listés (§3.6, §3.7, §7.5).
- Contrastes UI ≥ 4.5:1 (§7.2, §8.2) ; focus visible au clavier et à la manette partout.
- Le site n’utilise ni la palette ni la typographie CARDOR ; un seul accent.
- Tous les sons et visuels sont régénérables par script (graines fixées).