Closed b3nn0 closed 7 years ago
I passed this on to the larger team and they said the Feb. 13 update has some path slash fixes, do things work any better? It's possible for non-Valve code to have issues also but first we'll see if the Dota update helped.
The log has changed, but Dota still crashes:
4384(35.357126): LuaDbg - Debugging stopped
4383(35.149583): Failed to run script '/home/ben/hdd2/Spiele/Steam/steamapps/workshop/content/570/837040016/item_purchase_generic.lua'!
4382(35.149567): Script Runtime Error: ...workshop/content/570/837040016/item_purchase_generic.lua:8: module '/home/ben/hdd2/Spiele/Steam/steamapps/workshop/content/570/837040016/util' not found:
no field package.preload['/home/ben/hdd2/Spiele/Steam/steamapps/workshop/content/570/837040016/util']Failed to find scripts/vscripts//home/ben/hdd2/Spiele/Steam/steamapps/workshop/content/570/837040016/util.lua
stack traceback:
[C]: in function 'require'
...workshop/content/570/837040016/item_purchase_generic.lua:8: in main chunk
Note the "scripts/vscripts//home/ben/hdd2/....."
It somehow tries to find the util.lua module with a recursive path, then simply slaps the absolute path behind it. I guess GetScriptDirectory() returns wrong paths when using a custom steam library directory.
What the script does is simply a
local utils = require(GetScriptDirectory() .. "/util")
I have the same issue. Two things I want to add:
Well, yes, you are right. It only crashes when using Local Host. However, when choosing a server, bots from the workshop just don't seem to work at all. The default bots are used instead (at least I'm pretty sure. They behave exactly like the default bots and the picks are also always picks that the default bots can do. Never seen a pick that would be supported by the bot script, but not by the default bots).
Is the error with Local Host still happening after the latest updates?
Nope, seems to work now :)
It is still crashing for me. I tried it with the custom bots "Pub Simulator" and "Bot Experiment Credit: Furiouspuppy"
2923(49.830207): Failed to run script '/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/837040016/ability_item_usage_lich.lua'!
2922(49.830198): Script Runtime Error: Failed to find scripts/vscripts//home/daniel//local/share/Steam/SteamApps/workshop/content/570/837040016/ability_item_usage_generic.lua
stack traceback:
[C]: in function 'dofile'
...rkshop/content/570/837040016/ability_item_usage_lich.lua:1: in main chunk
2921(49.830092): Failed to run script '/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/837040016/item_purchase_generic.lua'!
2920(49.830074): Script Runtime Error: ...workshop/content/570/837040016/item_purchase_generic.lua:4: module '/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/837040016/builds/item_build_lich' not found:
no field package.preload['/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/837040016/builds/item_build_lich']Failed to find scripts/vscripts//home/daniel//local/share/Steam/SteamApps/workshop/content/570/837040016/builds/item_build_lich.lua
stack traceback:
[C]: in function 'require'
The main team has made more fixes in today's (Feb. 22) update.
Yes and while I very much welcome the new features, it still crashes for local lobby bots here. Basically it is still the same error as above: The file path is still incorrect (pay attention to the messed up ".local" part and the missing file extensions of the file paths (the right side being correct)
395(47.130783): Failed to run script '/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/836628163/mode_laning_furion.lua'!
394(47.130770): Script Runtime Error: ...ps/workshop/content/570/836628163/mode_laning_furion.lua:7: module '/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/836628163/mode_laning_generic' not found:
no field package.preload['/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/836628163/mode_laning_generic']Failed to find /home/daniel//local/share/Steam/SteamApps/workshop/content/570/836628163/mode_laning_generic.lua
stack traceback:
[C]: in function 'require'
...ps/workshop/content/570/836628163/mode_laning_furion.lua:7: in main chunk
393(47.129873): Failed to run script '/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/836628163/item_purchase_furion.lua'!
392(47.129855): Script Runtime Error: .../workshop/content/570/836628163/item_purchase_furion.lua:6: module '/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/836628163/Utility' not found:
no field package.preload['/home/daniel/.local/share/Steam/SteamApps/workshop/content/570/836628163/Utility']Failed to find /home/daniel//local/share/Steam/SteamApps/workshop/content/570/836628163/Utility.lua
I am pretty certain Point 1 is the problem here, as @b3nn0 doesn't encounter the problem anymore as he moved his game library to a different folder without a "." in the directory path.
I'll pass that back.
The latest update fixed it! Thank you @gdrewb-valve and the rest of the team :)
OK, both @b3nn0 and @shaddow2k are reporting success. If nobody else chimes in with a new problem I'll close this out.
Seems good, closing.
Almost all bot scripts I downloaded from the workshop cause the game to crash on Linux. The reason can easily be seen in the resulting crash dump - there seems to be some incorrect file path building in the code.
To reproduce: download a bot script from the workshop and try to start a game with these bots. Might be related to using a custom game directory. I didn't try the default directory as it's on a small SSD and doesn't have enough space.
System info: Note that below it says I'm running Ubuntu 17.04. That is NOT true. I'm running 16.10, but I have KUbuntu backports repository enabled for the latest Plasma version, as well as the ubuntu-toolchain-r PPA for latest compilers. I guess that overrode my lsb_release file.