Time Nick Message 00:13 hmmmm i don't think i have ever seen a more useless forum for asking questions than #irrlicht 03:36 paramat hehe i was waiting for this, "guest12345" reports "the trees are missing" in mgv5/v7 03:52 Zeno` https://forum.minetest.net/viewtopic.php?f=3&t=4766#p167640 03:53 paramat the mapblock bug should be tracked down to either plantlife or moretrees, then bisect to find the triggering commit. perhaps plantlife because it now works in this unusual way: https://forum.minetest.net/viewtopic.php?f=11&t=3898&start=150#p156475 03:53 VanessaE hmmmm: well there you go. there's you're "rule out plantlife and/or moretrees" (and for that matter any other mod I have ever even RUN). it's triggered by the L-systems code. 03:53 VanessaE paramat: nope.avi, see above. 03:54 Zeno` I will find it impossible to bisect until I can replicate it consistently (i.e. every run at the same location) 03:56 Zeno` paramat, #2112 ... there is no performance penalty there 03:56 ShadowBot https://github.com/minetest/minetest/issues/2112 -- Added configurable ambient_occlusion_strength. Default is 0.65 by TriBlade9 03:56 paramat it might not be L-systems 03:56 paramat okay good 03:57 Zeno` the new method is static const data and therefore created once when the first object of that type is created (and the compiler may even do the calculations at compile time) 03:57 paramat oh sorry just read 4aiman's post 03:59 paramat so it is L-systems 03:59 Zeno` well, something that l-systems triggers at least 04:00 Zeno` I still cannot replicate it consistently 04:00 paramat i didn't understand 'static const', thanks 04:01 Zeno` no problem. C++ is a big language... lots to learn hehe 04:02 Zeno` Just to be clear: I can replicate this random data issue, just not reliably 04:04 Zeno` paramat, also, 9 decimal places is what people normally use for a float constant in C and C++ (not picking on you, just pointing stuff out hoping it's helpful). This is because that's the precision of a float 04:05 Zeno` so if you do const float f = 0.12; the compiler stores it as 0.12xxxxxxx anyway 04:05 paramat cool, i see. so no processing increase 04:18 hmmmm vanessae: L-systems code seems to be the culprit according to you and zeno, but I reviewed that code literally two times 04:18 hmmmm let's reason about this 04:18 hmmmm - spawn_tree allocates all VoxelManipulator memory in initialEmerge 04:19 hmmmm - there are no addNode calls 04:19 hmmmm erm, addArea 04:19 Zeno` I am making a test case to hopefully narrow things down. I don't *know* that l-system is the culprit, it just appears to be able to trigger the bug 04:19 Zeno` yes, addArea is what made me suspect it in the first place 04:20 Zeno` and the top of the tree poking up into a non-emerged chunk 04:20 Zeno` We'll see what this test case does 04:21 hmmmm the only possible culprit here is VoxelManipulator::setNode() but that's not called either 04:22 Zeno` For the record I got someone to use my memset patch and that didn't fix the problem, so that almost suggests that the optimisation and l-system trees are not the issue. But still testing 04:22 hmmmm only raw m_data[] access followed by vm->m_area.contains(p); 04:22 hmmmm ohh.. 04:22 hmmmm that didn't fix the problem you say? 04:22 hmmmm did it set the correct byte pattern? just to make sure 04:22 Zeno` Apparently not (so Wayward_One told me anyway) 04:23 hmmmm honestly 04:23 Zeno` no it doesn't. param1 and param2 are incorrect 04:23 hmmmm this won't get fixed until one of us experiences it first hand 04:23 Zeno` yeah which is why I hope this test case can reproduce it reliably 04:23 hmmmm getting moretrees... 04:23 Zeno` I've only seen it happen twice 04:23 Zeno` which is not enough to be helpful (to me) 04:24 hmmmm some people seem to have it happen a lot to them 04:27 Zeno` yes 04:27 Zeno` Dunno why though 04:27 Zeno` just lucky 04:27 Zeno` or probably unlucky from their POV 04:28 hmmmm some people said they liked them... 04:28 hmmmm lol 04:28 hmmmm people get entertained by the stupidest things 04:28 Zeno` hehehe 04:28 Zeno` well they are quite artistic 04:28 Zeno` lol 04:30 hmmmm ahh 04:30 hmmmm I need plants_lib 04:30 Zeno` we'll probably see a mod soon: random_blocks 04:31 hmmmm so 04:31 hmmmm low priority bug that i found and i have a bad workaround for 04:31 hmmmm software renderer always crashes under platforms using xorg 04:32 hmmmm reason being that if the software driver is selected, irrlicht refuses to populate IrrlichtDevice::IVideoDriver::SExposedVideoData::OpenGLLinux::X11Display 04:33 hmmmm we need to figure out how to get the X11 display handle from irrlicht if opengl isn't being used 04:38 Zeno` http://i.imgur.com/YxoCHCk.jpg :( 04:38 hmmmm christ... moretrees sucks up like 12 seconds per block with -O0 04:38 hmmmm what 04:41 hmmmm do I need to have all the dependencies installed in order to get the big trees? 04:46 hmmmm :D i hear fire 04:47 Zeno` yay! 04:47 Zeno` that will be random 04:47 hmmmm nasty 04:47 hmmmm lots of diamond ore blocks, stone, and fire 04:47 hmmmm definitely uninitialized data 04:47 Zeno` I have reproduced it once. But going back to the same location doing the same actions.... nothing 04:47 hmmmm holy fucking taludo 04:47 hmmmm it's like 04:48 hmmmm not just a 1x3x2 segment of mapblocks 04:48 hmmmm it's huge 04:48 Zeno` yes 04:48 Zeno` a monster in the sky 04:48 VanessaE hmmmm: all you need for moretrees is plants_lib, in the plantlife modpack. neither one has any other deps. 04:48 VanessaE (aside from minetest_game/default) 04:48 hmmmm for what it's worth, i'm at -308, 96, -4, seed=1, mapgen=v6 04:49 VanessaE ok I guess you already got it 04:50 Zeno` I have an idea 04:50 hmmmm hack up a mod that produces ltrees on demand by punching? 04:50 hmmmm yeah i'm gonna do that right now 04:50 VanessaE I did. 04:50 VanessaE http://digitalaudioconcepts.com/vanessa/extra/moretrees.tar.bz2 04:50 VanessaE replace moretrees by that, /giveme moretrees:sequioa_sapling_instant 999 04:50 VanessaE place them 04:51 VanessaE er, moretrees:sequoia_sapling_instant 04:52 VanessaE the added code (node_defs.lua line 136 on down) is hacky but I didn't care. it's just for this test, not for production. 04:54 hmmmm btw 04:54 hmmmm i get several "assignment to undeclared global node inside a function... plantlife/trunks/generating.lua:5" 04:54 VanessaE ok, I'll clean those up. 04:56 Zeno` ok I can fairly reliably reproduce it now. Did it 3 times in a row 04:56 hmmmm yes 04:56 hmmmm me too 04:56 hmmmm the instant sequoia thing is very convenient for this 04:57 hmmmm (0, 80, 32) - (48, 64, 16) 04:57 hmmmm 3x1x1 04:57 hmmmm hrmm 04:58 VanessaE hmmmm: did you get a screenshot of that ginormous one you got earlier? 04:58 hmmmm no 04:58 hmmmm :/ 04:58 VanessaE oh, too bad 04:58 hmmmm if this were visual studio I'd get a debugger warning telling me about accessing uninitialized memory 04:58 hmmmm this sucks 05:02 Zeno` it just crashed my window manager lol 05:03 TriBlade9 Nice job Zeno` xD 05:03 VanessaE heh 05:05 TriBlade9 Hey guys, does anyone here have a good idea of how Minetest's low-level packet system works? 05:05 TriBlade9 I can tell it's UDP and byte based, but I'm not sure exactly how it sends certain parts of the data. (Particularly wstrings) 05:06 ShadowNinja TriBlade9: See doc/protocol.txt and clientserver.cpp 05:06 TriBlade9 Already read, I'll take a closer look 05:18 TriBlade9 Meh, I'll play around and see how it goes. 05:18 TriBlade9 I suppose the first step is just getting the server to respond to a connection of some sort 05:19 hmmmm weird 05:19 hmmmm i can't make it happen again 05:19 Zeno` I have found the unitialised data 05:19 Zeno` just waiting for server to shutdown now so I can get the dump properly 05:19 hmmmm wat 05:20 hmmmm do tell :-> 05:20 Zeno` http://pastebin.com/j8B0AqzC 05:22 hmmmm aww 05:23 hmmmm that's definitely not it 05:23 TriBlade9 Testing Quassel 05:24 Zeno` can't see how you can say that, hmmmm 05:24 hmmmm just look at it 05:24 Zeno` nearly all of them are by 0x782FC1: treegen::spawn_ltree(ServerEnvironment*, irr::core::vector3d, INodeDefManager*, treegen::TreeDef) 05:24 hmmmm MapBlock data is always initialized 05:25 hmmmm it's initialized to CONTENT_IGNORE 05:25 hmmmm in the ctor nonetheless 05:25 hmmmm erm i misread that 05:25 Zeno` although this is less useful than my previous "trace" 05:25 Zeno` why do I copy over stuff :/ 05:25 hmmmm okay, the voxelmanipulator m_data is "uninitialized" 05:26 hmmmm uninitialized or simply not written to? 05:26 hmmmm shoot 05:27 hmmmm oh shoot shoot i see what i think is the problem 05:27 ShadowNinja ~give Zeno` pastebin.com 05:27 ShadowBot Zeno`: Don't use pastebin.com. Use a sane pastebin like http://bpaste.net, https://dpaste.de, https://gist.github.com, http://sprunge.us, http://ix.io, http://fpaste.org ... 05:27 hmmmm Zeno`: in MMVManip::initialEmerge, the bit of logic with the "if (block == NULL) ... 05:28 Zeno` ShadowNinja, I don't like to waste their bandwidth, but I guess I will make an exception :) 05:28 hmmmm remove the else statement for the block->copyTo(*this) 05:28 hmmmm so it reads if (block == NULL) block = svrmap->createBlock(p); block->copyTo(*this); 05:28 Zeno` wait, what file? 05:28 hmmmm map.cpp.. 05:29 hmmmm weird, I can't reproduce it anymore with the instant sequoia thing 05:30 Zeno` ok, running valgrind again 05:31 Zeno` yeah it does sometimes and then other times does not 05:32 hmmmm hum 05:32 hmmmm wonder if it has to be done in the mapgen thread for it to show that bug 05:32 Zeno` well that seems to have fixed the unitialised references 05:33 Zeno` yep 05:33 Zeno` lock that fix in 05:33 hmmmm we don't know if it actually fixes the problem though 05:33 Zeno` nope, but it still needs fixing :) 05:34 Zeno` valgrind is now clean (apart from the expected) 05:34 hmmmm if i were able to readily reproduce this shit... 05:36 Zeno` I find it happens (at the same place) more often if you start somewhere else and teleport to the test location (don't ask me why because it doesn't make any sense) 05:37 hmmmm probably because of the mapblock creation order 05:37 hmmmm if the chunk above where the tree would spawn exists already it won't happen 05:38 Zeno` well I cannot reproduce any more. Will keep trying 05:41 Zeno` I'll merge that first change as a start anyway 05:43 Zeno` hmmmm, merge now? 05:43 hmmmm sure 05:43 hmmmm i give up... i can't reproduce it anymore after the second time, without that fix 05:43 TriBlade9 Zeno`, I think after paramat's suggestion the ao-strength pull should be good to go. I'm going to do some testing with outlandish values just to make sure it works. 05:43 hmmmm it wouldn't be so infuriating if this mod weren't so slow 05:44 Zeno` I'm using a different mod now :) 05:44 VanessaE moretrees isn't slow, the engine is. that instant sapling goes straight into an engine call... 05:44 hmmmm i stopped using the instant sapling thing since that doesn't seem to make it happen 05:44 VanessaE oh ok 05:45 Zeno` http://codepad.org/wxH06eEm <--- I'm using that 05:45 hmmmm regardless, the instant sapling thing was slow because the abms were waiting for the emergethread envlock for on_generated 05:45 VanessaE hmmmm: what abms? 05:45 hmmmm so that qualifies as mod slowness too 05:45 hmmmm that's how your instant saplings thing works, no? 05:45 VanessaE no,. 05:45 hmmmm it grows on an abm? 05:46 VanessaE on_place --> minetest.spawn_tree() 05:46 Zeno` TriBlade9, yeah 05:46 hmmmm ahhh 05:46 hmmmm well regardless 05:46 TriBlade9 Squashing commits... 05:46 Zeno` TriBlade9, it might be worth limiting the values? 05:46 hmmmm it happens in the environment step 05:46 VanessaE (or in the case of a few of the saplings, executes a function in moretrees to build a random-ish model, which is then sent to minetest/spawn_tree() ) 05:46 Zeno` TriBlade9, to a range that makes sense? Not sure, up to you 05:46 VanessaE s:/:.: 05:47 TriBlade9 Actually, they're limited to between 0 and 255 total already, so it shouldn't be an issue. 05:47 hmmmm so 05:47 TriBlade9 The multiplication might be a bit confusing though 05:47 hmmmm the slowness i'm experiencing is due to a multitude of horrible factors 05:48 hmmmm -O0, interpreted lua, map slow-lighting algorithm, envlock, etc. 05:48 Zeno` try running it with valgrind! 05:48 VanessaE haha 05:48 Zeno` then thee shall know slowness 05:48 VanessaE you're sadistic, Zeno` :P 05:48 hmmmm Fuck this 05:48 hmmmm i'm done 05:49 hmmmm i hope that thing fixed this bug because i'm not running around like a turd waiting for chunks to generate all day 05:50 TriBlade9 "running around" & "like a turd" 05:50 TriBlade9 What sort of turds do you do? O_o 05:50 hmmmm mobile ones 05:50 * TriBlade9 backs away slowly... 05:51 Zeno` what? lol 05:55 TriBlade9 Alright Zeno`, the commit works fine, although I don't like the values very much. (Ground to corner darkness ratio seems too high) 05:59 Zeno` I'll give it a whirl in a bit 05:59 Zeno` gotta sort out the mess I've made with my repo 05:59 TriBlade9 Hehe 06:00 TriBlade9 I know the feeling, coming back to minetest devving after a few months of inactivity. -_- 06:00 TriBlade9 Still haven't fixed chat colors 06:00 Zeno` I have about 30 branches. I really should clean it up instead of being lazy 06:03 Zeno` TriBlade9, "although I don't like the values very much. (Ground to corner darkness ratio seems too high)" 06:03 Zeno` can that be fixed? 06:14 TriBlade9 Sorry, if anyone has said anything the past 15 mins or so, I've missed it. Managed to break quassel. 06:14 TriBlade9 Zeno`, I saw a notification of some sort, care to re-say it? 06:16 Zeno` TriBlade9, "although I don't like the values very much. (Ground to corner darkness ratio seems too high)" 06:17 TriBlade9 Does that mean you agree? 06:17 TriBlade9 :P 06:17 Zeno` looking again now 06:17 TriBlade9 It's only really apparent if you use a lower value. 06:17 TriBlade9 But the ground around it is way darker than corners 06:19 Zeno` oh btw: http://dpaste.com/2PME226 06:20 TriBlade9 Oh, weird. I thought I fixed that ages ago 06:21 TriBlade9 Orite, paramat changed it. I need to add 'f' to the end of those numbers then, right? 06:22 Zeno` yep, that should fix it 06:22 TriBlade9 Darn, gotta commit again. Will do in a bit 06:22 Zeno` I dunno 06:23 Zeno` the shading doesn't look all that different to me, lol 06:23 TriBlade9 Darken the value? 06:24 Zeno` umm wait. The default *should* look the same, right? 06:24 Zeno` heh 06:24 TriBlade9 Yeah lol 06:24 Zeno` :D 06:24 TriBlade9 Pushed, should be fixed now 06:28 Zeno` umm, why remove the comment that says how those magic numbers were derived? 06:29 TriBlade9 Oops, accidental oversight 06:29 TriBlade9 I'd removed it in an earlier commit as they were no longer there. 06:29 TriBlade9 TODO: re-add 06:31 Zeno` with ambient_occlusion_strength = 2 I can't seem to see any shadows? 06:32 TriBlade9 Yes, 2 is lighter 06:32 TriBlade9 Probably greater than 255 06:32 TriBlade9 < 1 is darker 06:33 TriBlade9 Default is barely noticable as it is -_- 06:33 Zeno` so what's the reasonable range of values? 0 to 2 ? 06:33 TriBlade9 Yeah, or more like 0.5-1,5 06:33 TriBlade9 *1.5 06:34 TriBlade9 I gotta learn to tag people more often. Zeno`. 06:34 TriBlade9 Also, why the backtick in the name? 06:34 Zeno` because Zeno is taken 06:34 TriBlade9 Oh. That was a bit anticlimatic. 06:34 Zeno` :D 06:34 TriBlade9 :P 06:36 Zeno` I think it looks slightly wrong because the "strength scaling" is linear 06:37 TriBlade9 That's quite possible. 06:37 TriBlade9 However, the old addition system looked good for pretty much all values. 06:38 Zeno` why not init the values in light table using the expression that is in the comment that's removed, but incorporate ao_strength to the *base* values of 0.75, 0.5, 0.25, 0 ? 06:39 TriBlade9 Erum 06:39 Zeno` well you don't even need that really. Just make 2.2 configurable 06:39 TriBlade9 What? 06:39 TriBlade9 I still haven't figured out exactly what that was for. 06:40 TriBlade9 And if we were to do that, why not just use the old additions instead of adding an extra setting? (Just aligned to the old default) 06:40 Zeno` static const float light_amount[4] = { pow(0.75, 1.0/ao_gamma), ... 06:42 Zeno` worth a shot or not? 06:42 TriBlade9 Meh, I think not 06:42 TriBlade9 It's not likely a setting that would be frequently modified, except by game authors. 06:43 TriBlade9 Or crazy people like me who like it darker. 06:44 Zeno` heh 06:45 TriBlade9 Why are we so worried about keeping it exactly the same as the defaults anyway? It's not like people really notice AO actively. 06:46 TriBlade9 Just get it unoticably close. 06:46 TriBlade9 nine decimal places is a *bit* excessive 06:46 Zeno` well I just tested it and it looks better :P~~~~~ 06:47 TriBlade9 Tested what, your pow system? 06:47 TriBlade9 I'll try that in a bit, kinda trying to do a million things at once here 06:47 Zeno` http://dpaste.com/108ZAQG 06:48 Zeno` a value of 2.2 for ambient_occlusion_strength is same as before 06:48 Zeno` 0.75 is much darker 06:48 Zeno` > 2.2 is lighter 06:48 Zeno` obviously the variable/setting name is incorrect now 06:49 TriBlade9 Wait, why is it incorrect? 06:49 TriBlade9 Oh, that's the ratio? 06:49 TriBlade9 Good idea actually 06:50 TriBlade9 Something about minetest always makes me type ./bine/minetest on the first try. I never do that with any other 'bin' directory. 06:50 TriBlade9 Every damn time. >_> 06:50 Zeno` It's a pity the 4th value in the array is always 0 06:51 TriBlade9 Yeah, what exactly is that for anyways? 06:51 TriBlade9 I changed it a few times and nothing happened 06:51 Zeno` I think I looked at that once before 06:51 Zeno` and it can never be used 06:51 Zeno` so it's useless 06:51 TriBlade9 Alright, your system seems to be good 06:52 Zeno` ambient_occlusion -= 5; gives a range of 0-3 IIRC 06:52 Zeno` so the 0 being there is just confusing 06:52 TriBlade9 Just removed it, no errors 06:53 TriBlade9 So, do we need to normalize 2.2 to 1? Or are we good there? 06:53 Zeno` I would make the default 2.2 06:54 TriBlade9 Alright, in that case I think we're done 06:54 Zeno` i.e. ambient_occlusion_gamma = 2.2 06:54 TriBlade9 Commit? 06:54 TriBlade9 I think ambient_occlusion_strength still counts 06:54 Zeno` ok, commit and let's see where things are :) 06:54 TriBlade9 Okey 06:55 TriBlade9 Sorry it takes so long to push, my connection to Github often times out :/ 06:56 Zeno` heh 06:56 Zeno` it's not as if there is a rush :P 06:56 TriBlade9 I gotta go in roughly eh 06:56 TriBlade9 four minutes? 06:56 TriBlade9 Pushed 06:58 Zeno` minetest.conf.example needs updating 06:58 TriBlade9 Orite. Forgot that the last few commits 06:58 Zeno` Other than that I'm good with it 06:58 TriBlade9 Should we rename it to *_gamma or not? 06:58 Zeno` I dunno. I would 06:59 Zeno` Most gamers know what gamma is (in a general kind of way) 06:59 TriBlade9 alright, one last commit then 07:00 Zeno` bb in 5 07:04 TriBlade9 Zeno`, pushed again x] 07:04 TriBlade9 Gotta head out now, bye 07:04 TriBlade9 Thanks for reviewing everything 07:04 Zeno` ok 07:04 Zeno` Can you merge to master? 07:04 ShadowNinja IMHO absolute values would be better than values relative to the current values, if you're still doing that. 07:04 TriBlade9 Huh Zeno`? 07:04 Zeno` ShadowNinja, nah it's using gamma now 07:05 Zeno` i.e. the actual formula 07:05 TriBlade9 I shoulda thought of that first -_- 07:05 Zeno` Anyway, I'm ok with it. Thanks TriBlade9 :) 07:05 TriBlade9 Wasn't sure quite what it was 07:05 TriBlade9 Np 07:05 ShadowNinja (Because then it's relative to some random value if the defaults ever change.) 07:05 TriBlade9 What do you mean by merge to master? 07:05 Zeno` to the official repo 07:05 TriBlade9 Oh, I can't do that. 07:05 Zeno` you're listed as a core dev :P 07:06 TriBlade9 Wat? 07:06 TriBlade9 Since when? 07:06 ShadowNinja Zeno`: So, absolute? 07:06 Zeno` I dunno 07:06 TriBlade9 wtf 07:06 Zeno` ShadowNinja, what do you mean? 07:06 ShadowNinja Zeno`: Huh? You sure? 07:06 TriBlade9 Nope, I don't have write access. I think I just got added to the credits somewhere by accident. 07:06 Zeno` oh "Active Contributor". My mistake 07:07 ShadowNinja Zeno`: Eg, not foo = 3.14159 * setting("relative_val"); 07:07 Zeno` ShadowNinja, nah, it doesn't do it that way now 07:07 TriBlade9 ShadowNinja, now it's relative to the light table settings 07:07 Zeno` powf(0.75, 1.0 / ao_gamma), .... 07:07 TriBlade9 sorry, worded that totally wrong 07:07 ShadowNinja Zeno`: Alright. Good. 07:07 TriBlade9 *gamma settings 07:08 ShadowNinja Zeno`: Er, that's relative to 0.75... 07:08 TriBlade9 Okay bye, gonna be late. 07:08 Zeno` yes it is. What's the alternative? 07:09 TriBlade9 When you figure out what's what, post a comment on the PR please. xD 07:09 TriBlade9 Keep in mind it was hardcoded defaults as it was 07:09 Zeno` there is a non-linear relationship between the values of 0.75. 0.5, 0.25 07:10 * ShadowNinja will look closer tomorrow. 07:10 paramat Zeno` > "incorporate ao_strength to the *base* values of 0.75, 0.5, 0.25, 0 ?" just occured to me that seems better 07:11 paramat scale those 4 linearly 07:11 Zeno` those 4 do, but the results don't 07:12 Zeno` i.e. after gamma is applied the resulting light_amounts are non-linear (unless ao_gamma is 1.0) 07:12 paramat ah. i think we need RBA's input on this 07:13 paramat .. how to adjust AOS while keeping those 4 values correctly relatively proportioned 07:16 Zeno` linear light looks awful. That's why the original hard coded values had a gamma of 2.2 manually applied 07:16 Zeno` manually calculated* 07:16 Zeno` not sure why they were manually calculated though 07:17 Zeno` maybe in the distant past light_amount was not static const 07:20 Zeno` what is AOS, btw? 07:20 paramat ambient occlusion strength 07:20 Zeno` oh ok 07:23 Zeno` well this does that. If you look at the values generated by a "gamma" of 2.2 they are the same as they originally were 07:23 Zeno` http://codepad.org/Y4FhRvWz 07:28 Zeno` And as you can see (http://codepad.org/N1B7lYqS) the results are not linear... the whole point of gamma :) 07:32 Zeno` gosh. Are there enough PRs and open issues? 09:51 rubenwardy Does anyone have access to the forum.minetest.net server? I'd like to get the error that MMDB is causing, but thexyz seems to be AWOL 10:15 kilbith kahrl, here ? 11:15 jin_xi so reading logs and all. lol shit. hmmmmm pls do test your stuff and listen to reporters. more often than not its bugs in the engine. 11:25 gregorycu Easy does it my good man 11:25 gregorycu We all make mistakes 11:26 gregorycu Like me, just than 11:26 gregorycu I performed two optimisations, and it seemed to be worse 11:26 gregorycu I had accidentially inverted the definition of the metric I was using 11:47 TriBlade9 Has anyone tried skinning Minetest/IGUI before? I know it has been suggested, but has anyone attempted it? 11:50 kilbith TriBlade9, yes : https://github.com/minetest/minetest/pull/1832 11:50 TriBlade9 Ah alright. I was gonna look into it. 11:50 TriBlade9 (Sorry, GitHub isn't loading at the moment) 11:57 TriBlade9 kilbith, So did you retheme the irrlicht GUI or modify the formspec? Or what? 12:01 sfan5 TriBlade9: http://i.imgur.com/uut4q5A.png 12:01 sfan5 (this is the mediacrush thing linked in the pull) 12:01 TriBlade9 One sec, firing up proxy :P 12:01 sfan5 china blocks imgur too? 12:01 TriBlade9 Hell yea 12:01 TriBlade9 They block pretty much everything 12:02 TriBlade9 Okay, it looks like there's just a background image on the formspec then? 12:02 sfan5 also: mediacrush blocks china not the other way around 12:02 TriBlade9 Oh. Weird indeed 12:02 sfan5 yep just background images 12:02 TriBlade9 Mediacrush used to work for us 12:02 kilbith TriBlade9, just applied a background image to the formspec 12:03 TriBlade9 Huh okay, I was thinking of actually writing a new theme, subclassing IGUITheme 12:03 sfan5 well... greatfire.org says that mediacrush is not blocked completly 12:03 TriBlade9 Or implementing, or whatever 12:03 sfan5 a real GUI theme would be great 12:03 TriBlade9 It's definately possible, but I'm not the ideal person to do it. (Suck at C++ and design) 12:04 kilbith sfan5, can i close that PR btw ? 12:04 sfan5 kilbith: why? 12:04 TriBlade9 A interesting halfway-point would be to use environment->loadGUI to load a set of custom colors and sizes from an XML file, but that seems to have some issues with making the buttons unclickable for some reason. 12:05 kilbith sfan5: will not be merged, too "static". 12:05 sfan5 oic 12:05 sfan5 feel free to close it then 12:05 kilbith ok 12:06 TriBlade9 WTH would a proper theme for MT look like anyhow? 12:07 TriBlade9 The current graydients (cwutididther) are just no. 12:07 TriBlade9 Someone had a forum post on this awhile back... lemme dig it up. 12:09 SudoAptGetPlay talking about this : https://forum.minetest.net/viewtopic.php?f=5&t=10330 ? 12:09 TriBlade9 Darned ninjas and their fast internet. ;_; 12:10 TriBlade9 Probably, page hasn't loaded yet. 12:10 SudoAptGetPlay 200ko/sec I don't call that fast :P 12:11 TriBlade9 Yep, that is indeed what I am referring to. Not sure I can pull it off quite that nicely though. 12:11 TriBlade9 Pfft 12:11 TriBlade9 I'm somewhere around 2kb/s right now. 12:12 TriBlade9 Morning speeds are more like 700kb/s, after about 11:00 AM it plummets. 12:12 SudoAptGetPlay glad to hear I don't hve the worst broadband on earth 12:13 TriBlade9 I *shouldn't* either, but everything in my 8-building apartment complex goes through one line -_- 12:15 TriBlade9 Anyways, I'm probably gonna get off for now, get back on this tomorrow. 12:15 TriBlade9 See y'all! 12:58 Zeno` will merge 2112 12:59 Zeno` #2112 12:59 ShadowBot https://github.com/minetest/minetest/issues/2112 -- Added configurable ambient_occlusion_gamma. Default is 2.2 (same as before) by TriBlade9 13:23 Zeno` paramat I know how gamma works mathematically :/ 13:24 Zeno` The 4th value can be removed because after ambient_occlusion -= 5; the only values ambient_occlusion can possibly be are 0, 1 or 2 13:25 Zeno` because of the loop on line 248 13:25 Zeno` the max value of ambient_occlusion is 7 13:25 Zeno` and 7-5 is... 2 13:25 Zeno` this is not something RBA needs to comment on 13:28 Zeno` you can be an "expert" on this as well. It's just plain logic 13:39 Zeno` sheesh, not everything needs to be a debate :/ 13:39 Zeno` If something is correct, it's correct 14:16 NrzMT629253 Hey, i do a massive rework on packet handling (reading at this time), can new heads review it ? 14:16 NrzMT629253 https://github.com/minetest/minetest/pull/2119 14:17 kilbith you should change your nick to 'nerzhul' 14:17 Zeno` #2054 looks fine to me 14:17 ShadowBot https://github.com/minetest/minetest/issues/2054 -- Reorganizing client and settings tabs by kilbith2 14:18 NrzMT629253 i should but someone already has this pseudo elsewhere :) 14:18 Zeno` NrzMT629253, I like it 14:20 NrzMT629253 At this time i rework many packet handlers but i don't work on somes (_init handlers for example). 14:24 Zeno` NrzMT629253, I'm ok with merging it but it needs more testing first 14:25 Zeno` (good work from what I can see, by the way) 14:25 NrzMT629253 we could improve it before merge if you see some errors 14:25 NrzMT629253 but i tested each interaction and i don't see any problem. Now someone else must test i think 14:25 Zeno` I cannot see any obvious errors (I've been watching this since you first made the pull request) 14:27 Zeno` I will vote yes to merge it 14:28 NrzMT629253 i think there are more thing to improve, like protocol evolutions 14:29 NrzMT629253 but i think it's another pull 14:33 Zeno` yeah. I'm ok with all this, but PRs of this size will require testing by more than just me 14:33 NrzMT629253 of course ! 14:41 NrzMT629253 are there any other things to rework on minetest ? because i saw that my server uses 100% CPU sometimes whereas nothing special happens. 3 year ago i got a WoW server with 300 players and the server didn't consume so many CPU 14:44 NrzMT629253 i think two threads for server is too few, and i'll at minetest architecture and find where we must add one thread to improve performance, or resolve the bottleneck 15:06 Zeno` We need to release 0.4.12 15:06 Zeno` some of the bugs fixed since 0.4.11 are quite serious 15:06 Zeno` at the same time we should fix the version numbering 15:06 Zeno` kahrl? 15:10 NrzMT629253 what do you think about https://github.com/minetest/minetest/pull/2116 15:10 NrzMT629253 i do some shader mathematic optimizations 15:11 Zeno` without reviewing it in detail I think it's great 15:11 Zeno` just remember that minetest is compiled with -fast-math 15:13 NrzMT629253 okay 15:13 Zeno` so although floating point is not communicative (i.e. 3.1 * 1.4 is not necessarily the same as 1.4 * 3.1, -fast-math assumes that the expression can be re-arranged) 15:13 Zeno` but yeah, it looks good 15:14 Zeno` I think the network stuff should be merged soon 15:14 Zeno` I'm interested to hear what other core devs think 15:15 NrzMT629253 oh, that's cool 15:16 Zeno` hmmmm, what are your thoughts on #2119? 15:16 ShadowBot https://github.com/minetest/minetest/issues/2119 -- Rewrite client/server packet handling by nerzhul 15:20 hmmmm when i see 'rewrite' i never feel good about it 15:20 Zeno` yes, but put aside that feeling for a moment :P 15:22 hmmmm what's with enet? 15:22 hmmmm i don't get it, does this mean sapier admits defeat?? 15:22 NrzMT629253 we are not into the same side 15:22 NrzMT629253 enet = socket 15:22 NrzMT629253 i'm on layer 7 15:23 NrzMT629253 packet content 15:25 hmmmm i don't really know what to say since it's liks 28 separate commits.. 15:26 Zeno` without gathering metrics this should hypothetically increase performance at least 15:26 hmmmm it looks more like a style commit. i didn't see anything that would improve performance exactly 15:26 NrzMT629253 In fact i do separate commit because it's a big difference. This permit to understand the coding path i follow and to follow the code modifications if there are errors 15:27 NrzMT629253 in fact packet opcode was tested like this at this time: 15:27 NrzMT629253 if (opcode = 1) DO 15:27 NrzMT629253 if opcode = 2 DO other 15:27 NrzMT629253 ... 15:27 NrzMT629253 else UNK 15:27 NrzMT629253 it's UGLY 15:27 hmmmm NrzMT629253, use the enter button less please... 15:30 NrzMT629253 sorry, i do one thing but pidgin splitted it :). Then, instead of doing 40 tests, the opcode permit to find a function pointer to handle the packet. Second: i introduce NetworkPacket, a interface to read packet easily and centralized. At this time packets are decoded... like time said, buffers, streams... There it's an object to read. At the end, (not useful into this PR), we can write the packet by this interfac 15:42 Zeno` It's not really a style commit 15:42 Zeno` Although it is easier to read (for me) heh 15:43 Zeno` calling a function pointer in lieu of 20-50 if/else is always going to be quicker 15:44 Zeno` anyway kind of related... 15:45 Zeno` We need to release 0.4.12 15:45 Zeno` some of the bugs fixed since 0.4.11 are quite serious 15:45 Zeno` at the same time we should fix the version numbering 15:45 Zeno` and this needs to be done *now*, IMO 15:45 VanessaE +1 for that. 15:45 Zeno` once that's done we can merger NrzMT629253's changes with less "stress" 15:46 Zeno` but that's just a side effect 15:46 Zeno` so, let's get a version number ready and just fucking do it 15:47 SudoAptGetPlay omg is this even real :) 15:48 Zeno` yeah, it's real. It needs to be done 15:48 Zeno` because at the moment there is no "clean" way to backport critical bug fixes to "stable" 15:49 Zeno` So, my suggestion is ... release 1.0.0 (sorry, hmmm, I think 5.0.0 is dumb) 15:50 VanessaE 5.x was kinda my idea :P to avoid confusing users who keep calling it 4.x 15:50 Zeno` ok, well it's dumb whoever suggested it (IMO) :D 15:50 SudoAptGetPlay yeah but the engine is mature enough to shine under 1.0.0 15:50 Zeno` 1.0.0 is more logical 15:51 kilbith 5.x is a bit intimidating and precocious... 15:51 VanessaE I think 1.0 will look to users like an older version 15:51 Zeno` I don't think it will 15:51 Zeno` although I suppose there are a lot of idiots in the world 15:52 Zeno` :) 15:52 VanessaE well go with whatever, just have fun convincing people that "1.0" is newer than "4.x" :-) 15:52 Zeno` 5.0.0 is too much of a leap imo :( 15:52 sfan5 ^ ack 15:52 Zeno` there is no 4.x? 15:52 VanessaE Zeno`: yes there is. 15:52 Zeno` release it as 1.4.12 then 15:52 Zeno` the 0 is the only real problem 15:53 VanessaE there IS a 4.x in the mind of every idiot user who leaves off the leading zero 15:53 VanessaE which seems to be about half our userbase :P 15:53 VanessaE to the users, 1.4.x would look the same as 1.0.x 15:53 SudoAptGetPlay by going 50 we'll be stuck forever with wrong numbering 15:54 SudoAptGetPlay *5.0 15:54 VanessaE you have to compare apparent first-digits 15:54 Zeno` people are really that stupid? 15:54 VanessaE yes, they are. 15:54 VanessaE sadly. 15:55 VanessaE I have lost count of the number of times I've had to correct people on it. 15:55 SudoAptGetPlay well let's enlighten the common rable with correct versioning :D 15:55 Zeno` meh. I just can't "sit comfortably" with going from 0.x.x to 5.x.x 15:55 Zeno` it's just not british! 15:56 VanessaE hah 15:56 Zeno` a true scotsman would not do that either 15:56 SudoAptGetPlay there it goes 15:56 VanessaE are you saying it's also un-American? :P 15:56 Zeno` yep 15:56 Zeno` no true american patriot would do it 15:57 SudoAptGetPlay Coming from Belgium I.dont.care 15:57 VanessaE good. then it's settled. 5.0.0 it is ;) 15:57 Zeno` no no! 15:57 Zeno` lol 15:57 Zeno` 1.0.0 15:57 VanessaE lol 15:57 SudoAptGetPlay tricky 15:57 VanessaE 5! 15:57 SudoAptGetPlay fatality ! 15:57 NrzMT629253 0.X.Y is pretty well because game is currently under heavy devel 15:58 Zeno` I come from a long line of idiots and even I can understand that 1.0.0 is better than 0.4.x 15:58 SudoAptGetPlay The game is more an engine 15:58 SudoAptGetPlay and it has already a lot of features 15:58 SudoAptGetPlay one day you have to relase your 1.0 15:59 * Zeno` releases the hounds 15:59 SudoAptGetPlay besides 0.4->5.0 would be like windows going from 8->10. 15:59 VanessaE most recent leave-off-the-zero mistake I saw was just last night over in #minetest 15:59 SudoAptGetPlay Bad bad bad 16:00 shadowzone Yeah, let's not follow Microsoft. 16:00 VanessaE SudoAptGetPlay: except it's going to do exactly that, and that's to cater to bad CODERS yet :P 16:00 shadowzone Nothing goes right if you do. 16:00 NrzMT629253 follow linux 16:00 NrzMT629253 after 2.6.39 choose 3.0 16:00 shadowzone Yesh! 16:00 SudoAptGetPlay Isn't there any posix about versioning ? 16:00 Zeno` but after 0.4.11 we release 5.0.0? 16:01 VanessaE SudoAptGetPlay: Semantic Versioning 16:01 NrzMT629253 0.4.X branch must be stable 16:01 VanessaE which I guess is the plan once we work out the starting version number 16:01 Zeno` won't people then call it 0.0? :P 16:01 SudoAptGetPlay so we keep old relases as stable 16:01 SudoAptGetPlay ? 16:01 VanessaE Zeno`: not if they see a big number at the start 16:02 NrzMT629253 if it's bugfix only, let it to 0.4.X but when the next major feature release come, change it to 1.X, 5.X or 0.15.X 16:02 VanessaE mentally, they read it like a decimal number 16:02 Zeno` NrzMT629253, that's the idea behind semantic versioning 16:02 Zeno` but... we have to have a starting point heh 16:02 VanessaE or rather, like decimal both ways or something 16:03 NrzMT629253 one free software choose pi decimals for versioning 16:03 T4im typical decorative 0 problems ;) VanessaE has a point… this is not a library but a end-user program and those, even if non-commerical (firefox for example) do jump without anyone having problems… 16:06 SudoAptGetPlay imo 1.40.12 is the best compromise. It can be the bridge between the 0.xx and the 1.xx era :) 16:06 rubenwardy Just read IRC log. This is my opinion: "You could release a news article saying that the 0. is going to be discarded. From there you use semantic versioning. In a rather Ministry of Truth way, you could refer to older versions as say 4.11, 4.10, 4.9" 16:06 rubenwardy Thus, 5.0.0 16:06 NrzMT629253 i think SudoAptGetPlay is a good idea too, but not for 0.14.12 16:06 NrzMT629253 we need a 0.15 to mark a rupture 16:06 VanessaE rubenwardy: which is exactly my thought, minus the Orwellian reference 16:06 rubenwardy Although I also like 1.4.12, except for the patch thing. Maybe API.MAJOR.MINOR.PATCH, but nah 16:06 rubenwardy Lol 16:07 rubenwardy Also, releasing 1.0 would make users think it is a complete game, rather than just discarding the 0. 16:07 rubenwardy But, that isn't important 16:08 rubenwardy We should start doing patches to latest stable but only if it doesn't take time away from devs which could be spent on improvements 16:09 rubenwardy If you do it right, it won't, as you'd only release patches on major bugs that disrupt game play. 16:09 rubenwardy gtg. I will check the log. Will be back online in an hour. 16:13 SudoAptGetPlay Butwhy backport ? can't we just release a 'revision' when a fix is important enough. Something like 1.5.1 (an implement a launcher with auto update lololol) 16:14 SudoAptGetPlay nevermind just realised stupid idea 16:17 Zeno` well whatever the numbers are there needs to be a new release 16:17 Zeno` mainly because the bugs fixed since 0.4.11 are not exactly "minor" 16:18 SudoAptGetPlay won't that be the fastest relase ever ? 16:18 Zeno` yep 16:19 Zeno` nothing wrong with that though I don't think 16:19 NrzMT629253 it's bugs 16:19 NrzMT629253 then 0.4.12 is legitimate 16:19 NrzMT629253 no new feature in this package ? 16:20 Zeno` the bugs fixed (although maybe uncommon) kinda nasty 16:20 SudoAptGetPlay Could be fun if Michael Larabel from phoronix rewrites an article about a minetest release 3 weeks after a previous one :D 16:20 Zeno` e.g. being able to crash another user's client 16:21 NrzMT629253 Firefox release 6 weeks after a previous one 16:21 Zeno` and the mapgen random data thing 16:21 Calinou we're not Firefox though :/ 16:21 Calinou we don't have as many people for release engineering 16:21 NrzMT629253 no but if a huge project like firefox do it, do a bugfix 3 weeks after precedent release is not so huge 16:21 Zeno` kahrl asked me if it was worth another release after the "able to crash another user" issue 16:22 Zeno` I said no at that time 16:22 Calinou bugfix releases annoy everyone :/ 16:22 Calinou we have daily builds, if someone wants to use more recent stuff 16:22 Zeno` but these other bugs have changed my mind 16:22 VanessaE then let's just get a new release out already. 16:22 Zeno` Calinou, the problem is that server operators might expect stable to be... stable 16:22 Zeno` yes, let's get it out 16:23 Calinou we can also release more often, that's good for community, but not much for modders 16:23 Zeno` there is nothing to lose in releasing a new version now. Is there? 16:23 VanessaE Zeno`: no 16:23 SudoAptGetPlay I don't see one 16:23 Calinou time 16:23 NrzMT629253 you can release fast, if API doesn't change 16:24 VanessaE time is fungible. what can't be done now (in lieu of making a release) can be done later. 16:24 Calinou changelog needs to be updated :/ 16:24 Zeno` Time? 16:25 Zeno` In hindsight the timing of 0.4.11 was bad. Most people were not as active as they normally are. It was Christmas. 16:26 Zeno` Although, I dunno if these bugs would have been discovered straight away no matter the time of release 16:27 Zeno` At any rate there is nothing to lose and a lot to gain in making a new release (IMO) 16:27 Calinou it makes PR 16:27 Calinou so that's good 16:27 Calinou go ahead, release 16:28 Zeno` Calinou, change long updates are not a huge undertaking right now are they? 16:28 Zeno` s/long/log 16:28 Calinou the changelog probably will be short anyway 16:28 Zeno` ok, I vote for a new release 16:28 Zeno` yes, it should be short (the changelog) 16:29 NrzMT629253 short changelog bug huge bug fixed = good changelog :) 16:29 Zeno` geez, it's 2:30AM 16:30 Zeno` umm, how do we initiate a new release? lol 16:31 Zeno` I know. Let's get hmmmm to do it. 16:31 Zeno` hmmmm, you have a job. Jump to it! 16:31 Calinou http://dev.minetest.net/Releasing_Minetest 16:31 Zeno` ShadowNinja, sfan5 16:32 Zeno` I'll help as well if I can. Just tell me what to do 16:32 shadowzone And I'm more than willing to learn and help. 16:43 hmmmm lol. 16:43 hmmmm we are not releasing a new version of minetest 16:43 VanessaE wat 16:44 hmmmm whose idea was this all of a sudden 16:44 hmmmm we just release 0.4.11 and now there's "we need to release 0.4.12" 16:45 VanessaE um.. 0.4.11 is horribly crashy and has this garbage mapblock issue, that's not enough to issue a bugfix release? 16:45 hmmmm please don't do things in haste and behind everybody elses' back 16:45 hmmmm the garbage mapblock issue we have no indication of being solved for one, two if we are to believe what the root cause of it was then it wasn't in 0.4.11 16:46 VanessaE ok. 16:48 hmmmm oh nice. it seems i'm wrong, it was shoved in at the last minute before release 16:48 jin_xi i have not seen any garbage since the fix 16:48 VanessaE thanks for making an ass of yourself at my expense, hmmmm. 16:48 hmmmm ass? 16:48 VanessaE hrm, wrong arrangement of words 16:48 VanessaE you get the point. 16:49 hmmmm the one who made an ass of themselves is the one who shoved in an "optimization" at the last minute 16:49 hmmmm this was a horrible idea in hindsight but at the time, what is it we were thinking? 16:50 VanessaE I don't know who that was, but it doesn't matter now. what matters is it seems to be fixed. and if it is, between that and the facedir > 23 crash, that's adequate reason for a bugfix release. 16:50 hmmmm but who decided on "0.4.12" 16:50 VanessaE not me. 16:50 hmmmm i can understand the logic behind it though 16:50 hmmmm the 1.0.0 version will need to be... something bigger 16:51 T4im would we expect the issue to reoccur on a newly generated world with the same seed and config after the database was deleted? i.e. could this be used as a direct test if the fix worked? 16:53 VanessaE T4im: newly-generated terrain, seed doesn't matter, and apparently only if you're spawning L-system trees, and then it was intermittent. 16:54 jin_xi its not only ltrees but also lvmanips 16:55 VanessaE even that? I thought that was ruled out? 16:55 jin_xi well its fixed now 16:56 hmmmm theoretically it could've been anything 16:58 NrzMT629253 what is the rule for braces in code ? PHP like or c++ like ? 16:58 hmmmm linux kernel style like 16:58 Calinou http://dev.minetest.net/Code_style_guidelines 16:58 NrzMT629253 because i see multiples styles but dev guidelines talk about functions 16:58 NrzMT629253 and i see a different style in function 16:59 NrzMT629253 ok i see 16:59 NrzMT629253 thanks 17:15 Zeno` hmmmm, why not make a release? 17:16 Zeno` forget the version numbering 17:16 Zeno` I think a release is necessary 17:18 Zeno` the one who made an ass of themselves is the one who shoved in an "optimization" at the last minute 17:18 Zeno` and wtf does that mean? 17:23 Zeno` hmmmm? 17:25 Zeno` hmmmm, if you don't think a release is necessary then I think that you're not being responsible (sorry) 17:30 Zeno` the one who made an ass of themselves is the one who shoved in an "optimization" at the last minute <--- seriously I want to know what you meant by that, hmmmm 17:31 Zeno` because if you're referring to my optimisation then revert it. And the bug was still there! (before being fixed today) 17:34 Zeno` shit I hate people making stuff up 17:34 Zeno` "diversion tactics" 17:34 Zeno` they fucking annoy me 17:34 Zeno` If it *was* my fault then I'd have been the first to admit it :/ 17:35 Zeno` Anyway, back to the release. We have an obligation to our users to make a new release 17:36 Zeno` Leaving 0.4.11 as the current stable is not responsible 17:36 hmmmm hold on a minute 17:37 hmmmm so the mapblock initialization wasn't the bug? 17:37 hmmmm how did this pop up lately all of a sudden 17:37 Zeno` umm, yes it was. But when was that committed? 17:37 hmmmm right before 0.4.11's release 17:37 Zeno` where? 17:38 Krock is there a huge issue in 0.4.11? 17:38 VanessaE Krock: there is. 17:38 Zeno` Krock, basically there are 2 big issues 17:38 hmmmm https://github.com/minetest/minetest/commit/8621e6de5dc031b547739ab3ff8dc1575a284d1b 17:38 Krock eww. not good 17:38 hmmmm is that commit not the cause of the bug? 17:38 hmmmm because I'm genuinely confused right now 17:38 Zeno` hmmmm, no it's not 17:38 Zeno` has that commit been reverted? 17:38 hmmmm no 17:39 Krock oh right, VanessaE, is it about the mysterious random blocks? 17:39 Zeno` so it exposed a bug somewhere else 17:39 VanessaE Krock: yes. 17:39 hmmmm the whole time tracking it down we were assuming the VoxelManipulator::addArea mapnode initialization was the core problem 17:39 Krock what a luck I didn't upgrade my server to 0.4.11 yet :) 17:40 Zeno` this doesn't matter. Whatever the cause of the bug doesn't matter 17:40 Zeno` the fact is that the bug is there in 0.4.11 17:40 hmmmm how do you KNOW that 17:40 hmmmm if we can't tie it to a particular commit, then how can you possibly say that 17:40 Krock the commit which hmmmm ponted to does not fill anything with random stuff so it's not a bad commit 17:41 Krock *pointed 17:41 hmmmm what...? 17:41 Zeno` huh 17:41 Zeno` because we fixed the bug today? 17:41 hmmmm the commit I pointed to could easily cause the sort of issue we were talking about 17:41 Krock ..the random blocks? 17:41 hmmmm the only evidence we have that it wasn't the root cause of the random blocks is some random user's testimony 17:42 Zeno` what? 17:42 hmmmm we know from past experience that end users usually mess things up when testing to see if something works or not 17:42 Zeno` my valgrind data was not significant? 17:42 VanessaE hmmmm: you were the last person to touch that piece of code, fwiw. 17:42 hmmmm it was but it wasn't the root cause of this problem 17:42 VanessaE https://github.com/minetest/minetest/commit/2c0b51795e6fa6747d881f1871c89830abb6e6e8 17:43 hmmmm vanesae, am aware. it caused absolutely no random block problems though. 17:43 hmmmm look 17:43 Zeno` it *was* the root cause 17:43 hmmmm I don't get it 17:43 Krock that's long time ago and then nobody got those problems 17:43 hmmmm at first, data not existing in a VoxelManipulator starts out as CONTENT_AIR 17:43 VanessaE just for reference only. 17:43 hmmmm zeno removes this initialization and breaks assumptions like the one made in initialEmerge 17:44 hmmmm L-system trees doesn't write to the entire area emerged, only certain blocks 17:44 hmmmm it gets blit back to the map as uninitialized data 17:44 Zeno` ok, why was the else there? 17:44 hmmmm is there something wrong with this theory? it seems to be corroborated by every piece of evidence so far 17:44 Zeno` the one removed today 17:45 hmmmm because of the assumption that the data would be initialized 17:45 Zeno` how could it be intialised if mapblock == NULL (or whatever the statement was) 17:45 hmmmm no, the VoxelManipulator m_data 17:46 hmmmm that's what was assumed to be initialized at the time that code was written that manner 17:46 Zeno` https://github.com/minetest/minetest/commit/57f2fa57cda957be302b3542a59cd51209d46f2d 17:47 Zeno` why would anybody make that assumption 17:47 hmmmm if m_data is pre-initialized to something, and the mapblock for that area happens to be NULL, why would you attempt to copy over its blank data? 17:47 Zeno` anyway this is not about placing blame, surely 17:47 hmmmm because at the time we were able to make that assumption 17:47 hmmmm then it got changed 17:47 hmmmm no, it's about sorting the confusion 17:47 Zeno` it's about "should a new release be made" 17:47 hmmmm you just claimed a few minutes ago that your addArea optimization was not the cause of this bug 17:47 Zeno` it wasn't 17:48 hmmmm perhaps not the *root* cause 17:48 hmmmm the root cause was making assumptions that probably should've been documented 17:48 Zeno` correct 17:48 hmmmm but the immediate cause 17:49 Zeno` the immediate cause masked/hid the root cause 17:49 Zeno` this is not very relevant though 17:49 hmmmm it doesn't matter what the root cause was... a release comes up, and 2 days before the big day you add in a seemingly innocuous optimization that interacts with code that's been there not causing problems for over a year 17:50 hmmmm this is the problem 17:50 hmmmm features aren't the only things prone to being buggy 17:50 Zeno` look, if I had merged that commit 4 weeks before release it still would not have shown up 17:50 hmmmm bull.. lots of people started complaining about it 17:51 Zeno` it's been a month since 0.4.11 and it's taken this long for it to become an issue! 17:51 hmmmm that would've been classified as a blocker had it occured before release 17:51 Zeno` it would not have been noticed 17:51 hmmmm I had gotten earlier reports 17:51 Zeno` earlier? 17:52 hmmmm it's just with absolutely no way to track the problem because lol can't reproduce I wasn't able to do anything 17:52 Zeno` anyway, the bug was in initialEmerge(). 'nuff said 17:52 VanessaE can't? /me looks at last night's log again.... 17:53 hmmmm VanessaE, it took a lot more information to get to that point than I had at first 17:53 Zeno` I can't look at every single damn line of every single unrelated function 17:54 hmmmm Zeno`, yeah, but such a thing could cause problems, that's the point 17:54 VanessaE hmmmm: in all fairness, I didn't have much more info than you did. 17:54 hmmmm you knew it was moretrees 17:54 hmmmm grrrrr 17:54 Zeno` hmmmm, yeah, but you suggest that every time we make a change we check every single line in the rest of the code? 17:54 hmmmm BEFORE a major release, I think so 17:55 VanessaE hmmmm: initially I did not know, and it wasn't moretrees, it was just triggered by it. 17:55 Zeno` hmmmm, so you went through every single source line before the release? 17:55 hmmmm no, on the other hand I didn't add anything that wouldn't have sufficient testing time 17:55 Zeno` hmmmm, neither did I 17:56 hmmmm so we have a > 2 week feature freeze 17:56 hmmmm and this shit still happens 17:56 hmmmm because 2 week feature freezes don't matter when it gets added 2 days before release 17:56 Zeno` yes, and if it was a 4 week feature freeze I bet it STILL would have happened 17:56 hmmmm the likelyhood goes waaay down 17:56 Zeno` nope 17:57 hmmmm ugh whatever 17:57 Zeno` ffs who cares anyway? 17:57 hmmmm i'm just glad we're moving toward a sane development and release model 17:57 Zeno` the bug was in map.cpp. who gives a flying fsck? 17:57 hmmmm this can't happen in the future 17:58 hmmmm do you really want to call this 0.4.12, or 0.4.12-p1? 17:58 hmmmm or solaris-style u1 17:59 Zeno` it was probably some shitty code written 5 years ago 17:59 hmmmm probably u1 17:59 hmmmm 0.4.12, update #1 17:59 Zeno` I'd really like for the next release to be 1.0.0, but I don't care now 17:59 hmmmm 0.4.11u1 17:59 VanessaE u1? won't that confuse users? 17:59 sfan5 ^ 17:59 SudoAptGetPlay well I'm confused 17:59 hmmmm it's basically 0.4.11, but with an update 18:00 Krock 0.4.11-fix 18:00 hmmmm it's way more than a simple fix unless this is backported to 4-stable 18:00 hmmmm 0.4-stable rather 18:00 cg72 0.4.11.1!!!!!! 18:00 hmmmm in any case 18:00 VanessaE what's wrong with just calling it 0.4.12 then? 18:00 hmmmm what is the other 'major bug' that got fixed? 18:00 SudoAptGetPlay Increase the version number else playrs wil think it's unimportant and will keep playing with a broken game 18:00 VanessaE it's not like you're signalling a major release. 18:00 VanessaE hmmmm: facedir > 23 crashes clients. 18:00 Krock cg72, too many dots and numbers 18:00 hmmmm oh okay 18:00 VanessaE also memory leaks 18:01 hmmmm whatever, we'll do 0.4.12. 18:01 Zeno` there was another way to crash clients as well 18:01 hmmmm next release though is going to be much bigger and 1.0..0 18:01 Zeno` that airlike crap 18:01 VanessaE oh yes, drop an airlike node 18:01 hmmmm also this fixes schematics not working properly when a mod goes missing 18:02 hmmmm also fixes minetest.register_* return values 18:02 Zeno` https://github.com/minetest/minetest/commit/beb6b3e5937160fab583f5dda2be53a651f0ec71 18:02 hmmmm are the formspec things fixed? 18:02 hmmmm are they considered fixed 18:02 VanessaE there's still the matter of autoscaling formspecs 18:02 VanessaE but the fonts are good now 18:03 hmmmm and the light spreading is fixed 18:03 ShadowNinja I haven't finished reading the log, but here's my 2c on releasing: A 0.4.12 release would be good, although I think the l-systems corruption issue should be fixed first if it's still broken. The release after 0.4.X should be 0.5, since we haven't made any significant changes. 18:04 hmmmm just 18:05 hmmmm hang on 18:05 ShadowNinja We use semantic versioning as of the 0.4.12 release (since it's mostly bugfixes). 18:05 hmmmm we can't release like right now 18:05 hmmmm do we really know that upstream HEAD is stable enough for a release? 18:05 Calinou thanks for using semver 18:05 hmmmm I'd like to add a /remove_block command as well 18:05 * Calinou hallelujah 18:05 shadowzone I'm with hmmmm right now, we released 0.4.11 almost 4 weeks ago and we're already planning to release 0.4.12? Doesn't make sense in my mind. 18:06 Krock Calinou, ignore it until we're at 0.5.0 18:06 Calinou I know 18:06 ShadowNinja shadowzone: Because we didn't use semver before. 18:22 sfan5 hmmmm: block as in MapBlock? if yes, why not an api fct. too? 22:09 TriBlade9 I swear I have learned more about C++ from this project than I have in the past five years or so. 22:09 TriBlade9 And I still don't get it much. x] 22:09 acerspyro lol 22:10 acerspyro TriBlade9: I learned C++ by looking at Crawl's source code. 22:10 acerspyro I used to know ncurses almost by heart, tho this is mostly forgotten now 22:10 TriBlade9 :/ 23:04 hmmmm crazy day 23:04 hmmmm so how long is the feature freeze going to be for