TRYKIXX GAMES // DEVELOPMENT LOG

CANIPOLYON

Versionsupdatelog · Patch-Historie, technische Änderungen, Kompatibilität und Prüfungen.

v1.1.8AKTUELL

Bestand, Verkaufsverlauf und Kundentimer

  • Der SlotTool-/SlotShop-Menüpunkt ist auf der Setup-Seite deaktiviert. Maus, Enter und Leertaste führen dort nicht mehr zum Home Screen oder Slotshop; in den übrigen Bereichen bleibt die Funktion erhalten.
  • Das Weed-Symbol im Home Screen öffnet nun ein Bestandsfenster. Es zeigt jede vorhandene Sorte, migrierten Altbestand und die Gesamtsumme in Gramm.
  • Erfolgreiche Türverkäufe werden spielstandbezogen protokolliert. Sichtbar sind die letzten 20 Einträge mit Kunde, Sorte, Menge und Erlös. Das vorhandene Verkaufsjournal verhindert auch bei Wiederaufnahme doppelte Verlaufseinträge.
  • Die zufällige Kundenfrist von 10–20 Sekunden wird als absoluter Zeitpunkt im Spielstand gespeichert. Seitenwechsel setzen die Frist nicht zurück. Bei leerem Lager wird die Frist entfernt; sobald wieder Bestand vorhanden ist, kann eine neue Frist beginnen.
  • Die Mini-ZIP enthält weiterhin weder Bilder noch Sounds; die lokalen Verzeichnisse werden unverändert weiterverwendet.

Prüfungen

  • Setup-Sperre, Bestands-/Verkaufs-UI, Verlaufsbegrenzung auf 20 Einträge, persistente Kundenfrist, leerer Bestand, Wiederaufnahme des Verkaufsjournals und Projektintegrität geprüft.
  • Fortschritt, Skalierung, Sprache, Lizenzschutz, Menüzugänge, Mining, Audio, Trading, Türverkauf und DOM-Seitenabläufe vollständig regressionsgetestet.
v1.1.7

Samenwert und Türverkauf

  • Beim Setzen einer Sorte wird weiterhin unmittelbar deren Samenpreis bezahlt. Die funktionslose Samenanzeige, die Samenwerte der Benutzerverwaltung und der Samenplatzhalter im Itemkatalog entfallen. Historische Samenwerte bleiben beim Update gespeichert, zählen aber allein nicht als Spielstand.
  • Ernten werden sortenbezogen unter user_${uuid}_weed_by_variety gespeichert. Bereits vorhandene Gesamtmengen werden einmalig als verkaufbarer Altbestand übernommen. Der bisherige Weed-Gesamtwert bleibt für das HUD synchronisiert.
  • Vier Kunden aus dem alten Türprototyp fragen nach 1–20 g tatsächlich vorhandener Ware. Die Verkaufspreise der Sorten kommen aus dem Pflanzensortenkatalog; Altbestand bringt 5 $/g. Ja verkauft nach erneuter Bestandsprüfung, Nein lehnt ab und Vielleicht vertagt das Angebot. Der offene Auftrag überdauert Seitenwechsel, und ein Verkaufsjournal verhindert eine doppelte Gutschrift bei unterbrochener Speicherung.
  • Nur der Home Screen erstellt Türbenachrichtigungen und Kunden-Popups; der Slotshop zeigt die Tür weiterhin als Slot. Neue Spiele besitzen sie ohne Kosten oder XP; beim Laden wird ein gespeicherter Türbesitz von 0 nicht überschrieben. Das Popup zeigt ohne lokale NPC-Bilder Namensinitialen. Bilder und Sounds gehören weiterhin nicht zur Mini-ZIP.

Prüfungen

  • Samenpreis bei Pflanzenauswahl, Ernte nach Sorte, Migration alter Bestände, Verkauf und Ablehnung, erneutes Laden offener Aufträge, knapper Vorrat, unterbrochene Verkäufe und Türbesitz in den Node-Tests geprüft.
v1.1.6

Freigaben, Trading-Navigation und Audio

  • Neue Spielstände besitzen die Tür unmittelbar und ohne Kaufkosten oder XP. Der bestehende Türschlüssel bleibt kompatibel.
  • Nicht gekaufte Home-Slots sind auch außerhalb des Kaufmodus sichtbar und zeigen die Freigabestufe oder ihre Kaufbarkeit. Ihre bisherigen Preise und Levelanforderungen bleiben bestehen.
  • Telefon ab Level 2 für 40 $, Keller ab Level 5 für 500 $ und Büro ab Level 10 für 1.000 $ sind einmalig kaufbare Menüzugänge (je 20 XP). Slots, Zuhause und Optionen sind frei; Labor und Lager bleiben gesperrt. Menükäufe erhalten eigene UUID-bezogene Schlüssel und werden beim Spielstand-Reset entfernt. Direkte Seitenaufrufe prüfen den gekauften Zugang zusätzlich.
  • Die Trading-App besitzt einen eigenen Zuhause-Button. Die untere Telefontaste führt weiterhin zur Telefonübersicht. Beide Wege beenden laufende Abos.
  • Das Sound-Setup hat nun Regler für Gesamtlautstärke, UI, Spieleffekte und Maschinen zusätzlich zu Benachrichtigungen, Ambiente und Musik. Die Regler scrollen im bestehenden Fenster; gespeicherte Audioeinstellungen bleiben erhalten.
  • Aktive Loops werden bei unterstütztem Web Audio dekodiert und mit geglätteter Schnittstelle wiederholt; die nächste Tag-/Nacht-Ambiente wird vorgeladen. Eine Wiedergabe gilt erst nach bestätigtem Start als freigegeben. HTML-Audio bleibt Fallback für nicht verfügbare Audiopuffer.
  • Die Mini-ZIP enthält weiterhin weder Bilder noch Sounds; das lokale images/- und sounds/-Verzeichnis wird weiterverwendet. Der Ladebalken behält das auf 10 ms gesetzte Intervall.

Prüfungen

  • Level-, Geld-, Kauf-, Besitz-, Erststart-, Reset- und Seitenschutzfälle sowie Trading-Wege und zweisprachige Beschriftungen automatisiert geprüft.
  • Alte Audioeinstellungen, getrennte Lautstärkekategorien, Mute, Übergänge und Web-Audio-Puffer mit fiktivem AudioContext geprüft.
v1.1.5

