Logging
Geode provides a builtin logger with fmtlib formatting, which you can view in real time via the platform console, or later on by checking the logs in the geode/logs/
folder.
Log Levels
There are 4 logging levels, each being more important than the previous.
using namespace geode;
log::debug("Im some debug string {}", 123);
log::info("Some information for those reading logs");
log::warn("Warning: something idk");
log::error("An error message");
Syntax
The syntax for formatting logs is the same as fmtlib. Geode itself provides formatters for a few common types, such as CCPoint
, CCNode*
, etc.
Image from https://hackingcpp.com
As such, you are able to do things like this:
geode::log::debug("Hello {:>10.3f} world, [{}]", 12.4f, fmt::join(someVec, ", "));
Platform console
You can easily enable the platform console by going to the settings on the Geode mod ingame.