# Contact event scalar and direction payload RE-718. Reproduce with `python3 scripts/analyze_qvm_contact_event_value.py`; check with `python3 scripts/test_qvm_contact_event_value.py`. The [machine report](qvm-contact-event-value.json) retains source identity and bounded fixtures. Actual292917–293221 composes the event header with subsequent value/direction writes. Ordinary event204 is truncating float-to-integer scalar; weapon4 uses the extra accumulator×100 and caps only values above100, preserving explicit negative fixtures. Weapon ID goes to196. Trace point bytes overwrite event24 without truncation, while constructor origin488 remains snapped. Event36/40/44 is attacker entity24 minus target entity24, normalized using source-order float32 squared sums, modeled native sqrt, reciprocal and products; zero separation stays zero. The independent oracle checks the entire record. Allocation/native link and native sqrt parity remain explicit boundaries. No feedback or health execution occurs. No original executable/full QVM/native collision/physics/rendering executes. Native responses and legal input domains are supplied or unverified where stated; full runtime/macOS/Linux Rust/Bevy/Solari gameplay remains open.