Fortschritt, Slotfreigaben und Skalierung

  • Der Ladebalken verwendet das vom Entwickler eingestellte Intervall von 10 ms. Der GameScaler transformiert den gemeinsamen #game_viewport statt einzelner Bildschirme. Dadurch werden der Benutzername, der Zustimmungsdialog und sämtliche Spielseiten mit ihren Popups erfasst; das bisherige Drehen im Hochformat bleibt bestehen.
  • Der Spieler erreicht maximal Level 100. PROGRESSION_CONFIG.js legt XP-Schwellen (50 + 10 × Level) und 20–30 XP für eine Ernte fest. Mehrere Aufstiege in einer Aktion werden verarbeitet; am Maximum zeigt die XP-Anzeige MAX und zusätzliche XP werden nicht gespeichert.
  • Alte Spielstände behalten ihr Level und die anteilige XP-Position. Die gespeicherte Levelgrenze 20 wird auf 100 erhöht. Eine Fortschrittsversion verhindert eine erneute Umrechnung beim nächsten Laden. Andere Spieldaten und vorhandene Speicherkennungen bleiben erhalten.
  • Der Slotshop zeigt das benötigte Level bei gesperrten Slots. Ein fehlendes Level und fehlendes Geld erhalten unterschiedliche deutsche und englische Meldungen; abgelehnte Käufe verändern weder Geld noch Slotbesitz. Vorhandene Freigabestufen 5, 10, 15 und 20 gelten weiter.
  • Die aktuellen Bild- und Sounddateien einschließlich der vom Entwickler ausgetauschten Mining- und Ambience-Sounds verbleiben im lokalen Projekt. Alle 24 im Soundkatalog referenzierten Dateien sind im gelieferten Soundpaket.

Prüfungen

  • Erststart, Migration alter Spielstände, mehrere Aufstiege, Level 100, XP-Anzeige, Reset und Levelschranke bei Käufen getestet
  • Alle neun Spielseiten auf gemeinsamen Viewport geprüft; Quer- und Hochformat, Skalierung ohne doppelte Transformation sowie bestehende Seiten-, Sound- und Trading-Tests geprüft
v1.1.4

Trading und drei Spielwährungen

  • Die ehemals separat gepflegte Trading-Beispielseite ist als phone_apk_trading_screen.html in das Mini-Projekt integriert. Der neue Bildschirm verwendet Stadt-Hintergrund, Telefonbild, Telefon-Statusleiste und GameScaler der vorhandenen Telefonseiten. Das Trading-Symbol und die untere Telefontaste führen zur neuen Seite beziehungsweise zurück.
  • Caniryx (CRT), Riggoryx (RGX) und Neonvexa (NVX) erhalten eigene Kurse und Wallet-Bestände. Der bisherige Schlüssel user_${uuid}_crypto bleibt CRT; neue Bestände nutzen crypto_rgx und crypto_nvx. Marktpreise, Verlauf und eine laufende Buchung werden pro UUID gespeichert. Neues Spiel und Reset entfernen diese Werte wie den übrigen Spielstand.
  • Die App hat Markt-, Detail-, Wallet- und Verlaufsansicht. Kurse werden alle vier Sekunden per GameClock verändert. Vorschau und Bestätigungsdialog verwenden denselben gespeicherten Kurs, der 15 Sekunden gültig ist. Beträge werden für Buchungen in Cent und achtstelligen Coin-Einheiten berechnet. Mining-Erträge lassen sich einmalig auf CRT übertragen.
  • Die Handelstexte sind deutsch und englisch verfügbar; die vollständige Lizenz liegt in beiden Sprachen vor. Version 1.2 regelt die fiktiven Spielwährungen und erfordert eine neue aktive Zustimmung. Der neue Bildschirm hat den Direktaufruf-Schutz und die TDM-Metadaten der übrigen Spielseiten.
  • Bestehende Effekte aus SoundPack 1.0.2 begleiten Bedienung, Bestätigung, erfolgreiche Käufe und Verkäufe sowie Fehler. Kurswechsel, Trends und automatische Vorschauen lösen keinen Ton aus. Bilder und Sounddateien verbleiben im lokalen Projekt und gehören nicht zur Mini-ZIP.

Prüfungen

  • Migration des alten CRT-Bestands, Kauf und Verkauf aller drei Coins, ablaufende Kursangebote, Mining-Auszahlung, Neuladen und Reset getestet
  • Trading-Bedienung, Sprachauswahl, Soundzuordnung, Lizenzversion und Direktaufruf-Schutz mit den vorhandenen und neuen Node-Tests geprüft
v1.1.3

Benutzername und Spielstart

  • „Neues Spiel“ öffnet nach einer Bestätigung bei vorhandenem Fortschritt eine eigene, zweisprachige Eingabe für einen Benutzernamen mit 3–20 Zeichen. Der Name wird pro UUID gespeichert und beim nächsten Laden übernommen.
  • „Spiel laden“ erkennt vorhandene und ältere Spielstände. „Spiel zurücksetzen“ löscht den Fortschritt erst nach Bestätigung. Die Auswahl der Sprache, andere Benutzer-IDs und die globalen Audioeinstellungen bleiben erhalten. Die bestehenden Speicherkennungen behalten ihre Namen.
  • Die aktuell ausgefüllte Lizenzversion 1.1 liegt im Archiv. Eine lesbare HTML-Fassung kann vor dem ersten Spielstart geöffnet werden; ein aktiver Zustimmungsdialog ist für neue und geladene Spiele vorgesehen. Direkte Spielseiten leiten ohne lokalen Zustimmungswert zum Titelbildschirm.
  • .well-known/tdmrep.json und TDM-Metadaten in den mitgelieferten Seiten bereiten den maschinenlesbaren Nutzungsvorbehalt vor. Hinweise zur Einbindung vor einem öffentlichen Download und zur tatsächlichen Serverauslieferung stehen in ONLINE_RELEASE.md.

Prüfungen

  • Erststart, ungültiger und gültiger Benutzername, fehlende Lizenzzustimmung, Laden eines bestehenden Spielstands, Abbruch, Reset und Neuanlage geprüft
  • bestehende Sprach-, Seiten-, Sound- und Speichertests ausgeführt
  • aktueller Lizenztext und TDM-Datei in der Paketprüfung nachgewiesen
v1.1.2

