$WEBREVERSEawaiting launch
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.

memowebreverse/open shar:sm64
not createdflip it

The first valid burn with this memo owns the combo forever.

hero binarysm64
Super Mario 641996, Mariosm64.wasm 12,493,041 bytes2,116 funcs, named
hero 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
Mario in Hit & Run, a real frame
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 combo
rapier.wasm1,569,588 bytesphysics: the hero walks on the world's own floors
heroes/sm64/1,512,958 bytesMario, rebuilt from Super Mario 64's files
hosts/shar/host.js655 lineswires damage, pickups and doors into SRR2.wasm
world binaryshar
The Simpsons: Hit & Run2003, SRR2, community portSRR2.wasm 3,669,626 bytes8,522 funcs, named
world 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.wasmsm64.wasm
bytes3,669,62612,493,041
code section2,643,585875,854
data section533,54411,286,468
functions8,5222,116
names8,9662,172
imports44456
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