Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
I don't have a client log useful for tracking the crash as I recently ran the game without the timer but all that can be done to trigger the crash is to just launch it with the Adventure Mode mod, most commonly happens when starting Chapter 1
I had no other mods running when each crash triggered
I couldn't find the issue for your crash after playing around with the Adventure Mode mod.
Considering that you start with a Fire Pit close by in the Adventure Mode mod, I've added a few more checks for the campfire timer which should prevent grabbing the data of a bad entity causing a crash.
Thank you for your report.
Of all client mods, I only enabled this one.
The server enabled server mods are:
https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=1699194522&searchtext=%E7%A5%9E%E8%AF%9D
https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=1991746508&searchtext=%E7%A5%9E%E8%AF%9D
The Logs:
[00:01:48]: [string "scripts/componentactions.lua"]:2056: attempt to index a nil value
LUA ERROR stack traceback:
scripts/entityscript.lua:550 in (method) AddComponent (Lua) <529-551>
self (valid:true) =
GUID = 101444
Transform = Transform (680935E8)
inlimbo = false
actionreplica = table: 0x15f785f8
actioncomponents = table: 0x15f78178
lower_components_shadow = table: 0x15f77fc8
entity = Entity (16598FE0)
AnimState = AnimState (680932A8)
prefab = evergreen
build = normal
Network = Network (68093D68)
Physics = Physics (68093B48)
MiniMapEntity = MiniMapEntity (68093488)
SoundEmitter = SoundEmitter (68093428)
spawntime = 8.1666670925915
modactioncomponents = table: 0x3752a7a0
replica = table: 0x15f78088
name = 常青树
components = table: 0x15f77e78
persists = true
name = lootdropper
lower_name = lootdropper
cmp = table: 0x35ab2468
loadedcmp = table: 0x15f76f18
postinitfns = table: 0x15f76f48
scripts/prefabs/evergreens.lua:862 in (field) fn (Lua) <795-944>
inst = 101444 - evergreen (valid:true)
color = 0.5
scripts/mainfunctions.lua:300 in () ? (Lua) <289-331>
name = evergreen
prefab = Prefab evergreen -
=[C]:-1 in (method) SpawnPrefab (C) <-1--1>
scripts/mainfunctions.lua:348 in (field) SpawnPrefab (Lua) <342-350>
name = evergreen
skin = nil
skin_id = nil
creator = nil
../mods/workshop-2525856394/modmain.lua:62 in (upvalue) fetchBurntime (Lua) <53-86>
prefab = evergreen
inst = nil
IsMasterSim = false
math_random_orig = function - =[C]:-1
../mods/workshop-2525856394/modmain.lua:181 in (field) getBurntime (Lua) <179-184>
prefab = evergreen
../mods/workshop-2525856394/scripts/components/burningtimer.lua:36 in (field) _ctor (Lua) <27-74>
self =
inst = 101442 - fire (valid:true)
target = nil
burntime = nil
burntime_rng = nil
pos = (-113.04, 0.00, -149.43)
entities = table: 0x7e009208
k = 1
v = 100082 - evergreen (valid:true)
scripts/class.lua:181 in (local) cmp (Lua) <171-184>
class_tbl = table: 0x15f77878
arg = table: 0x66184788
obj = table: 0x15f778a8
arg = table: 0x661846f8
scripts/entityscript.lua:540 in (method) AddComponent (Lua) <529-551>
self (valid:true) =
GUID = 101442
Transform = Transform (6808F748)
inlimbo = false
actionreplica = table: 0x3752c810
event_listening = table: 0x3752ccf0
actioncomponents = table: 0x3752c5a0
lower_components_shadow = table: 0x3752c540
entity = Entity (165972B8)
AnimState = AnimState (6808F9C8)
prefab = fire
Network = Network (6808F6E8)
persists = true
event_listeners = table: 0x3752c6f0
spawntime = 8.1333337575197
pendingtasks = table: 0x37530710
replica = table: 0x3752c690
name = 火
components = table: 0x3752ca20
SoundEmitter = SoundEmitter (6808F668)
name = burningtimer
lower_name = burningtimer
cmp = table: 0x15f77878
../mods/workshop-2525856394/modmain.lua:220 in (field) fn (Lua) <219-221>
scripts/scheduler.lua:177 in (method) OnTick (Lua) <155-207>
self =
running = table: 0x11805700
waitingfortick = table: 0x11805550
tasks = table: 0x11805850
waking = table: 0x3752aa40
attime = table: 0x11805310
hibernating = table: 0x118052e0
tick = 245
k = PERIODIC 101442: 0.010000
v = true
already_dead = false
scripts/scheduler.lua:371 in (global) RunScheduler (Lua) <369-377>
tick = 245
scripts/update.lua:185 in () ? (Lua) <164-243>
dt = 0.033333335071802
tick = 245
i = 245
[00:01:48]: [string "scripts/componentactions.lua"]:2056: attempt to index a nil value
LUA ERROR stack traceback:
scripts/entityscript.lua:550 in (method) AddComponent (Lua) <529-551>
scripts/prefabs/evergreens.lua:862 in (field) fn (Lua) <795-944>
scripts/mainfunctions.lua:300 in () ? (Lua) <289-331>
=[C]:-1 in (method) SpawnPrefab (C) <-1--1>
scripts/mainfunctions.lua:348 in (field) SpawnPrefab (Lua) <342-350>
../mods/workshop-2525856394/modmain.lua:62 in (upvalue) fetchBurntime (Lua) <53-86>
../mods/workshop-2525856394/modmain.lua:181 in (field) getBurntime (Lua) <179-184>
../mods/workshop-2525856394/scripts/components/burningtimer.lua:36 in (field) _ctor (Lua) <27-74>
scripts/class.lua:181 in (local) cmp (Lua) <171-184>
scripts/entityscript.lua:540 in (method) AddComponent (Lua) <529-551>
../mods/workshop-2525856394/modmain.lua:220 in (field) fn (Lua) <219-221>
scripts/scheduler.lua:177 in (method) OnTick (Lua) <155-207>
scripts/scheduler.lua:371 in (global) RunScheduler (Lua) <369-377>
scripts/update.lua:185 in () ? (Lua) <164-243>
Hope you can handle this error or let me know what happened :)
About your crash:
This mod actually doesn't know the burning timers of other objects.
The very first time an object bruns this mod spawns a client sided replica of the same object which is burning just to initialize its values and to be able to obtain the object's burning timer. Once the timer is obtained the replica will be deleted and whenever a new object of the same prefab starts burning, the mod reuses the saved burning timer.
But some objects don't like it if this mod grabs their data, for example: Blueprints
Blueprints had an issue with their initialisation and just like in your case, they tried to index a nil value when initialisating which lead to the crash.
I tried to reproduce that crash but it didn't work out for me (game didn't crash when I burned an Evergreen in a World where I wasn't the mastersim), are you sure the two listed myth words mods (and the other two from before) were the only ones enabled in the server? I could just add an exception for the Evergreen and be done with it, but if the game crashes for you if you burn an Evergreen then it might also crash for many other objects aswell.
I would like to find the server mod which changes the data of Evergreens or the "lootdropper" component in your crash log and add a proper fix for that case.
https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=2505341606
I asked the server owner, these two mods are also enabled
I was not able to reproduce your crash but I pushed a hotfix which should prevent your crash from happening. Please try it again and tell me if the game still crashes for you or not.
if I find any errors reported again,I'll report to you again. :)
错误发生在游戏本体,可能是游戏自身漏洞,也可能是某个mod存在非法调用行为。
#[string "scripts/componentactions.lua"]:2132: attempt to index a nil value
#LUA ERROR stack traceback:
@scripts/entityscript.lua:592 in (method) RemoveComponent (Lua)<579-594>self (valid:true)=
GUID = 102208
Transform = Transform (000000007A3BC810) RegisterComponentActions = function -../mods/workshop-2525856394/modmain.lua:64
actionreplica = table: 000000007A3A48B0 event_listening = table: 000000007A3A3FA0
DST apparently gives an error and crashes the game if you try to remove a non-existant component which is caused by one of your server mods because of my mod which tries to get the burning timer of an object of that mod.
The easiest fix would be to fix that bug in whatever mod you are using on your server, but I do not have any access to that mod.
I might be able to add an exception for this case by preventing "EntityScript:RemoveComponent" from doing anything while scanning for the burning timers, but that might lead to other bugs, depending on how other modders designed their mods.
Or add an exception to entityscript.lua, but since most functions there are local, I would have to reload most of the functions there and it might become incompatible with future updates.
LUA ERROR stack traceback:
scripts/entityscript.lua:1570 in (method) IsValid (Lua) <1569-1571>
self (valid:true) =
GUID = 179048
RegisterComponentActions = function - ../mods/workshop-2525856394/modmain.lua:68
event_listening = table: 0x5810460
actioncomponents = table: 0x1fec9950
lower_components_shadow = table: 0x1dd0e890
entity = Entity (0x81580e0)
wallupdatecomponents = table: 0x5ce4990
persists = true
DoSimTaskInTime = function - scripts/entityscript.lua:1335
DoTaskInTime = function - scripts/entityscript.lua:1309
DoSimPeriodicTask = function - scripts/entityscript.lua:1321
DoPeriodicTask = function - scripts/entityscript.lua:1296
UITransform = UITransform (0x7e86790)
UnregisterComponentActions = function - ../mods/workshop-2525856394/modmain.lua:73
spawntime = 1869.1667641513
inlimbo = false
replica = table: 0x1e341830
name = ItemTile
components = table: 0x2e53c9b0
widget = ItemTile
scripts/components/uianim.lua:54 in (method) FinishCurrentScale (Lua) <53-71>
self =
scale_dest = 1
scale_start = 2
inst = 179048 - (valid:true)
scale_t = 0
update_while_paused = true
scale_duration = 0.25
scripts/components/uianim.lua:83 in (method) ScaleTo (Lua) <81-93>
self =
scale_dest = 1
scale_start = 2
inst = 179048 - (valid:true)
scale_t = 0
update_while_paused = true
scale_duration = 0.25
start = 2
dest = 1
duration = 0.25
whendone = nil
scripts/widgets/widget.lua:168 in (method) ScaleTo (Lua) <164-169>
self =
shown = true
wetness = UIAnim
hasspoilage = false
image = Image - images/inventoryimages1.xml:cutgrass.tex
inst = 179048 - (valid:true)
focus = false
basescale = 1
children = table: 0xbd0cf10
parent = ItemSlot
focus_flow_args = table: 0x1e0263f0
focus_target = false
isactivetile = false
quantity = Text - 39
tooltip = 采下的草
: 检查
tooltipcolour = table: 0x1d31e6f0
can_fade_alpha = true
enabled = true
ismastersim = false
name = ItemTile
callbacks = table: 0xbaee8c0
focus_flow = table: 0xbb19690
ispreviewing = true
item = 179012 - cutgrass (valid:true)
updatingflags = table: 0x7f94960
from = 2
to = 1
time = 0.25
fn = nil
scripts/widgets/itemtile.lua:240 in (local) fn (Lua) <218-244>
invitem = 179012 - cutgrass (valid:true)
data = table: 0x2640bac0
scripts/entityscript.lua:1160 in (method) PushEvent (Lua) <1147-1174>
self (valid:true) =
GUID = 179012
Transform = Transform (0x25325640)
RegisterComponentActions = function - ../mods/workshop-2525856394/modmain.lua:68
actionreplica = table: 0x1b4865b0
event_listening = table: 0xa48ca10
actioncomponents = table: 0x57b09e0
pickupsound = vegetation_grassy
lower_components_shadow = table: 0x1e3eb280
entity = Entity (0x218fa5d0)
AnimState = AnimState (0x25308020)
prefab = cutgrass
Network = Network (0xb053f20)
persists = true
event_listeners = table: 0xa7e10f0
UnregisterComponentActions = function - ../mods/workshop-2525856394/modmain.lua:73
spawntime = 1869.1334308162
name = 采下的草
replica = table: 0x1d834d50
Physics = Physics (0x2005e920)
components = table: 0x1d3c8fb0
inlimbo = false
event = stacksizepreview
data = table: 0x2640bac0
listeners = table: 0x1f0a2f60
tocall = table: 0x2640bc60
i = 1
fn = function - scripts/widgets/itemtile.lua:218
scripts/prefabs/container_classified.lua:360 in (upvalue) PushStackSize (Lua) <348-384>
inst = 179001 - container_classified (valid:true)
inventory = nil
item = 179012 - cutgrass (valid:true)
stacksize = 39
animatestacksize = true
activestacksize = nil
animateactivestacksize = nil
selfonly = nil
sounddata = table
[00:37:15]: [string "scripts/entityscript.lua"]:1570: stack overflow
LUA ERROR stack traceback:
scripts/entityscript.lua:1570 in (method) IsValid (Lua) <1569-1571>
scripts/components/uianim.lua:54 in (method) FinishCurrentScale (Lua) <53-71>
scripts/components/uianim.lua:83 in (method) ScaleTo (Lua) <81-93>
scripts/widgets/widget.lua:168 in (method) ScaleTo (Lua) <164-169>
scripts/widgets/itemtile.lua:240 in (local) fn (Lua) <218-244>
scripts/entityscript.lua:1160 in (method) PushEvent (Lua) <1147-1174>
scripts/prefabs/container_classified.lua:360 in (upvalue) PushStackSize (Lua) <348-384>
scripts/prefabs/container_classified.lua:662 in (method) ReceiveItem (Lua) <620-681>
scripts/prefabs/inventory_classified.lua:1059 in (method) ReceiveItem (Lua) <1040-1115>
scripts/prefabs/inventory_classified.lua:1101 in (method) ReceiveItem (Lua) <1040-1115>
scripts/prefabs/inventory_classified.lua:1101 in (method) ReceiveItem (Lua) <1040-1115>
scripts/prefabs/inventory_classified.lua:1101 in (method) ReceiveItem (Lua) <1040-1115>
The usual problems are usually NPE. And this is the first time I encountered a stack overflow, quite novel, isn't it?
and btw, I'm not sure which mod cause it:
look at entityscript.lua:L1569
function EntityScript:IsValid()
return self.entity:IsValid()
end
maybe the `entity` field of the grass is it's self(so caused this overflow)? but I'm not sure why.