A former Valve developer uncovered a puzzling bug during the port of Half-Life 2 to VR. The game's 2013 VR build experienced a softlock due to a metro cop's position.
Bug Origin Revealed
The bug manifested when the cop's location in the game blocked a door, halting progression. Initially thought a VR-specific issue, it later appeared in the original build. The door, nudging the guard's toe, would bounce back and lock.
- Incident: Valve worked on Half-Life 2 VR in 2013.
- Problem: A door locked due to NPC's position.
- Discovery: Bug existed in both original and VR builds.
- Cause: Floating-point precision differences in new compiler.
Compiler Precision Impact
The error stemmed from a shift to using SSE instructions over the older x87 behavior. This minor change in floating-point precision affected physics calculations, altering the in-game reactions to NPC collision physics.
Tom Forsyth highlighted such subtle compiler choices' impact on game development, noting the potential for creating unexpected, complex bugs.