Okay, sorry for the clickbait-y title...I know in-game consoles were never really common per se, and I'm writing this because of I've been relying on the console to fix bugs in Skyrim...
But still, the question stands: why don't we see in-game consoles more frequently in video games today?
My PC version of Skyrim has always been broken and buggy. Having played the same installed version on the same machine since college, it's become more and more unstable as time has gone on, hardware's been upgraded or replaced, and the computer itself has been (less than carefully) moved across the country.
Recently, I booted it up again to (finally) do a playthrough as a mage. Upon killing the first dragon, I uncovered a new and amazing bug: I can no longer absorb dragon souls.
Luckily, this is a rather common bug, and the easiest solution is to simply enter the game's console and use the command
setstage MQ104 90 to mark the quest as complete. As I defeat other dragons, I have to artificially increase my dragon soul count by 1 using
player.modav dragonsouls 1.
Let's learn a bit about what these consoles are, and where they originate!
To save you some time with trying to google "video game console" without the interference of console machines (PS4, Xbox One, Switch, etc.), here's the Wikipedia article on console (video game CLI).
The most recognizable in-game console is likely traceable to Quake (1996), the popular first-person shooter and successor to Doom.
Activated by either ~ (tilde) or ` (grave), the console was a box that dropped down from the top of the screen.
In addition, the Quake console also included codes you could enter for both regular in-game commands, and cheats--here's a list of Quake console commands.
I personally first encountered Quake's console with
noclip, a command to allow walking through walls and flying, and
god, the god-mode (invincibility) cheat. These still commonly appear in games that have their own in-game consoles!
One important thing to know about in-game consoles (like Quake's above) is that they are NOT windows into the engine's processes, nor the game's source code. It's easy to look at a console like this and assume that you're pausing the game's engine and directly accessing/modifying the code that's currently running. Nope.
You are not hacking the game's source code by using the in-game console--and this is why not every game has its own console.
Instead, an in-game console is an additional CLI built into the game that offers a specific set of commands for that game's console alone. While some game engines may have a set of common commands, their effects are game-specific, and they must be created by developers.
So, long-story short: most video games don't have an in-game console because they're a lot of extra effort for developers to make!
Luckily, the in-game console lives on in some modern (and very popular) game engines.
Each of the games in these series/with these engines will usually have an in-game console, with varying numbers of commands:
- Bethesda's Creation engine (Skyrim, Fallout) - list of Skyrim console commands
- Valve's Source/GoldSrc engine (Counter-Strike, Half-Life) - list of console commands common to all Source engine games
- Epic's Unreal engine (BioShock, Borderlands) - list of console commands for Unreal Engine 3 games and editor
Lots of articles are popping up lately about replaying some of these games using console commands/cheats, so now is a great time to dive in and explore the possibilities!
Note: Depending on the game, you may have to enable use of the in-game console (for example, with Steam games, running them with the
-console flag), or by otherwise making it available. Just be prepared to do some Googling on the specific game!
Note (also): Some console (non-PC/Mac) versions of video games do NOT have an in-game console, usually due to complications of accessing it without a keyboard.
- Console_(video_game_CLI) Wikipedia article
- GameFaqs thread on in-game consoles, with anecdotal history and examples
- Quake console commands
- Skyrim console commands
- Activating console in Steam games
- Source engine console commands
- Unreal engine console commands
- Article on replaying Skyrim with console commands
- Article on adding consoles to Unity games