0 of 0

File information

Last updated

Original upload

Created by


Uploaded by


Virus scan

Safe to use

Tags for this mod



View as plain text

All of these functions are called from the static class OLogger

Here is the main Log function:
OLogger.Log(object _obj, string _color = "ffffffff", string _panel = "Default")

_obj is the object you want to display, it will be turned into a string in the log function.
_color is the color that the text will be, which by default will be white.
_panel is the panel that the text will be output to.

Other functions:
This isn't actually needed as .Log will create a panel, however, this give you control over the writeToDisk/enabledOnCreation
OLogger.CreateLog(Rect _rect, string _panel = "Default", bool _writeToDisk = true, bool _enabledOnCreation = true);

_writeToDisk is whether you want to output any text in this panel to a file in "mods/Debug/'PanelName'.txt"
_enabledOnCreation is whether you want to have the debug panel show on creation

OLogger.SetUIPanelEnabled(string _panel, bool _enabled); //this will set the panel "_panel" to "enabled"
OLogger.SetPanelWriteToDisk(string _panel, bool _writeToDisk); //this will set writeToDisk to "_writeToDisk"

OLogger.ClearUIPanel(string _panel); //this will clear the text in the "_panel" panel
OLogger.DestroyUIPanel(string _panel); //this will destroy the "_panel" panel;

OLogger.Warning(object _obj, string _panel = "Default"); //this will output yellow text to the "_panel" panel
OLogger.Error(object _obj, string _panel = "Default"); //this will output red text to the "_panel" panel

OLogger.ignoreList.AddToIgnore(params string[] _toAdd); //this will add strings to ignore from Unity's debug
OLogger.ignoreList.RemoveFromIgnore(params string[] _toRemove); //this will remove strings ^

OLogger.maxSetupTextTime; this will only allow setting up text to take x miliseconds before returning
default value is 3, lower this if game is stuttering whilst debug logging

//Example To Turn Unity Debug Into OLogger Debug:
public void Start()

//First setup "Default Unity Compiler" panel at location: (X:400,Y:400)
// size: (W:400,H:400) and have it log to file (mods/Debug/"PanelName".txt) and be enabled on start
OLogger.CreateLog(new Rect(400, 400, 400, 400), "Default Unity Compiler", true, true);

//Add ignores to OLogger ignore list (will filter out from Unity's Debug calls)
OLogger.ignoreList.AddToIgnore("Internal", "Failed to create agent"
, "is registered with more than one LODGroup"
, "No AudioManager");
//ignores can also be removed by calling OLogger.ignoreList.RemoveFromIgnore()

//Finally hook OLogger onto logMessageReceived to receive Unity's Debug calls
Application.logMessageReceived += OLogger.DebugMethodHook;

//Now you can just call Debug.Log and it will come through as a OLogger Log


//Example To Debug On Key Press F
public void Update()

if (Input.GetKeyDown(KeyCode.F))
OLogger.Log("You Have Pressed F");