Skip to content
forked from Swizpig/ZGloom

ZGloom is a modern Windows (x86) source port of the Amiga FPS Gloom. This fork focuses on an improved renderer, extended in-game options and subtle post-processing effects while staying faithful to the original look and gameplay.

Notifications You must be signed in to change notification settings

andiweli/ZGloom

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

ZGloom - Modern Amiga Gloom Port for Windows (x86)

Modernized reimplementation of the classic Amiga first-person shooter Gloom (including Gloom Deluxe, Gloom 3 and Zombie Massacre) for modern Windows PCs.

Latest release Platform Engine

ZGloom is a modern Windows (x86) source port of the Amiga FPS Gloom.
This fork focuses on an improved renderer, extended in-game options and subtle post-processing effects while staying faithful to the original look and gameplay.


✨ Key Features

  • 🖥️ Fixed software renderer
    – Imported and adapted from the PSVITA SDL version
    – More accurate perspective and fewer visual glitches than the original PC port

  • 🎮 Extended menu and keyboard navigation
    – ESC, arrow keys up/down and left/right work throughout the menu
    – Additional video and effect options directly accessible in-game

  • 🖼️ Post-processing overlays
    – Atmospheric vignette options (radius, softness, strength, warmth)
    – Optional film grain (with adjustable intensity)
    – Optional scanlines (with adjustable intensity)

  • 🧊 Faithful Amiga Gloom experience on Windows
    – Runs the original Gloom data files
    – Supports Gloom, Gloom Deluxe, Gloom 3 and Zombie Massacre (depending on game data)

  • 🔊 In-game MOD music support
    – Uses LibXMP to play Amiga-style modules
    – Per-level music possible via script commands (e.g. song_blitz.mod)

  • 🧩 Native Windows executable with icon
    – Includes a proper game icon for the .EXE
    – Simple drag-and-play folder layout


🖼️ Screenshots

Comparison of the original renderer vs. the fixed ZGloom renderer:

ZGloom renderer comparison – old vs fixed renderer

Menu options and visual overlays (vignette, film grain, scanlines):

ZGloom menu and overlays – vignette, film grain and scanlines


📦 Download

Get the latest Windows (x86) build here:

👉 Latest ZGloom release

Each release contains the ZGloom.exe and required libraries.
You still need the original Gloom game data (see below).


🚀 Getting Started

1. Download the original Gloom data

Gloom was made freely available by its developers.
Download the game data (for example the GloomAmiga archive) and extract it somewhere on your drive.

You can use data files from:

  • Gloom
  • Gloom Deluxe
  • Gloom 3
  • Zombie Massacre

2. Install ZGloom

  1. Download the latest ZGloom release from GitHub.
  2. Extract the ZIP into a folder of your choice.
  3. Copy the extracted Gloom game data into the same folder as ZGloom.exe.

Your final folder might look like this (example with Gloom Deluxe):

ZGloom.exe
libxmp.dll
SDL2.dll
SDL2_mixer.dll
maps/   (dir)
misc/   (dir)
objs/   (dir)
pics/   (dir)
sfxs/   (dir)
txts/   (dir)

Then simply double-click ZGloom.exe to start the game.


🎮 Default Controls

Keyboard controls in ZGloom:

  • Arrow keys – Move and turn
  • Left Alt – Strafe
  • Left Ctrl – Fire
  • F1 – Skip level
  • F12 – Toggle fullscreen
  • Print Screen – Save a screenshot as bitmap
  • ESC – Pause and open the in-game menu

The extended menu offers more options than the original game and port.
You can change values with the left/right arrow keys (for example for fullscreen, vignette, film grain, scanlines, and other display options).


🔊 In-game Music (MOD Support)

ZGloom can play in-game music using any module format supported by LibXMP.

  1. Put your .mod (or other supported module) files in the sfxs folder.

  2. Add entries like this to the script (example):

    song_blitz.mod

You can add multiple song_ commands, which allows per-level music.


🔮 Planned Features

The current Windows build focuses on stability and visual parity with the original game.
For future versions, the following features and improvements are planned:

  • Integrated cheat menu from the PS Vita version
    Port the extended cheat menu from the PS Vita ports (e.g. infinite health, weapon tweaks) and expose it directly in the PC options menu.

  • Save & load position system from PS Vita
    Bring over the position save/load logic from the Vita builds to allow resuming from checkpoints or specific spots in a level instead of always starting from the beginning.

  • Additional fixes for weapon firing behaviour
    Further refine projectile origin, muzzle flash alignment and strafing behaviour so shots always leave the weapon at the correct position and angle.

  • HUD rendering above post-processing overlays
    Adjust the rendering order so the HUD is drawn on top of vignette / film grain / scanline effects, keeping it crisp and perfectly readable.

  • Optional background / ambient sound layers
    Add support for subtle ambient or background soundscapes to enhance atmosphere without changing core gameplay.

  • Further small enhancements and quality-of-life improvements
    Ongoing tweaks based on user feedback, including minor visual polish, configuration options and bug fixes where needed.


🛠 Building from source (Windows)

This repository is currently set up to be built with Microsoft Visual Studio 2026 on Windows.
Linux, macOS, CMake- or make-based builds are not tested at this time.

The project is structured around the MSVC toolchain and Visual Studio project/solution files, so the recommended workflow is:

  1. Install Visual Studio 2026 with the “Desktop development with C++” workload.
  2. Clone this repository to your PC (working SDL2 and SDL2_Mixer are included in this repo).
  3. Open the provided Visual Studio solution (or create a new one and add the sources from this repo).
  4. Select a configuration (for example Release / x86) and build the solution.
  5. Copy your original Gloom game data next to the compiled executable as described above in the Getting Started section.

If you want to experiment with other platforms or compilers (e.g. gcc/clang on Linux), you will currently need to:

  • create your own build system files (CMake, Meson, custom Makefiles, etc.),
  • and handle any platform-specific fixes yourself.

Clean, optional contributions that add a portable build setup without breaking the existing Visual Studio workflow are very welcome.


🛠️ About This Fork

This repository is a fork of Swizpig/ZGloom.
The goal of this fork is to:

  • Fix the renderer using improvements from the PSVITA SDL version
  • Enhance menu navigation and keyboard usability
  • Add post-processing overlays (vignette, film grain, scanlines)
  • Provide a polished Windows (x86) build with its own executable icon

If you enjoy retro Amiga FPS games and want a modern Windows port of Gloom, this fork aims to be a convenient, visually enhanced option.


📜 License & Third-Party Code

The licensing situation around the original Gloom sources is a bit unusual:

The Gloom source release says only the .s and .bb2 files are open source, but the Gloom executable bakes in some maths lookup tables (generated by the .bb2 files), bullet and sparks graphics, and the title screen for Classic Gloom.

This fork follows the original release and does not add the Classic Gloom executable assets (title screen etc.).
Instead, it uses alternative imagery such as the Black Magic image.

Libraries Used


🙌 Credits

  • Original Gloom game and assets by its original Amiga developers
  • Original PC reimplementation by Swizpig
  • This fork and Windows renderer & overlay work by Andiweli

If you like the project, consider giving the repository a ⭐ star on GitHub – it helps other Amiga and retro-FPS fans discover ZGloom.

About

ZGloom is a modern Windows (x86) source port of the Amiga FPS Gloom. This fork focuses on an improved renderer, extended in-game options and subtle post-processing effects while staying faithful to the original look and gameplay.

Topics

Resources

Stars

Watchers

Forks

Sponsor this project

 

Languages

  • C 75.2%
  • C++ 23.6%
  • Other 1.2%