Troubleshooting and support
When something doesn't work, and how to reach us.
Compatibility and limitations
Unity versions
- Minimum: Unity 2022.3.62f3.
- Tested: Unity 2022.3.62f3, 6000.0.84f1, 6000.3.25f1 and 6000.6.3f1.
- Announced: from Unity 6.8, a Development Build alone no longer keeps the console: set its Managed Code Variant to Instrumented, Checked or Debug. See Unity 6.6 and later, and Unity's own Adding diagnostics to C# code.
Limitations
Each of these is explained on its own page too:
- Release builds: the console is compiled out of them unless you keep it (Keeping it in a Release build).
- Input: the console doesn't stop your game from reading the keyboard while it is open (Keeping your game from reacting).
- Commands run at once: the console doesn't run a method that returns an
IEnumeratoras a coroutine, and doesn't wait for anasyncone (Coroutines and async methods). - Where commands are found: in the assemblies loaded when the game starts, and, with code stripping, only in assemblies the build keeps (How commands are found, Code stripping).
- Log length: each log keeps its last 512 lines, the Max Log Lines setting (Related settings).
- WebGL: the browser doesn't let the game reach the clipboard, so Copy,
copy-logandcopy-recorddon't work there (Copy). - Characters: the console's font, Google Sans Code, doesn't have every script (Chinese, Japanese, Korean...): the characters it doesn't have show as squares.
Troubleshooting
The console doesn't open
- Is it a Release build? The console is compiled out of Release builds: make a Development Build, or see Keeping it in a Release build. From Unity 6.6, see also the Managed Code Variant.
- Check the key: F12 by default, set in the Behavior page. On some laptops F12 needs Fn.
- Look in Unity's Console for a line starting with
[Console]: it says when the console can't read input (both input systems disabled) or can't find its interface (a define symbol given only on the command line of a build).
My command isn't found
- The method must be
static(or on a component: see Commands on objects) and have[Command]. - Open Tools > Mirage Console > Check Commands: it lists the commands the console finds and, for those it can't register, the reason (a parameter of an unsupported type, a name already taken...). Unity's Console shows the same reasons when the game starts.
- With assembly definitions, the assembly of your command must reference
MirageInteractive.Console. - Missing only in a build? See Code stripping.
Typing in the console moves my character
Your game still reads the keyboard while the console is open. See Keeping your game from reacting.
Some characters show as squares
The console is drawn with Google Sans Code, which doesn't have every script (Chinese, Japanese, Korean...): the characters it doesn't have show as squares.
A send fails
- Read the error the console logs: it gives the reason the server returned.
- On iOS and Android, an
http://URL is blocked by default: usehttps://. - Slack and Discord refuse a log that is too long: select fewer lines.
- A 401 or 403 means the server refused the authentication: check the header.
Copying does nothing
In a WebGL build, the browser doesn't let the game reach the clipboard.
Support
A question, a bug, an idea? Write to contact@mirageinteractive.fr
or visit www.mirageinteractive.fr. When reporting a problem, please
include your Unity version, the version of Mirage Console (sysinfo gives both) and the log.
License
Mirage Console is licensed under the Unity Asset Store End User License
Agreement. See LICENSE.md at the root of the package.
The console is drawn with the font Google Sans Code, Copyright 2025 The Google Sans Code Project
Authors, used under the SIL Open Font License, Version 1.1 (its license is in UI/Fonts/OFL.txt).
“Google Sans Code” is a trademark of Google LLC; this package isn't affiliated with nor endorsed by Google.
See Third-Party Notices.txt.
The changes of each version are in CHANGELOG.md.