Project Zomboid

Project Zomboid

Not enough ratings
How to Properly Report a Mod Bug
By Arendameth
Found a bug in a mod and want to report it an author? That's awesome! But first, you need to know how to properly report it for a fast and efficient solution.
   
Award
Favorite
Favorited
Unfavorite
How to Report Bugs
Bugs in mods can be broadly categorized into two types: runtime errors and logic error. Knowing how to report these errors effectively can significantly aid modders in debugging and fixing them.
  • An runtime error - An error the prevents the code or part of the code from running. When it happens, a red error popup appears in bottom right
  • Logic Error - When the mod runs without errors, but behaves in an unintended way or doesn't give the expected result, often due to wrong logic in the code.

Runtime errors
When a runtime error occurs, it gets logged in the game's console file. Console files are split into:
  • console.txt - Client-side logs. This is what you most likely will need.
  • coop-console.txt and server-console.txt - Logs related to coop and servers.
These files can be found at the following location, assuming you are on windows:
C:\Users\{Your Username}\Zomboid

After finding the relevant file, open it, use the search function in your text editor (typically opened using ctrl + f), then type in stack trace or Error. This will mark all the errors in that file. What you want to do is look at each one until you find the the error relevant to the mod. The text around will include which file has the error. Copy the whole block, and paste it in the mod's bug reporting section. An example of an error:
function: increaseUsedDelta -- file: ClientCommands.lua line # 4 | MOD: Battery Jumpstarter
function: OnClientCommand -- file: ClientCommands.lua line # 15 | MOD: Battery Jumpstarter

LOG : General , 1664637020755> Object tried to call nil in increaseUsedDelta
LOG : General , 1664637020781> creating new sourcewindow:
ERROR: General , 1664637031683> ExceptionLogger.logException> Exception thrown java.lang.RuntimeException: Object tried to call nil in increaseUsedDelta at KahluaUtil.fail line:82.
ERROR: General , 1664637031683> DebugLogStream.printException> Stack trace:
java.lang.RuntimeException: Object tried to call nil in increaseUsedDelta
at se.krka.kahlua.vm.KahluaUtil.fail(KahluaUtil.java:82)
at se.krka.kahlua.vm.KahluaThread.luaMainloop(KahluaThread.java:973)
at se.krka.kahlua.vm.KahluaThread.call(KahluaThread.java:163)
at se.krka.kahlua.vm.KahluaThread.pcall(KahluaThread.java:1980)
at se.krka.kahlua.vm.KahluaThread.pcallvoid(KahluaThread.java:1812)
at se.krka.kahlua.integration.LuaCaller.pcallvoid(LuaCaller.java:66)
at se.krka.kahlua.integration.LuaCaller.protectedCallVoid(LuaCaller.java:139)
at zombie.Lua.Event.trigger(Event.java:64)
at zombie.Lua.LuaEventManager.triggerEvent(LuaEventManager.java:214)
at zombie.spnetwork.SinglePlayerServer.receiveClientCommand(SinglePlayerServer.java:229)
at zombie.spnetwork.SinglePlayerServer.mainLoopDealWithNetData(SinglePlayerServer.java:183)
at zombie.spnetwork.SinglePlayerServer.update(SinglePlayerServer.java:171)
at zombie.GameWindow.logic(GameWindow.java:238)
at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71)
at zombie.GameWindow.frameStep(GameWindow.java:764)
at zombie.GameWindow.run_ez(GameWindow.java:680)
at zombie.GameWindow.mainThread(GameWindow.java:494)
at java.base/java.lang.Thread.run(Unknown Source)

Additional useful information
Sometimes, simply copy-pasting the whole error block isn't enough. You also want to include additional information to help the mod author debug the issue, such as:
  • What circumstances lead to this error? How can the author reproduce this error?
  • Is the error in solo/multiplayer/both?
  • Do you have any other mods activated?
  • Are you sure this isn't a mod incompatibility? Have you tested with only this mod activated? If it's a mod incompatibility, have you found out yet which mod it is incompatible with?

Logic Errors
For bugs causing unintended behavior without technical errors, inform the mod author without error logs. Include a description of the observed behavior and any relevant details.