SpideyPS1recomp
SpideyPS1recomp is a native PC port of Spider-Man and Spider-Man 2 Enter Electro with modern rendering and widescreen support.
- Type: PC port
- Game: Spider-Man 2: Enter: Electro
- Runs on Windows
- By GTTeancum
- Latest release sm2-v1.1, 2026-09-29
- Source: https://github.com/GTTeancum/SpideyPS1recomp
README
SpideyPS1Recomp
Native recompilations of Spider-Man and Spider-Man 2: Enter Electro for Windows, built with RecompOne. The PlayStation code is translated to C# ahead of time and runs against a shared runtime that implements the original console services, with modern rendering and higher-detail character assets.
This is an active development project, not a claim of complete game compatibility. Both games reach gameplay; targeted menu, level, costume and renderer tests do not replace full playthroughs or long-duration stability testing.
Download and install version 1.0
- Download the package for your game below and extract it. Open the extracted game folder.
- Launch SpiderMan.exe or SpiderMan2.exe, keeping the included mods folder beside it.
- Select your USA PlayStation BIN/CUE or ISO. Setup extracts the assets and starts the game.
| Package | Download | Installation and included contents |
|---|---|---|
| Spider-Man 1.0 — 34 costume mods | Windows x64 ZIP | Release notes |
| Spider-Man 2 1.0 — 35 costume mods | Windows x64 ZIP | Release notes |
| Blender Character Tools 1.0 | Installable add-on ZIP | Installation and requirements |
Each package includes Readme.txt. Install the Blender ZIP through Blender's add-on preferences; its repository and conversion-tool requirements are listed in its release notes.
Use the downloads above for ready-to-run games. GitHub's Source code (zip) and the ZIP links on the Tags tab contain developer source files.
Screenshots
Native renderer captures from both games. Click any image for the full-size version. The 4:3 and 16:9 shots come from separate runs, so camera position, animation, and HUD state can differ. The overlays place the complete 4:3 capture over the wider shot at 40% opacity; the cyan outline marks its boundary.
Spider-Man
| 4:3 gameplay | 16:9 gameplay |
|---|---|
![]() | ![]() |
| Miles Morales - gameplay | Miles Morales - main menu |
|---|---|
![]() | ![]() |
| Last Stand - gameplay | Last Stand - main menu |
|---|---|
![]() | ![]() |
| Spider-Punk - gameplay | Spider-Punk - main menu |
|---|---|
![]() | ![]() |
| Spider-Noir - gameplay | Spider-Noir - main menu |
|---|---|
![]() | ![]() |
Spider-Man 2: Enter Electro
| 4:3 gameplay | 16:9 gameplay |
|---|---|
![]() | ![]() |
| SP//DR - gameplay | SP//DR - main menu |
|---|---|
![]() | ![]() |
| MCU Infinity War - gameplay | MCU Infinity War - main menu |
|---|---|
![]() | ![]() |
| Hornet - gameplay | Hornet - main menu |
|---|---|
![]() | ![]() |
| Ghost Spider - gameplay | Ghost Spider - main menu |
|---|---|
![]() | ![]() |
Featured mod models and textures by Gameloft, converted from Spider-Man Unlimited.
Current features
- Modern rendering in both games: perspective-correct textured geometry, no PS1 dithering or 5-bit output quantization, increased internal resolution, and host-resolution FXAA enabled by default. Both 4:3 and 16:9 use the modern renderer; legacy rendering is reserved for developer reference.
- Widescreen gameplay: wider projection and HUD handling in both games. Choose 4:3 or 16:9 in OPTIONS > VIDEO SETUP. Menus retain their original 4:3 layout.
- Dreamcast character upgrades: SM1 uses converted DC actors where applicable; SM2's upgrade work focuses on Spider-Man and costumes, not matching every NPC. Character textures use external host-resolution packs. Environments remain the original PS1 environments.
- Twenty built-in SM1 costumes: the ten original suits plus ten imported SM2 entries. Imported suits use SM1 animations and copied SM1 ability profiles, with paired existing unlock events. The winged default SM2 suit is available from the start. Original SM1 default Spider-Man remains visually wingless.
- Costume mods in both games: external PNGs, custom names and author credits, independent donor powers, built-in bodies, and validated custom native models. Mod suits are always unlocked and do not replace built-ins. Each game supports 60 total costumes.
- First-run disc setup: published builds are self-contained executables with an embedded installer. Extraction runs inside the game window with progress and elapsed time, then subsequent launches use loose files.
Make or customize a costume
The selector supports 60 total costumes: 20 built-ins plus 40 mod slots in SM1, and 19 built-ins plus 41 mod slots in SM2. Version 1.0 includes 34 SM1 mods and 35 SM2 mods, leaving six free slots in each game. Magenta Man is not in the release roster.
- Copy a complete installed suit folder under
mods/suits/beside the executable. - Give the copy a unique folder name and
idinsuit.json; edit its name and comments while preserving author credits. Names support 19 printable ASCII characters. - Edit the referenced PNG textures, keeping their UV layout and texture keys.
Keep any referenced
modelFilewith its matching textures. - Choose a supported
abilities.profilefor the destination game. Appearance and donor powers are independent; profiles do not combine powers. - Restart and select the costume under SPECIAL > COSTUME VIEWER in SM1 or SPECIAL > COSTUMES in SM2.
Every packaged suit includes instructions. The shared
mod instructions cover all donor profiles,
model choices, moving suits between games, and troubleshooting. Move unwanted
suits to mods/inactive-suits to free slots while preserving their files.
The model field selects a built-in body: spiderman, scarlet-spider,
symbiote, quick-change, peter-parker, or sm2-spiderman.
spiderman uses the wingless SM1 body in either game. An optional modelFile
references a validated native .psx actor in the suit folder; raw FBX, OBJ,
or GLB models cannot be installed directly. PNGs support up to 4096 pixels per
side within a 64 MiB decoded texture budget per suit.
For custom geometry, use Blender Character Tools to import a native template, transfer and edit weights, and export a native character package. The add-on requires the repository conversion backend, external Python with Pillow, and NeversoftMultitool. Always check the result in native gameplay; automatic weight transfer still needs artist review.
In-game video setup (SM1 and SM2)
Open OPTIONS → VIDEO SETUP. This replaces the old Screen Adjust entry and uses the game's original menu graphics, text, highlights, sounds, and controls. Use Up/Down to select a row and Left/Right to change its value (Cross also cycles the value). Select APPLY with Cross to save; Triangle discards any pending changes and returns to OPTIONS.
| Aspect | Output resolutions |
|---|---|
| 4:3 | 640×480, 800×600, 1024×768, 1280×960, 1600×1200, 1920×1440 |
| 16:9 | 960×540, 1280×720, 1600×900, 1920×1080, 2560×1440, 3840×2160 |
FULLSCREEN: ON/OFF switches between fullscreen and windowed presentation when
you select Apply. Fullscreen uses the monitor's output area; turning it off restores
the selected windowed resolution. Apply also sets the gameplay aspect immediately.
The existing internal rendering scale remains a separate Display setting. Menus
retain their original 4:3 proportions. Applied choices are remembered on restart
in each game's settings.json and interface.ini.
Run a published build
Extract the download, keeping mods/ beside the EXE. Launch the game and select
your USA BIN/CUE or ISO when prompted. For a CUE sheet, keep its referenced
BIN files alongside it.
| Executable | Required disc | ID |
|---|---|---|
SpiderMan.exe | Spider-Man (USA) | SLUS-00875 |
SpiderMan2.exe | Spider-Man 2: Enter Electro (USA) | SLUS-01378 |
The installer checks the USA boot ID in SYSTEM.CNF and that its boot file exists.
It does not check disc hashes, exact executable sizes, or revision-specific disc
lengths. Extraction runs in the game window, then the game starts automatically.
After installation, the original image is no longer needed for play.
Both EXEs contain .NET, the native game libraries, and the Visual C++ runtime. No separate runtime installer or loose DLLs are required. Windows and your graphics driver supply the remaining system libraries.
Game files live under game/ beside the executable; bundled character replacements
and texture packs live under assets/builtin/. User reskins belong in mods/suits/,
not inside the built-in asset folder. Each game has its own settings and data.
The bundled replacements do not require a Dreamcast disc, and SM1's imported
costumes do not require an SM2 disc at installation time.
See first-run installation for validation, installation layout and recovery details.
Build from source
For the shared runtime/recompiler and tests that require no retail disc, use
python tools/run_regressions.py after installing .NET 10, Python 3, and Pillow.
Verification coverage explains what the
Windows/Linux CI gate checks. The project checkpoint records
current fixes, actual results, and the next gameplay blocker.
Development builds require .NET 10, Python 3 with NumPy and Pillow, and the appropriate retail disc data. Start in the directory of the game being built:
cd spiderman # or spiderman2
python tools/disc.py extract extracted
python tools/cdwad.py extract extracted/wad
python tools/overlays.py build config/overlays
python tools/genmaps.py
python tools/build.py
BIN/CUE is import media, not the runtime format. The extractor produces loose files
and recompone-disc.json; later builds and launches use that directory.
Raw source discs and extracted retail files must not be added to Git.
From the repository root, publish a self-contained executable with:
dotnet publish spiderman/port/SpiderMan.csproj -c Release
dotnet publish spiderman2/port/SpiderMan2.csproj -c Release
Publishing defaults to the .NET SDK host runtime identifier (RID), such as
linux-x64 on 64-bit Linux or win-x64 on 64-bit Windows. Select a different target
explicitly with -r linux-x64 or -r win-x64; the explicit RID takes precedence
over the host. Each target has a separate port/dist/<RID>/ directory:
| Target | SM1 executable | SM2 executable |
|---|---|---|
| Linux x64 | spiderman/port/dist/linux-x64/SpiderMan | spiderman2/port/dist/linux-x64/SpiderMan2 |
| Windows x64 | spiderman/port/dist/win-x64/SpiderMan.exe | spiderman2/port/dist/win-x64/SpiderMan2.exe |
An explicit --output directory still overrides that layout. The bundled Windows
VC++ DLLs are included only for the Windows x64 target. Linux builds still require
the operating system's graphics, windowing, and audio libraries; native gameplay
verification is tracked in the checkpoint.
Ordinary builds instead use each project's port/bin/Release/net10.0/ directory;
launch its SpiderMan or SpiderMan2 apphost on Linux, or the corresponding .exe
on Windows. Published builds embed each game's
port/bundled/runtime-assets.zip; asset maintainers rebuild those payloads using
python dreamcast/tools/build_bundled_runtime_assets.py after approved changes.
Development switches
Both games use the SPIDEY_* prefix, but level and costume names differ.
Set environment variables before starting the executable.
| Variable | Purpose |
|---|---|
SPIDEY_WIDE=1 / 0 | Enable / disable widescreen gameplay; neither selects legacy rendering |
RECOMP_RENDER_SCALE=4 | Internal rendering scale, from 1 to 8 |
RECOMP_FXAA=0 | Disable the normally enabled FXAA pass |
SPIDEY_LEVEL=l1a1 | Direct SM1 level boot; SM2 uses names such as e1m0 |
SPIDEY_COSTUME=symbiote | Select an SM1 built-in costume for testing |
SPIDEY_CHEATS=all | Enable the game's cheat set |
SPIDEY_SHOTS=1050,1500 | Save native captures at specified frames |
SPIDEY_SNAP=crash | Dump game RAM on a crash |
Project layout and technical notes
spiderman/ and spiderman2/ have separate game code, configuration, extracted
data and output. tools/RecompOne/ contains the shared recompiler/runtime;
dreamcast/ contains character-conversion and audit tooling, not a third game port.
- SM1 technical notes
- SM2 technical notes
- Dreamcast extraction and conversion
- DC character-port pipeline
- Reskin implementation and tests
Older per-game investigation notes record the results of particular builds and test routes. They should not be read as guarantees that every map, costume or long-session scenario currently passes.
Rights
Spider-Man, Spider-Man 2: Enter Electro, their characters and original assets belong to their respective rights holders. This is an unofficial project. Players supply the supported retail PS1 disc for the game they run. Converted character assets and the sample reskin are distinct from the port's source code; their inclusion does not transfer ownership of the underlying art.





















