Time Nick Message 00:46 MTDiscord I am trying to start a server 00:47 MTDiscord 2021-04-23 02:34:58: ERROR[Main]: Game specified in default_game [minetest] is invalid. 2021-04-23 02:34:58: ERROR[Main]: ServerError: Supplied invalid gamespec 00:47 MTDiscord I get those errors 00:47 MTDiscord whats wrong? 00:47 MTDiscord I have minetest_game installed 00:48 MTDiscord , it also has other mods in the mods folder besides the normal ones 01:02 MTDiscord I have figured out that it is because I set "mg_name = flat" in minetest.conf 01:08 MTDiscord it's a main menu thing 01:08 MTDiscord minetest gets a bit upset if one doesn't install minetest_game 01:08 MTDiscord why this occurs is stupid 03:07 MTDiscord so... I am still having this problem Help! 03:07 MTDiscord 2021-04-23 05:07:12: ERROR[Main]: Game specified in default_game [minetest] is invalid. 2021-04-23 05:07:13: ERROR[Main]: ServerError: Supplied invalid gamespec 03:08 MTDiscord The server runs once 03:08 MTDiscord then I shut it down 03:08 MTDiscord and then it can't find the games anymore 03:09 MTDiscord to be clear: minetest_game is installed 03:15 MTDiscord ok, now the game will run, but not all the mods in the game folder activate 03:17 MTDiscord interesting. I just discovered that the game will throw that error if your cwd is in the games folder when you run the game command 06:30 MTDiscord There's no way the dude who thought that mt uses mc's code played mt 06:30 MTDiscord Absolutely no way 06:30 MTDiscord He saw the game 06:30 MTDiscord Thought it was a ripoff 06:31 MTDiscord And found the nearest way to communicate, and bitched about it 07:40 Ingar need to mention that unfounded claims of copyright infringement are rather unlawful 10:09 MTDiscord 2021-04-23 18:06:20: ERROR[Main]: ModError: Runtime error from mod '*builtin*' in callback on_shutdown(): /usr/share/minetest/builtin/game/forceloading.lua:91: attempt to index local 'f' (a nil value) 2021-04-23 18:06:20: ERROR[Main]: stack traceback: 2021-04-23 18:06:20: ERROR[Main]: /usr/share/minetest/builtin/game/forceloading.lua:91: in function 'write_file' 2021-04-23 18:06:20: ERROR[Main]: 10:09 MTDiscord /usr/share/minetest/builtin/game/forceloading.lua:109: in function 2021-04-23 18:06:20: ERROR[Main]: /usr/share/minetest/builtin/game/register.lua:422: in function how to find out which mod caused this error? 10:18 celeron55 it can't open a file for writing and there are some possible reasons for that 10:19 celeron55 i suppose your filesystem could be full 10:20 celeron55 or the world path could have some characters that somehow cause it to fail 10:21 celeron55 a filesystem permission error is also possible 10:21 celeron55 it's definitely not caused by a mod though 10:24 sfan5 wow great forceloading does not use safe_write_to_file 13:38 Bombo hi 13:38 heavygale hi 13:39 Bombo is there a convention for mod.zip packages? i downloaded some, and some have subdirs in it and some not 13:40 Bombo e.g. beacons doesnt, so i unzip to mods/ and need to create a dir first 13:40 Bombo cool trees has a sub, so i can just unzip to mods/ 13:41 Bombo castle_gates has a sub 13:43 Bombo is there a rule? 13:46 Bombo (i want to make a bash script to dl mods and extract it to the mods dir) 13:46 MTDiscord where are you downloading them from? 13:46 heavygale use git clone ^^ 13:47 Bombo contentdb 13:47 MTDiscord ContentDB should have actually-enforced conventions for them. 13:47 MTDiscord It could be possible that some zips were created by an older version of CDB though before enforcement was done... 13:48 MTDiscord May also depend on whether the user did a zip upload release or released from VCS. 13:48 rubenwardy ContentDB will create zips with an inner folder now. Previously, it did not as git-archive-all defaults to not doing that 13:49 rubenwardy that only applies to VCS releases, zip uploads aren't touched 13:49 rubenwardy unofficial CDB cli: https://github.com/ronoaldo/minetools 13:50 MTDiscord Zip uploads are validated though, so they could be rejected if the inner folder structure is not correct. 13:51 MTDiscord Or I guess CDB could unpack everything to validate, and then just repack everything itself so it meets standards there ... though that'd lose the benefits of someone e.g. running advzip against their zips to improve download times... 13:52 rubenwardy I think that's a bit too pedantic to fail on though, as the Minetest client doesn't care 13:53 Bombo i just want to avoid creating subdirs in a subdir ;) 13:54 Bombo does the minetools check for that? 13:54 Bombo i don't speak go 13:54 rubenwardy it should do, I haven't tested it 13:54 rubenwardy I did explain the process to the author though 13:57 MTDiscord Okay, so the convention is "we don't care about the folder structure of the zip because MT itself doesn't care and supports either" I guess? 13:58 Bombo hm it looks like it checks for modpack.txt or .conf then it's a modpack with sub 13:58 Bombo cool_trees seems to be a modpack 13:58 MTDiscord So I guess that means that the correct way to install stuff from CDB is either use the in-game menus, or use the cli tool; downloading from the website and then manually unzipping is not really a supported "primary" use-case. 14:00 Bombo i did that until now, manually unzip to the headless remote server via ssj 14:00 Bombo ssh. 14:01 Bombo hm castle_gates has a dir but no modpack.(txt|conf) 14:04 MTDiscord Cloning the git repo is a good way to stay up-to-date with the latest code, but it can get you "ahead of release" depending on how the author manages branches and such, which might be detrimental to stability if you're trying to run a "production" sort of environment unless they have a stable branch you can track that matches what they do on CDB. 14:05 MTDiscord That's sort of the ideal process, though, if it's possible for you. Automating downloads from CDB via stuff like the cdb cli tool is also possible, esp. if there's no stable branch and you want only official releases ... but I'm not sure how it handles the update case; never actually used it myself yet. 14:06 Bombo do i get the git repo with the CDB API? 14:07 MTDiscord If you're querying the CDB API, then packages should have a VCS URL. That may or may not be a directly-clonable URL but usually it is 14:09 MTDiscord Technically I don't think there's any rule that says it can't be a URL to an hg or svn repo, or to the landing page of a hosting site that uses a different URL for actual cloning ... but I don't think that's an issue; I've never seen anyone use VCS for MT that's not git, and the major git hosting services like 'hub and 'lab at least let you directly clone the same URL as is used for the "browser experience" 14:11 Bombo got it thx 14:12 Bombo curl https://content.minetest.net/api/packages/SpaghettiToastBook/beacons/ 14:12 Bombo uses notabug 14:12 Bombo never heard of that heh 14:13 MTDiscord 10x better than repo.or.cz 15:24 erlehmann Or I guess CDB could unpack everything to validate, and then just repack everything itself so it meets standards there ... though that'd lose the benefits of someone e.g. running advzip against their zips to improve download times... 15:24 erlehmann this is something that should never be done 15:24 erlehmann input sanitization is a proven-wrong strategy 15:24 erlehmann bad input should be rejected 15:24 erlehmann go read about LANGSEC if you don't believe me 15:25 TechDude Hello erlehmann 15:25 erlehmann hi 15:25 erlehmann do you have a question or why are you highlighting me 15:25 TechDude Just saying hi :) 15:26 erlehmann ok cool 15:30 MTDiscord erlehmann: it's not bad input though, it's just suboptimal. 15:31 MTDiscord That's basically like saying a photo hosting service shouldn't build thumbnails of images, it should reject photo uploads until users provide separate thumbnails of the correct sizes themselves. 15:31 erlehmann Warr1024 it is unwanted, that is enough 15:31 erlehmann Warr1024 “bad” does not have to mean “exploits something” 15:32 MTDiscord Doing that would actually improve security a LOT, not only because input sanitization would be stricter, but it'd actually make the usability of the system so bad that nobody would use it and therefore there wouldn't be anything at risk in the first place. 15:32 celeron55 when unpacking zips i tend to use "autodetect subdir" function where if the zip doesn't contain a single top-level directory, a directory is created for the contents, otherwise the supplied subdirectory is used 15:32 rubenwardy is that a function of unzip tools? 15:33 MTDiscord Rejecting bad inputs is a nice philosophy but it only works if you're at a stage where the input hasn't already been decided and you no longer have an opportunity to correct it. 15:33 celeron55 rubenwardy: for me it's a feature of kde's dolphin file manager 15:33 celeron55 i would expect some other programs to also have it, it's very usefuö 15:34 celeron55 useful* 15:35 MTDiscord I actually tend to always automatically create a top-level dir and just de-nest manually if I find that the zip already had its own top-level dir. Working with zips is sort of rare enough with a modern unix-like workflow... 15:36 MTDiscord The correct thing to do is almost always "nothing, that's the package manager's job"... 17:25 MTDiscord Fun fact 7zip does this natively if you extract as */ 17:26 MTDiscord The asterisk expands to the name of the archive 19:39 MinetestBot 02[git] 04Wuzzy2 -> 03minetest/minetest: Rename “Irrlicht” to “IrrlichtMt” in documentation 13776015c https://git.io/JODls (152021-04-23T19:37:45Z) 19:39 MinetestBot 02[git] 04v-rob -> 03minetest/minetest: Add `minetest.colorspec_to_colorstring` (#10425) 13074e6a6 https://git.io/JODlG (152021-04-23T19:37:24Z) 19:43 erlehmann nice 20:42 Andrey01 hi, does anybody know 'minetest.node_dig()' will trigger 'on_destruct()' or 'on_dig()' callbacks? 21:28 AntumDeluge I've been looking at some other mods, trying to figure out how to append the player inventory to a formspec I want to show. But it is unclear to me how to do it. To get the player's inventory formspec, I do "player:get_inventory_formspec()". But I'm not sure how to parse it to append it my formspec. 21:30 MTDiscord see list[ 21:30 specing see existing formspecs and copy as needed :P 21:31 MTDiscord https://github.com/minetest/minetest/blob/master/doc/lua_api.txt#L2250-L2263 21:31 AntumDeluge The furnace formspec has a line like this: "list[current_player;main;0,4.25;8,1;]". Is that what I am looking for? 21:31 MTDiscord yes 21:31 AntumDeluge Thank you. I'll try it out. 21:31 MTDiscord https://github.com/minetest/minetest/blob/master/doc/lua_api.txt#L3064-L3085 for the specific names you can use in list[ and varients 21:32 AntumDeluge Thank you Jonathon! Exactly what I was looking for. :) 21:33 MTDiscord np, i was really confused myself till a found the section, a link in list[ would be helpful 23:26 AntumDeluge Another question: I'm trying to create a box in the formspec where an item can be dropped. I'm using the web formspec editor ( https://luk3yx.gitlab.io/minetest-formspec-editor/ ) & created the element "list[context;input;1,1;1,1;0]". But it's not working. 23:36 MTDiscord not working? 23:38 AntumDeluge It doesn't show up on the formspec. 23:39 MTDiscord did you create the input inv in node meta? 23:40 AntumDeluge No. I did not. Am I supposed to. 23:40 AntumDeluge ? 23:40 MTDiscord well, how the heck is the formspec supposed to find a inventory that doesnt exist? 23:40 MTDiscord ? 23:41 AntumDeluge Okay, thanks. I think I can figure that out. :) 23:41 MTDiscord local inv = minetest.get_meta(pos):get_inventory() inv:set_size("main", 9*2) 23:51 AntumDeluge I looked at the furnace as an example, but I'm still doing something wrong. Don't have time to work on it more right now. Will have to do it later. Thanks for the help Jonathon.