Scared Stiff (Bally/Williams 1996)¶
Full WPC toolkit build from layout to release with practical insights on dual-coil solenoids, PinMAME flipper PWM, and Blender movable object exports. Notable as the only WPC table with a flasher wired to a flipper output. Built by sixtoe, apophis79, and tomate80.
Build Story¶
The Scared Stiff manual mixes prototype and production model information, causing significant confusion during development. Key differences: production removed skull LED board (just 2 flashers behind skull bank + crate eyes LEDs), prototype ROM (SS_01) drives the LED board but production (SS_15) does not, Sol 20 "playfield bolts" was used for aux board on prototype, kickback on sol 2 in prototype became a gate loop in production, Sol 25 is loop gate in prototype but bone flasher in production.
Table-Specific Details¶
Mechanisms & Hardware¶
- Dual-coil solenoid (crate lock): one high-power coil pulls the load, one lower-power hold coil maintains position. For VPX, only the hold coil callback matters:
Sub CratePostHold(enabled): Crate_Pin.Collidable = Not Enabled: End Sub - Only WPC table with a flasher wired to a flipper solenoid output (bottom flashers on outputs 35/36). These appeared as binary on/off until niwak added PWM support for Fliptronics/flipper outputs in PinMAME.
- Crate door bounce-back: ball bouncing off wall behind door slams it shut. Fix: add wall with high friction and zero elasticity behind the door. Only animate door on hit if not already animating.
Art & Visuals¶
- Plastics must be PNG with alpha channel -- JPG kills transmission even if the material has transmission settings. Simply renaming JPG to PNG is insufficient.
- Toolkit nestmap export grays out if ANY object has nestmap value of -1 (no geometry). The cadaver object (flat plane with inverted normals) blocked the entire process.
- Sideblades and other objects render incorrectly if Blender transformations are not applied. Apply All Transformations, then fix normals.
- Subsurface scattering vs transmission for rubbery/soft plastic objects (boogie men): SSS gives more opaque plastic appearance with subtle light diffusion, while transmission makes objects look gel-like.
- For movable objects: "Use Obj Pos" must be ticked for non-Z rotation, and the local Z axis pointing non-perpendicular to playfield can cause export errors.
Known Issues¶
- VPX primitives are NOT collidable while actively being moved/animated via script.
- Animation timers using
-1interval produce different speeds at different frame rates. Multiply animation increments by a frame-rate-dependent factor. - VUK z-height threshold can fail if velocity is reduced -- ball may not reach threshold height. Add margin and Y-position failsafe.
Techniques Developed Here¶
- PinMAME flipper output PWM added to PinMAME because of this table
- Default LUT should be identity -- empty/null LUT breaks anaglyph 3D rendering
- Frame-rate-dependent animations fix documented here
See Also¶
- Troubleshooting -- nestmap export failures, movable object issues
- Transparent Elements -- plastics material requirements