Dotch.
Dotch. draait nu volledig in de browser. De gehele Java-game, met vier moeilijkheidsgraden, vier boss levels en alle progressie, is één op één overgezet naar TypeScript.
Development
Dotch. – Browser Edition
Jaren na de eerste versie van DotchGame heb ik het spel er weer bijgepakt en helemaal herschreven tot Dotch. Het is een Java game van ruim 12.000 regels code. Om het spel eindelijk zonder Java installatie speelbaar te maken heb ik de gehele codebase overgezet naar TypeScript en Canvas 2D. In plaats van het spel opnieuw te ontwerpen voor de browser, heb ik eerst een compatibility layer voor Java gebouwd: eigen versies van Graphics2D, Color, Rectangle, java.util.Random en DataOutputStream. Zo kon de originele code er vrijwel ongewijzigd bovenop draaien. Het resultaat is één package van ongeveer 250 kB zonder externe dependencies, die op elke server werkt.
Speluitleg
Gameplay en Mechanics
Je bestuurt een speler die met W/A/S/D of de pijltjestoetsen door een arena beweegt en zo lang mogelijk vijanden moet ontwijken. Er zijn vijf soorten vijanden, en die maken elke run weer anders: rode blokken kaatsen in rechte lijnen, turquoise diamanten schieten snel op en neer, paarse cirkels achtervolgen je en gele driehoeken kiezen bij elke botsing een nieuwe richting. Elke vijand wordt van tevoren aangekondigd: een seconde voordat hij verschijnt zie je een pulserende telegraph, zodat je de arena kunt aflezen voordat die volloopt. Ontwijk je een vijand op het nippertje, dan bouw je een dodge streak op waarmee je scoremultiplier oploopt tot x3. Naast bewegen heb je een dash functie, een slow-motion die alles terugbrengt naar 30% snelheid, en een schild dat één hit opvangt. Er zijn vier moeilijkheidsgraden: Normal, Hard, Insane en Combat. Bij Combat draaien de rollen om: daar schiet je juist zelf terug, en gaan eindbazen niet vanzelf dood.
Progressie
Eindbazen, Coins en Progressie
Elke tien levels kom je een eindbaas tegen, en daar zijn er vier van: de Classic vuurt spreads en ringen af in drie fases, de Splitter valt bij zijn dood uiteen in snellere kopieën van zichzelf, de Laser veegt roterende stralen door de arena, en de Swarm roept golven minions op. Buiten de losse runs om bouw je ook permanente progressie op: elke run levert XP op voor je profielniveau en coins voor de Coin Shop. Daar kun je 25 items kopen, zoals permanente upgrades, skins, kleurenpaletten en vroege toegang tot perks. Voor elke run stel je zelf een loadout samen van maximaal twee perks, van Glass Cannon (halve health, dubbele score) tot Streak Master. Verder zijn er 50 achievements, 6 vormpjes met 8 kleuren, een statistiekenpagina met je run geschiedenis, een ingebouwde muziekspeler met zes nummers.