Time Nick Message 00:56 wischi is it possible to delete and regenerate an entire block (or mutliple blocks)? - for example to reset mining areas 00:56 est yes 00:56 est but its very buggy right now 00:57 wischi 0.4.12-dev/13 feature or 0.4.12-stable? 00:57 est I think even 0.4.12 00:58 wischi and what do u mean with buggy? can it mess up the (entire) map 00:58 est it can mess with close blocks yes 00:58 est and it can crash your game 00:59 est there has been a small bugfix in that direction recently, I think, but its still buggy 01:00 wischi do you know which function/object I need to achieve this. Can't find it in the lua_api.txt 01:01 est minetest.delete_area 01:01 wischi thx 01:01 est it even has a chat command 04:43 hmmmm saving the registering mod name along with callbacks seems to be trickier than expected due to the fact there's no unified callback system 04:54 hmmmm not to mention impossible with lua entities since those are registered after the registration phase... 05:15 hmmmm hmm could somebody explain to me why there's only one single on_player_hpchange at any time? why can't multiple mods have callbacks on this? 05:15 hmmmm VanessaE you probably know about this 05:17 est hmmmm, there are multiple 05:17 est at least i think 05:18 hmmmm nope take a look at on_player_hpchange 05:18 hmmmm it doesn't run script_run_callbacks(), just a simple lua_pcall() 05:18 hmmmm also evidence that it's not a bug or oversight is that there's no "s" at the end of the name, like all the other callbacks that can have multiple ones 05:18 hmmmm callees 05:18 est look at core.registered_on_player_hpchange 05:19 est it first iterates core.registered_on_player_hpchanges.modifiers 05:19 est then it iterates core.registered_on_player_hpchanges.loggers 05:19 est see the pr #2751 for discussion about the design 05:19 hmmmm ahhh... 05:19 ShadowBot https://github.com/minetest/minetest/issues/2751 -- Add minetest.register_on_player_hpchange by TeTpaAka 05:20 est was a bit in this direction then in that direction, but what we got in the end is quite decent i think 05:20 hmmmm also this is newer than i thought 05:20 est its hard to design apis without having usecases :) 05:20 hmmmm would be really nice if there was a gigantic unified callback mechanism 05:21 hmmmm script_run_callbacks in particular needs to die because there's no reason why lua can't do what it does 05:22 hmmmm basically looking for easier hookability 05:27 hmmmm actually you know what I take back what I said 05:27 hmmmm registered_on_player_hpchange could be done better 05:28 hmmmm instead of splitting into modifiers and loggers why isn't there a registered_on_player_hpchange_modifier and then registered_on_player_hpchange_observer 05:28 hmmmm script_run_callbacks is run on each 05:28 hmmmm this would eliminate the need for that entire chunk of code in register.lua that the PR added 05:35 est bikeshedding 05:35 est but yeah, perhaps its cleaner 05:36 hmmmm I disagree, I think it's important to have a single unified callback thing so that implementing hookers and chainers is easier 06:53 est hmmmm, seen this: https://github.com/minetest/minetest/issues/3011#issuecomment-128643550 06:53 hmmmm yes 06:54 hmmmm that would seem to indicate this new thing we're seeing is a mod problem + luajit problem 06:54 est I think I had this problem too, months ago 06:54 est I think with the on_construct callback 06:54 hmmmm did some author of a popular mod mess something up and now nobody can tell what's going on? 06:54 est but might have been register_on_setnode too 06:54 hmmmm it's on literally everything and anything 06:55 hmmmm i added the callback name display and there hasn't been any pattern 06:55 hmmmm i was working on attaching mod names to callbacks so we can further narrow down problems 06:55 hmmmm and then the last thing to do would be to log which API is currently being run 06:55 hmmmm but this is the most complex 06:56 est which api? 06:56 hmmmm yeah 06:57 hmmmm not for this release, but i'm going to change up the way lua functions are registered so we can get a lot more data about which functions are being called when 06:57 hmmmm then in the case of a double error or OOM error where we have no backtrace, at least we have the name of the last lua api called stored in the engine 06:57 hmmmm so, the callback + the mod + the failing API should give a very strong hint about what the problem is 06:58 est what do you mean with api? 06:58 hmmmm when someone from lua calls minetest.set_node, i want the engine to actually set a variable that it entered set_node 06:59 hmmmm but i don't want to add code to literally every one of the hundreds of API functions to do this 07:00 hmmmm so if you see an error that says something like: "OOM error in environment_OnGenerated() registered by mod 'riverdev' in function 'set_lighting'" for example, that would be really helpful 07:15 celeron55 i'd imagine a circular buffer of called lua function names could be even handier and wouldn't be that much slower 07:16 celeron55 oh, well, whatever; maybe it wouldn't help most of the time 16:37 amadin Dear developers, do you can add option to disable this https://forum.minetest.net/viewtopic.php?f=6&t=12993&p=186581#p186581 in config or by edit other file manualy by server owner? 16:39 amadin i mean sneak glitch 16:50 Calinou amadin, sneak glitch can be disabled already. 16:50 Calinou see reply to your topic 16:51 Calinou it's a player stat, it's not disable-able using minetest.conf 17:24 amadin i alredy download this mod 17:24 amadin already 17:25 amadin please add this mod add to minetest wiki http://wiki.minetest.net/List_of_Mods 17:26 amadin i mean no_sneak_glitch 17:26 VanessaE this is off-topic for this channel, amadin. 17:27 amadin sorry 17:27 amadin where i must write for wiki? 17:28 VanessaE #minetest but if the mod doesn't work for you, talk directly to the author first. 17:28 amadin i want write to minetest wiki moderator, who is? 17:30 VanessaE I don't remember. 20:59 wischi is it possible to block liquids if area is protected? 21:11 rubenwardy #3010 can be merged 21:11 ShadowBot https://github.com/minetest/minetest/issues/3010 -- Remove unused file by nerzhul 21:20 rubenwardy if you try to minetest.chat_send_player a non-existent player, should Minetest crash or show a warning? 21:21 wischi should only warn imho. 21:24 rubenwardy I thought so 21:24 rubenwardy really maybe it should be player:send_chat() 21:37 rubenwardy Okay, the segfault reported here https://forum.minetest.net/viewtopic.php?f=6&t=12995&p=186602#p186602 happens in these lines: https://github.com/minetest/minetest/blob/master/src/environment.cpp#L130-L131 21:38 rubenwardy Adding std::cerr << m_players.size() << std::endl; before also segfaults, which makes me think that it's been corrupt some how 21:38 hmmmm rubenwardy, bt show all 21:39 rubenwardy I tried initialising it with a size of 0 in Environment::Environment 21:39 rubenwardy is bt == traceback in GDB? 21:39 hmmmm yes 21:39 sfan5 bt full if you want more infos 21:39 sfan5 thread apply bt full if you want it for every thread 21:39 rubenwardy okay, compiled a debug build 21:40 rubenwardy https://gist.github.com/rubenwardy/81c043c4fe6d8f1ba02a 21:40 hmmmm yea 21:40 hmmmm read a manual on how to use GDB 21:40 hmmmm it's way more useful than getting a backtrace 21:40 rubenwardy ok 21:40 hmmmm Environment is NULL? 21:41 hmmmm sounds to me like a race condition while it's shutting down 21:41 rubenwardy bt full: https://gist.github.com/rubenwardy/81c043c4fe6d8f1ba02a 21:42 hmmmm the chat is being sent before the environment is even created 21:42 hmmmm look 21:42 rubenwardy maybe Environment hasn't been initialised yet 21:42 hmmmm loadScript 21:42 rubenwardy oh, inb4 21:42 hmmmm obviously the solution here is to add a sanity check to see if env != NULL 21:43 hmmmm GET_ENV_PTR is what you want 21:43 rubenwardy the chat message shouldn't be queued, as there won't be any players yet 21:43 rubenwardy will prepare a PR 21:43 hmmmm actually 21:44 hmmmm it goes right into a Server call 21:56 hmmmm :D? 21:56 hmmmm where's the PR 22:43 hmmmm hehehe http://fpaste.org/253041/07379014/