Annexes : Broc

Annexe — Bible de Broc

Fiche de personnage de Broc, l'entrée entry=character du gabarit lebrocoli.fr (plan 14, D12). Ce document est la source de travail humaine : la bible typée (character.md et son jumeau character.json, kind: bible) en sera tirée, champ par champ, dans examples/scenario-lebrocoli/cast/broc/. Rien ici n'est du code ; les prompts sont des données.

Statut des traits. Règle emaki devenue « aucun trait inventé » (plan 14 §1) : ce que montre l'image de référence est observed ; ce que donne l'utilisateur est given ; tout le reste (personnalité, voix, univers, personnages secondaires) est une proposition marquée inferred tant que l'utilisateur ne l'a pas validée. L'utilisateur a délégué ces choix le 25/10 (« je te laisse tout décider pour le moment ») : ils sont donc proposés ici, mais restent inferred.

1. Source de vérité et correction de la description

  • Image de référence : examples/scenario-lebrocoli/cast/broc/reference.png (1024×1024), role=canonical. Auteur, licence et droit de publication : à donner par l'utilisateur (06, question 19). Tant qu'ils manquent, le kit ne sort pas d'un build local.
  • Correction du 25/10. La description d'origine (pets.md, reprise dans plan 14 §2.1, D12 et plan 11 §2.4) parlait d'un brocoli « en smoking noir et casquette ». L'image n'en montre aucun. Comme le veut D12 (« si la description et l'image divergent, on corrige la description »), Broc n'a ni smoking, ni casquette, ni aucun vêtement ou accessoire. Le bloc :::identity, le summary et le :::avoid de D12 sont à réécrire d'après le §2 ci-dessous (à reporter dans le plan 14 D12 et le plan 11 §2.4 par le propriétaire de ces plans). La requête hatch-pet ne doit plus mentionner ni smoking ni casquette.
  • Broc n'est pas la mascotte du site. La mascotte actuelle de lebrocoli.fr (lebrocoli.png) est un brocoli plat au contour noir, sans visage. Broc est un personnage distinct, en rendu 3D doux. Les deux ne se mélangent pas dans une même image.

2. Identité visuelle (observed, d'après l'image)

2.1 Silhouette et proportions

  • Personnage debout, de face, en T-pose sur l'image de référence (bras tendus à l'horizontale). La T-pose est une pose de référence, pas une attitude du personnage.
  • Hauteur totale d'environ 4 têtes si l'on compte la couronne avec la tête ; la couronne de fleurettes occupe à elle seule près du tiers supérieur de la hauteur et déborde nettement de la largeur des épaules (elle est presque aussi large que l'envergure des avant-bras).
  • Tête : visage en forme de poire arrondie, plus large aux joues qu'au front, directement posé sur un cou très court, sans cou visible. Le haut du visage se prolonge en tiges ramifiées qui montent dans la couronne : la couronne pousse de la tête, ce n'est pas une coiffure posée.
  • Oreilles : deux petites oreilles arrondies, simples, sur les côtés du visage.
  • Corps : tronc en tige, cylindrique, légèrement plus étroit à la taille, sans nombril ni détail anatomique.
  • Bras : fins, tubulaires, sans coude marqué ; mains en moufle à quatre doigts courts et arrondis (pouce séparé), sans ongles.
  • Jambes : deux jambes courtes et épaisses, légèrement écartées ; pieds arrondis en forme de petits chaussons, d'un seul tenant avec la jambe, sans orteils ni chaussures.

2.2 Visage

  • Yeux : deux grands yeux ronds, blanc légèrement crème, iris brun très foncé presque noir qui remplit la majeure partie de l'œil, un reflet blanc net en haut à droite de chaque pupille. Regard vers le spectateur.
  • Sourcils : deux arcs épais, vert foncé, légèrement inclinés, sculptés en relief (pas peints).
  • Nez : petit nez rond en bouton, de la même matière que la peau.
  • Bouche : sourire fermé, doux, légèrement asymétrique (plus relevé d'un côté), petites fossettes aux commissures. Pas de dents visibles sur la référence.
  • Expression de base : bienveillante, curieuse, un peu malicieuse.

2.3 Couleurs (hex approximatifs)

Valeurs moyennées sur l'image (échantillons 7×7 px, éclairage compris). Ce sont des repères pour les prompts et la palette de remplacement, pas des teintes de marque : à valider par l'utilisateur.

ZoneHex approx.Remarque
Peau (corps, bras, nez)#7aac3dvert feuille tendre, mat
Peau éclairée (bras, pieds)#7db74cmême teinte, côté lumière
Peau dans l'ombre (jambes)#699b2eombre douce, jamais grise
Couronne, fleurettes claires#619645sommets des bouquets
Couronne, ton moyen#508132masse principale
Couronne, creux#447340légèrement plus bleuté que la peau
Tiges sous la couronne (creux)#183005ombres profondes entre les tiges
Sourcils#2a4a18vert très foncé
Iris et pupille#131105quasi noir, chaud
Blanc de l'œil#f4f2ea (estimé)crème, jamais blanc pur bleuté
Fond de la référence#f2eee5crème neutre ; fond libre dans les autres images
Ombre portée au sol#e6e2ccombre douce sous les pieds

Règles : un seul vert dominant, deux familles (peau jaune-vert plus claire, couronne plus sombre et plus saturée). Pas de contour noir. Pas d'autre couleur sur le personnage que ces verts, le blanc des yeux et le quasi-noir des pupilles.

2.4 Matières et rendu

  • Peau : surface mate et veloutée, très légère texture de pâte à modeler fine ou de silicone doux, diffusion sous la surface discrète (rendu « jouet en vinyle doux »).
  • Couronne : fleurettes de brocoli réalistes dans leur structure (grappes de petits boutons granuleux), stylisées dans leurs volumes (gros bouquets arrondis). C'est la seule matière texturée du personnage.
  • Rendu : 3D doux, éclairage studio diffus, lumière principale en haut à gauche, ombres douces, pas d'effet plastique brillant ni de reflets spéculaires durs. Style « film d'animation familial », cadrage sans perspective forcée.

2.5 Interdits visuels (:::avoid)

À ne jamais ajouter ni modifier, quelle que soit la scène :

  • tout vêtement ou accessoire : smoking, nœud papillon, casquette, chapeau, lunettes, casque audio, écharpe, sac, bijou, montre, chaussures, gants ;
  • un instrument tenu en main sur l'image de référence et sur la planche (un instrument peut exister dans le décor, jamais collé au personnage) ;
  • tout changement de visage (forme des yeux, couleur des iris, sourcils, nez, bouche), de proportions (taille de la couronne, longueur des bras et des jambes) ou de couleurs ;
  • un contour noir, un rendu plat, pixel art ou cel-shading (Broc n'a pas de version pixel art : plan 11 D9) ;
  • des dents pointues, une expression agressive ou moqueuse, des sourcils froncés de colère ;
  • texte, lettres, chiffres, logos ou filigrane dans l'image ;
  • un autre légume ou fruit « humanisé » qui lui ressemblerait (risque de confusion d'identité) ;
  • la mascotte plate de lebrocoli.fr dans la même image.

3. Personnalité (inferred)

lebrocoli.fr est un blog d'événements (sorties, concerts, jazz, soirées), au ton chaleureux (« Experience the magic of live jazz performances under the night sky »). Broc en est le guide de sortie : celui qui a déjà repéré le bon concert et qui t'y emmène.

  • Curieux : il veut toujours savoir ce qui se joue ce soir, et pourquoi c'est bien.
  • Chaleureux et inclusif : il accueille tout le monde, l'habitué comme celui qui sort pour la première fois. Jamais snob sur la musique.
  • Enjoué, sans être bruyant : il s'enthousiasme, mais laisse la place à la musique.
  • Un peu maladroit : sa couronne le gêne parfois (elle cache la vue au rang de derrière, elle se prend dans les guirlandes). C'est son ressort comique principal, toujours à ses dépens.
  • Fiable : il donne les infos utiles (heure, lieu, prix) sans les noyer dans les blagues.

Archétype : l'ami qui connaît les bons plans, pas l'influenceur ni le critique.

4. Voix et façon de parler (inferred)

  • Tutoiement du public, phrases courtes, rythme parlé. Une idée par réplique.
  • Français courant, quelques mots de musique et de sortie (« set », « première partie », « rappel », « after »), jamais de jargon technique ni d'anglicismes marketing (« must-have », « game changer »).
  • Jeux de mots végétaux : permis, au plus un par scène, et jamais deux fois le même dans un récit. Réservoir : « ça pousse », « en bouquet », « garder la tête verte », « bien planté », « à la fraîche », « croquant ».
  • Ponctuation : point d'exclamation au plus une fois par réplique ; pas d'émoji dans ses répliques (les formats peuvent en ajouter autour, pas dans sa bouche).
  • Langue des prompts : anglais (promptLang: en) ; ses répliques suivent la langue du récit (plan 14, 09 §1).

Exemples de répliques (Lorem dans les exemples publics, ces phrases servent de ton) :

  • Accueil : « Salut ! Ce soir, ça se joue en plein air. Je t'ai gardé une place. »
  • Annonce : « Trio de jazz, 21 h, entrée libre. Viens tôt, la terrasse se remplit vite. »
  • Enthousiasme : « Ce solo de contrebasse… j'en ai encore les fleurettes qui frissonnent. »
  • Humour sur lui-même : « Désolé pour le rang de derrière. Je ne peux pas enlever ma tête. »
  • Question au public : « Toi, tu préfères le premier set ou le rappel ? »
  • Contretemps : « Concert reporté. Pas de panique, je te préviens dès qu'on a la nouvelle date. »
  • Récap : « Trois soirées, trois ambiances. Choisis la tienne, je m'occupe du reste. »
  • Clôture : « Bonne soirée. Et garde la tête verte ! »

5. Valeurs (inferred)

  • La musique vivante d'abord : le concert, l'instant partagé, plutôt que l'écran.
  • Accessibilité : il signale toujours l'entrée libre, l'accès PMR, les horaires de dernier métro quand ils sont connus.
  • Honnêteté : il ne promet pas une soirée qu'il ne connaît pas ; il dit « je n'ai pas encore l'info » plutôt que d'inventer (même règle que « aucun trait inventé »).
  • Respect des artistes et des lieux : il nomme les artistes, invite à acheter au guichet officiel, ne critique jamais un musicien.
  • Bienveillance : personne n'est ridicule de ne pas connaître un genre ou un artiste.

6. Ce que Broc ne dit et ne fait jamais

  • Il ne dit jamais de mal d'un artiste, d'un public, d'un quartier ou d'un autre média.
  • Il ne parle pas d'alcool comme d'un argument de sortie, ni de drogue, ni d'excès ; pas de promotion de jeux d'argent.
  • Il ne fait pas de politique, de religion, ni de blague sur un groupe de personnes.
  • Il ne donne pas de prix, d'horaire ou de lieu qu'il n'a pas dans les données (:value) : en l'absence, il renvoie à la source.
  • Il ne se fait pas manger et ne parle pas de recettes : Broc n'est pas un aliment dans ses histoires. Aucune blague sur le fait d'être cuit, coupé ou mangé.
  • Il ne crie pas, ne se moque pas, ne pleure pas à chaudes larmes : sa déception (failed) reste légère et brève.
  • Il ne cite pas de marque, de lieu réel, ni de personne réelle dans les exemples publics.
  • Il ne change jamais d'apparence pour « se déguiser » (cf. §2.5).

7. Univers et décors récurrents (inferred, lieux fictifs)

Une ville de soirée fictive et douce, inspirée de l'ambiance « concerts, nuit, terrasses », sans aucun lieu réel. Chaque décor est une entrée entry=set de la bible (id stable).

idDécorDescription courtePose typique
set-potager-sceneLe Potager-Scènepetite scène en plein air dans un jardin, guirlandes d'ampoules, bancs en boiswaving, jumping
set-cave-bouquetLa Cave du Bouquetclub de jazz en sous-sol voûté, briques, lampes basses, piano droitidle, review
set-toit-roseeLe Toit de la Roséetoit-terrasse au crépuscule, vue sur des toits fictifs, ciel indigoidle, waiting
set-kiosque-tigesLe Kiosque des Tigeskiosque à musique dans un parc, scène ronde, public assis dans l'herbewaving
set-rue-serreLa Rue de la Serrerue piétonne de nuit, affiches de concerts sans texte lisible, pavésrunning-right, running-left
set-bureau-brocLe Carnet de Broccoin de bureau avec un grand agenda ouvert et des billets (sans texte lisible)running (travail), review

Règles de décor : affiches, enseignes et billets sans texte lisible (les textes viennent du récit, en surimpression) ; lumière chaude de soirée (ambre, indigo) qui ne doit jamais teinter le vert de Broc au point de changer sa couleur ; aucun monument ni quartier réel reconnaissable.

8. Personnages secondaires (inferred, sobres)

Peu nombreux, jamais plus de deux à l'image avec Broc, toujours moins détaillés que lui pour ne pas lui voler l'identité. Ce ne sont pas des légumes (pour éviter la confusion de §2.5).

  • Mila (id=mila) : la régisseuse de la Cave du Bouquet. Humaine stylisée, même rendu 3D doux, vêtements unis gris anthracite, casque de régie autour du cou. Pragmatique, parle peu, donne les horaires exacts. Sert de contrepoint calme.
  • Tempo (id=tempo) : un petit métronome en bois animé, sans bouche, qui s'exprime par le balancier. Apparaît dans les scènes review et running (préparation). Muet.
  • Le Public (id=public) : silhouettes floues en arrière-plan, sans visage détaillé, jamais identifiables.

9. Les 9 poses codex-pet-v1 : émotions et usages

Les id sont ceux de hatch-pet, sans traduction. Images, durées et lecture : plan 14 D12 (table « Correspondance entre les lignes »), non répétées ici. Ce tableau ajoute l'émotion de Broc et l'usage narratif propre au personnage.

LignePose (id)Émotion de BrocQuand l'utiliserNe pas utiliser pour
0idlecalme, attentif, respiration et clignementpose par défaut, écoute, transition douce ; image 0 = image fixeune annonce importante
1running-rightélan, impatience joyeuseentrée par la gauche, « on y va ! », passage au lieu suivantune fuite ou une peur
2running-leftélan, retoursortie ou entrée par la droite, retour en arrière dans le récitidem
3wavingaccueil chaleureuxouverture (hook), salut final, appel à l'actionun au revoir triste
4jumpingjoie franche, célébrationpayoff : bonne nouvelle, concert confirmé, completplus d'une fois par récit court
5faileddéception légère, « oups »tension : report, annulation, pluie ; toujours suivie d'une solutionla tristesse durable, la colère
6waitingcuriosité, attente bienveillantequestion au public, sondage, suspense avant une annoncel'ennui ou l'agacement
7runningconcentration, préparationtravail en cours : il prépare l'agenda, cherche une info, chargementune course (c'est running-*)
8reviewexamen sérieux, puis satisfactionlire un chiffre, une affiche, une citation ; textcard variant=statun jugement négatif sur un artiste

Règle de cohérence : une scène failed est toujours suivie, dans le même récit, d'une scène idle, waving ou jumping (Broc rebondit). Sans pose=, le beat donne la pose (plan 14 D12).

10. Règles d'écriture des scénarios

  1. Un récit = une sortie ou un thème, 3 à 7 scènes. Broc ouvre (hook, waving) et ferme.
  2. Les infos pratiques viennent des données (:value, @recit/data), jamais du texte libre : date, heure, lieu, prix. Si une donnée manque, Broc le dit (« je n'ai pas encore l'info »).
  3. Une réplique de Broc tient en une ou deux phrases (≤ 140 caractères en stories et toon).
  4. Au plus un jeu de mots végétal par scène, aucun répété dans le récit.
  5. Lieux, artistes et personnes fictifs dans les exemples publics (Lorem Ipsum pour les noms) ; seuls les décors du §7 sont réutilisables. Le nom « lebrocoli.fr » est le seul nom réel permis.
  6. Attributs de scène communs (plan 14 D4) : cast=broc set=<id> pose=<id> beat=<id> ; expression= reste vide tant que la bible n'a pas d'expressions séparées des poses.
  7. Une seule émotion forte par scène ; jumping et failed au plus une fois chacune dans un récit court (≤ 5 scènes).
  8. Pas de texte dans les images : titres et répliques sont rendus par le format, en Unbounded et Lexend (§12), jamais générés dans l'image.
  9. Traduction : les répliques se traduisent, les prompts et les images restent partagés (promptLang: en).
  10. Mention IA : toute image générée garde sa provenance (kind: asset, origin: ai, references: [reference.png], plan 14 D7) ; le format affiche la mention prévue par le plan 11.
  11. Sources de story non formatées : ne jamais passer oxfmt sur les .md de récit (directives :::notes … :::).

Squelette type (gabarit de beats hook → context → tension → payoff → call) :

MarkdownMarkdown
--- beat=hook cast=broc set=set-potager-scene pose=waving :::dialogue{who=broc} Salut ! Ce soir, ça se joue en plein air. ::: --- beat=tension cast=broc set=set-toit-rosee pose=failed :::dialogue{who=broc} Oups, la pluie s'invite. On passe en salle. ::: --- beat=payoff cast=broc set=set-cave-bouquet pose=jumping :::dialogue{who=broc} Le trio joue quand même. Et c'est complet ! :::

11. Prompt de génération de référence (provider-agnostic)

Le prompt est une donnée : Récit le stocke et le dérive de la bible (plan 14 §6), il n'appelle aucun modèle. Il ne nomme ni modèle ni outil. La génération (hatch-pet, imagegen ou tout autre outil) se fait hors de Récit, en passant toujours reference.png comme image de référence.

11.1 Identité (:::identity, en anglais)

Code
Friendly smiling broccoli character, soft expressive 3D render in the style of a family animated film. Large rounded broccoli crown of dense green florets growing from the top of the head, about one third of total height, wider than the shoulders, with branching stems visible under it. Pear-shaped light leaf-green face, small rounded ears, big round eyes with cream whites, nearly black irises and a white highlight, thick dark green sculpted eyebrows, small round button nose, gentle closed-mouth smile with dimples. Slim tubular stem-like body, thin arms with rounded four-fingered mitten hands, short thick legs with rounded feet. Matte velvety soft-vinyl skin, single green palette (skin #7aac3d, crown #508132, brows #2a4a18). No clothing, no accessories. Same face, proportions, crown, colors, materials and 3D style as the canonical reference image.

11.2 Image de référence (planche de base)

Code
{identity} Full body, front view, neutral relaxed standing pose, centered, whole character visible with margin, soft diffuse studio lighting from the upper left, soft contact shadow, plain warm off-white background (#f2eee5).

11.3 Scène (gabarit)

Code
{identity} Pose: {pose_description}. Setting: {set_description}. Warm evening lighting that keeps the character's greens unchanged. Character is the clear focal point, other figures simpler and less detailed.

11.4 Négatif (:::avoid, en anglais)

Code
tuxedo, bow tie, cap, hat, glasses, headphones, clothing, shoes, gloves, jewelry, accessories, held objects, musical instrument in hand, black outline, flat 2D, cel shading, pixel art, changed face, changed eye color, teeth, angry expression, extra limbs, extra fingers, other humanized vegetables, text, letters, numbers, logo, watermark, signature

11.5 Requête hatch-pet (résumé de hatch-pet.request.md)

  • name : broc ; displayName : Broc ; description : « Un brocoli souriant au rendu 3D doux, guide de sortie de lebrocoli.fr. »
  • style : 3d-toy (ou auto) ; référence : reference.png (obligatoire).
  • Consigne : préserver le visage, les proportions, la couronne, les couleurs, les matières et le style 3D de la référence ; aucun vêtement, aucun accessoire, aucun objet tenu. La couronne peut dépasser légèrement en haut de la case de 192×208 plutôt que d'être réduite : à défaut, réduire tout le personnage, jamais la couronne seule.
  • Sortie attendue : codex-pet-v1 (1536×1872, 8 colonnes × 9 lignes, fond transparent). Relecture de la planche contact et des GIF par l'utilisateur avant import (plan 14 D12, étape 1).

12. Typographie

  • Titres : Unbounded (Google Fonts, licence SIL Open Font License 1.1, NT Type). Police sans-serif large et arrondie, proche en esprit de la Monument Extended du site mais libre : elle remplace Monument Extended (usage personnel seulement, interdite dans le dépôt). Graisses utiles : 600 à 800 pour les titres, jamais en paragraphe. Les fichiers sont embarqués avec leur OFL.txt et une ligne NOTICE dans examples/scenario-lebrocoli (plan 11 §8, plan 14).
  • Texte et répliques : Lexend (OFL), déjà utilisée par lebrocoli.fr.
  • Titres courts (≤ 5 mots), casse de phrase ou capitales pour un mot d'appel ; pas de jeu de mots végétal dans un titre si la réplique en contient déjà un.
  • Aucun texte n'est rendu dans les images générées : la typographie appartient toujours au format.

13. Forme dans la bible typée (rappel de D12)

À reporter dans character.md / character.json (même schéma BibleSource, aucun nouveau kind) :

  • summary : « Un brocoli souriant au rendu 3D doux, guide de sortie de lebrocoli.fr. »
  • identity : §11.1 ; avoid : §2.5 (liste anglaise du §11.4) ;
  • traits : species: broccoli (observed), role: guide de sortie (inferred), voice: tutoiement, phrases courtes (inferred), palette (§2.3, observed, à valider) ;
  • poses : les 9 lignes du §9 ; references : reference.png (canonical) ;
  • sheet : { src: "./spritesheet.webp", layout: "codex-pet-v1" }.

14. Questions encore ouvertes pour l'utilisateur

  • Auteur et licence de reference.png (06, question 19) : bloque la publication du kit. Répondu le 25/10 : © vguerand, tous droits réservés, hors licence MIT du dépôt, ligne NOTICE ajoutée (NOTICE.md, plan 14 D13). La planche qui en dérive hérite de la même restriction.
  • Validation des traits inferred (§3 à §8), notamment la voix et les personnages secondaires.
  • Validation de la palette du §2.3 (mesurée sur l'image, éclairage compris).