DEADLINE ist ein Retro-Pixel-Büro-Platformer im C64-/16-Bit-Look: Pia Pixel muss vor Ablauf des Meeting-Timers durch vier Büro-Etagen nach oben. Das Plugin bindet das HTML5-Canvas-Spiel per Shortcode in WordPress ein und verwaltet eine serverseitige Online-Bestenliste (Top 100) über die REST-API idf-deadline/v1.

Changelog

[Unreleased]

v0.7.1

Behoben

  • Space scrollte die Website, wenn das Spiel-Iframe den Fokus verloren hatte. Ein Host-Skript fängt die Spieltasten jetzt seitenweit ab, solange das Spiel überwiegend sichtbar ist, und leitet sie ans Spiel weiter - der Fokus ist damit egal. Eingabefelder (Formulare, Suche) bleiben unberührt.
  • Externe Steuerung (Touch-Buttons, Tasten-Weiterleitung) greift erst nach dem Coin-Klick, damit das Spiel nicht unbemerkt hinter dem Start-Overlay startet.

v0.7.0

Hinzugefügt

  • Ducken: Pfeil runter (bzw. DUCK-Button in der Touch-Steuerung) lässt Pia in die Hocke gehen - mit eigenen Animations-Frames aus dem Spritesheet.
  • Neuer Hindernis-Typ "fliegender Zettel" auf Kopfhöhe: Dagegen hilft nur Ducken, Springen geht schief.

Behoben

  • Springen über Hindernisse war praktisch unmöglich: Die Decken-Kollision hat den Sprung auf 8 Pixel gestutzt. Die Klemme ist entfernt (mit der aktuellen Sprungkraft ist Durchspringen einer Etage physikalisch ausgeschlossen), und im Sprung zieht Pia die Beine an (kleinere Trefferzone, passend zur Sprung-Pose).
  • Fahrstuhl-Falle entschärft: Nach dem Ausstieg ist Pia kurz unverwundbar, statt sofort von ankommenden Hindernissen getroffen zu werden.

v0.6.3

Behoben

  • Verschwommene Grafik: Das Spiel rendert intern jetzt mit doppelter Auflösung (640x400 Supersampling), Hintergrund und Pia-Spritesheet wurden in 2x neu produziert. Die Spiellogik bleibt unverändert auf dem 320x200-Raster.
  • Schwarze Balken über und unter dem Spiel: Der Embed-Rahmen hat jetzt das echte Spielformat 8:5 statt 4:3.
  • HUD aufgeräumt: LV und MTG überlappten sich, die Etagen-Item-Anzeige (z. B. BADGE) lief rechts aus dem Bild. Alle Elemente haben jetzt feste, kollisionsfreie Positionen.

v0.6.2

Behoben

  • Browser konnten die Spiel-HTML heuristisch cachen und zeigten nach Plugin-Updates eine veraltete Spielversion. Die Spiel-Auslieferung sendet jetzt Cache-Control no-store.

v0.6.1

Behoben

  • Spiel startete auf Servern mit mod_pagespeed nicht mehr (Klick auf die Start-Münze ohne Wirkung): PageSpeed kombinierte die seit v0.5.0 modularen JS-Dateien und führte sie per eval aus, wodurch die Module einander nicht mehr sehen. Die Spiel-Auslieferung schaltet PageSpeed jetzt per Header ab, zusätzlich tragen die Script-Tags data-pagespeed-no-transform.

v0.6.0

