Skip to content

Iron Man Vault Edition (Stern 2014)

Multi-year toolkit showcase build (2021-2025) led by sixtoe, with niwak providing extensive real-time toolkit guidance. Key contributors: tomate80 (Blender), apophis79 (scripting), flupper1 (3D modeling), its.me.dazz (3D scanning), and iaakki (testing). This channel serves as one of the most detailed VPX Lightmapper (VLM) toolkit workflow references in the VPW archive.

Build Story

Iron Man spanned 80+ WIP versions across 3.5 years, with niwak (toolkit author) actively guiding sixtoe through the bake pipeline. The build produced deep documentation on toolkit collection organization, naming conventions, modifier handling, and transparent plastic rendering. Dazz's photogrammetry scan of the physical Iron Monger toy was reduced from 2.5 million triangles to approximately 8,000 by flupper1 while preserving visual quality -- establishing the scan-to-game-ready pipeline used on later builds.

Table-Specific Details

Mechanisms & Hardware

Fast flips for SAM ROMs: InitVpmFFlipsSAM did not work on Iron Man's specific SAM ROM version, nor did UseSolenoids=2. The workaround was explicit solenoid mapping in the script rather than relying on automatic detection. FastFlips timing should show under 2ms in the debug overlay's second value.

Glass height and ball trajectory: The glass height setting directly affects maximum ball trajectory. Iron Man's ramps arc above the playfield ("out the back"), requiring extended table length and glass height to accommodate the full ball path without trajectory clipping.

Art & Visuals

3D scanning pipeline: The Iron Monger photogrammetry scan was the first full scan-to-game pipeline documented in VPW: scan physical toy, clean mesh/fill holes, aggressive poly reduction (300x from 2.5M to 8K triangles), UV unwrap and texture bake via normal maps, import to VPX as OBJ with texture maps. Aggressive reduction is viable because pinball toys are viewed from a fixed camera angle at distance.

Toolkit insert and flasher dual-bulb naming: Inserts with both a steady-state lamp AND a flasher bulb use separate names -- lamp component as L55 (controlled by lamp matrix) and flasher component as L130 (mapped via setlamp to the flasher solenoid). This lets the toolkit bake separate light contributions for steady and high-intensity states.

Transparent plastic shadow fix: Niwak's Blender shader node fix for transparent plastics casting opaque shadows -- add a Light Path node, connect Is Shadow Ray to a Mix Shader mixing between the plastic shader and Transparent BSDF. Critical for realistic lighting under plastic ramps.

Lampz FadeSpeed -- LEDs vs incandescent: niwak documented the definitive FadeSpeed values here. LEDs: fade up 1/2, fade down 1/8. Incandescent: fade up 1/40, fade down 1/120. The asymmetric speeds reflect physical reality -- filaments heat faster than they cool.

Physics & Gameplay

Playfield friction calibration: Default friction of 0.02 is far too low. sixtoe calibrated to the 0.15-0.25 range for this Stern-era machine. Higher friction makes ramp entries and orbit shots require appropriate speed rather than gliding frictionlessly.

Ramp exit spin: The max spin multiplier was reduced from the default 70 to 50 to prevent unrealistic corkscrew ball behavior exiting ramps. This is a global physics setting, not per-ramp configurable.

Metal fall-off (metalfo): The metalfo physics parameter controls how elasticity decreases at higher ball speeds -- making high-speed impacts "deader." Without it, fast-moving balls bounce with the same energy ratio as slow ones.

Known Issues

Ball curling over outlane post: Same issue as Iron Maiden -- balls traveling up the inlane curl over the divider post and drain. Fixed by adjusting post/wall collision geometry.

31-character name limit: Toolkit-generated names exceeding 31 characters get silently truncated, causing flasher name collisions, script reference failures, and toolkit sync issues. Keep all component names at most 6 characters.

Techniques Developed Here

See Also

  • Johnny Mnemonic -- another long-running toolkit build showing pipeline evolution
  • Police Force -- niwak's performance recommendations documented there
  • Iron Maiden -- same outlane curl-over fix