versionCode 10000
ANDROID / ARM64 NATIVE PORT
System Shock — Native port for Android
An unofficial Android/ARM64 port of System Shock, based on Shockolate. Play with handheld controls and supply game data from your own copy.
Requires Android 13 or later, an ARM64 device and physical controls. Retroid Pocket 5 is the tested reference device.
01 / INSTALL
Install and supply your game data
- Download and install the signed v1.0.0 APK.
- Copy the
resfolder from your own compatible CD-ROM or Enhanced Edition installation to the device. The floppy-disk data set is not supported. - Launch System Shock — Android.
- Choose Select res folder.
- Select the folder containing both
dataandsound. - Approve access; the importer copies the required files into private app storage and launches the game.
No developer tools are needed. Keep your original game-data folder separately: uninstalling the app may remove its private copy.
Compatible data and folder layout
The historical pre-release used package com.rp5np.systemshock. Stable v1 uses io.github.raposomiguel50.systemshock, so both may coexist and maintain separate app-private storage.
02 / OVERVIEW
System Shock on an Android handheld
Source-port foundation
The code foundation is Shockolate, using upstream commit 4cc3d07d…. The Android work is published separately in raposomiguel50/system-shock-android.
Hardware-led validation
The Retroid Pocket 5 is the validated reference device. The accepted baseline covers display behavior, handheld controls, text entry, audio, first-run data import and a complete start-to-finish playthrough.
Commercial data stays external
The source repository and public APK contain no commercial System Shock game data. On first run, users select their own compatible res folder from a legally obtained copy.
03 / RELEASE IDENTITY
Version 1.0.0
io.github.raposomiguel50.systemshock
arm64-v8a only.
Exact tagged release source commit.
Machine-verifiable release evidence
APK SHA-256a6dcb7f76374dd7d4f7e39f0ecc08446f2956a33bda7655d699d5ba639b8526f
Signing certificate SHA-256806d9cb061de67aa6953cdac573bd917da6aa17625964c2898d23e226bd5323b
The GitHub release publishes the signed APK together with its .sha256 file, JSON release manifest and final-gate report. The public APK was re-downloaded after publication and reproduced the expected SHA-256.
04 / CONTROLS
Desktop interaction translated to a handheld
| Input | Stable behavior |
|---|---|
| Left stick | Player movement and menu navigation. |
| Right stick | Camera rotation / look by default. |
| View / Select | Toggles the right stick between camera-look and fine cursor mode. |
| L2 | Left-mouse style selection, interaction and drag behavior. |
| R2 | Right-mouse / attack path according to game state. |
| Touchscreen | Optional pointer-style interaction. |
| Android IME | Text entry for player names and other keyboard-oriented fields. |
05 / PRESERVATION
Stable v1.0 is not a remaster
The port adapts installation and controls for Android while keeping the original game content.
Preserved
Version 1.0.0 keeps the original game content. The image is presented at 1024×768 in 4:3 without stretching.
Not part of v1.0
No widescreen/Hor+, HD replacement graphics, truecolor conversion, font remaster, replacement music or sound, gameplay rebalance, new maps or new story content.
Android adaptations
Native ARM64 packaging, lifecycle integration, controller mapping, fine cursor input, optional touch pointer, Android text entry, audio platform fixes, first-run data import and release/reproducibility tooling.
06 / TESTING
Testing and compatibility
Reference hardware
Retroid Pocket 5 is the validated target for the stable release.
Manual acceptance
A complete start-to-finish playthrough was accepted before the stable source freeze.
Machine gates
Fresh dependency bootstrap, QA build, APK semantic verification, signed release build, certificate pinning, release-manifest consistency and public APK hash verification passed.
Other Android 13+ ARM64 devices may work, but are not described as validated until independently tested.
07 / LEARN
Open knowledge, reproducibility and history
Reproduce
The reproduction guide documents toolchain requirements, pinned dependencies, QA/release gates and the commercial-data boundary.
Knowledge base
The engineering knowledge base records root causes, rejected approaches, resolved problems, reusable rules and open concerns.
Human-directed, AI-assisted
I set the goals, make project decisions and test the hardware. ChatGPT assists with programming, analysis, automation and documentation.
08 / SOURCES