O grze Mario.js — World 1-1 Remake
Mario.js to klon pierwszego poziomu gry na NES, napisany przez programistę Garretta Johnsona jako ćwiczenie z tworzenia silników. Pod spodem nie ma żadnego frameworka do gier: pętla główna, przewijanie, wykrywanie kolizji, animacja sprite'ów i kolejność renderowania zostały napisane ręcznie w czystym JavaScript.
Dzięki temu to świetny sposób, by znów przejść World 1-1 — poziom, który nauczył całe pokolenie grać w platformówki bez ani jednej linijki samouczka. Pierwszy Goomba uczy skakać, pierwszy blok ? uczy uderzać w przedmioty od dołu, a rury pokazują, że świat potrafi skrywać sekrety.
Własne notatki autora wyjaśniają założenia projektu: przeciwnicy stają się aktywni tuż przed pojawieniem się na ekranie, pola kolizji są nieco bardziej hojne niż same sprite'y, a warstwy rysowane są w stałej kolejności — tło, rekwizyty, przedmioty, przeciwnicy, pociski, teren, gracz i na końcu rury, dzięki czemu Mario może się w nie wsunąć.
Sterowanie
| Klawisz | Akcja |
|---|---|
| ← → | Chodzenie |
| Z | Bieg |
| X | Skok |
| ↓ | Wejście do rur / przykucnięcie |
Funkcje
- Układ World 1-1 odtworzony co do piksela, razem z ukrytą rurą i masztem z flagą
- Silnik działający w 60 kl./s, napisany od zera bez żadnych frameworków
- Pola kolizji w stylu oryginału i aktywacja przeciwników tuż przed wejściem na ekran
- Grzyby, Fire Flowers, gwiazdki, monety i rozbijane cegły
Wskazówki
- X skacze, a Z biegnie — odwrotnie niż w wielu grach na PC, więc daj palcom chwilę na przyzwyczajenie się.
- Przytrzymaj Z podczas skoku z szczytu ostatnich schodów, aby złapać maszt z flagą jak najwyżej.
- Spróbuj nacisnąć ↓ na rurach — jedna z nich prowadzi w wyjątkowe miejsce, tak jak w oryginale.
- Kliknij raz wewnątrz gry, jeśli klawisze nie reagują; ramka potrzebuje fokusu klawiatury.


