Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Game Remakes
  3. Shockolate

Shockolate

GPL-3.0Cv0.7.7

A cross-platform source port of System Shock that closely mimics the original with quality-of-life improvements.

GitHubGitHub
890 stars74 forks0 contributors

What is Shockolate?

Shockolate is a minimalist, cross-platform source port of the classic game System Shock, built using SDL2. It aims to provide an authentic experience similar to the original while being portable across modern operating systems like Windows, macOS, and Linux. The project draws inspiration from Chocolate Doom, focusing on preservation with select enhancements like an optional OpenGL renderer and mod support.

Target Audience

Retro gaming enthusiasts, preservationists, and modders who want to play or modify the original System Shock on modern operating systems. It also targets developers interested in source port projects or game engine recreation.

Value Proposition

Developers choose Shockolate for its faithful recreation of the original System Shock with cross-platform compatibility, modern quality-of-life controls, and built-in mod support, distinguishing it from other ports by prioritizing accuracy and portability like Chocolate Doom does for Doom.

Overview

Shockolate - A minimalist and cross platform System Shock source port.

Use Cases

Best For

  • Playing System Shock on modern operating systems like Windows, macOS, or Linux without emulation.
  • Loading mods and fan missions for System Shock by pointing the executable at mod files or folders.
  • Building a customizable System Shock experience with CMake options to enable or disable features like sound, FluidSynth MIDI, and OpenGL.
  • Preserving the original System Shock gameplay with authentic mechanics while using quality-of-life improvements like WASD movement and configurable hotkeys.
  • Developing or testing System Shock mods with support for additional .res and .dat resource files.
  • Running System Shock with an optional OpenGL-based graphics renderer for improved visual performance on modern hardware.

Not Ideal For

  • Players seeking a graphically remastered or fully modernized version of System Shock with enhanced visuals and gameplay changes.
  • Users without access to the original System Shock CD-ROM or Enhanced Edition assets, as Shockolate requires these to run.
  • Casual gamers looking for a simple, one-click installation without needing to compile from source or manage dependencies.
  • Developers needing support for floppy disk versions of System Shock, which are currently unsupported.

Pros & Cons

Pros

Cross-Platform Accessibility

Uses SDL2 to run seamlessly on Windows, macOS, and Linux, with prebuilt packages available for easy installation, as noted in the releases section.

Modernized Controls

Implements WASD movement and configurable hotkeys like 'F' for mouselook, improving the original's cumbersome interface, detailed in the control modifications section.

Mod and Fan Mission Support

Allows loading of additional .res and .dat files by pointing the executable at mod folders, enabling extended gameplay, as explained in the modding support section.

Build Flexibility

Offers CMake options to enable or disable features such as sound, FluidSynth MIDI, and OpenGL, catering to different needs, listed in the build process.

OpenGL Renderer Option

Includes an optional OpenGL-based graphics renderer for better performance on modern hardware, while maintaining authenticity, mentioned in the features and CMake options.

Cons

Asset Dependency

Requires the original CD-ROM or System Shock: Enhanced Edition assets placed in a specific 'res/data' folder, which can be a barrier for new users, as stated in the prerequisites.

Missing Floppy Support

Cannot load floppy disk assets from older versions of the game, limiting compatibility with some historical copies, admitted in the README's general notes.

Complex Build Process

Building from source involves running shell scripts and configuring CMake with dependencies, which may be daunting for non-developers, as outlined in the running from source section.

Community-Driven Development

As an open-source project, it lacks official support and may have slower update cycles compared to commercial releases, relying on Discord for community interaction.

Frequently Asked Questions

Quick Stats

Stars890
Forks74
Contributors0
Open Issues59
Last commit7 months ago
CreatedSince 2018

Tags

#immersive-sim#sdl2#opengl#sdl#fps#games#c#cmake#source-port#retro#cross-platform#modding#game-engine#retro-gaming

Built With

S
SDL2
C
CMake
O
OpenGL

Included in

Game Remakes1.3k
Auto-fetched 1 day ago

Related Projects

DevilutionXDevilutionX

Diablo build for modern operating systems

Stars9,462
Forks972
Last commit1 day ago
DevilutionDevilution

Diablo devolved - magic behind the 1996 computer game

Stars8,978
Forks921
Last commit7 months ago
OpenMWOpenMW

OpenMW is an open-source open-world RPG game engine that supports playing Morrowind. Main repo and issue tracker can be found here: https://gitlab.com/OpenMW/openmw/

Stars6,294
Forks1,049
Last commit2 days ago
Zelda3Zelda3

Zelda3 is a complete reimplementation of the classic SNES game *The Legend of Zelda: A Link to the Past* in C, comprising approximately 70-80k lines of code. It faithfully replicates the original game's logic and behavior while enabling verification through side-by-side execution with the original machine code. This project makes the game accessible on modern platforms and allows for community-driven improvements and modifications. ## Key Features - **Complete Game Reimplementation** — All parts of the original game are recreated in C, making it playable from start to end. - **Verification System** — Can run original machine code alongside the C implementation to compare RAM states each frame for accuracy. - **Modern Enhancements** — Adds features like pixel shaders, 16:9/16:10 aspect ratios, higher-quality world maps, and MSU audio track support. - **Quality-of-Life Improvements** — Includes a secondary item slot on button X, item switching with L/R keys, and snapshot-based replay functionality. - **Cross-Platform Support** — Compiles and runs on Windows, Linux, macOS, and even Nintendo Switch with appropriate toolchains. ## Philosophy The project prioritizes accuracy and verification, ensuring the C implementation behaves identically to the original SNES game while thoughtfully adding modern features that enhance the experience without compromising authenticity.

Stars4,599
Forks412
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub