
When we're building a game, we're not running optimized builds - we need to run builds that have a bunch of debug data enabled so that we can check internal logic values to make sure the logic is behaving the way we expect. We often need to build debugging tools into the game client in order to track this kind of stuff - in order to figure out what a particular AI was doing over the last X frames of the game that led it to this current bad state, we need to be able to mark an AI to save, and then save the last X frames of its thinking process so that we can look back and see. We might even need to mark all running AI to save for X frames so that we don't miss the thing that causes a particular bug. That takes a lot of memory, especially if we have a lot of different AI running around! Then we have all of the debugging tooling we need for graphics, for animation, for data loading, for scripting, for vfx, for sound, for networking, for server data, for client data, and so on. It's a combinatoric explosion of the amount of debugging data needed to validate a AAA level game with hundreds or thousands of developers working on it. Call of Duty, as an example, has hundreds of developers working on it as a whole in shifts, with terabytes of assets and multiple versions of the game that all need to build and run independently, with validation applicable to each different version.

The vast majority of this debug tooling is stripped out for the final product because it isn't necessary - there's no need to do so in a final build that's in player hands. Final builds are much more optimized than debug builds, so they run a lot faster and need fewer resources. But when the game is in development, we absolutely need access to this kind of data to make sure that the systems are all working. Any computer that runs out of memory will crash. We need more memory and better specs in order to run a barely-optimized version of the game because we need the debugging tools and info that are needed to validate a game the size of today's AAA game.
[Join us on Discord] and/or [Support us on Patreon]
Got a burning question you want answered?
- Short questions: Ask a Game Dev on Twitter
- Short questions: Ask a Game Dev on BlueSky
- Long questions: Ask a Game Dev on Tumblr
- Frequent Questions: The FAQ