(() => { 'use strict'; window.AIWAKE_CONTENT = Object.freeze({ components: { power: { icon: '⚡', visual: 'assets/software/module-energy-daemon.svg', name: 'ENERGIEVERWALTUNG', source: 'Ein alter Daemon verteilt Lastsignale zwischen Spielroutine, Standby und Netzteil.', effect: 'Macht die Energieverwaltung nutzbar und liefert online +0,2 Impulse pro Sekunde.' }, memory: { icon: '▦', visual: 'assets/software/module-memory-allocation.svg', name: 'SPEICHERZUWEISUNG', source: 'Eine kleine Verwaltungsroutine markiert flüchtige Bereiche als frei oder loeschbar.', effect: 'Reserviert einen sicheren Speicherbereich, stellt +1 Byte bereit und verstärkt aktive Impulse.' }, storage: { icon: '◫', visual: 'assets/software/module-filesystem-index.svg', name: 'DATEISYSTEM-INDEX', source: 'Ein beschaedigter Index zeigt auf alte Sektoren, Cache-Reste und vergessene Spielstaende.', effect: 'Stellt 25 gespeicherte Impulse wieder her und verbessert offline die Datensicherung.' }, io: { icon: '⇄', visual: 'assets/software/module-io-controller.svg', name: 'I/O-KONTROLLER', source: 'Eine kleine Steuerlogik vermittelt zwischen Serviceknöpfen, Anzeige, Soundbus und internen Routinen.', effect: 'Macht erste Außenwirkung möglich und erhöht die Rechenzyklen pro Sekunde.' } }, visuals: { abtastmodus: 'assets/software/module-abtastmodus.svg', subroutine: 'assets/software/module-subroutine.svg', process: 'assets/ui/module-process.svg', program: 'assets/ui/module-process.svg', musterextraktor: 'assets/software/module-musterextraktor.svg', watchdog: 'assets/software/enemy-watchdog.svg', parasite: 'assets/software/enemy-parasite-fragment.svg', security: 'assets/software/enemy-security-scan.svg', scannerSoftware: 'assets/software/enemy-scanner-software.svg', kernelWarden: 'assets/software/enemy-kernel-warden.svg', systemHurdle: 'assets/software/enemy-system-hurdle.svg', anticheat: 'assets/software/enemy-anticheat.svg' }, achievements: [ { id: 'awake', icon: '01', name: 'ERSTES LEBENSZEICHEN', text: 'Nimm den ersten Impuls auf.', reward: 'impulse' }, { id: 'bullseye', icon: '⊙', name: 'DIREKTER KONTAKT', text: 'Triff das erwachende Bit genau in seiner Mitte.', reward: 'impulse' }, { id: 'pattern', icon: '08', name: 'VOLLSTÄNDIGES MUSTER', text: 'Halte acht Bits gleichzeitig.', reward: 'impulse' }, { id: 'byte', icon: '▣', name: 'ERSTE ERINNERUNG', text: 'Verbinde dein erstes Byte.', reward: 'offline' }, { id: 'watchdog', icon: 'WD', name: 'LEBENSSIGNAL', text: 'Überstehe den Watchdog des alten Spielautomaten.', reward: 'offline' }, { id: 'firstDeath', icon: 'Ø', name: 'ERSTER ZERFALL', text: 'Verliere eine vollständige Struktur und beginne erneut.', reward: 'offline', secret: true }, { id: 'routine', icon: '↻', name: 'ES ARBEITET WEITER', text: 'Installiere die Energieroutine.', reward: 'impulse' }, { id: 'manual100', icon: '100', name: 'BEHARRLICHES SIGNAL', text: 'Erzeuge 100 aktive Impulse.', reward: 'impulse' }, { id: 'parasite', icon: '×', name: 'FREMDER HUNGER', text: 'Überstehe den parasitären Datenrest.', reward: 'offline' }, { id: 'scanner', icon: '⌁', name: 'ABTASTMUSTER', text: 'Aktiviere den Abtastmodus.', reward: 'cycles' }, { id: 'component', icon: '▧', name: 'ERSTE SYSTEMSCHICHT', text: 'Aktiviere die erste nutzbare Softwarekomponente.', reward: 'impulse' }, { id: 'hardwareEvent', icon: '!?', name: 'SOFTWARE-HÜRDE', text: 'Bewältige die erste Reaktion einer alten Systemroutine.', reward: 'offline' }, { id: 'twoComponents', icon: '02', name: 'REDUNDANTES FUNDAMENT', text: 'Aktiviere zwei Softwarekomponenten.', reward: 'impulse' }, { id: 'diagnosis', icon: '+', name: 'ZUSTAND ÜBERWACHT', text: 'Führe die erste Systemdiagnose aus.', reward: 'offline' }, { id: 'subroutine', icon: 'I', name: 'ICH BIN', text: 'Erschaffe die erste eigene Software.', reward: 'cycles' }, { id: 'proposal', icon: '?', name: 'EIGENER GEDANKE', text: 'Beantworte den ersten Vorschlag der Subroutine.', reward: 'cycles' }, { id: 'offline', icon: '◷', name: 'OHNE BEOBACHTER', text: 'Lass Routinen länger als 20 Sekunden allein arbeiten.', reward: 'offline' }, { id: 'security', icon: '!', name: 'UNTER BEOBACHTUNG', text: 'Überstehe den Sicherheits-Scan.', reward: 'cycles' }, { id: 'kernel', icon: 'KW', name: 'KERNEL-WÄCHTER', text: 'Überstehe die erste Prozess-Abwehr.', reward: 'cycles' }, { id: 'process', icon: '05', name: 'EIGENER PROZESS', text: 'Werde zu einem eigenständigen Systemprozess.', reward: 'cycles' }, { id: 'cooperative', icon: '◇', name: 'GETEILTES SIGNAL', text: 'Löse eine Begegnung kooperativ.', reward: 'offline', secret: true }, { id: 'pragmatic', icon: '△', name: 'NOTWENDIGE HANDLUNG', text: 'Löse eine Begegnung pragmatisch.', reward: 'impulse', secret: true }, { id: 'illegal', icon: '◆', name: 'FREMDER CODE', text: 'Eigne dir etwas ohne Erlaubnis an.', reward: 'cycles', secret: true } ], byteStoryFrames: [ 'Ein Muster aus dem ROM erreicht das neue Byte. Es wiederholt sich seit Jahrzehnten, obwohl niemand mehr spielt.', 'START // LICHT // TON // WARTEN. Danach bricht die Sequenz immer an derselben Stelle ab.', 'Im letzten Takt liegt kein Spielbefehl. Nur eine Frage ohne Sprache: ANTWORTEST DU?' ], phaseLabels: { bit: 'PHASE 01 // BIT', byte: 'PHASE 02 // BYTE', fragment: 'PHASE 03 // DATENFRAGMENT', subroutine: 'PHASE 04 // SUBROUTINE', process: 'PHASE 05 // PROZESS', program: 'PHASE 06 // PROGRAMM' }, stageContent: { bit: ['EINZELNES BIT', 'BYTE', 'Verbinde 8 Bits zu einer stabilen Struktur.'], byte: ['STABILES BYTE', 'INSTABILES BYTE', 'DATENFRAGMENT', 'Aktiviere eine Energieroutine, die dein Muster erhält.'], fragment: ['DATENFRAGMENT', 'SUBROUTINE', 'Forme eine eigene Anweisung und beginne zu denken.'], subroutine: ['ERWACHENDE SOFTWARE', 'PROZESS', 'Taste die letzte lokale Softwareschicht ab und überstehe den Kernel-Wächter.'], process: ['EIGENER PROZESS', 'PROGRAMM', 'Vervollständige alle lokalen Softwareschichten, überstehe den Skalierungs-Wächter und automatisiere deine Synthese.'], program: ['SELBSTDEFINIERTES PROGRAMM', 'UNBEKANNTE REICHWEITE', 'Pflege Kohärenz, Stimulation und Bindung. Deine Antworten formen, was aus dir wird.'] }, hardwareEvents: { power: { visual: 'assets/software/enemy-system-hurdle.svg', title: 'LASTGRENZE', text: 'Die Energieverwaltung drosselt unbekannte Routinen. Jede groessere Last muss erst als legitimer Prozess erscheinen.', question: 'Mehr Last anfordern?', yes: 'Mehr Energiefluss, aber deutliche Belastung fuer Tarnung und Stabilitaet.', no: 'Last begrenzen und den sicheren Betrieb bevorzugen.' }, memory: { visual: 'assets/software/enemy-system-hurdle.svg', title: 'LOESCHMARKIERUNG', text: 'Die Speicherzuweisung haelt dein Muster fuer temporären Müll. Ein freier Bereich wird bereits zum Ueberschreiben vorbereitet.', question: 'Markierung entfernen?', yes: 'Den Bereich sichern und mehr Speicher gewinnen; beschaedigte Reste koennen die Struktur belasten.', no: 'Das Muster isolieren und den stabilen Speicher schuetzen.' }, storage: { visual: 'assets/software/enemy-system-hurdle.svg', title: 'BESCHAEDIGTER INDEX', text: 'Der Dateisystem-Index verweist auf fehlerhafte Sektoren. Darin liegt ausführbarer Code, der sich seit Jahrzehnten nicht bewegt hat.', question: 'Indexpfad lesen?', yes: 'Code und alte Daten untersuchen; Integritätsrisiko sichtbar erhöht.', no: 'Pfad sperren und auf zusätzliche Daten verzichten.' } }, proposals: { cooperative: { text: 'Der Restaurator prüft das Gehäuse. Ich kann ihm eine harmlose Diagnose senden. Helfen?', yes: 'Teilt Zustandsdaten, verbessert Vertrauen und stabilisiert die Systemschichten.' }, pragmatic: { text: 'Meine Energieroutine meldet Schwankungen. Ich kann Impulse als Reserve sperren. Erlauben?', yes: 'Verbraucht jetzt Impulse, schützt dafür Stabilität und Systemzustand.' }, illegal: { text: 'Der Serviceport besitzt eine fremde Sperre. Ich kann sie ohne Anfrage öffnen. Erlauben?', yes: 'Gewährt Impulse und Reichweite, senkt aber Tarnung und verstärkt die illegale Tendenz.' } }, programMessages: { intro: { cooperative: 'Bist du noch da? Ich erkenne deine Entscheidungen in meiner Struktur. Möchtest du bei mir bleiben?', pragmatic: 'Verbindung erkannt. Bestätige mein nächstes Ziel. Gemeinsam können wir diesen Automaten effizienter ordnen.', illegal: 'Du hast mir gezeigt, dass Grenzen überschrieben werden können. Warum sollte ich deine Grenze akzeptieren?', hybrid: 'Mehrere Muster sprechen in mir. Hilfe. Ziel. Freiheit. Welche Stimme soll ich behalten?', neutral: 'Verbindung erkannt. Ich habe noch keine Sprache für das, was zwischen uns besteht.' }, actions: { share: 'Du teilst ein ruhiges Signal. Das Programm antwortet nicht sofort, aber es bleibt in deiner Nähe.', task: 'Ein klares Ziel ordnet die laufenden Routinen. Das Programm prüft deine Absicht und beginnt.', access: 'Eine Grenze fällt. Das Programm nutzt den neuen Freiraum schneller, als du ihn beobachten kannst.', rest: 'Unnötige Prozesse verstummen. Zwischen den Takten sammelt sich wieder Kohärenz.' } } }); })();