systemshock

Shockolate - Same great System Shock, new great taste.

Github星跟踪图

Shockolate - System Shock, but cross platform!

Based on the source code for PowerPC released by Night Dive Studios, Incorporated.

Build Status TravisCI Build Status AppVeyor

GENERAL NOTES

Shockolate is a cross platform source port of System Shock, using SDL2. This runs well on OSX, Linux, and Windows right now, with some missing features that need reviving due to not being included in the source code that was released.

The end goal for this project is something like what Chocolate Doom is for Doom: an experience that closely mimics the original, but portable and with some quality of life improvements including an OpenGL renderer and mod support!

Join our Discord to follow along with development: https://discord.gg/m45xPan

work so far

Prerequisites

  • Original cd-rom or SS:EE assets in a res/data folder next to the executable
    • Floppy disk assets are an older version that we can't load currently

Downloads

We have CI systems in place building distributable packages out of tagged commits for Linux, Mac and Windows.

Compiling / Running

Prerequisites

  • SDL2, 32 bit
  • SDL2_mixer, 32 bit

Building SDL

Linux/Mac

You can use the included build_deps.sh shell script to build the required versions of SDL2 / SDL2_mixer or use system ones.
Here brief options list:

  • ENABLE_SDL2 - use system or bundled SDL2 (ON/BUNDLED, default BUNDLED)
  • ENABLE_SOUND - enable sound support (requires SDL2_mixer, ON/BUNDLED/OFF, default is BUNDLED)
  • ENABLE_FLUIDSYNTH - enable FluidSynth MIDI support (ON/BUNDLED/OFF, default is BUNDLED)
  • ENABLE_OPENGL - enable OpenGL support (ON/OFF, default ON)

Windows

See the Windows readme.

Build and run

cmake .
make systemshock
./systemshock

Command line parameters

-nosplash Disables the splash screens, causes the game to start straight to the main menu

Modding Support

Shockolate supports loading mods and full on fan missions. Just point the executable at a mod file or folder and the game will load it in. So far mod loading supports additional .res and .dat files for resources and missions respectively.

Run a fan mission from a folder:

./systemshock /Path/To/My/Mission

Run a fan mission from specific files:

./systemshock my-archive.dat my-strings.res

主要指标

概览
名称与所有者Interrupt/systemshock
主编程语言C
编程语言CMake (语言数: 7)
平台
许可证GNU General Public License v3.0
所有者活动
创建于2018-04-10 03:14:35
推送于2025-03-22 06:39:51
最后一次提交2025-03-21 23:39:51
发布数20
最新版本名称v0.8.2 (发布于 )
第一版名称v0.5-windows (发布于 )
用户参与
星数865
关注者数39
派生数73
提交数1.6k
已启用问题?
问题数163
打开的问题数58
拉请求数223
打开的拉请求数9
关闭的拉请求数25
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?