c/shar-sm64world sharhero sm64
Mario in Hit & Run
Mario from Super Mario 64, inside The Simpsons: Hit & Run on its own engine, SRR2, community port. The graph below is the real files of both games.
memo
webreverse/open shar:sm64not createdflip it
The first valid burn with this memo owns the combo forever.
hero binarysm64

Super Mario 641996, Mario
sm64.wasm 12,493,041 bytes2,116 funcs, namedhero packheroes/sm64/loaded by the runtime
- files
- 79 files, 1,512,958 bytes
- body
- glTF model, avatar.glb 803,612 bytes
- clips
- 41 animations
- moves
- mario.js
shar:sm64real frame, the church1920 x 1080
runtimethree.js + Rapier
; the only code between the two binaries
splice-runtime.js1,215,699 bytesthree.js and the hero code, one file for every comborapier.wasm1,569,588 bytesphysics: the hero walks on the world's own floorsheroes/sm64/1,512,958 bytesMario, rebuilt from Super Mario 64's fileshosts/shar/host.js655 lineswires damage, pickups and doors into SRR2.wasmworld binaryshar

The Simpsons: Hit & Run2003, SRR2, community port
SRR2.wasm 3,669,626 bytes8,522 funcs, namedworld adapterhosts/shar/host.jsjavascript
- size
- 35,221 bytes 655 lines
- engine
- SRR2.wasm 40 exports
- names
- 30 splice_* exports of the engine
The two binaries
SRR2.wasm runs in the tab. sm64.wasm does not: Mario is rebuilt from Super Mario 64's files and drawn into The Simpsons: Hit & Run's frame.
the two binariesas served, read-only
| SRR2.wasm | sm64.wasm | |
|---|---|---|
| bytes | 3,669,626 | 12,493,041 |
| code section | 2,643,585 | 875,854 |
| data section | 533,544 | 11,286,468 |
| functions | 8,522 | 2,116 |
| names | 8,966 | 2,172 |
| imports | 444 | 56 |
the world's hookshosts/shar/host.js30 names
; splice_* exports of SRR2.wasm the adapter calls by name
splice_add_collidersplice_blastsplice_clear_colliderssplice_coll_tagssplice_coll_trissplice_collisionsplice_contextsplice_damagesplice_destroysplice_entities_jsonsplice_exit_interiorsplice_explosionsplice_framesplice_hud_map_rectsplice_hud_offsetsplice_levelsplice_lightssplice_load_levelsplice_loadingsplice_pausesplice_play_soundsplice_playersplice_raycastsplice_remove_collidersplice_set_inputsplice_sharedsplice_teleportsplice_transitionsplice_usesplice_ents