Time Nick Message 00:33 paramat i might merge game#687 later in case anyone wants to look at it (various biome tweaks) 00:33 ShadowBot https://github.com/minetest/minetest_game/issues/687 -- Mgv5/7 biomes: Add shallow dirt waters by paramat 17:26 est31 anybody wants to review #3214 17:26 ShadowBot https://github.com/minetest/minetest/issues/3214 -- Add environment variable MINETEST_WORLD_PATH by SmallJoker 17:26 est31 #3212 is waiting for hmmmm basically 17:26 ShadowBot https://github.com/minetest/minetest/issues/3212 -- get_biome_id lua function by duane-r 17:28 est31 (paramat said "Someone more knowledgeable than me should check", the only one more knowlegeable on mapgen is hmmmm) 17:47 est31 wow 241 abms in dreambuilder 17:47 est31 means whole block gets scanned 241 times 17:47 est31 whole loaded map* 18:04 hmmmm abms are ridiculous 18:04 hmmmm let's see 18:05 hmmmm heh duane brings up a valid point 18:05 hmmmm or at least so it would seem, but the official way of reading the shadow biome table is not documented 18:06 est31 abms are totally bad, agreed. 18:07 est31 I've promised to implement #3002 and #3003 18:07 ShadowBot https://github.com/minetest/minetest/issues/3002 -- ABM scanning is very slow 18:07 ShadowBot https://github.com/minetest/minetest/issues/3003 -- Do leafdecay scanning in the engine 18:07 est31 any further ideas on how to speed them up 18:07 hmmmm write a better alternative to ABMs 18:08 hmmmm it's not very possible to make ABMs faster due to their expected behavior 18:08 est31 which is 18:08 hmmmm something that works in bulk first of all 18:08 est31 it is very easy to make them much much faster 18:08 hmmmm how so? 18:08 est31 read the issues 18:09 est31 you can cache the list of nodes, then you dont have to scan everything 18:09 est31 and you can make faster leafdecay scanning 18:10 hmmmm I'm not so sure if adding caching would "fix" abms 18:10 hmmmm guarantees are simply too strong the way they are currently implemented 18:11 est31 can you please tell me actual points 18:11 est31 you said "in bulk" what do you mean with it 18:11 est31 is it this stuff soni suggested 18:11 hmmmm operate on whole mapblocks to begin with 18:11 hmmmm I don't know what soni suggested tbh 18:11 est31 where you register ABMs with passing a table 18:11 hmmmm no idea 18:12 hmmmm lua would get the entire block to work with, possibly using voxelmanip 18:12 est31 voxelmanip?! 18:12 hmmmm sure 18:12 est31 that thing that copies the whole content 18:12 kahrl how about replacing some of the ABMs with something like this: http://minecraft.gamepedia.com/Tick#Block_tick 18:12 hmmmm i'd say pass the same voxelmanip around to each ABM call 18:12 hmmmm block tick, yeah 18:12 hmmmm that sounds exactly like what I would do 18:13 hmmmm right now the main issue with ABMs is that the guarantees in behavior are way too strong to effectively optimize 18:13 est31 what do we guarantee? 18:13 hmmmm you can do caching but depending on how you go about it this could break the guarantee 18:13 est31 that there is some method called every now and then, on these loaded blocks 18:14 est31 thats the whole thing 18:14 hmmmm what if an ABM modifies a block in the ABM, therefore modifying the neighbors 18:14 est31 or is there more 18:14 est31 well, if there is an edit, the cache gets invalidated 18:14 est31 and gets reloaded 18:14 est31 have we ever said "we guarantee this" 18:14 hmmmm I dunno man 18:15 est31 and do mods use that guarantee 18:15 hmmmm if it's in the documentation, then yes 18:15 hmmmm and mods definitely do expect a certain behavior 18:15 hmmmm at least I was told it's in the documentation by some people 18:15 hmmmm never actually checked myself 18:15 est31 thats all the documentation says: http://rubenwardy.com/minetest_modding_book/lua_api.html#abm-activeblockmodifier-definition-register_abm 18:16 est31 please correct me when im wrong 18:18 hmmmm well 18:18 hmmmm I guess it doesn't actually say it... 18:18 hmmmm if you want to modify the ABM behavior be prepared for a shitstorm but you're technically in the O.K. here 18:19 hmmmm lol I love how vague documentation for ABMs are versus documentation for my register_* things 18:20 est31 ahhh typo found! 18:20 est31 "added to minetest.registered_biome with the key of biome.name" 18:20 est31 its registered_biomes right? 18:21 hmmmm yes 18:21 hmmmm wait the key is biome.name!?? 18:21 hmmmm no no no way 18:21 hmmmm I made it the numerical index 18:22 hmmmm ohh, maybe I changed it when I added object handles 18:47 est31 either way, it would be great if doc was fixed 18:50 est31 yeah, seems like its integer indexed 18:54 est31 so #3212 is ok for merge now? you want to merge it? 18:54 ShadowBot https://github.com/minetest/minetest/issues/3212 -- get_biome_id lua function by duane-r 18:55 hmmmm yeah 18:58 * Krock drills the toothpick in pull #3214 : Any other statements? 18:58 ShadowBot https://github.com/minetest/minetest/issues/3214 -- Add environment variable MINETEST_WORLD_PATH by SmallJoker 21:35 hmmmm Krock: it looks good to me at first glance 21:36 hmmmm well there's a missing space in a while statement 21:36 hmmmm but i need to take a closer look at it to make sure there aren't any subtle mistakes 21:38 Krock Okay, thanks :) 22:22 waressearcher2 I'm confused with the word "node" inside source code 22:23 waressearcher2 I looked inside camera.h and there is that code: "inline scene::ISceneNode* getPlayerNode() const" and the description is "// Get player scene node. This node is positioned at the player's torso (without any view bobbing)" does that word "node" here means the same "node" as in world map ? like one "block" you can destroy ? 22:23 hmmmm no not at all 22:23 hmmmm whenever you see the word "node" in relation to something having to do with graphics, that's referring to an Irrlicht SceneNode 22:24 hmmmm you should be able to tell the difference between the two based on the type 22:24 hmmmm ISceneNode vs. MapNode 23:50 waressearcher2 https://github.com/minetest/minetest/tree/0.2.20110731_3 is that version the oldest available ? is there even older ?