diff --git a/src/net/torvald/terrarum/GameCrashHandler.kt b/src/net/torvald/terrarum/GameCrashHandler.kt index a32c6d580..4e6b72b8a 100644 --- a/src/net/torvald/terrarum/GameCrashHandler.kt +++ b/src/net/torvald/terrarum/GameCrashHandler.kt @@ -121,6 +121,46 @@ emph { val uptime = App.getTIME_T() - App.startupTime + + + // print out the error + printStream.println("

The Error Info

") + System.err.println("== The Error Info ==") + + printStream.println("
")
+        e.printStackTrace(printStream)
+        printStream.println("
") + e.printStackTrace(System.err) + + + + printStream.println("

Module Info

") + printStream.println("

Load Order

") + printStream.println("
    ${ModMgr.loadOrder.joinToString(separator = "") { "
  1. " + + "$it (" + + "${moduleMetaToText(ModMgr.moduleInfo[it] ?: ModMgr.moduleInfoErrored[it])}" + + ")
  2. " } + }
") + + + + // print out loaded modules + ModMgr.errorLogs.let { + if (it.size > 0) { + printStream.println("

Module Errors

") + System.err.println("== Module Errors ==") + it.forEach { + printStream.println("

From Module ${it.moduleName} (${it.type.toHTML()}):

") + printStream.println("
")
+                    it.cause?.printStackTrace(printStream)
+                    printStream.println("
") + it.cause?.printStackTrace(System.err) + } + } + } + + + // print out device info printStream.println("

System Info

") printStream.println("