94 lines
No EOL
4.4 KiB
JavaScript
94 lines
No EOL
4.4 KiB
JavaScript
/*
|
||
DINO LERNTAFEL - PROMPT KONFIGURATION (FINAL)
|
||
*/
|
||
|
||
const DinoPrompts = {
|
||
|
||
// 1. PROMPT FÜR DIE FAKTEN (Gemini Flash)
|
||
// Ziel: Sauberes JSON ohne Markdown, Zahlen als echte Numbers
|
||
getFacts: (term) => `
|
||
Du bist ein Experte für Paläontologie. Erstelle ein Daten-Profil für einen "${term}".
|
||
|
||
WICHTIG ZUM FORMAT:
|
||
- Antworte NUR mit dem rohen JSON-String.
|
||
- KEINE Markdown-Formatierung (kein \`\`\`json).
|
||
- Alle Text-Werte auf DEUTSCH.
|
||
|
||
JSON STRUKTUR:
|
||
{
|
||
"name": "Name des Dinos (z.B. Tyrannosaurus Rex)",
|
||
"is_fictional": true, // true bei Fantasie, false bei echten Dinos
|
||
|
||
// Brücke zum Bild-Generator:
|
||
"visual_details": "Beschreibe visuell: Körperbau, Hautstruktur (Schuppen/Federn/Panzer), markante Merkmale (Hörner, Kämme) und Farbe. Sei präzise.",
|
||
|
||
"fun_fact": "Max. 10 Wörter. Ein spannendes Detail für Kinder.",
|
||
"translation": "Namensbedeutung (z.B. 'König der Tyrannenechsen')",
|
||
"period": "Zeitraum Name (z.B. Oberkreide)",
|
||
"years": "Zeitraum Zahlen (z.B. vor 68–66 Mio. Jahren)",
|
||
|
||
"mya_start": 68, // Zahl (Millionen Jahre)
|
||
"mya_end": 66, // Zahl (Millionen Jahre)
|
||
|
||
"height": 5.5, // Höhe in Metern (nur die Zahl als Number/Float)
|
||
"length": 12.0, // Länge in Metern (nur die Zahl als Number/Float)
|
||
"weight": 8000, // Gewicht in KG (nur die Zahl als Integer)
|
||
"diet": "Fleisch" // Genau einer dieser Werte: 'Pflanzen', 'Fleisch', 'Alles', 'Fisch'
|
||
}
|
||
`,
|
||
|
||
// 2. PROMPT FÜR DAS BILD (Generalisiert für alle Habitate)
|
||
getImage: (data) => `
|
||
[KONZEPT]: Ein "Environmental Wide Shot" (Weitwinklige Landschaftsaufnahme).
|
||
[DAS MOTIV]: Eine weite prähistorische Landschaft (${data.period}). In der MITTLEREN DISTANZ befindet sich ein einzelner ${data.name}.
|
||
|
||
[VISUELLE DETAILS]:
|
||
${data.visual_details}
|
||
|
||
[KOMPOSITION & LAYOUT - DIE "ANTI-CROP" REGELN]:
|
||
- DISTANZ: Die Kamera ist weit entfernt. Der ${data.name} darf maximal 70% der gesamten Bildhöhe einnehmen.
|
||
|
||
- VORDERGRUND: Es muss signifikant viel Umgebung UNTER dem Tier sichtbar sein.
|
||
- Wir müssen klar sehen, worauf oder worin das Tier steht (z.B. Waldboden, Wasser, Sand, Fels). Die Füße/Basis dürfen den unteren Bildrand NICHT berühren.
|
||
|
||
- HINTERGRUND OBEN: Es muss signifikant viel Umgebung ÜBER dem Kopf sichtbar sein (Negativraum).
|
||
- Egal ob Himmel, Baumkronen oder Felswand: Dieser Bereich muss visuell "ruhig" und hell genug sein, damit dunkler Text darauf lesbar ist.
|
||
|
||
[FEHLER-VERMEIDUNG]:
|
||
- KEIN enges Portrait. Das Tier muss "atmen" können.
|
||
- Wenn das Tier oben oder unten anstößt, ist die Kamera zu nah -> Gehe weiter weg.
|
||
|
||
[ATMOSPHÄRE]:
|
||
- Habitat: Passend zur Spezies (z.B. dichter Dschungel, Sumpf, Küste oder offene Ebene).
|
||
- Licht: Helles, diffuses Tageslicht für gute Sichtbarkeit.
|
||
|
||
[REALISMUS]:
|
||
- ${data.is_fictional ? "Glaubwürdige Biologie." : "Wissenschaftlich akkurat."}
|
||
- 8k Auflösung, fotorealistisch.
|
||
|
||
[TECHNISCHES]:
|
||
- Seitenverhältnis: 16:10
|
||
- Objektiv: Weitwinkel (ca. 24mm).
|
||
`,
|
||
// 3. PROMPT FÜR DEN ZUFALLSGENERATOR (Gemini Flash)
|
||
getRandom: () => `
|
||
Nenne mir ein zufälliges, spannendes prähistorisches Tier aus dem Zeitalter der Dinosaurier (Mesozoikum) oder davor.
|
||
|
||
WICHTIGE REGELN:
|
||
1. Die Zeitgrenze ist das Massenaussterben vor 66 Mio. Jahren. (Keine Mammuts etc.)
|
||
2. SPRACHE: Die 'tagline' MUSS zwingend auf DEUTSCH sein.
|
||
3. VIELFALT: Sei kreativ! Nenne nicht nur die bekanntesten Tiere. Grabe tief in der Datenbank der Paläontologie. Bringe gerne auch unbekanntere, bizarre oder bunte Arten. Wähle jedes Mal etwas ganz anderes.
|
||
|
||
Erlaubte Gruppen:
|
||
- Dinosaurier (Theropoden, Sauropoden, Ornithischia...)
|
||
- Flugsaurier (Pterosaurier - aber nicht immer Quetzalcoatlus!)
|
||
- Meeresechsen (Mosasaurier, Plesiosaurier, Ichthyosaurier)
|
||
- Urzeitliche Krokodile, Amphibien oder frühe Synapsiden (z.B. Dimetrodon).
|
||
|
||
Antworte als reines JSON:
|
||
{
|
||
"name": "Name des Tiers (Einfacher Name, z.B. Deinocheirus statt Deinocheirus mirificus )",
|
||
"tagline": "Eine sehr kurze, knackige Beschreibung auf Deutsch (max 6-8 Wörter)"
|
||
}
|
||
`
|
||
}; |