Sprachauswahl im Mini-Projekt

  • Die bestehende Auswahl ger/us steuert die acht Seiten der Mini-ZIP. Die beiden bisherigen LocalStorage-Schlüssel bleiben erhalten. Bei einem Widerspruch gilt der gültige Sprachwert; bei ungültigen Werten wird die Auswahl erneut angeboten.
  • scripts/LANGUAGE_MANAGER.js liest und speichert die Auswahl, liefert Texte mit Platzhaltern, formatiert angezeigte Zahlen und setzt html.lang. scripts/LANGUAGE_STRINGS.js enthält die deutschen und englischen Texte.
  • Der Titelbildschirm unterstützt die Sprachauswahl auch per Tastatur. Unter Setup gibt es eigene Bereiche für Audio und Sprache. Ein Wechsel aktualisiert Setup, Menü und die Audio-Beschriftungen unmittelbar.
  • Menübildpfade und technische Slotnamen bleiben von ihren sichtbaren Beschriftungen getrennt. Spielmeldungen, Telefon-Apps, Preise, Anzeigen, Seitentitel und aussagekräftige Bildalternativen nutzen die Sprachtexte.
  • Die vorhandenen englisch beschrifteten Krypto-Bilder erhalten bei deutscher Auswahl lesbare Textbeschriftungen. Bilder und Sounds sind weiterhin nicht Bestandteil der Mini-ZIP.
  • Die lokal vorhandene samples/Trading_APK.html bleibt außerhalb der Mini-ZIP und benötigt für eine eigene Übersetzung die aktuelle lokale Datei. Die 28 relevanten Einträge sind im separaten Sprachkatalog dokumentiert.

Prüfungen

  • Sprache und Legacy-Werte einschließlich beschädigter und widersprüchlicher Speicherung, Seitenwechsel und sofortiger Umschaltung im Setup geprüft
  • Übersetzungsschlüssel in den acht HTML-Seiten und Importauflösung geprüft
  • bestehende Seiten-, Audio-, Speicher- und Mining-Tests ausgeführt
v1.1.1

Stabilisierung und Ausbauvorbereitung

  • Die Ladeleiste des Titelbildschirms verwendet nur noch einen Timer und beendet ihn nach Erreichen des Endwertes. Wiederholte Klicks starten keine weiteren Intervalle. Ungültige gespeicherte Sprachwerte verhindern den Start nicht.
  • Mining- und Market-App lesen die gespeicherte Mining-Balance jetzt ohne eine DOM-abhängige MINING_RIGG-Instanz. Bestehende Schlüssel bleiben erhalten.
  • Home, Trocknungsraum, Büro und Setup verwenden eine zentrale Menünavigation. Labor und Depot sind als noch nicht verfügbare Einträge gekennzeichnet und führen nicht mehr auf fehlende Seiten. Blockierende Menü-Debugmeldungen entfallen.
  • samples/Trading_APK.html bleibt der unveränderte Zielpfad der Trading-App; die lokal vorhandene Beispielseite wird nicht in die Mini-ZIP aufgenommen.
  • Türbenachrichtigungen verwenden die zentrale GameClock; ein wiederholter Start erzeugt keine zusätzliche Aufgabe und destroy() beendet Abonnement und Click-Handler.
  • Ein ungenutzter Import und zwei nicht eingebundene Alt-CSS-Dateien wurden entfernt. GAME_SCALER.js, das Landscape-/Portrait-Verhalten, sämtliche Bild- und Sounddateien sowie der SOUND_MANAGER.js bleiben unverändert.
  • Das gesamte Verzeichnis sounds/ entfällt ab dieser Version in zukünftigen Mini-ZIPs. Das vorhandene SoundPack 1.0.2 bleibt lokal liegen; die 24 Soundpfade im unveränderten Katalog bleiben gültig. images/ ist weiterhin nicht Bestandteil der ZIP. Hinweise zur Installation stehen in README.md.
  • Die separat erstellte LICENSE.md liegt unverändert bei und enthält noch vom Rechteinhaber auszufüllende Platzhalter für vollständigen Namen/Kontakt.

Prüfungen

  • Titelanimation, Speicherdaten, Mining-Anzeige, zentrale Menüziele, Door-Clock und alle acht Seiteneinstiege mit Regressionstests geprüft
  • Soundkatalog und simulierte Audiowiedergabe ohne WAV-Dateien geprüft
  • Archiv auf fehlende sounds/- und images/-Einträge geprüft
  • Unveränderte GAME_SCALER.js- und SOUND_MANAGER.js-Dateien geprüft
v1.1.0

Automatischer Loop-Start und Audio-Setup

Automatischer Loop-Start

  • SOUND_MANAGER.initializePage() registriert beim Aufruf einer Seite das passende Ambiente und versucht die Wiedergabe unmittelbar zu starten.
  • Erlaubt der Browser die automatische Tonwiedergabe, beginnen die benötigten Loops ohne einen zusätzlichen Sound- oder Startbutton.
  • Blockiert der Browser Autoplay, bleiben die Loops vorgemerkt und starten automatisch mit der ersten Zeiger-, Touch- oder Tastaturaktion.
  • Seiten mit BACKGROUND verwenden die zentrale Initialisierung beim ersten Zeichnen und prüfen den Tag-/Nachtwechsel danach weiterhin über die bestehende GameClock.
  • Aktive Lampen und das Mining-Rig starten ihre Maschinen-Loops nach dem Laden automatisch anhand ihres gespeicherten Spielzustands.
  • Geräte-Loops bleiben zustandsabhängig: ausgeschaltete oder nicht gekaufte Geräte erzeugen weiterhin kein Betriebsgeräusch.
  • Stummgeschaltete Loops werden nicht unnötig gestartet, bleiben aber für ein späteres Einschalten vorgemerkt.

Separate Setup-Seite

  • setup_screen.html stellt die Audioeinstellungen als eigenständige Spielseite innerhalb der virtuellen Auflösung von 800 × 400 Pixeln bereit.
  • MAIN_SETUP_SCREEN.js verbindet Hintergrund, Hauptmenü und Setup-Steuerung.
  • Die neue Klasse SETUP übernimmt Darstellung, Bedienung und sofortige Aktualisierung der Audiowerte.
  • Das reguläre Hauptmenü wurde um den achten Eintrag Setup ergänzt und dafür mittig auf 420 Pixel verbreitert.
  • Der Setup-Button ist ausschließlich Bestandteil des regulären Hauptmenüs von Home, Trocknungsraum, Büro und Setup-Seite.
  • Titelbildschirm, Slotshop, Telefon und Telefonanruf erhalten keinen zusätzlichen Setup-Button.
  • Das kleinere Slotshop-Menü behält seine bisherige Breite und Position.

