Why 'com_maxfps 250x' uncaps Quake Live's frame rate
8 hours ago
- #Reverse Engineering
- #Software Bug
- #Gaming
- A Discord community event involved playing Quake Live, prompting the author to check game settings and refresh rate.
- The author discovered a bug where setting com_maxfps to '250x' bypassed the 250 FPS cap, allowing up to 1000 FPS due to a parsing error in Cvar_ParseInteger().
- Analysis revealed the bug occurred because strstr() incorrectly identified '250x' as a hex string, leading sscanf() to fail and return 0, while clamping used the float value (250.0), not the integer.
- The bug was specific to Quake Live, as Quake 3 used atoi() for parsing, and no other cvars were found to exploit this issue.