{"id":2001,"date":"2026-08-25T22:21:48","date_gmt":"2026-08-25T22:21:48","guid":{"rendered":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/?post_type=knowledgebase&#038;p=2001"},"modified":"2026-08-25T22:57:03","modified_gmt":"2026-08-25T22:57:03","slug":"easter-egg-tetris","status":"publish","type":"knowledgebase","link":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/db\/info-settings\/easter-egg-tetris\/","title":{"rendered":"Easter Egg: Tetris"},"content":{"rendered":"<div style=\"color: #2b2b2b;\">\n<h2 class=\"western\"><span style=\"color: #007670;\">Easter Egg: Tetris<img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2026\" src=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/EasterEggTetris.webp\" alt=\"Easter Egg: Tetris\" width=\"128\" height=\"135\" srcset=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/EasterEggTetris.webp 891w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/EasterEggTetris-284x300.webp 284w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/EasterEggTetris-768x810.webp 768w\" sizes=\"auto, (max-width: 128px) 100vw, 128px\" \/><\/span><\/h2>\n<p class=\"western\">Hidden inside Open Publisher is a fully playable retro Tetris game, built from scratch with its own standalone game engine, a custom soundtrack, procedurally generated 8-bit sound effects, and a dynamic scoring system. Unlocking it takes exactly one classic cheat code.<\/p>\n<h3 class=\"western\"><span style=\"color: #007670;\">How to Unlock It<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2024\" src=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/HowToUnlockTetris.webp\" alt=\"How to Unlock tetris\" width=\"128\" height=\"104\" \/><\/span><\/h3>\n<p class=\"western\">At any time while Open Publisher is open, type the classic <strong>Konami Code<\/strong> on your keyboard:<\/p>\n<p class=\"western\" style=\"text-align: left;\"><span style=\"font-family: Courier New, monospace; font-size: 20pt;\">\u2191\u00a0 \u2191\u00a0 \u2193\u00a0 \u2193\u00a0 \u2190\u00a0 \u2192\u00a0 \u2190\u00a0 \u2192\u00a0 B\u00a0 A<\/span><\/p>\n<p class=\"western\">A background key listener monitors for this exact sequence. The moment the final key is pressed, the document editor seamlessly transforms into a fully playable Tetris game rendered directly on the canvas.<\/p>\n<h3 class=\"western\"><span style=\"color: #007670;\">The Game Engine<img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2021\" src=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-233859.png\" alt=\"The Game Engine\" width=\"128\" height=\"127\" srcset=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-233859.png 462w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-233859-300x297.png 300w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-233859-150x150.png 150w\" sizes=\"auto, (max-width: 128px) 100vw, 128px\" \/><\/span><\/h3>\n<p class=\"western\">The Tetris game is powered by a lightweight, standalone JavaScript engine built entirely from scratch. It includes:<\/p>\n<ul>\n<li>\n<p align=\"left\"><span style=\"font-size: small;\"><strong>Accurate piece rotation &amp; collision detection &#8211;<\/strong> Pieces rotate and collide using correct rotation mathematics, behaving exactly as you would expect from a classic Tetris game.<\/span><\/p>\n<\/li>\n<li>\n<h3 class=\"western\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2004\" src=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-232104.png\" alt=\"The game after starting via konami code\" width=\"409\" height=\"331\" srcset=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-232104.png 1104w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-232104-300x243.png 300w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-232104-1024x828.png 1024w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/Screenshot-2026-08-25-232104-768x621.png 768w\" sizes=\"auto, (max-width: 409px) 100vw, 409px\" \/><\/h3>\n<p align=\"left\"><span style=\"font-size: small;\"><strong>\u201cCoyote time\u201d lock delays &#8211;<\/strong> A 500ms lock delay is applied before pieces settle, giving you a brief window to slide or adjust after a piece lands &#8211; the same technique used in professional Tetris implementations for a polished, forgiving feel.<\/span><\/p>\n<\/li>\n<li>\n<p align=\"left\"><span style=\"font-size: small;\"><strong>Dynamic responsive sizing &#8211;<\/strong> The game board automatically scales edge-to-edge to fit your current document canvas size, regardless of the page size or zoom level you are working at.<\/span><\/p>\n<\/li>\n<li>\n<p align=\"left\"><span style=\"font-size: small;\"><strong>Line-clearing animations &amp; scoring &#8211;<\/strong> Lines clear with dynamic animations and the score updates in real time.<\/span><\/p>\n<\/li>\n<\/ul>\n<h3 class=\"western\"><span style=\"color: #007670;\">Sound &amp; Music<\/span><\/h3>\n<p class=\"western\">The audio is generated and played entirely within the browser using the <strong>Web Audio API<\/strong>:<strong><img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2018\" src=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/SoundAndMusic.webp\" alt=\"Sound &amp; Music\" width=\"128\" height=\"118\" srcset=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/SoundAndMusic.webp 423w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/SoundAndMusic-300x277.webp 300w\" sizes=\"auto, (max-width: 128px) 100vw, 128px\" \/><\/strong><\/p>\n<ul>\n<li>\n<p align=\"left\"><span style=\"font-size: small;\"><strong>8-bit sound effects &#8211;<\/strong> Procedurally synthesised retro sound effects play for every piece movement, rotation, lock, drop, line clear, and game over.<\/span><\/p>\n<\/li>\n<li>\n<p align=\"left\"><span style=\"font-size: small;\"><strong>The Open Publisher Tetris Theme &#8211;<\/strong> A custom background music track (Created with Gemini) plays throughout the game, carefully mixed at 25% volume so it complements rather than overpowers the sound effects.<\/span><\/p>\n<\/li>\n<\/ul>\n<h3 class=\"western\"><span style=\"color: #007670;\">The 3D Credit Overlay<img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2016\" src=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/The3dCreditOverlay.webp\" alt=\"The 3D Credit Overlay\" width=\"128\" height=\"114\" srcset=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/The3dCreditOverlay.webp 373w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/The3dCreditOverlay-300x268.webp 300w\" sizes=\"auto, (max-width: 128px) 100vw, 128px\" \/><\/span><\/h3>\n<p class=\"western\">When the game starts, an elegant pixel-styled credit overlay unrolls into the grey workspace area using a CSS 3D <span style=\"font-family: Courier New, monospace;\">rotateX<\/span> and <span style=\"font-family: Courier New, monospace;\">clip-path<\/span> transition &#8211; a cinematic opening sequence before the first piece drops.<\/p>\n<h3 class=\"western\"><span style=\"color: #007670;\">Exiting the Game<\/span><\/h3>\n<h3 class=\"western\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-2012\" src=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/ExitingTetris.webp\" alt=\"Exiting the Game\" width=\"128\" height=\"134\" srcset=\"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/ExitingTetris.webp 424w, http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-content\/uploads\/2026\/08\/ExitingTetris-286x300.webp 286w\" sizes=\"auto, (max-width: 128px) 100vw, 128px\" \/><\/h3>\n<p class=\"western\">While Tetris is active, an <strong>Exit Tetris<\/strong> button is injected directly into the <strong>Home<\/strong> ribbon, giving you a highly visible one-click way out at any time. Clicking it immediately ends the game and restores the document editor to its exact previous state &#8211; every element, every layer, and every edit perfectly preserved, as if you never left.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Easter Egg: Tetris Hidden inside Open Publisher is a fully playable retro Tetris game, built from scratch with its own standalone game engine, a custom soundtrack, procedurally generated 8-bit sound effects, and a dynamic scoring system. Unlocking it takes exactly one classic cheat code. How to Unlock It At any time while Open Publisher is [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2026,"comment_status":"open","ping_status":"open","template":"","knowledgebase_cat":[24],"class_list":["post-2001","knowledgebase","type-knowledgebase","status-publish","has-post-thumbnail","hentry","knowledgebase_cat-info-settings"],"_links":{"self":[{"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/knowledgebase\/2001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/knowledgebase"}],"about":[{"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/types\/knowledgebase"}],"author":[{"embeddable":true,"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/comments?post=2001"}],"version-history":[{"count":20,"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/knowledgebase\/2001\/revisions"}],"predecessor-version":[{"id":2030,"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/knowledgebase\/2001\/revisions\/2030"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/media\/2026"}],"wp:attachment":[{"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/media?parent=2001"}],"wp:term":[{"taxonomy":"knowledgebase_cat","embeddable":true,"href":"http:\/\/acr.floydcraft.co.uk\/openpublisher\/wp-json\/wp\/v2\/knowledgebase_cat?post=2001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}