Welkom bij Unicorn Games: De architectuur van direct spelen in de browser
Webgaming liep vijftien jaar geleden vast. Flash verdween, app-winkels sloten mobiele telefoons op achter dertig procent commissie en gewone browserspellen veranderden in advertentievallen.
Een speler die op een link klikt om snel een potje kaarten te spelen, verwacht meteen actie. In plaats daarvan stuit men op twee megabyte aan volgcodes, drie onvermijdelijke videoreclames en een laadbalk die hapert op mobiele data. Als het spel eindelijk start, draait het in een logge huls die de telefoon opwarmt en binnen vijf minuten tien procent batterij opsnoept.
Unicorn Games is opgezet om die neerwaartse spiraal te doorbreken. Wij bouwen spellen voor mensen die direct willen spelen op elk scherm dat voor hen staat. Zonder accounts. Zonder downloads van vijftig megabyte. Zonder advertentiemuren.
De technische hoofdregel: Nul zware pakketten
De meeste hedendaagse webspellen leunen op omvangrijke engines zoals Phaser, Pixi.js, Godot-exports of Unity WebGL-bundels. Zulke systemen hebben nut voor driedimensionale actiespellen of ingewikkelde fysicasimulaties. Voor traditionele kaart-, denk- en bordspellen zijn ze pure verspilling. Een standaard Unity WebGL-project haalt twintig tot dertig megabyte aan gecomprimeerde WebAssembly-bestanden binnen voordat het titelscherm überhaupt verschijnt.
Wij schrijven onze spellen rechtstreeks in HTML5 Canvas 2D en pure TypeScript.
Het verschil in reactiesnelheid is direct merkbaar. Wie Klondike Solitaire op Unicorn Games opent, laadt een totaalpakket van minder dan tweehonderd kilobyte in. Het speelveld staat binnen driehonderd milliseconden na het eerste verzoek op het scherm. Elke kaartanimatie loopt soepel op zestig beelden per seconde op een budgettelefoon van vijf jaar oud.
Zonder zware engine blijft ook het batterijverbruik laag. Een lichte Canvas-renderer tekent alleen nieuwe pixels wanneer de situatie op het bord verandert. Denk je even na over een zet in FreeCell Solitaire, dan rust de berekeningslus van de browser. Het processorverbruik daalt vrijwel naar nul. Het toestel blijft koel in je hand.

Scheiding van spelregels en grafische weergave
Een veelvoorkomende fout in simpel programmeerwerk is het koppelen van spelregels aan HTML-elementen of schermcoördinaten. Als kaartwaarden in HTML-labels worden opgeslagen, vertraagt de logica en wordt geautomatiseerd testen onmogelijk.
Wij splitsen elk spel in twee losstaande delen: een logisch rekenmodel zonder beeld en een zelfstandige tekenmodule.
Het rekenmodel voert de wiskunde uit. Het heeft geen weet van pixels, schermformaten of muisklikken. Het verwerkt getallen, past spelregels toe en levert een bijgewerkte toestand op. Omdat de kern puur op data draait, simuleren we honderdduizend potjes in headless Node-omgevingen om winstkansen te meten en onoplosbare delingen uit te sluiten. Deze aanpak is terug te vinden in ons onderzoek naar de oplosbaarheid van patience.
De tekenmodule kijkt alleen toe. Het leest de getallen uit en tekent ze op het canvas via relatieve schermverhoudingen. Sleept een speler een kaart over het laken, dan volgt het beeld de vingerpositie, terwijl het rekenmodel wacht tot de kaart op een geldige plek landt alvorens de toestand te wijzigen. Deze scheiding voorkomt haperingen en laat dezelfde spelregels vlekkeloos werken op pc, tablet en telefoon zonder dubbele code.
Aanraakgevoeligheid en invoervertraging
Op de computer stuurt men met optische muizen op de pixel nauwkeurig. Op een telefoon bedekt een duim tachtig vierkante millimeter glas.
Zet men een computerscherm zonder aanpassingen over naar een telefoonscherm, dan grijpen spelers voortdurend mis. Men probeert klaveren zeven te pakken en raakt per ongeluk ruiten acht die erboven ligt.
Wij voorzien aanraakvlakken op mobiel van ruime marges die buiten de zichtbare kaartranden vallen. De aanraakdetectie berekent afstand: landt de duim tussen twee overlappende kaarten, dan kijkt het systeem welke kaart een geldige zet heeft op het bord en geeft voorrang aan de speelbare zet.
Snelle reactietijd is net zo belangrijk als ruime raakvlakken. Raakt een speler een kaart aan, dan moet de animatie in dezelfde schermverversing starten. Wachten op geluidsbestanden of netwerkbevestigingen leidt tot merkbare traagheid. Onze invoerkoppelingen vangen aanrakingen direct op en zetten binnen zestien milliseconden de eerste beelden in beweging.

Eerlijk schudden en wiskundige willekeur
Kaartspellen staan of vallen met een zuivere deling. Echte willekeur in software bouwen vergt zorg, en gebrekkige formules leiden tot patronen die het spelbederf in de hand werken.
Wij hanteren het Fisher-Yates-schudalgoritme, aangedreven door de cryptografisch veilige toevalsgenerator van de Web Crypto API in de browser. Elke kaart van het spel van tweeënvijftig heeft precies één op tweeënvijftig kans op elke willekeurige positie.
Bij spellen zoals Blackjack op Unicorn Games volgt de kaartschoen de werkelijke casinoverdeling tot aan de snijkaart. Bij puzzels zoals 2048 verschijnen getallen volgens vaste verhoudingen: negentig procent tweeën en tien procent vieren, eerlijk verdeeld over lege vakken. Je wint door inzicht en planning, niet doordat een verborgen algoritme de kansen verdraait om je vast te houden.
Offline spelen en Progressive Web Apps
Een goed webspel moet ook werken in het vliegtuig of in de metro.
Unicorn Games bewaart spelbestanden lokaal via service workers. Zodra je een spel als Solitaire of Mijnenveger opent, slaat de browser HTML, Canvas-logica, afbeeldingen en geluid op in het geheugen van je apparaat. Valt je verbinding weg tijdens het spelen, dan gaat alles gewoon door. Je kunt de pagina verversen of in vliegtuigstand openen, het spel start direct.
Ieder spel kan bovendien op het startscherm worden geplaatst. Chrome op Android en Safari op iOS ondersteunen installatie als Progressive Web App met één tik. De adresbalk verdwijnt, waardoor het spel het volledige scherm vult als een volwaardige app, zonder toezicht van app-winkels en zonder opslagverspilling.
Veelgestelde vragen
Nee. Alle spellen zijn direct te spelen zonder registratie, e-mailadres of telefoonnummer. Je scores en statistieken blijven lokaal bewaard in je browser.

Game developer and founder at Unicorn Games. Specializes in combinatorial game theory, solvability algorithms, and classic card & puzzle game development. Every guide is fact-checked against mathematical game states and empirical play benchmarks.





