>_ DevTrendspl

Język

Strona główna

Języki

Sekcje

Frontend Backend Mobilne DevOps AI / ML GameDev Blockchain Systemy wbudowane Bezpieczeństwo
JavaScript

Diablo I w przeglądarce — nostalgia dla kultowej klasyki bez instalacji

Pamiętasz ten dreszcz, gdy po raz pierwszy schodziłeś do lochów Tristram? Dziś nie potrzebujesz płyty CD ani emulatora — wystarczy przeglądarka. Projekt diabloweb przenosi legendarnego RPG z 1996 roku do sieci, wykorzystując nowoczesne technologie.

Dlaczego to jest imponujące

Diablo ważyło około 50 MB — śmieszna ilość według dzisiejszych standardów, ale w latach 90. wymagało instalacji. Teraz gra uruchamia się natychmiast:

  • Brak pobierania klienta
  • Na dowolnym urządzeniu (nawet smartfonie!)
  • Z zachowanym oryginalnym gameplayem

Deweloper d07RiV zaadaptował silnik Devilution, usuwając zależności i optymalizując go dla WebAssembly. Szczególnie interesujące jest to, jak przebudował system obsługi zdarzeń, aby pasował do modelu JS przeglądarki.

Jak to działa technicznie

Trzy kluczowe komponenty stanowiące jego rdzeń:

  1. WebAssembly — binarny format do wykonywania kodu po stronie klienta
  2. Interfejs JavaScript — mostek między WASM a API przeglądarki
  3. Zaadaptowany silnik Devilution z uproszczoną architekturą

// Пример интеграции с JS
Module.onRuntimeInitialized = function() {
  // Инициализация игры после загрузки WASM
};

Kto znajdzie to przydatne

  1. Entuzjaści game dev — świetny przykład przenoszenia legacy code
  2. Frontend deweloperzy — praktyczne zastosowanie WebAssembly
  3. Nostalgiczni gracze — możliwość zagrania w dowolnym miejscu

Jak wypróbować

  1. Wersja demo dostępna na GitHub Pages
  2. Pełna gra wymaga DIABDAT.MPQ z legalnej kopii
  3. Kod źródłowy do zbudowania: devilution-wasm

Projekt jest świetnym przykładem tego, jak nowoczesne technologie przywracają klasykom życie. Jeśli studiujesz WASM lub po prostu chcesz przeżyć swoją młodość na nowo — zdecydowanie warto wypróbować!

Powiązane projekty