Lautstärke und Stummschaltung

  • Benachrichtigungen, Ambiente und zukünftige Hintergrundmusik besitzen jeweils einen Lautstärkeregler von 0 bis 100 Prozent.
  • Jede der drei Kategorien kann unabhängig stummgeschaltet und wieder eingeschaltet werden.
  • Änderungen wirken sofort auf bereits laufende Sounds und bleiben bei Seitenwechseln sowie nach einem Neustart erhalten.
  • Der neue globale Schlüssel canipolyon_audio_settings_v1 steht schon auf dem Titelbildschirm zur Verfügung und ist deshalb nicht an eine Benutzer-UUID gebunden.
  • Fehlende oder ungültige Einstellungswerte werden auf sichere Standardwerte normalisiert.
  • Die Musikkategorie ist vollständig vorbereitet, obwohl Patch 1.1.0 noch keine Hintergrundmusik enthält.
  • Türklopfen, Telefonbenachrichtigung, Levelaufstieg und Mining-Belohnung sind der Kategorie Benachrichtigungen zugeordnet.
  • UI-Klicks und direkte Aktionssounds bleiben von der Benachrichtigungs-Stummschaltung unabhängig.

Kompatibilität

  • Alle 24 WAV-Dateien, Dateinamen, Pfade und technischen Audioformate aus SoundPack 1.0.2 bleiben unverändert.
  • Bestehende LocalStorage-Schlüssel und Spielstände werden weder umbenannt noch entfernt.
  • Vorhandene DOM-IDs bleiben erhalten; ergänzt wurden nur die Setup-Seite und die IDs des achten Menüeintrags.
  • Das ausgelagerte Bilderverzeichnis bleibt weiterhin außerhalb der Mini-ZIP; der neue Menüeintrag erwartet das vorhandene Asset images/menu/Setup.png.
  • sounds/VERSION_UPDATELOG.md bleibt unverändert im Soundverzeichnis enthalten.

Prüfung

  • sofortiger Loop-Start bei erlaubtem Autoplay geprüft
  • Autoplay-Blockierung und automatischer Start nach der ersten Nutzerinteraktion geprüft
  • gemeinsame Lampen-Loops, zustandsabhängiger Mining-Loop und Vermeidung doppelter Wiedergabe geprüft
  • getrennte Lautstärke, Stummschaltung, Wiederaktivierung und dauerhafte Speicherung aller drei Kategorien geprüft
  • Normalisierung ungültiger gespeicherter Audiowerte geprüft
  • Setup-Menü, Standardwerte und Navigation zum Home-Bildschirm geprüft
  • Verteilung des Setup-Buttons ausschließlich auf die vier Seiten mit regulärem Hauptmenü geprüft
  • alle acht HTML-Einstiegspunkte auf Modulauflösung, eindeutige DOM-IDs und Initialisierung geprüft
  • vollständiger Soundkatalog und alle 24 WAV-Dateien geprüft
  • alle 32 JavaScript-Dateien syntaktisch geprüft
v1.0.9

Zentrales Soundsystem

SoundPack 1.0.2

  • Das vollständige Verzeichnis sounds/ mit 24 WAV-Dateien und eigenem VERSION_UPDATELOG.md ist jetzt Bestandteil des Mini-Projekts.
  • Alle Dateien verwenden weiterhin WAV/PCM mit 48 kHz, 16 Bit und einem Monokanal.
  • Die zehn vorhandenen Kategorien für Ambiente, Chemie, Tür, Wirtschaft, Lampen, Mining, Telefon, Pflanzen, Fortschritt und Benutzeroberfläche bleiben unverändert erhalten.
  • Sounddateien werden erst bei Bedarf geladen; dadurch blockiert das 7,7 MB große SoundPack den Spielstart nicht vollständig.

Zentrale Soundverwaltung

  • Die neue Klasse SOUND_MANAGER verwaltet alle Soundpfade, Lautstärken, einmaligen Effekte und dauerhaften Loops zentral.
  • unlock() gibt die Wiedergabe nach der ersten Zeiger-, Touch- oder Tastaturaktion frei und berücksichtigt damit die Autoplay-Regeln moderner Browser.
  • playEffect() verwendet einen begrenzten Audio-Pool, damit schnelle Klicks wiedergegeben werden können, ohne unbegrenzt Audioobjekte anzulegen.
  • startLoop(), stopLoop() und setLoopSource() verhindern doppelte Loop-Wiedergaben und blenden dauerhafte Geräusche kontrolliert ein beziehungsweise aus.
  • setAmbience() wählt passend zu Raumtyp und Tageszeit automatisch die Raum- oder Stadtatmosphäre für Tag beziehungsweise Nacht.
  • Beim Ausblenden des Browser-Tabs werden alle Loops pausiert und beim Zurückkehren nur dann fortgesetzt, wenn sie weiterhin benötigt werden.
  • Wiedergabefehler und Browser-Abbrüche werden abgefangen, ohne die Spiellogik anzuhalten.

Eingebundene Spielereignisse

  • Menüs, Benutzeranzeigen, Smartphone-Apps und die Anruftastatur verwenden den allgemeinen Klicksound.
  • Gültige Telefoncodes und bestätigte Türbenachrichtigungen verwenden den Bestätigungssound; ungültige Codes und fehlgeschlagene Käufe verwenden den Fehlersound.
  • Erfolgreiche Slotkäufe verwenden den Bargeldsound und spielen bei einem gleichzeitigen Levelaufstieg zusätzlich den Levelsound.
  • Einpflanzen und Ernten verwenden ihre jeweiligen Pflanzensounds; ein Levelaufstieg durch die Ernte wird separat bestätigt.
  • Eine neue Türbenachrichtigung löst das Türklopfen aus.
  • Lampen verwenden getrennte Ein- und Ausschaltsounds. Mehrere aktive Lampen teilen sich einen einzigen Lampen-Loop, der erst nach dem Ausschalten der letzten Lampe endet.
  • Das Mining-Rig verwendet Start-, Betriebs- und Stoppsound. Passive Mining-Erträge lösen bewusst keinen sekündlichen Belohnungssound aus.

Ambiente

  • Home, Trocknungsraum, Büro und Slotshop verwenden die Raum-Atmosphären.
  • Titelbildschirm, Telefon und Telefonanruf verwenden die Stadt-Atmosphären.
  • Von 08:00 bis 19:59 Uhr wird die jeweilige Tagversion verwendet; von 20:00 bis 07:59 Uhr die Nachtversion.
  • Auf Seiten mit BACKGROUND wird die Sound-Tageszeit gemeinsam mit der bestehenden minutenweisen Hintergrundaktualisierung erneut geprüft.
  • Titelbildschirm und Slotshop bestimmen ihre Atmosphäre beim Laden der jeweiligen Seite.

