In game development, it is important to recognise when to not reinvent the wheel. And so, 25 years after Id lit Quake’s filthy halls with blinking lights, we wind up with the fluorescent lamps of Half-Life Alyx’s City 17 flickering in precisely the same way.
To explain, this is not only a similar impact.
In Source–and, clearly, both GoldSrc and Source 2–lights have a set list of properties which may be fiddled with in-editor. The Twist in controlled via a series of letters from A to Z (with A being pitch black and Z being total brightness). By changing this series, lights can be designed to emulate a candle flickering, a gentle LED heartbeat, or as exhibited, a harsh, broken fluorescent lamp.
For instance, a candle may use the series”nmonqnmomnmomomno”, whereas that specific effect is generated with”mmamammmmammamamaaamammma”.
Valve reusing code from Half-Life 1 is 1 thing. But the developer’s engine has its own roots in Id Software’s milestone Quake engine. Lo and behold, it was this method of breaking lights may have started with John Carmack’s engine–but with decades of 2D games preceding it, it is more than possible this technique goes back much farther.
We’re used to seeing programmers discuss taking huge, technically impressive steps forwards, especially when it comes to something as complicated as lighting. Even so, it’s sometimes nice to find that even after years of progress, a simple trick can still fit the bill.