Time Nick Message 00:05 sfan5 merging https://github.com/minetest/minetest/pull/3522 in 3 minutes since it's a trivial documentation change 00:13 sofar sfan5: would you mind reviewing #743 as well? 01:25 paramat hmmmm i updated as requested and tested https://github.com/minetest/minetest/pull/3501 'Liquids: Flow into and destroy 'floodable' nodes' now ready for review/approval 02:09 paramat now merging game 744 765 02:15 paramat merged 02:17 sofar wewt! 02:18 sofar oh hey, totally +1 on deleting normalmap textures from default 02:18 sofar it makes it damn hard to make new texture packs, since you're forced to replace those 02:19 sofar $ git branch -D trapdoor 03:03 gregorycu There is some sort of problem placing a 128*128*64 schematic 03:03 gregorycu Serialisation problems 03:11 paramat well that's big 03:11 paramat but yes it should work 03:13 gregorycu decompressZlib(std::istream &is, std::ostream &os) doesn't work properly 03:14 gregorycu Why can't things be simple and just work 03:15 paramat did you create it with worldedit though? 03:16 gregorycu Yeah 03:16 gregorycu oh, looks to be a simple racecondition 03:17 paramat tha tmod may be out of date concerning schematics 03:17 gregorycu This is in C++ code 03:17 paramat ok 03:18 gregorycu is.readsome(input_buffer, bufsize) is called 03:18 gregorycu And if that returns 0, it assumes that the end of file is reached 03:18 gregorycu However, readsome can return 0 even before the end of file is reached 03:18 gregorycu (Which is what is happening here) 03:21 paramat ^ hmmmm 03:23 paramat i can modify my 'testspreadlight' mod to create definable volumes with various nodes, some glowing. quick and easy for me to do 03:38 gregorycu decompressZlib(std::istream &is, std::ostream &os) actually looks very broken? 03:42 paramat i don't doubt it 03:49 paramat ok updated https://github.com/paramat/testspreadlight to create a definable volume of stone and meselamp using LVM, it then runs 'update lighting' on the volume. mod will auto-select singlenode mapgen. bbl 03:55 gregorycu Looks like it decompesses the same data over and over again 05:09 gregorycu that mod worked for me paramat 05:10 gregorycu Looks good 05:10 gregorycu About to test my new code 05:13 paramat ok, i'm updating it now to use an ABM to delay it until a few seconds after mapgen. i don't like how it runs in 'on generated' immediately after chunk generation, delayed is closer to a use case 05:18 gregorycu Cool 05:20 gregorycu I really appreciate the effort you're putting into this 05:21 gregorycu Before: 910546 ms After: 611802 ms 05:25 paramat nice. updated, try the new version 05:26 paramat how about seperate times for day and night banks? 05:26 paramat that mod is by default 80^3 = 500 000 nodes with 500 light sources 05:27 gregorycu Yeah, I can do that 05:27 gregorycu Out of interest, what determines the size? 05:28 paramat just because of my own weird results with night bank being slower 05:28 paramat defining th esize is commented in the code 05:28 paramat pos1 pos2 05:29 paramat where pos is the position of the spawner node (new version) 05:29 gregorycu i see 05:30 paramat and chance of meselamp/stone is commented too 05:38 paramat will merge 3500 3518 very soon 05:38 gregorycu Day then night, using first version 05:38 gregorycu OLD 563 ms 342 ms NEW 406 ms 202 ms 05:38 gregorycu I'll try the updated version now 05:40 paramat good 05:42 paramat don't move (you'll fall off the spawner) and wait 8 sec 05:44 gregorycu That ABM takes longer than 200ms 05:44 gregorycu ;) 05:45 paramat lol 05:47 gregorycu OLD 632 ms 399 ms NEW 779 ms 281 ms 05:48 gregorycu Hooray! It's slower 05:48 paramat weird 05:49 gregorycu I can profile this and find out why :) 05:49 paramat at least the night bank is faster 05:50 gregorycu Which is the opposite of what you experienced 05:55 paramat now merging PRs 05:59 paramat merge failed on 3500, another day.. 05:59 gregorycu I actually have a second round of lighting improvements, I'll see how that goes with this test 06:11 gregorycu NEWER 372 ms 230 ms 06:11 kaadmy nolsen: hmmm? 06:11 nolsen ? 06:11 kaadmy gaben ;) 06:12 nolsen Worth the wait. 06:15 paramat good results, might be worth 2-3 runs to be sure 06:16 VanessaE gregorycu: you still gotta check how it performs spawning a few hundred structures at a time, 1-2 k nodes each 06:17 gregorycu Are you talking about mapgen? 06:17 VanessaE I'm talking about as-opposed-to spawning and profiling a single, million-node structure. 06:18 gregorycu I've profiled a single tree 06:19 gregorycu a few hundred trees represent a few hundred calls to updateLighting 06:19 VanessaE exactly./ 06:19 gregorycu I don't follow 06:19 VanessaE those few hundred calls would be a real-world use case. 06:20 VanessaE (well in practice it's more like, 30-50) 06:20 Hijiri where can I find the definition of minetest.after? 06:20 gregorycu Well, I could do timings for that in lua? 06:20 Hijiri and is it common for after callbacks to be delayed by more than 100 seconds 06:20 Hijiri actually 200 06:20 VanessaE when I last profiled moretrees, I was getting something in the neighborhood of 300 ms for a large tree 06:21 VanessaE but of course that's dependent on the speed of my machine vs yours 06:22 paramat if a single tree has been timed, no point timing multiple trees 06:22 VanessaE Hijiri: check no that's not particularly common, and look in doc/lua_api.txt 06:22 gregorycu I can give you stats for a single tree, I have timing code in there 06:22 * VanessaE shrugs 06:23 VanessaE just trying to help avoid missing anything 06:23 Hijiri VanessaE: for the definition or what? 06:23 VanessaE bah, I can't type. 06:23 VanessaE Hijiri: for minetest.after. 06:23 Hijiri the api doesn't have the definition 06:23 kaadmy Hijiri: dunno, minetest.after seems ok when i use it 06:23 Hijiri It's an after called from playereffects, so it's possible there's a bug there 06:23 VanessaE https://github.com/minetest/minetest/blob/master/doc/lua_api.txt#L2240 06:24 Hijiri but I'm fairly sure it's being called with the correct duration 06:24 Hijiri VanessaE: I have the lua api file open 06:24 Hijiri already 06:24 VanessaE I dunno what more you want; it's stated right there on line 2240 how to use that call 06:25 Hijiri I know how to use it 06:25 kaadmy gah, the mobile version of the GH site doesn't use the line number in the u 06:25 kaadmy url* 06:25 Hijiri my callbacks are taking way longer to be called than I gave as input 06:25 kaadmy and i am not scrolling down some hundereds of pages to find it 06:26 VanessaE then something else is delaying your code, or you're specifying times of the wrong magnitude 06:26 Hijiri I'm printing the duration before the after is called, and it looks fine 06:26 VanessaE good timing in the engine is dependent on your mods not hogging the interpreter 06:26 kaadmy Hijiri: try swappi g the delay and function arguments 06:26 Hijiri won't that cause an error since it will try to use the function as a number? 06:27 kaadmy i THINK the delay is the 1st 06:27 Hijiri it is 06:27 kaadmy dunno, it does cause big problems in javascript without warnings 06:28 Hijiri so does anybody know where I can find the definition of minetest.after 06:28 kaadmy 'night 06:29 kaadmy for me.. 06:29 Hijiri night 06:30 gregorycu With regards to spawning a tree 06:32 gregorycu OLD: 277 ms 6 ms (297 ms) NEW: 176 ms 5ms (193 ms) 06:33 VanessaE nice 06:33 gregorycu That's day, night total for make_ltree 06:33 gregorycu day, night (total for make_ltree) 06:34 gregorycu Not as much as I'd hoped :( 06:43 paramat good results, look forward to the PR 07:15 gregorycu paramat: https://github.com/minetest/minetest/pull/3523 07:16 VanessaE celeron55: since it seemed stable for me, I've put your PR onto my servers for wider testing. 07:16 VanessaE (as of now) 07:17 VanessaE gregorycu: regarding the jungletree test, I assume you hard-coded it to just one of the models the code can spawn? 07:18 gregorycu There are the 3 types 07:18 VanessaE yep 07:18 gregorycu I tried with all of them initially 07:18 gregorycu I made a forest by the time I was done :) 07:18 VanessaE heh 07:19 gregorycu In the case I stated in the PR, no, I didn't ensure that was the case 07:19 VanessaE I find it interesting that there would be such a difference between day and night 07:19 gregorycu The trees don't glow 07:19 VanessaE hm, good point 07:19 gregorycu Basically there is no light to spread at night time 07:20 VanessaE but even the stone/meselamp test, I'd have figured at least moonlight has to spread? 07:20 gregorycu What is moonlight? 07:20 gregorycu I mean, how is it implemented 07:20 VanessaE no idea. 07:21 VanessaE I assumed it was just blueish-tinted sunlight at a lower intensity 07:21 gregorycu That may not be a correct assumption 07:21 VanessaE I guess not :) 07:21 gregorycu Maybe it fades faster than sunlight, therefore less to srpead 07:23 * VanessaE shrugs 07:24 VanessaE either way it's faster than before 07:25 gregorycu Annoyed I couldn't make it even faster, to be honest 07:25 VanessaE well maybe after a bit of rest you'll think of more improvements. 07:26 VanessaE but even those 16 to 42 percent cuts are good 07:33 gregorycu I'm going to begin phase 2 of my day: have fun 07:33 gregorycu greg out 09:13 celeron55 when quitting from a server, minetest just locked up for me in httpfetch_cleanup/Thread::wait/pthread_join 09:14 celeron55 https://gist.github.com/celeron55/7c562c5af21ca6d9943f 09:14 VanessaE were you exiting to menu, or to OS? 09:15 VanessaE (the former has a much higher chance of lockup for me, than the latter) 09:15 celeron55 from game to OS 09:15 celeron55 these lockups need to be reported as issues 09:15 VanessaE maybe some stale handle from media fetch? 09:16 celeron55 i don't know, but there should always be a timeout 09:21 VanessaE oo lockup 09:21 VanessaE how do I attach gdb and .....er, forget it. release build. 09:23 VanessaE http://pastebin.ubuntu.com/14384715/ 09:23 VanessaE probably about as useful as tits on a bull but there you go 09:24 VanessaE looks like a similar reason though 09:35 celeron55 it's the same thing 09:36 celeron55 dunno what thread 3 is though 11:16 gregorycu celeron55: You may be able to give both these PRs +1 trivially, which means someone else can merge them 11:16 gregorycu https://github.com/minetest/minetest/pull/3525 11:16 gregorycu https://github.com/minetest/minetest/pull/3524 11:18 nrzkt gregorycu, ok for me mfor 3525 11:18 nrzkt for 3524 an assert is better than return which can trigger undefined behaviour 11:19 gregorycu len is 0 11:19 gregorycu Which means the memset does nothing 11:19 gregorycu And m_read_offset += len; has no effect 11:19 nrzkt i know, but putRawString with emptyString is not technically possible if i remember the usage 11:20 nrzkt wait a minute, i look at the call tree 11:20 gregorycu Well, it happens 11:21 nrzkt yes it's possible 11:22 nrzkt then okay for me 11:22 nrzkt :) 11:22 gregorycu Awesome :) 11:22 gregorycu I'm always stashing and unstashing those two changes 11:22 gregorycu Thought I may as well get them merged 12:11 gregorycu Thank you both 12:12 nrzkt i don't know if i can merge the network fix because i am the network maintainer, celeron55 can we merge 3524 and 3525 please ? 12:14 celeron55 the subsystem maintainer positions have been completely dropped 12:14 celeron55 anyway i already +1d them 12:14 nrzkt okay celeron55 :) i was absent a little moment and didn't see those updates. i didn't see your +1 :) 12:15 nrzkt then i will merge those thos afternoon (CEST) 12:15 gregorycu Thank you, should save me some bother in the future 12:17 nrzkt thanks :) 12:17 gregorycu I'm going to work on this: https://github.com/minetest/minetest/issues/3204 12:18 gregorycu I haven't coded a feature in a while 13:40 gregorycu lol 13:40 gregorycu So, detecting mods is done in Lua AND in C++ 13:50 nrzkt yes, a common C++ interface could be good 13:51 gregorycu Probably be best if I'm to be peeking inside zip files 13:53 gregorycu So, for https://github.com/minetest/minetest/issues/3204 I was planning to have the mod files all be memory mapped 13:53 gregorycu Will these be problematic for the lua intpreter? 14:03 gregorycu Probably 14:03 gregorycu Let's see what I can do 14:36 gregorycu ShadowNinja: ScriptApiSecurity won't work if a script invokes doFile ? 14:38 nrzkt gregorycu, i merged your two PR 14:38 gregorycu Thanks for that :) 14:47 gregorycu Yeah, I see it's broken 14:47 gregorycu Can i view the logs somehow? Locally it's fine 14:48 gregorycu ahh got it 14:49 gregorycu lol, spot the guy using the new compiler 15:04 gregorycu Comment added for https://github.com/minetest/minetest/issues/3204 16:27 rubenwardy !title https://github.com/minetest/minetest.github.io/pull/52 16:27 ShadowBot rubenwardy: Error: The command "title" is available in the Format and Web plugins. Please specify the plugin whose command you wish to call by using its name as a command before "title". 16:27 rubenwardy !web title https://github.com/minetest/minetest.github.io/pull/52 16:27 ShadowBot rubenwardy: Add link to Windows installer by rubenwardy · Pull Request #52 · minetest/minetest.github.io · GitHub 16:28 rubenwardy web#52 16:28 rubenwardy website#52 16:39 Krock rubenwardy, it should be uploaded on github aswell IMO 16:39 Krock so everything can be found on the same place 16:40 rubenwardy Yes, but I don't have access to there 16:40 rubenwardy If someone could do that... 16:40 Krock that would be great, yeah. 17:44 paramat can anyone +1 'Liquids: Flow into and destroy 'floodable' nodes'? https://github.com/minetest/minetest/pull/3501 is updated as requested and tested. < hmmmm celeron55 17:52 Krock Looks not like it would be dropped 18:01 paramat correct no drops 18:02 paramat .. for now anyway 18:47 Warr1024 Hey, is there any API for accessing mapgen, to regenerate a "pristine" version of a mapblock? 18:49 Warr1024 for instance, for something like a "revert to pristine" feature, or maybe to detect changes, or even to regen an area after tweaking mapgen params? 18:51 paramat yes 'emergeblocks' i think, see lua_api.txt 18:52 paramat it will regen the whole mapchunk containing the blocks specified 18:53 paramat oh hang on, perhaps it's 'deleteblocks' 18:53 paramat yeah 'delete blocks' 18:53 H-H-H sorry guys was out lol 18:54 paramat then mapgen will automatically regen the missing blocks 18:55 celeron55 ehm 18:55 celeron55 it's delete_area and emerge_area 19:40 Megaf hi all, do you know how to make a fully portable Linux version of Minetest? Shipping with libjpeg and irrlicht for example 19:41 rubenwardy http://stackoverflow.com/questions/4820682/linux-binary-independent-of-shared-libraries 19:43 nrzkt rubenwardy, this is a solution but not necessary the better solution 19:43 nrzkt static compilation is another 19:43 rubenwardy that's the second answer, iirc 19:43 rubenwardy Doesn't bother me at all, in any case, I compile myself 20:33 Megaf I'm trying to learn about static compilation yes 20:36 sofar I wouldn't make it static, just link against libc 20:39 Megaf well, I'd like at least libs like libjpeg, libpng, luajit, json, gmp and irrlicht to be linked staticly 20:40 sofar yes, you'd compile all those as libfoo.a 20:40 sofar the let the linker link those into your minetest binaries 20:46 celeron55 you need to be good friends with cmake to make that as painless as possible 20:47 sofar I hate cmake so much, I'd offer to make minetest autoconf'd 20:47 H-H-H is anyone ever that good a friends with cmake, usually it fights back with its fangs out 20:47 celeron55 cmake is great 20:48 celeron55 it has its quirks but other things are still worse 20:48 celeron55 and documentation sucks 20:48 sofar portability of cmake is a disaster 20:48 sofar then again, you could be using scons 20:49 H-H-H i looked at scons once then had to go lay down in a dark room for the rest of the day 20:49 sfan5 Megaf: putting -static in your CMAKE_EXE_LINKER_FLAGS might suffice 20:49 sofar I'm not saying autotools is ideal, it's just far more robust in the end 20:51 celeron55 my experience with abandoned autotools-using projects is an absolute nightmare 20:51 celeron55 my experience with cmake projects of any kind is that they always work with little effort 20:51 sofar it just takes some experience, and a lot of people are using it wrong 20:51 sofar the same can be said for cmake 20:52 sofar I've encountered plenty of cmake using projects that were unsalvagable as well 20:53 sofar I don't think that is a good metric 21:12 Megaf sfan5: as easy as that? 21:12 kahrl autoconf... is that the one that creates these configure scripts of 10000+ lines that nobody ever has a chance to understand and yet everyone runs blindly? 21:13 kahrl just checked, GNU Hello's configure is 16196 lines 21:14 Calinou_ Megaf, bundling is another solution 21:14 Calinou_ ie. you bundle the .so files in the same path as the binary 21:14 Calinou_ this is what Warsow does 21:14 Calinou_ (this allows replacing them easily, as well) 21:14 sofar kahrl: you're not supposed to read configure scripts 21:15 sofar kahrl: try reading configure.ac and Makefile.am instead 21:15 kahrl sofar: but I'm supposed to run them and let them do whatever with my system? 21:15 sofar yes 21:15 Megaf Calinou_: like the windows build is done then 21:16 kahrl might as well install closed source software 21:16 Megaf the windows build has all dll files in the bin folder 21:16 Calinou_ kahrl, proper install prefixes will hardly mess up your system 21:16 kahrl (yes, re-running autotools is an option, but who does that) 21:16 Calinou_ it's not 2002 anymore, most software installs in /usr/local 21:16 Calinou_ (I've however found a software that does install in plain /usr, recently) 21:16 sofar troll much? cmake works exactly the same way, except it hides most of the complexity. with autoconf you can debug every underlying action... not that you should as a normal person 21:16 kahrl Calinou_: assuming ./configure is not malicious 21:17 kahrl sofar: with cmake I can read the cmake scripts, and that is what gets executed 21:17 sofar if you're scared then recreate the configure script by calling autoreconf 21:17 sofar or verify the checksums of what you're downloading 21:18 kahrl autoreconf seems to automatically run the configure scripts anyway if it's a complicated project with lots of subdirectories 21:18 kahrl dunno, I've never looked into autotools much 21:19 sofar cmake scripts are not executable, it produces Makefiles that ... call into cmake again 21:19 sofar look, the way cmake does stuff isn't worse or better than autoconf 21:19 celeron55 so sofar's point is that cmake and autotools are bad if you use them wrong 21:19 sofar pretty much :) 21:20 celeron55 that isn't a reason to switch to either of them 21:20 sofar correct 21:20 sofar the one problem I've found consistently is that cmake projects are very hard to make portable 21:20 celeron55 what do you mean with "portable" 21:21 celeron55 that means completely different things in the minds of different people 21:21 sofar making it compile on other OS's and arch's 21:21 celeron55 to some it means "every posix system", to some it means "exe on a usb stick", to some it means "embedded platforms" 21:21 celeron55 to some it means cross-compilation 21:22 celeron55 to some it means good visual studio integration 21:22 celeron55 give me an example of a platform to which autotools gives better portability than cmake 21:24 sofar oh, there is none, obviously 21:24 celeron55 wait, what? 21:25 sofar well it's all just build instructions, you can endlessly work around it to get stuff to compile for whatever platform you want 21:25 kahrl sofar: I would call it better if it requires fewer workarounds 21:26 celeron55 is this a joke or something; first you said something and now you are contradicting yourself 21:27 sofar no, I was answering your specific question, not stating my problems with cmake 21:28 sofar again, I'm sure that if people properly follow the cmake cross compilation guidelines that it all works nicely 21:28 sofar it's posts like this that I'm referring to: https://plus.google.com/+KoenKooi/posts/N8tFJMgrGp6 21:30 sofar he's a lead embedded developer for various OSS automotive projects 21:30 celeron55 afaik cmake has fewer cross compilation guidelines that need to be followed compared to autotools 21:30 celeron55 really it just comes to keeping things simple and not overriding everything for no reason 21:31 sofar again, I have no issues with projects that use cmake properly and where it works :) 21:31 sofar so it's a moot discussion here 21:42 Megaf I like cmake a lot 21:43 Megaf very flexible, modular, easy to change and adapt 21:43 Megaf I think c55 did a great job using it and writing the CMakeList 21:54 Calinou_ and it has pretty compile output, for once :P with percentage and such 22:55 paramat RealBadAngel hmmmmm kwolekr>"You can get around the S3DVertex/S3DVertexTangents problem by either defining two versions of PreMeshBuffer, or defining PreMeshBuffer as a template struct" RBA>"And thats exactly what i will do for shaders disabled." was this done? seems not 22:57 paramat how about kwolekr>"Due to type covariance, you're able to use a SMeshBuffer wherever an SMeshBufferTangents isn't absolutely needed, and typecast to an SMeshBufferTangents * when it is."? 23:24 paramat ah i see in logs the first didn't work 23:25 paramat nevermind, sorry