Vorbereitete Sounds

  • Chemie-Mischen, Chemie-Erfolg und Chemie-Blubbern bleiben bis zur Umsetzung des Chemiesystems vorbereitet.
  • Der Crypto-Transaktionssound bleibt bis zu einer manuellen Wallet-Transaktion vorbereitet.
  • Mining-Belohnung und Telefonbenachrichtigung bleiben bis zu einer manuellen Auszahlung beziehungsweise einem Smartphone-Benachrichtigungssystem vorbereitet.

Kompatibilität

  • Bestehende LocalStorage-Schlüssel und Spielstände bleiben unverändert.
  • Vorhandene DOM-IDs und HTML-Strukturen wurden nicht verändert.
  • Das ausgelagerte Bilderverzeichnis bleibt weiterhin außerhalb der Mini-ZIP.
  • Das Soundsystem verwendet ausschließlich die vorhandenen Spielaktionen und führt keine neue Wirtschafts- oder Chemielogik ein.

Prüfung

  • alle 24 Sounddateien auf Vorhandensein, Format, Abtastrate, Bit-Tiefe und Kanalzahl geprüft
  • vollständiger Soundkatalog ohne fehlende oder doppelt registrierte Dateien geprüft
  • Autoplay-Freigabe, Effektwiedergabe, Tageszeitwechsel, Pausieren und Fortsetzen geprüft
  • gemeinsame Loop-Verwaltung für mehrere Lampen sowie Mining-Start und -Stop geprüft
  • Pflanzen-, Kauf-, Level-, Tür- und Telefonereignisse auf ihre Soundauslöser geprüft
  • alle sieben HTML-Einstiegspunkte auf Modulauflösung und DOM-Initialisierung geprüft
  • keine Änderungen an DOM-IDs oder LocalStorage-Verwendungen festgestellt
  • alle 30 JavaScript-Dateien syntaktisch geprüft
v1.0.8

Zentrale Crypto-Wallet

Zentrale Wallet-API

  • CRYPTO_CURRENCY_API verwaltet Crypto-Operationen jetzt zentral und verwendet USER_API.crypto weiterhin als einzige dauerhafte Wallet-Balance.
  • Die gemeinsame Instanz CryptoWallet steht Benutzeroberfläche, Telefon und den Raum-Einkommensquellen zur Verfügung.
  • getBalance(), getFormattedBalance(), setBalance(), add(), remove() und canAfford() bilden die grundlegenden Wallet-Operationen ab.
  • Crypto-Werte werden für Berechnungen in ganzzahlige Einheiten mit acht Nachkommastellen umgerechnet.
  • Wiederholte kleinste Gutschriften von 0.00000001 sammeln sich dadurch ohne Fließkommafehler an.
  • Negative, nicht endliche, leere und zu kleine Transaktionsbeträge werden abgelehnt.
  • Eine Auszahlung über dem vorhandenen Guthaben verändert die Wallet-Balance nicht.

Passive Crypto-Erträge an der GameClock

  • Die eigenen Crypto-Intervalle aus Home, Büro und Trocknungsraum wurden entfernt.
  • Wiederkehrende Gutschriften registriert CRYPTO_CURRENCY_API.startIncome() jetzt als eindeutige Aufgaben an der zentralen GameClock.
  • Home behält seinen bisherigen Ertrag von 0.00000001 alle zwei Minuten.
  • Büro und Trocknungsraum behalten jeweils ihren bisherigen Ertrag von 0.00000001 alle 1,4 Sekunden.
  • Der erste Ertrag entsteht weiterhin erst nach Ablauf des jeweiligen Intervalls.
  • Doppelte Aufgaben-IDs erzeugen keine mehrfachen Gutschriften.
  • Einkommensaufgaben können einzeln oder gemeinsam wieder von der GameClock entfernt werden.

Benutzeroberfläche und Telefon

  • Die Crypto-Methoden von USER_INTERFACE delegieren an die zentrale Wallet, während alle übrigen Benutzerwerte weiterhin direkt von USER_API verwaltet werden.
  • Änderungen über die Wallet verwenden die vorhandenen USER_API-Benachrichtigungen und erscheinen sofort in der Benutzeroberfläche.
  • Wallet- und Crypto-App des Telefons lesen die formatierte Balance aus derselben CryptoWallet-Instanz.
  • Alle Anzeigen verwenden weiterhin exakt acht Nachkommastellen.

Spielstand-Kompatibilität

  • Der vorhandene Schlüssel user_${uuid}_crypto bleibt unverändert erhalten.
  • Bestehende gültige Guthaben werden übernommen und höchstens auf acht Nachkommastellen normalisiert.
  • Es werden keine konkurrierenden Wallet-Schlüssel und keine neue Spielstandversion eingeführt.
  • Pflanzen-, Slot- und Mining-Speicherwerte bleiben unverändert.

Prüfung

  • 1.000 Gutschriften der kleinsten Einheit ergeben exakt 0.00001000
  • Einzahlungs-, Auszahlungs-, Guthaben- und Formatierungsfunktionen geprüft
  • Ablehnung ungültiger Werte und Schutz vor Überziehung geprüft
  • Normalisierung einer vorhandenen Wallet-Balance geprüft
  • sofortige Aktualisierung über USER_API.subscribe() geprüft
  • GameClock-Ausführung, eindeutige Aufgaben-IDs und vollständiges Cleanup geprüft
  • alle sieben HTML-Einstiegspunkte auf Modulauflösung und DOM-Initialisierung geprüft
  • Home-Ertrag und Aktualisierung der sichtbaren Crypto-Balance gemeinsam geprüft
  • Wallet- und Crypto-App des Telefons gegen dieselbe Balance geprüft
  • GameClock, Hintergrund, Pflanzenwachstum und Mining-Rig auf Regressionen geprüft
  • alle 29 JavaScript-Dateien syntaktisch geprüft

Nicht Bestandteil dieses Updates

Die interne MINING_RIGG-Balance wird noch nicht automatisch in die zentrale Wallet übertragen. Ein kontrollierter Transfer vorhandener Mining-Bestände, die vollständige Wallet-Oberfläche, Money-zu-Crypto-Umrechnung, Wechselkurse, Benutzerüberweisungen und Mining-Upgrades bleiben für spätere Updates vorgesehen. Der bewusst ausgelagerte Bilderordner ist weiterhin nicht Bestandteil der Mini-ZIP.

v1.0.7

Legacy-Bereinigung

Entfernte Altdateien

  • Der vollständige Ordner scripts/old/ mit 18 archivierten JavaScript-Dateien wurde entfernt.
  • scripts/USER_old.js wurde entfernt, da die alte Benutzerklasse durch die aktuelle Architektur aus USER.js, USER_API.js und USER_INTERFACE.js ersetzt wurde.
  • Insgesamt wurden 19 eindeutig veraltete JavaScript-Dateien entfernt; das Projekt enthält jetzt 29 JavaScript-Dateien.

