Skip to content

LostMyCode/three-gunz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

129 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Three GunZ Project

Recreating GunZ The Duel as a web version using Three.js

image

GunZ was a fast-paced online third-person shooter (TPS) developed by MAIET Entertainment.

Just out of curiosity / For fun

Around 2007, the GunZ source code (mostly written in C++) was leaked.
After that, many developers created tools, private servers, custom clients, and various fan projects.
I was also one of them — I messed around with it quite a bit between ~2012 and 2016.

Now, years later, what I really want to try is:
bringing GunZ back to life… in the browser.

Demo(s)

Here are some early demos from the project.

Loading & rendering a GunZ map (Town) in the browser with Three.js

LoadTownWithThreeJS

Demo: https://gunz.sigr.io/test/web-world/
Repository: https://github.com/LostMyCode/three-gunz/tree/master/test/web-world

I finally built a GunZ map reader/converter!
Still working on proper lightmap support though.

Rendering a GunZ NPC (Palmpoa / MOB) with Three.js

DrawPalmpoa

Demo: https://gunz.sigr.io/test/web-palmpoa/
Repository: https://github.com/LostMyCode/three-gunz/tree/master/test/web-palmpoa

For this one I used Blender 2.8 to convert the original GunZ model (.elu) into .glb format.

Update: Full Browser Port (2026) - Now the Entire GunZ Runs in Your Browser!

From the original Three.js map loader demo (2021) → I finally achieved the full port!
The complete original GunZ The Duel client (including MatchServer) now runs entirely in the browser using WebAssembly.

whiplash-gunz

Key Achievements

  • Original GunZ binaries compiled to WebAssembly via Emscripten (real native execution, not a remake).
  • D3D9 rendering translated to WebGL in real-time (custom wrapper – check my other projects).
  • Networking via WebSocket proxy.
  • Filesystem handled with IndexedDB (all .rs, .elu, sounds, etc. load and persist in browser).
  • MatchServer also compiled to WASM → Play solo/local deathmatch without any external server!

Just open the link and play – no downloads, no installs, nothing required.

Playable Demo (Browser GunZ Full Version):
Click here to play instantly

This project started as a fun Three.js experiment with GunZ maps... now it's a full browser revival of GunZ.
Huge thanks to the community for the motivation back then!

GunZ forever in the browser era 🔥
If you're interested in collaborating (perf improvements, multiplayer WebRTC proxy, etc.), feel free to open issues or reach out.

Last updated: March 2026

About

Recreating GunZ The Duel as a web version using Three.js

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages