AtomicStryker's Battle Towers

AtomicStryker's Battle Towers

23M Downloads

Crash during blood moon event

gittycup opened this issue ยท 5 comments

commented

crash during blood moon event. Rebooting instant crashes again with the following log copy and pasted from gui:
crashlogcopypaste.txt

contents of replay_pid4960.log:
replay_pid4960.log

commented

Can you please cross-check if those "Unbalanced nesting in Ruins template..." errors appear also when joining a working save/world? Your crash is c05 which is general memory access fault ... which does not really narrow down the problem.

commented

The templates are the problem--quotes should only be escaped (i.e., preceded by a backslash) if they lie within a quoted string. So, for example, in 753_Lab_Fortress_CB.tml ...
Item:\"minecraft:sapling\"
... should just be ...
Item:"minecraft:sapling"
... and so on.

Ruins doesn't support or have any need for escape sequences itself, though it does recognize them within quoted strings only so it can properly identify where strings end, regardless of their content. The first quote is therefore interpreted as starting a string; all subsequent quotes are escaped quotes inside that string. Since the string has no closing quote, it's considered unbalanced nesting--in this case, unbalanced quotation marks.

commented

But is that related to his hard JVM crash?? Sure the parsing would fail, but that should only cause exceptions, not crashing

commented

True. The errors here only prevent those templates from being loaded. I don't see how they'd lead to a crash.

Is there reason to think Ruins is implicated at all? Could just be something like not enough extra RAM allocated to run 177 (!) mods. The hs_err_ log would be more informative than the replay_ log.

commented

Incidentally, I can verify the Ruins templates noted above work fine when the inappropriate backslashes are removed. During my investigation, I also happened to stumble upon an apparently long-standing, but completely unrelated, bug lurking in the IInventory block code--I'll open a pull request to fix it.