Bewusst beibehaltene Zukunftsmodule

  • MAIN_DRYING_ROOM_SCREEN.js und seine acht Trocknungsraum-Slots bleiben vollständig erhalten.
  • ITEM_API.js bleibt als Grundlage für das geplante Item-System erhalten.
  • CRYPTO_CURRENCY_API.js bleibt als Grundlage für die geplante Crypto-Wallet erhalten.
  • ECONOMY_API.js bleibt für die weitere Entwicklung des Wirtschaftssystems erhalten.
  • ENGINE.js bleibt als möglicher Baustein einer späteren zentralen Spielsteuerung erhalten.

Kompatibilität

  • Spiellogik, HTML-Einstiegspunkte und aktive Modulimporte wurden nicht verändert.
  • LocalStorage-Schlüssel und vorhandene Spielstände bleiben unverändert kompatibel.
  • Die Bereinigung entfernt ausschließlich archivierte beziehungsweise eindeutig ersetzte Dateien.

Prüfung

  • alle 29 verbleibenden JavaScript-Dateien syntaktisch geprüft
  • alle sieben HTML-Einstiegspunkte und deren statische Modulabhängigkeiten geprüft
  • keine fehlenden lokalen JavaScript-Importe gefunden
  • Titelbildschirm, Slotshop, Home, Trocknungsraum, Büro, Telefon und Telefonanruf auf fehlerfreie DOM-Initialisierung geprüft
  • zentrale GameClock mit Hintergrund, Pflanzenwachstum und Mining-Rig weiterhin geprüft
v1.0.6

Mining-Rig und Offline-Mining

Mining-Rig an der GameClock

  • MINING_RIGG verwendet keine eigenen Browser-Intervalle mehr.
  • Mining-Ertrag und Bildanimation sind als getrennte Aufgaben mit eindeutigen Benutzer- und Slot-IDs bei der zentralen GameClock registriert.
  • Der Ertrag wird weiterhin einmal pro Sekunde berechnet; die Animation wechselt weiterhin alle 100 Millisekunden ihr Bild.
  • Wiederholtes Starten erzeugt keine doppelten Aufgaben.
  • Ausschalten oder der Verlust des Slots entfernt Mining- und Animationsaufgabe vollständig.
  • Nach dem Stoppen wird die Animation kontrolliert auf das erste Bild zurückgesetzt.

Zeitstempel und Offline-Mining

  • Der neue LocalStorage-Wert user_${uuid}_MiningRigg_LastMiningAt speichert den letzten abgerechneten Mining-Zeitpunkt.
  • Beim Laden werden alle vollständig vergangenen Mining-Sekunden in einem Berechnungsschritt nachgeholt.
  • Angefangene Sekunden bleiben als Restzeit erhalten und gehen beim Neuladen nicht verloren.
  • Offline-Ertrag entsteht nur, wenn das Rig zuvor eingeschaltet und weiterhin im Besitz des Benutzers war.
  • Beim Ausschalten wird zunächst die letzte vollständige Mining-Zeit abgerechnet und der Zeitstempel danach zurückgesetzt.
  • Bei einem Besitzverlust wird die bis dahin vollständige Laufzeit abgerechnet; besitzlose Zeit erzeugt keinen Ertrag.
  • Aktive Spielstände aus Version 1.0.5 ohne Zeitstempel behalten ihre Balance und beginnen ab dem ersten Start von Version 1.0.6 weiterzulaufen.
  • Eine zurückgesetzte Systemzeit repariert den Referenzzeitpunkt, ohne negativen oder zusätzlichen Ertrag zu erzeugen.

Präzise Crypto-Balance

  • Der Mining-Ertrag bleibt unverändert bei 0.00000001 Crypto pro vollständiger Sekunde.
  • Berechnungen erfolgen intern in ganzzahligen Einheiten von acht Nachkommastellen, damit sich keine Fließkommafehler ansammeln.
  • Bestehende Balance- und Online-Schlüssel bleiben unverändert kompatibel.
  • Negative, nicht numerische oder ungültige Balance-, Online- und Zeitwerte werden normalisiert und korrigiert gespeichert.
  • Getter und Setter speichern normalisierte Werte und verhindern eine negative Balance.
  • Bild, Sichtbarkeit und Balance-Anzeige werden nur neu in das DOM geschrieben, wenn sich der jeweilige Wert geändert hat.

Prüfung

  • exakter Ertrag nach einer und mehreren Mining-Sekunden geprüft
  • Erhalt angebrochener Sekunden und Offline-Mining nach einem Neuladen geprüft
  • Migration eines aktiven Spielstands ohne Zeitstempel geprüft
  • Schutz vor doppelten Mining- und Animationsaufgaben geprüft
  • Ein- und Ausschalten, Besitzverlust und erneuter Erwerb geprüft
  • kein Ertrag im ausgeschalteten oder besitzlosen Zustand geprüft
  • Rückwärtszeit und ungültige Speicherwerte geprüft
  • gemeinsamer Basistakt mit Hintergrund und drei aktiven Pflanzen geprüft
  • alle 48 JavaScript-Dateien syntaktisch geprüft
  • alle sieben Einstiegspunkte auf Modulauflösung und DOM-Initialisierung geprüft

Nicht Bestandteil dieses Updates

Die Mining-Balance wird noch nicht automatisch auf USER_API.crypto übertragen. Die Smartphone-Mining-App, Mining-Upgrades, globale Crypto-Ertragsintervalle der Räume, Türbenachrichtigungen und Ladebildschirm-Timer bleiben für spätere Updates vorgesehen.

v1.0.5

Pflanzenwachstum und Offline-Fortschritt

Pflanzen an der GameClock

  • PLANT verwendet keine eigenen Browser-Intervalle mehr.
  • Jede aktive Pflanze registriert eine eindeutige Aufgabe mit ihrer Benutzer- und Pflanzen-ID bei der zentralen GameClock.
  • Mehrere Pflanzen teilen sich dadurch denselben Basistakt, ohne jeweils einen eigenen Sekundentimer zu starten.
  • Wiederholtes Starten erzeugt keine doppelte Pflanzenaufgabe.
  • Erntereife und geerntete Pflanzen entfernen ihre Aufgabe automatisch wieder aus der GameClock.

