๐ฅ GORE ๐ฅ A Minimal Go Port of doomgeneric โโโโโโโ โโโโโโโ โโโโโโโ โโโโ โโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโ โโโ โโโโโโ โโโโโโ โโโโโโโโโโโโโโ โโโ โโโโโโ โโโโโโ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโ โโโ โโโโโโโ โโโโโโโ โโโโโโโ โโโ โโโ .GO TLDR Tired of reading already? wget https://distro.ibiblio.org/slitaz/sources/packages/d/doom1.wad go run github.com/AndreRenaud/gore/example/termdoom@latest ๐ WHAT FRESH HELL IS THIS? This is a minimal, platform-agnostic Go port of the legendary DOOM engine, transpiled from the doomgeneric codebase. No CGo. No platform dependencies. Just pure, unadulterated demon-slaying action powered by the glory of Go's cross-compilation. The original C code was converted to Go using (modernc.org/ccgo/v4), by cznic (https://gitlab.com/cznic/doomgeneric.git). This was then manually cleaned up to remove a lot of manual pointer manipulation, and make things more Go-ish, whilst still maintaining compatibility with the original Doom, and its overall structure. ๐ซ FEATURES โ Platform Agnostic : Runs anywhere Go runs : Runs anywhere Go runs โ Minimal Dependencies : Only requires Go standard library : Only requires Go standard library โ Multiple DOOM Versions : Supports DOOM, DOOM II, Ultimate DOOM, Final DOOM : Supports DOOM, DOOM II, Ultimate DOOM, Final DOOM โ WAD File Support : Bring your own demons via WAD files : Bring your own demons via WAD files โ Memory Safe : Go's GC protects you from buffer overflows (but not from Cacodemons) (WIP - 95% complete) : Go's GC protects you from buffer overflows (but not from Cacodemons) (WIP - 95% complete) โ Cross Compilation: Build for any target from any platform Missing Features One instance per process: Still has a lot of the original global variables, which prevent multiple instances from running Random exported consts: The original C code used the standard convention of all upper case for const/enum values. This results in the Go code assuming these are exported values, when really they're ...
First seen: 2025-08-13 06:56
Last seen: 2025-08-13 11:58