Geändert

  • Komplettes visuelles Redesign (Design-Lift, Phase 1): Die Code-gemalte Kulisse ist durch einen vorproduzierten Pixel-Art-Hintergrund ersetzt (4 Etagen: Lobby, Großraumbüro, Flur, Meetingraum - generiert im Stil des Key-Arts, 320x200).
  • Pia ist jetzt ein echter Spritesheet-Charakter: 36 Pixel groß, 10-Frame-Laufzyklus, eigene Sprung-Pose (vorher 24 Pixel aus Pixel-Arrays mit 2 Lauf-Frames).
  • Etagen-Geometrie, Physik, Hitboxen und Fahrstuhl-Logik an die neue Spielwelt angepasst. Fahrstuhltüren sind im Hintergrund gemalt; die Logik zeichnet Status (Lampe, Schloss, fahrende Kabine) darüber. Im Meetingraum erscheinen nur noch die Teilnehmer dynamisch.
  • Retro-Look kommt aus der 320x200-Auflösung, pixel-perfektem Rendering und Scanlines - die Grafik behält die vollen Farben der generierten Pixel-Art (bewusste Entscheidung gegen ein hartes C64-Farblimit).

v0.5.0

Geändert

  • Spiel-Code vom Monolithen in Module aufgeteilt: deadline.html ist nur noch das DOM-Gerüst, der Code liegt jetzt in js/core.js (Fundament), js/audio.js (Musik + Soundeffekte), js/highscore.js (Online-Bestenliste), js/levels.js (Level-Definition und Spawns), js/intro.js (Insert-Coin-Start und Titelbild) und js/game.js (Gameplay und Loop). Styles in css/deadline.css. Keine Verhaltensänderung, kein Build-Tool nötig.

v0.4.4

Entfernt

  • Altes Canvas-Intro entfernt: der „IDEENFABRIK PRESENTS"-Logo-Screen und der gezeichnete Canvas-Titelscreen. Das Spiel startet direkt mit dem Key-Art-Titelbild.
  • Chiptune-Fallback für Titel- und Gameplay-Musik entfernt. Es laufen ausschließlich die echten MP3-Tracks; die Gameplay-Soundeffekte (Sprung, Treffer, Coin, Fahrstuhl) bleiben erhalten.

v0.4.3

Hinzugefügt

  • Blinkender Schriftzug „INSERT COIN" unter der Start-Münze für Spielautomaten-Feeling.

v0.4.2

Geändert

  • Start-Screen zeigt jetzt nur die drehende Münze (im Retro-Stil der Bestenliste) auf schwarzem Grund. Erst der Klick auf die Münze blendet Titelbild und Ton gemeinsam ein. Das Key-Art erscheint nicht mehr vorab hinter dem Start-Button.

v0.4.1

Geändert

  • Spiel-Rahmen auf 4:3 (passend zum Key-Art im Alter-Fernseher-Format). Titel- und Start-Screen füllen den Rahmen passgenau; das Gameplay läuft mit dezenter Letterbox.

v0.4.0

Hinzugefügt

  • Eigener Shortcode für die Touch-Steuerung (Links/Rechts/Hoch/Springen) — frei platzierbar, sendet die Eingaben per postMessage ans Spiel.
  • Titelbild (Key-Art) auf dem Start-Screen und als Titelscreen.

Entfernt

  • Touch-Buttons und Querformat-Hinweis aus dem Spiel-Iframe; die Steuerung läuft jetzt über den separaten Shortcode.

v0.3.8

Hinzugefügt

  • Start-Overlay: schwarzer Bildschirm mit rotem „STARTEN"-Button. Der Klick ist die von Browsern verlangte Geste, schaltet den Ton frei und führt mit Titelmusik in den Titelscreen — löst das Autoplay-Thema sauber.

v0.3.7

Geändert

  • Der erste Klick auf den Ton-Button schaltet den Ton eindeutig ein (statt zu toggeln) und holt einen versehentlich gemerkten Stumm-Zustand zurück.

v0.3.6

Geändert

  • Titelmusik puffert beim Laden stumm vor und ist dadurch bei der ersten Eingabe sofort hörbar (Browser erlauben Ton generell erst nach einer Interaktion).

v0.3.5

Geändert

  • Mute-Button mit eindeutigen Lautsprecher-Symbolen (an/aus) und Tooltip, damit der Ton nicht versehentlich stumm bleibt.
  • Gameplay-Musik verkleinert (128 statt 160 kbps).

v0.3.4

Behoben

  • Titelmusik kam oft nicht, weil sie erst nach vollständigem Laden abgespielt wurde. Sie startet jetzt progressiv beim Laden; die Datei wurde zusätzlich von 320 auf 128 kbps verkleinert (3,6 MB → 1,4 MB).

v0.3.3

Hinzugefügt

  • Die Bestenliste aktualisiert sich automatisch: per Polling (Attribut refresh in Sekunden, Default 20, 0 = aus) und sofort, sobald im eingebetteten Spiel ein Score gespeichert wird.

v0.3.2

Behoben

  • Steuerung blieb hängen, wenn ein Element der Host-Seite (z. B. ein auf Pfeiltasten reagierender Slider) den Fokus stahl. Tasten werden jetzt bei Fokusverlust gelöst, alle Pfeiltasten abgefangen und der Fokus beim Spielen zurückgeholt.

Geändert

  • Titelmusik startet, sobald der Ton freigeschaltet ist. Die erste Eingabe schaltet nur den Ton frei und startet das Spiel noch nicht.

v0.3.1

Hinzugefügt

  • Hintergrundmusik (8-Bit) für Titelscreen und Gameplay.

Behoben

  • Musik-Loader nutzt jetzt MP3. Zuvor wurde auf OGG-fähigen Browsern fälschlich OGG angefragt und keine Musik geladen.

v0.3.0

Hinzugefügt

  • Online-Highscore im Spiel: Das Spiel lädt die Bestenliste aus der REST-API und sendet neue Scores serverseitig (signiertes Token). Gespielte Scores landen damit in der Datenbank und die Bestenliste aktualisiert sich.

v0.2.2

Behoben

  • Spiel-Embed wird über die REST-Route idf-deadline/v1/game ausgeliefert. Server-Hardening blockt direkten Zugriff auf Plugin-.php (403) und rohe .html (leerer Body); die REST-Schicht ist erlaubt. PHP-Loader game.php entfernt.

v0.2.1

Behoben

  • Spiel-Embed wird über einen PHP-Loader ausgeliefert. Auf Servern, die direkten Zugriff auf .html-Dateien im Plugin-Ordner blockieren, blieb das Spiel sonst schwarz.

v0.2.0

Hinzugefügt

  • Backend-Menü „DEADLINE" mit Dashboard, Einstellungen, Hilfe und Uninstall (IDF-Admin-Standard-Navigation).
  • Einstellungen für die Default-Anzahl der Bestenlisten-Plätze und das Highscore-Rate-Limit pro IP und Stunde.

v0.1.0

Hinzugefügt

  • Spiel DEADLINE aus dem apps-v2-Monorepo in ein eigenständiges Plugin überführt.
  • Shortcode zum Einbinden des Spiels als responsiver Iframe.
  • Shortcode für eine eigenständige Online-Bestenliste (Top 100).
  • Highscore-Speicherung in eigener Tabelle mit REST-API (signiertes Token, Plausibilitätsprüfung, IP-Rate-Limit).
  • Titelscreen-Key-Art als Overlay mit Fallback auf den Canvas-Titel.
  • Musik-Manager mit echten Tracks und Mute-Button, Fallback auf Chiptune-Sound.
  • Integration in IDF Home für Update-Prüfung und Dashboard-Listing.

0 Comments

Auf dieser Seite
Über dieses Plugin
  • Version: 0.7.1
  • Version vom: 10. Juni 2026
  • WordPress-Version: 6.0+
  • Getestet bis WP-Version: 6.5
  • PHP-Version: 8.1+
  • Kompatible Themes: Keine Themes hinterlegt
  • Erforderliche Plugins: Keine Plugins hinterlegt
  • Mitwirkende: Joerg Martin