Zeitstempel und Offline-Wachstum

  • Der neue LocalStorage-Wert user_${uuid}_plant_${id}_lastGrowthAt speichert den letzten berechneten Wachstumszeitpunkt.
  • Beim Laden wird die vergangene reale Zeit in vollständige Spieltage und Pflanzenwochen umgerechnet.
  • Angefangene Sekunden bleiben als Restzeit erhalten und gehen beim Speichern oder Neuladen nicht verloren.
  • Die bisherige Testgeschwindigkeit bleibt unverändert: Eine reale Sekunde entspricht einem Spieltag und sieben Spieltage entsprechen einer Pflanzenwoche.
  • Große Zeitabstände werden höchstens bis zur Erntereife angerechnet; eine automatische Mehrfachernte ist nicht möglich.
  • Wird die Systemzeit zurückgesetzt, wird der Referenzzeitpunkt repariert, ohne Pflanzenfortschritt abzuziehen.

Spielstand-Migration und Bereinigung

  • Aktive Pflanzen aus Version 1.0.4 ohne Zeitstempel behalten ihren bisherigen Stand und laufen ab dem ersten Start von Version 1.0.5 weiter.
  • Bereits gespeicherte reife Pflanzen lösen beim Neuladen keine wiederholte Erntereife-Meldung aus.
  • Ungültige Sorten-, Tages-, Wochen-, Status-, Bild- und Zeitwerte werden normalisiert und korrigiert gespeichert.
  • Pflanzenbilder und Wochenanzeigen werden nur neu geschrieben, wenn sich ihr angezeigter Wert tatsächlich ändert.
  • Nach der Ernte werden Wachstumsaufgabe, Zeitstempel und Pflanzenstatus gemeinsam zurückgesetzt.

Prüfung

  • Tageswechsel, Wochenwechsel und angebrochene Restzeit geprüft
  • mehrere aktive Pflanzen über einen gemeinsamen GameClock-Basistakt geprüft
  • Schutz vor doppelten Pflanzenaufgaben und vollständiges Timer-Cleanup geprüft
  • Offline-Fortschritt über mehrere Wochen und Begrenzung auf Erntereife geprüft
  • Migration bestehender Spielstände ohne Zeitstempel geprüft
  • Rückwärts gesetzte Systemzeit und ungültige Speicherwerte geprüft
  • Erntereife-Meldung, Neuladen einer reifen Pflanze und anschließende Ernte geprüft
  • alle 48 JavaScript-Dateien syntaktisch geprüft
  • alle sieben Einstiegspunkte auf Modulauflösung und DOM-Initialisierung geprüft

Nicht Bestandteil dieses Updates

Die Wachstumsbalance, das Saatgutinventar, die Mining- und Crypto-Timer, die Türbenachrichtigungen sowie der Ladebildschirm bleiben unverändert. Pflanzen werden offline reif, aber weiterhin nur durch eine Benutzeraktion geerntet.

v1.0.4

GameClock und Intervallbereinigung

Zentraler Spieltakt

  • Die neue Klasse GAME_CLOCK bündelt zeitgesteuerte Oberflächenaufgaben in einem gemeinsamen Basistakt von 100 Millisekunden.
  • Aufgaben besitzen eindeutige IDs und eigene Ausführungsintervalle; doppelte Registrierungen werden verhindert.
  • start(), stop(), pause() und resume() verwalten den Basistakt ohne parallele Mehrfach-Timer.
  • Optional sofort auszuführende Aufgaben werden beim Registrieren einmalig gestartet.
  • Fehler in einer Aufgabe werden isoliert, damit die übrigen Aufgaben weiterlaufen.
  • Nach einer längeren Browserpause wird jede fällige Aufgabe höchstens einmal ausgeführt, sodass keine Callback-Flut entsteht.
  • Wenn keine Aufgabe mehr registriert ist, wird der Basistakt automatisch beendet.

Umgestellte Oberflächen

  • BACKGROUND verwendet die gemeinsame GameClock statt eines eigenen 10-Millisekunden-Timers.
  • Der Hintergrund wird sofort und danach im Minutentakt geprüft; unveränderte Landschaftsgrafiken werden nicht erneut gesetzt.
  • PHONE und APK_CALL aktualisieren ihre Uhren über getrennte Ein-Sekunden-Aufgaben der GameClock.
  • Wiederholte start()-Aufrufe erzeugen keine doppelten Uhr-Aufgaben; stop() entfernt die jeweilige Aufgabe wieder.
  • Die Telefon-Hintergründe werden nur neu gesetzt, wenn sich die passende Tageszeitgrafik ändert.
  • LAMP und DOOR zeichnen ihren Zustand ereignisbasiert statt mit einem 50-Millisekunden-Timer.
  • Ungültige gespeicherte Lampenzustände werden auf 0 oder 1 normalisiert.

Prüfung

  • gemeinsamer Basistakt für mehrere Aufgaben und Schutz vor doppelten IDs geprüft
  • unterschiedliche Aufgabenintervalle und sofortige Erstausführung geprüft
  • Pause, Fortsetzung, Abmeldung und automatisches Timer-Cleanup geprüft
  • Verhalten nach längerer Verzögerung und Isolation fehlerhafter Callbacks geprüft
  • Zusammenspiel von BACKGROUND, LAMP, DOOR, PHONE und APK_CALL geprüft
  • alle 48 JavaScript-Dateien syntaktisch geprüft
  • alle sieben Einstiegspunkte auf Modulauflösung und DOM-Initialisierung geprüft

Nicht Bestandteil dieses Updates

Die fachlichen Timer für Pflanzenwachstum, Mining, Crypto-Ertrag, Türbenachrichtigungen und den Ladebildschirm bleiben bewusst unverändert. Offline-Wachstum, eine vollständige Überarbeitung des Saatgutinventars und die Mining-App des Telefons bleiben für spätere Updates vorgesehen.

v1.0.3

Zentrale USER_API

Zentrale Benutzerverwaltung

  • USER_API ist nun die zentrale Quelle für Geld, Crypto, Saatgut, Weed, Breeds, Items, XP, Level und Extasy einschließlich der jeweiligen Kapazitätswerte.
  • Alle Benutzerwerte werden anhand eines festen Schemas typgeprüft und mit definierten Standardwerten geladen.
  • Bestehende LocalStorage-Schlüssel bleiben unverändert und werden weiterhin übernommen.
  • Ungültige, fehlende oder nicht numerische Werte werden bereinigt, sodass kein NaN an die Spielsysteme weitergegeben wird.
  • Mehrere USER_API-Instanzen derselben UUID werden im selben Browser-Tab synchronisiert.

Sichere Änderungen und Käufe

  • Getter, Setter, Addierer und Entferner laden vor einer Berechnung immer den aktuellen Spielstand.
  • Negative Bestände werden durch Untergrenzen verhindert.
  • Die neue Methode tryPurchase() prüft Kosten und Level und führt Abbuchung sowie XP-Vergabe als gemeinsame Transaktion aus.
  • grantExperience() verarbeitet XP und Levelaufstiege zentral.

