The Log Console and tips for using it effectively

Preface: Please contribute to this guide; this only includes the few things I wish I’d known earlier when using the in-client log console, but there is much more to be added. Comment, DM me, or get my attention on Discord and I’ll add your tips.

Start here with VRChat’s documentation: Debugging Udon Projects

  • Open the log console with RShift + tilde + 3

  • Hold Tab to use your mouse cursor! Use the scroll wheel to scroll up and down the log.

  • Use your cursor to click the options at the top of the console.

  • Toggle auto-scroll “Scroll” off to stop your log jumping straight to the bottom for new entries.

  • To spot crashed UdonBehaviours easily, turn off Log and Warning

  • Then click Expand to see the contents of your UdonBehaviour crash

  • Within Udon, log your own messages to the console using Debug.Log, Debug.LogWarning, or Debug.LogError. In Udon Graph use string.const or string.Format to create your messages.

  • Make your own log lines easier to spot using Rich Text formatting as part of the message, e.g. <color=lime>text</color>. Below see examples of lime, cyan, and magenta.

Note: Someone please make a guide for all the other log consoles, especially the Networking consoles! I know very little. For now here’s this one tip:

  • Wondering who the Master is? Use Shift + tilde + 4 to open a player networking console. The Master player has an “M” next to their line. The local player (you) will have some low green numbers at other other end next to your name. In this image, I have two clients open on the same account for local testing. I can tell that this client is the one who’s master because it both has the “M” and has the special green numbers.

QUESTIONS that I and others have (please answer!):

  • Can I clear the log console to see past old, irrelevant messages?
  • Is Shift + tilde different on different regional keyboards?

If you’re debugging your own world, launching vrchat with the debug options while having the unity project open at the same time will allow you to see the debug output in unity itself.

Additionally it’ll allow you to jump to the object that’s causing the specific log output by double clicking on it.

(also yes, shift+` is different depending on regional settings. You can also clear the log in unity but not in VRC. However when logging is turned on it also logs to a file which you can open)

You only get the output log in Unity if you’re using UdonSharp. Important to note that.