The SCI Unlocked Project
What the heck is this? The SCI Unlocked project is my attempt to truly unlock the SCI engine by bringing it into the modern era. This means working with modern file formats like PNG, JSON files. This means being able to easily compile the source without having to install platform specific tools. This means having the original SCI runtime working and the original lisp/smalltalk semantic behavior preserved so the games work as-is.
Why not ScummVM or DOSBOX then? Because those projects aim to preserve the original gaming experience whereas I want to unlock it. What if you could easily introduce new SCI class files, easily add or update assets with modern graphics tools, easily hand-edit JSON files in your favorite code editor? What if you could easily extend the SCI runtime's existing kernel routines so that they could leverage http calls, websocket calls, text-to-speech apis or really anything else you wanted? What if you are tired of looking at the existing character portraits and want to re-style them or re-envision them with your own original artwork?
Why not SCICompanion? Because it's a Windows-only MFC app, and I run a Mac. Also, the goal of that project is to recompile the games into their true original packed form. This is not aligned to my goal or unlocking SCI.
For me the star of Sierra has always been the engine along with the person who largely had a hand in designing it: Jeff Stephenson. This is an experiment to bring the engine into the modern era and this is my third attempt at doing it.
But why? Well Sluicebox's scripts repo was the catalyst for this and I've been stairing at that code ever since - pondering the thought of - can it compile?
Also, nothing has stopped you from doing it.
-Deckarep
- Original game logic, original art, original timing compiled from Sluicebox's sci-scripts unmodified
- Both a platform agnostic Desktop and Web/WASM build thanks to the language Zig + Raylib framework
- The desktop app has a complete integrated IDE debugger built with Dear IMGUI - allows for live editing
- The VM runs its own flavor of bytecode, preserving the SCI memory model and runtime semantics
- Music is re-created currently via the Adlib/OPL2 synth
- SCI Extraction tooling rebuilt in Zig - modeled after the closed source SCIViewer tools - but multi-threaded so it's FAST!
- Close to 200 unit-tests locking down the SCI runtime behavior exactly, smoke testing infrastructure and speed-running mode
- All the games listed below are working - but I'm just releasing a select few for now
- Original prototype video demonstrating the Python version: YouTube!
- Don't take my word for it open the web inspector in your browser and see for yourself!
- Are there bugs? Yep, I'm sure there are -- one of them related to missing palette cycling logic
Games
No games staged yet. Run make web-export.