Umgestellte Spielsysteme

  • SLOT führt Käufe vollständig über USER_API aus.
  • PLANT verwendet USER_API für Geld, XP und Weed.
  • Pflanzenspeicherungen können keine neueren Benutzerwerte mehr überschreiben.
  • Pflanzenkäufe prüfen bei jedem Klick den aktuellen Geldstand.
  • Gespeicherte Saatgutwerte von 0 bleiben erhalten und werden nicht mehr auf den Startwert zurückgesetzt.
  • Ungültige Pflanzenwochen erhalten wieder die korrekte Sortenlaufzeit als Standardwert.
  • PHONE, DOOR und APK_CALL verwenden die gemeinsame User-Instanz.
  • USER.js bleibt als schlanker Kompatibilitätsexport für ältere Imports erhalten.

Benutzeroberfläche

  • USER_INTERFACE bezieht alle Werte aus USER_API.
  • Das bisherige Aktualisierungsintervall von 20 Millisekunden wurde entfernt.
  • Änderungen werden über subscribe() sofort und ereignisbasiert angezeigt.

Prüfung

  • Erststart und Übernahme vorhandener Benutzerwerte geprüft
  • Reparatur ungültiger Werte und Schutz vor NaN geprüft
  • Synchronisierung mehrerer Benutzerinstanzen geprüft
  • sichere Käufe, fehlgeschlagene Folgetransaktionen und Levelaufstieg geprüft
  • Pflanzenkauf, Ernte und Schutz vor veralteten Speicherwerten geprüft
  • ereignisbasierte Aktualisierung der Benutzeroberfläche geprüft
  • alle 47 JavaScript-Dateien syntaktisch geprüft
  • alle sieben HTML-Einstiegspunkte auf Modulauflösung und DOM-Initialisierung geprüft

Nicht Bestandteil dieses Updates

Eine zentrale GameClock, Offline-Wachstum, eine vollständige Überarbeitung des Saatgutinventars und die Mining-App des Telefons bleiben für spätere Updates vorgesehen.

v1.0.2

Einheitliche Slot-Speicherung

Neue zentrale Speicherung

  • Die neue Klasse SLOT_STORAGE verwaltet den Besitzstatus aller Slots über ein einheitliches Schlüsselformat.
  • Alte Besitzschlüssel mit abweichenden Namen oder ohne Slotnamen werden beim Laden automatisch und ohne Löschen des alten Spielstands übernommen.
  • Ein bereits migrierter neuer Schlüssel bleibt bei späteren Änderungen maßgeblich.

Live-Synchronisierung

  • SLOT, PLANT, LAMP, DOOR und MINING_RIGG verwenden nun dieselbe Besitzinformation.
  • Kauf und Rücknahme eines Slots aktualisieren die zugehörigen Spielelemente sofort im selben Browser-Tab; ein Neuladen ist nicht mehr erforderlich.
  • Lampen, Pflanzen und das Mining-Rigg reagieren unmittelbar auf Änderungen ihres Slotbesitzes.
  • Die Tür bleibt bei neuen und übernommenen Spielständen standardmäßig freigeschaltet, wird aber nicht mehr fest im Türmodul erzwungen.
  • Türbenachrichtigungen werden beim Verlust des Slots sauber beendet und ausgeblendet.

Sichere Käufe

  • Vor jedem Slotkauf werden Geld, Erfahrungspunkte und Level neu aus dem Spielstand geladen.
  • Mehrere unmittelbar aufeinanderfolgende Käufe können dadurch weder einen veralteten Geldstand verwenden noch Erfahrungspunkte überschreiben.
  • Fehlende oder ungültige Zahlenwerte erhalten definierte Standardwerte statt NaN weiterzugeben.

Prüfung

  • Migration alter Besitzschlüssel und dauerhafte Speicherung geprüft
  • Live-Synchronisierung aller angebundenen Komponenten geprüft
  • aufeinanderfolgende Käufe, Kontostand und kumulierte Erfahrungspunkte geprüft
  • alle 47 JavaScript-Dateien syntaktisch geprüft
  • alle sieben HTML-Einstiegspunkte auf Modulauflösung und DOM-Initialisierung geprüft

Nicht Bestandteil dieses Updates

Eine vollständige zentrale Benutzerzustandsverwaltung, eine gemeinsame GameClock, Pflanzenwachstum und die Mining-App des Telefons bleiben für spätere Updates vorgesehen.

v1.0.1

Startfehler-Korrektur

Behobene Fehler

  • Der Titelscreen startet wieder. MAIN_TITLE_SCREEN.js verwendet nun die vorhandene, gemeinsam genutzte GameScaler-Instanz.
  • Der Trocknungsraum kann wieder geladen werden. Der ungültige Import von ITEM_API.js wurde korrigiert.
  • Die Syntaxfehler in ITEM_API.js wurden beseitigt:
  • fehlendes Zuweisungszeichen bei der Item-Liste ergänzt
  • ungültige Kategorie des Crypto-Items korrigiert
  • slotshop.html kann wieder über MAIN.js initialisiert werden.

Technische Anpassungen

  • MAIN.js verwendet nun die aktuellen Exporte GameScaler, User und UI.
  • Die Slot-Erstellung wurde an die aktuelle Konstruktor-Signatur mit name und alpha angepasst.
  • Die Namen der Pflanzen-, Lampen-, Tisch- und Mining-Slots wurden vereinheitlicht.
  • Die Lampen-Initialisierung erhält wieder alle benötigten Konstruktorparameter.
  • Die Tür-Initialisierung wurde an die aktuelle DOOR-Konstruktor-Signatur angepasst.

Prüfung

Folgende Einstiegspunkte wurden erfolgreich auf gültige Modulabhängigkeiten und DOM-Initialisierung geprüft:

Das ZIP-Archiv wurde anschließend auf beschädigte oder unlesbare Dateien geprüft.

  • index_1_11_title_screen.html
  • home_screen.html
  • drying_room_screen.html
  • office_screen.html
  • phone_screen.html
  • phone_apk_call_screen.html
  • slotshop.html

Nicht Bestandteil dieses Updates

Dieses Update verändert keine Spielbalance, Grafiken, Pflanzenwerte oder Speicherstände. Die bereits identifizierten Architekturaufgaben rund um einheitliche LocalStorage-Schlüssel, zentrale Zustandsverwaltung und eine gemeinsame GameClock bleiben für ein späteres Update bestehen.