4 ms·
Sometimes it is about code quality. Defensively written, well-documented and well-tested code would not be as likely to suffer from such bugs. It's not just su
by FartyMcFarter 3y ago
Sometimes it is about code quality. Defensively written, well-documented and well-tested code would not be as likely to suffer from such bugs.
It's not just subtle floating-point errors either, but also outright wrong maths that appears to work (see [1] for an example), memory leaks [2], buffer overflows [3] etc.
[1] https://www.youtube.com/watch?v=4gNYTqn3qRc https://www.youtube.com/watch?v=4gNYTqn3qRc
[2] https://news.ycombinator.com/item?id=20410166 https://news.ycombinator.com/item?id=20410166
[3] https://arstechnica.com/gaming/2021/03/how-to-beat-paper-mario-really-fast-by-playing-ocarina-of-time/ https://arstechnica.com/gaming/2021/03/how-to-beat-paper-mar...
- joachimma 3y agoI think they made the right trade-off, back in the 90s on hardware that could barely run the game, sticking extra defensive checks to make sure you have not accidentally clipped through the geometry, or simpler ones like making sure you are not running too fast, seems excessive. They weren't coding for some NASA space probe and they knew it.
- FartyMcFarter 3y agoTypically you'd put the checks only in debug builds.