Saltar al contenido
PORTSNATIVE.
InicioCatálogo
Juegos WebEmuladoresHerramientasNovedades
PORTSNATIVE.

Un catálogo para descubrir ports y proyectos relacionados. Enlazamos a las fuentes oficiales y no alojamos archivos de los juegos originales.

ExplorarCatálogoMi lista
InformaciónNosotrosProponer un portSoporteApoyo y donacionesAviso legal
© 2026 PortsNative
Volver al catálogo
PORTSNATIVE

bottleship

EMULADORACCIÓN / AVENTURAWEBWEBBETA

bottleship

Run classic Windows games in your browser. A high-level-emulation engine that boots real x86 Windows executables and reimplements Win32, COM and DirectDraw/Direct3D on WebGPU, WebAudio and OPFS

OrigenGitHub WebAssembly emu

TecnologíaEmulador Nativo Multiplataforma (JIT / Dinámico)

Disponible paraWeb, Web

Ver proyecto oficial

Sobre el proyecto

Emulador indexado en PortsNative optimizado para ejecutar títulos de GitHub WebAssembly emu en Web, Web. Ofrece alta compatibilidad, ajustes gráficos y soporte para mandos modernos.

Información oficial del proyecto

README original del autor (en inglés)Abrir en GitHub ↗

BottleShip

Run classic Windows games in your browser.

BottleShip runs real x86 Windows games in the browser — no OS image, no plugins, no server round-trip. It loads a game's PE executable directly and reimplements Windows itself (Win32, COM, DirectDraw / Direct3D 3–9, DirectSound) on top of WebGPU, WebAudio and OPFS.

Play online · Release 0.7 · Compatibility · Documentation · Contributing

<!-- TODO: hero.gif — a short montage (Max Payne / NFS Underground / StarCraft / Unreal) -->
  • Real x86 Windows executables — not source ports
  • DirectDraw & Direct3D 3–9 → WebGPU
  • DirectSound & waveOut → WebAudio
  • Runs entirely on the client — no game streaming, no server-side execution

⚠️ Early and actively developed — expect rough edges.

Games running today

BottleShip already runs a range of late-90s / early-2000s titles into gameplay, including Re-Volt, Heroes of Might & Magic III, StarCraft / Brood War, Diablo II, Max Payne, The Elder Scrolls III: Morrowind, Harry Potter and the Philosopher's Stone, Need for Speed: Porsche Unleashed & Underground, Unreal Gold, Command & Conquer: Tiberian Sun, Discworld Noir, Tomb Raider II and Tony Hawk's Pro Skater 2. See the full compatibility list for exact status per title.

Several of these are sold DRM-free on GOG (Heroes III, Re-Volt, Morrowind, Unreal Gold, Tomb Raider II…) — you can drop the offline installer straight in. Because only demos and freeware are legally redistributable, the online library lets you play those instantly; everything else, you bring your own legally-owned copy.

Open the game library →

Why

The web has great open emulators for old platforms — DOSBox, ScummVM, Dolphin. But the awkward middle — native Win32 games from ~1997–2004 with no source port, not on modern stores, and fussy on current Windows — has no easy home. BottleShip aims squarely at that gap.

It gives those games a browser-native runtime without booting a Windows image or a native install. We ship the emulator, not the games: the online library is demos, shareware and other redistributable releases; you import your own legally-owned files locally.

How it works

BottleShip doesn't boot Windows. It loads the game's PE executable into a 4 GB guest address space, runs its x86 code through a fork of v86, and intercepts every imported Win32 and DirectX call.

flowchart LR
    GAME["Windows game<br/>x86 PE"] --> CPU["v86 CPU<br/>(WASM)"]
    CPU --> HLE["Win32 / DirectX HLE<br/>TypeScript + WASM"]
    HLE --> WEB["WebGPU · WebAudio<br/>OPFS · input"]
  • Win32 / COM APIs are reimplemented in TypeScript and WASM.
  • DirectDraw and Direct3D 3–9 are translated to WebGPU / WGSL in real time.
  • DirectSound and waveOut mix in an AudioWorklet over a SharedArrayBuffer ring.
  • Game files, saves and registry live in an OPFS virtual filesystem (read-only ROM plus a copy-on-write overlay).
  • Hot guest/host calls stay entirely inside WASM for speed.

Read the architecture guide →

Run locally

Requirements: Bun, and a browser with WebGPU (Chrome / Edge 113+) and SharedArrayBuffer.

git clone https://github.com/jenissimo/bottleship
cd bottleship
bun install
bun run dev

Open http://localhost:5174.

Development & self-hosting guide →

Multiplayer uses an optional LAN relay with WebSocket and HTTP polling. Virtual DirectPlay remains the default. Experimental native DirectPlay 8 hosting requires an explicit provider policy and a configured UDP listener; its current backend targets a Host with one remote Peer. See the native Host setup and conformance guide for the supported scope and verification workflow.

Import your own games

BottleShip can load:

  • .wgb game bundles;
  • raw game folders (drag & drop);
  • supported GOG Inno Setup installers (extracted in-browser).

Imported files are processed locally in the browser and stored in OPFS, with a read-only base image and a writable overlay for saves and configuration.

bun tools/make-wgb.ts <game-dir> <out.wgb> --exe game.exe

Game import guide → · GOG import →

Help preserve a game

BottleShip is built around compatibility work: load a game, find the generic Win32 or DirectX gap, implement it faithfully, and prove the fix with the automation harness — a fix that helps every title on the same code path, never a per-game hack.

Coding-agent-assisted contributions are welcome, as long as fixes stay generic, reviewable and covered by reproducible harness tests.

  • Report a working or broken game
  • Diagnose a missing API (report() / stubs() name the culprit)
  • Submit a verified, generic implementation

Contributing guide → · Contributing with coding agents →

Community & contact

  • Questions, ideas, or a game you got running → GitHub Discussions.
  • Bugs & compatibility reports → Issues (use the templates).
  • Security → SECURITY.md (private reporting).
  • Anything else, including takedown / legal: jenissimo+bottleship@gmail.com.

Support

BottleShip is free and open source. If it brought a game back to life for you, you can chip in: Ko-fi · CloudTips (RU) · Crypto.

Documentation

  • Architecture — how the engine fits together
  • Compatibility — tested titles and their status
  • Importing games · GOG import
  • Development & self-hosting
  • Release notes · Versioning
  • Automation harness — driving and observing games
  • Multiplayer — virtual LAN, server setup and API coverage
  • Child processes — execution, display routing and diagnostics
  • Performance measurements — workload and correctness contracts
  • Contributing with coding agents

License & acknowledgements

BottleShip is licensed under Apache-2.0. It builds on a fork of v86 (BSD-2) and bundles other open-source components (SeaBIOS / VGA BIOS, an FFmpeg-based decoder, fonts) — their licenses and notices are in THIRD-PARTY-NOTICES.md.

BottleShip does not distribute commercial game files. Bring your own legally-owned copies.

Leer guía oficial
CALIFICACIÓN
—
Cargando votos…
Publicidad

FICHA DEL PROYECTO

Tipo de proyecto
EMULADOR
Género
Acción / Aventura
Estado
beta
Plataforma de origen
GitHub WebAssembly emu
Tecnología
Emulador Nativo Multiplataforma (JIT / Dinámico)
Versión
—
Actualización
29 oct 2026

Plataformas de destino 2

Web
Web
Descargas / Web Oficial
Publicidad