Time Nick Message 00:03 sapier1 hmmmm did you add rt library for clock_gettime? It's seams to be missing when I build 00:15 Exio 3/grep -A 5 -B 5 register_ore 00:15 Exio meh 00:20 sapier1 what are you trying to tell? :-) 00:30 Exio i was trying to do a grep for checking about some examples what were posted here 00:30 sapier1 grep in irc? didn't know this is working 00:31 sapier1 btw register ore does a lookup for ndef but doesn't use it at all 00:31 Exio i'm using mosh --predict=experimental (full local "type prediction") because lag and i did "alt-j 313" instead of "alt-j 31" and then typed that 00:31 Exio sapier1: weechat script 00:31 Exio grep.py 00:33 sapier1 :-) 00:45 hmmmm pilzadam, i have not the slightest idea..... i've personally seen it before, under the same circumstances 00:45 hmmmm it happened before the new lighting came about 00:46 hmmmm it's very rare however 00:46 hmmmm sapier, ? what are you compiling with 00:46 hmmmm err on 00:46 sapier undefined reference to clock_gettime debian wheezy 00:47 hmmmm where is it defined on debian according to your info pages? 00:47 hmmmm should be in time.h... 00:47 Exio it compiled in debian6 00:47 sapier its in librt which isn't included 00:47 Exio SYNOPSIS 00:47 Exio #include 00:47 sapier -included linked 00:47 Exio for me ^ 00:48 hmmmm oh 00:48 sapier it's a undefined reference not a missing include 00:48 Exio ah 00:48 hmmmm alrighty 01:09 hmmmm https://github.com/minetest/minetest/commit/963f91204077d0f5c6be1991d7982e8067505fd6 01:10 proller hmmmm, looks like huge cave rare coredimp fix: @@ -1048,7 +1048,7 @@ void MapgenV6::generateCaves(int max_stone_y) { 01:10 proller - main_direction *= (float)ps.range(0, 10)/10; 01:10 proller + main_direction *= (float)ps.range(1, 10)/10; 01:10 hmmmm hmm 01:10 hmmmm was it originally ps.range(0 ? 01:10 proller yes 01:10 sapier older glibc? 01:10 hmmmm yeah 01:10 hmmmm that's what the problem is 01:11 hmmmm proller, lemme look at it a bit closer, hold on 01:11 sapier lol :-) you know wheezy isn't even officialy released :-) 01:11 Exio i'm using squeeze and i didn't have that problem, with an older glibc 01:11 hmmmm wait 01:12 hmmmm i thought Wheezy was a really really old version of debian 01:12 sapier it's 7.0 01:12 Exio squeeze is 6.0 01:13 hmmmm there, i fixed it 01:13 hmmmm 'some' glibcs 01:23 VanessaE and recall with debian, it's always gonna be squeeze, wheezy, and sid in that order. 01:23 VanessaE they refer to branches, not release numbers 01:24 VanessaE (just fyi) 01:24 Exio stable, testing, sid you mean? 01:25 sapier etch was prior squeeze and wheezy ... I assume sid will be renamed to something as soon as it'll be in testing stage 01:26 Exio sid will not get renamed, the packages *on* sid will get moved to testing, what because the freeze-stuff it is not going to be 01:26 Exio and the other release was lenny 01:27 Exio i still have a lenny cd (32bits) in my des 01:27 Exio desk * 01:27 Exio it is not going to be much *** 01:27 sapier hmm but there aren't any security updates for lenny or etch any more are there? 01:28 Exio nope 01:28 Exio lenny got an EOL .. "a bit" ago 01:28 Exio and it is in archive now 01:28 Exio like etch, etc 01:29 sapier I thought so because I updated my servers to squeeze quite some time ago because of lack of security updates 01:29 Exio i wasn't able to try etch, i just started with debian lenny "recently fresh" 01:29 Exio i'm quite new to the linux world :P 01:30 VanessaE what is currently in sid will eventually become part of some other release, but sid will always be the unstable branch. 01:30 sapier debian is progressing very slow :-) 01:30 VanessaE it's named for the character Sid in Toy Story. 01:30 Exio yes 01:30 Exio like all releases of debian, too 01:30 VanessaE yup 01:31 Exio wow, feb 2009 01:31 Exio i'm feeling old ^^ 01:31 Exio http://www.debian.org/releases/lenny/ here sapier, Security updates have been discontinued as of February 6th, 2012. 01:32 Exio it was not a bit ago, just like a year ago :P 01:33 sapier hmm yeah fits that was about the time where I updated 01:34 Exio i still have an IDE disk with an old lenny install 01:38 hmmmm proller, main_direction can still be 0,0,0 anyway if it doesn't get to that line 01:39 hmmmm where exactly does it cause a crash, and what is the crash? 09:28 RealBadAngel https://github.com/minetest/common/pull/16 09:29 RealBadAngel anybody have something against such huge change? ;) 14:59 PilzAdam I think we should change the default tab to singleplayer again and the default server list to the favorite server list 15:05 PilzAdam hmmmm, see log from 5 minutes ago 15:05 hmmmm oh god 15:06 hmmmm oh.. huh? what do you mean 15:06 hmmmm isn't singleplayer the default tab? 15:06 PilzAdam no, proller changed it 15:07 hmmmm mmm..... 15:07 PilzAdam and it also shows the public server list by default in the multiplayer tab 15:07 PilzAdam this can lag if the internet connection isnt good 15:07 proller PilzAdam, i make saving last choise 15:07 hmmmm well, do whatever you'd like, it doesn't really affect me because i never use multiplayer so it's not the first thing that pops up for me 15:08 PilzAdam proller, yea, but leave singleplayer and favorite list as default 15:08 proller its bad for new users 15:09 PilzAdam no, it isnt because you can see the multiplayer tab 15:09 hmmmm not bothering with the politics here... i just want to code 15:10 PilzAdam and, as I said, the public list freezes the GUI while downloading the list 15:11 hmmmm it does?! 15:12 hmmmm i thought it was asynchronous 15:12 hmmmm WTF 15:12 rarkenin If you don't notice it, try firewalling off the IP so you get a nice long wait. 15:12 proller its faster than 1s 15:12 PilzAdam I noticed it when clicking on "Show public" with a slow connection doesnt give you any feedback 15:13 PilzAdam maybe change the button text to "Loading..." or so 15:13 hmmmm erm, just a side not here 15:13 hmmmm almost all games have a main menu screen with singleplayer up top, then multiplayer, then options and whatever 15:13 hmmmm so there's no "default tab" 15:13 hmmmm avoiding this problem 15:14 hmmmm s/side not/side note/ 15:14 Exio xonotic doesn't have any "default" it has a menu (RE too) 15:14 Exio with buttons for singleplayer, multiplayer, options, etc :P 15:14 hmmmm what's RE? 15:14 Exio red eclipse 15:14 hmmmm not familiar with those two 15:14 Exio opensource FPS 15:15 Exio http://www.redeclipse.net/ http://www.xonotic.org/ 15:25 PilzAdam proller, just tested it, it freezes the menu while loading 15:26 PilzAdam and also it doesnt show any warning message in the GUI when the download fails 15:27 proller error windiw with ok? 15:27 proller window 15:28 PilzAdam I would make favorite list default, change the text of the button to "Loading..." while downloading and "Failed" for 2 seconds or so when failed 15:29 PilzAdam also I would add "Favorites:" or "Public Server List:" at the top of the list to tell the user wich list is shown 15:30 rarkenin Also, can the bug with favorites not always being recorded/displayed properly be fixed? 15:30 rarkenin Even if we must use SQLite? 15:32 PilzAdam http://www.zimg.eu/i/2232727882 15:33 proller hmmmm, about coredump: http://paste.org.ru/?qfu8dd 15:33 PilzAdam (but dont make the font as big as in the image) 15:33 PilzAdam ^ proller 15:33 proller PilzAdam, its bad to show favorites list to new stupid user 15:34 PilzAdam its bad the window freezes at startup 15:34 PilzAdam +that 15:34 proller ist empty for him and he must click so\ 15:34 proller mewhere to get list 15:34 PilzAdam when I download something and start minetest in the Multiplayer tab it takes 3 seconds or so until the window shows up properly 15:35 proller freeze bad too, but not a big problem with 1-2s timeout 15:35 PilzAdam it is a big problem 15:36 proller but new user must click to public list and get this freeze 15:36 PilzAdam if there is "Favorites" displayed then they will understand that they have to click on "Show public" to get a server list 15:37 PilzAdam you can also load the server list detached from the GUI 15:39 hmmmm proller, indeed, you're correct that it's caused by vec being 0 15:39 hmmmm but that's not the right way to fix it 15:40 PilzAdam bbl 15:40 hmmmm see, that happens if both vec is 0 and main_direction is 0, or vec is the negative of main_direction 15:40 hmmmm vec has to get to be zero somehow, it's not because 0 was added to vec 15:41 proller how to correct fix& 15:41 proller ? 15:42 hmmmm i don't think there is a correct way to fix this, i don't really understand the logic of it too well 15:42 hmmmm i think we should add a special case for vec.getLength() == 0 15:44 hmmmm float vec_len = vec.getLength(); if (vec_len == 0.0) vec_len = 1.0; for(float f=0; f<1.0; f+=1.0/vec_len) ... 15:45 Exio what about threads? 15:45 Exio new_thread_with_curl; and says loading 15:46 hmmmm a change like this would screw up map generation, but that doesn't really matter, because nobody has ever seen a cave with vec.getLength() == 0, because if they did, they would've crashed 15:47 proller yes, and afterrestart it generates with other params 16:15 proller hmmmm, you make fix or me ? 16:16 hmmmm i'll do it 16:17 proller ok 16:17 PilzAdam proller, so, what do we do about the menu? 16:19 proller my position is: 1 - save last selected and use it; 2 - leave multilayer default as now; 3 - maybe tuning loading with messages-threades-..\ 16:19 PilzAdam we cant leave multiplayer as default, because it lags at startup 16:19 PilzAdam Im fine with the rest, though 16:20 PilzAdam will you code my GUI suggestion? 16:21 proller about error ? 16:21 PilzAdam http://www.zimg.eu/i/2232727882 16:22 proller i can try 16:22 proller but not right now 16:22 proller for gui coding i must reboot to freebsd 8) 16:27 PilzAdam ok, Ill try it then 17:06 PilzAdam hmmmm, I get errors when compiling with ENABLE_CURL=0 17:08 PilzAdam CMakeFiles/minetestserver.dir/main.cpp.o: In function `getTime(TimePrecision)': 17:08 PilzAdam main.cpp:(.text+0x768): undefined reference to `clock_gettime' 17:08 PilzAdam collect2: error: ld returned 1 exit status 17:08 Exio git pull ? 17:08 Exio that should be fixed 17:11 PilzAdam oh 17:35 PilzAdam proller, https://github.com/PilzAdam/minetest/commits/gui 17:38 proller yeah 17:39 PilzAdam I dont know how to change the button to "Loading...", I guess its not possible since the GUI doesnt update 17:40 PilzAdam do you have any idea? 17:41 proller rewrite gui 8) 17:41 PilzAdam ok, Ill push it now 17:51 hmmmm hmm 17:52 hmmmm pilzadam, you don't get that with CURL disabled? 17:52 PilzAdam its already fixed 17:52 PilzAdam I havent pulled the last commit 17:53 hmmmm huh? 17:53 hmmmm oh 17:54 PilzAdam oh, the text rectangle is not wide enough 17:56 PilzAdam fixed 18:26 PilzAdam could it be that the favorite server bug is caused by windows using \n\r for newlines? 18:27 PilzAdam I copied the working file from my Linux build to the win build, and it was displayed correctly in the win build 18:27 PilzAdam but when I removed the last entry, it stopped working 18:29 PilzAdam *\r\n 18:29 PilzAdam I opened the working file and the broken win file with a hex editor and this is the only difference 18:35 PilzAdam when I remove the "\r"s in the hex editor then it works fine 18:36 rarkenin Is this caused by system-specific compiler configuration affetction writes but not reads? 18:40 PilzAdam the methods are in serverlist.cpp:150 and 175 18:54 hmmmm woah :D 18:54 hmmmm man I hate stl 18:54 hmmmm i'm so surprised it worked on the first try though 18:55 hmmmm find_node_near, originally took 130-140us per call, with my optimized ndef->getIds(), it takes about 6-24us 18:58 hmmmm overall ServerEnvironment step time is reduced from 220ms to 136ms 19:08 hmmmm here are some better numbers: with the old getIds, a typical call takes about 207us and find_nodes_near takes a total of 233us. SEnv step takes anywhere from an incredible 323ms to a 267ms. with the modification, getIds takes on average 1us, find_nodes_near takes about 20us on average, SEnv is about 100-140ms on average 19:10 hmmmm that's a 200x speedup for INodeDefManager::getIds(), and an 11.65x speedup in l_find_nodes_near(), and a 2x speed improvement with the overall ServerEnvironment step 19:10 hmmmm getIds() is called in many other places than just find_nodes_near(), so the improvement is much greater than implied 19:19 prestidigitator Heya folks. FYI I've posted a pull request for the noise stuff I've been working on. A sample visual comparison, performance info, and links to code in http://forum.minetest.net/viewtopic.php?id=5146 19:20 prestidigitator (No configuration changes at this point, just the basic internal API.) 19:31 PilzAdam hmmmm, when do we want to release 0.4.6? 19:32 hmmmm after I make the cavegen fixes and push the getIds optimization 19:33 PilzAdam how long do we want to make the feature freeze? 19:33 sfan5 0.5 weeks? 19:33 hmmmm I guess a week like the last time 19:33 hmmmm hm 19:33 hmmmm yeah, a half week 19:33 hmmmm we'll release it on wednesday 19:43 proller prestidigitator, heey! why you delete // version with one perlin3d. use with good params like 19:43 hmmmm eh, proller, don't be too concerned with it 19:44 proller its other floatlands generator 19:44 prestidigitator In order to allow a call to noise to use ANY noise algorithm. 19:44 hmmmm i mean don't be too concerned with what's there, it's not going to look like that at all if it gets in 19:44 hmmmm your code will still work fine 19:45 prestidigitator It is very easy to use the interface I created. If you look at how I changed some of the other calls, it should make things clear. 19:46 hmmmm yeah... i know your stuff is great, but we just don't have the time or effort to put forth rewriting everything because of your noise.cpp that has literally nothing in common with the old one aside from a license comment at the top 19:47 hmmmm i'm sorry, but now i have to take time out from getting other things finished that have a higher priority to make your noise functions fit with minetest 19:47 prestidigitator Oh. I see. Isn't that what having additional contributors is good for? Letting them do some of the work? 19:48 proller nono, i'm about deleted commented block at line 284 of mapgen_indev.cpp 19:48 hmmmm we seem to have extremely different views of what minetest should be 19:48 prestidigitator Oh. Let me take a look. 19:48 hmmmm it wouldn't be in our best interests to let minetest get pulled in every which direction 19:49 prestidigitator Ah. I see. 19:49 prestidigitator In other words, don't even bother trying. 19:50 hmmmm don't get me wrong, i love the idea of having improved perlin noise and simplex noise, and i'd like that get in 19:50 hmmmm s/get in/to get in/ 19:50 prestidigitator And the kind of change Celeron55 was interested in, where you can vary fractal persistence by using another noise algorithm? You're not interested in that? 19:51 hmmmm i already had that 19:51 prestidigitator Ah. Cool. What branch? Can I see? 19:51 hmmmm not in the upstream codebase 19:52 prestidigitator Man. You should have let me know you were enhancing this when we talked about it before. I didn't mean to step on your toes or anything. :-( 19:52 hmmmm it seems like you had that in mind 19:52 prestidigitator Not at all. From what you said you were DONE with changing the noise code, or that's the impression I got anyway. 19:53 hmmmm i really wish we had more communications 19:53 hmmmm -s 19:53 hmmmm you change a lot of things that were there for a purpose 19:54 hmmmm like, just for example, and this is the first thing i see, allocating the noise buffers and freeing them in the gradient functions 19:54 hmmmm you seem to do this under the premise of thread safety 19:54 hmmmm except the noise class was never intended to ever be thread safe, there's simply no need for it 19:54 hmmmm each thread can just as easily have their own noise object to work with 19:55 hmmmm i mean that's just one single example, the list can go on forever 19:55 prestidigitator There's another reason. Noise objects can be shared by different composed noise objects. Having them store the buffer under those circumstances is a bad idea. 19:56 hmmmm so if you don't mind, i'd like to pick the improved perlin noise and simplex noise functions from what you have, and then modify them as needed to fit in with the minetest codebase 19:56 prestidigitator Also, you don't have to fix whether the noise object is being used for 2D or 3D noise blocks at the time it is created/configured. 19:56 hmmmm i'd still give you full credit for this 19:57 prestidigitator I understand. It is WTFPL as far as I am concerned, but do keep in mind that Celeron55 seemed interested in the object-based interface, so you may not want to make the call unilaterally. 19:57 hmmmm the Noise objects were object based 19:58 hmmmm besides, celeron isn't as much as a part of the project anymore as you probably think... it's very community driven now 19:58 prestidigitator LOL. Sorry to put it this way, but no it's not. Not from your attitude. 19:59 hmmmm i know you really love your decorator-design objects with abstract enterprise interface implementing blah blah, but come on 19:59 hmmmm this is another example of what i mean when i say that it doesn't fit 19:59 hmmmm the code style itself, the design of the classes, everything 20:00 prestidigitator Yes, it is professional, enterprise style code. There's no room for that, when it works, is efficient, and makes things easier to use? 20:00 hmmmm i wouldn't call it professional 20:00 hmmmm and i'm not sure if it makes things easier to use eithe 20:00 hmmmm either 20:01 hmmmm please just keep that sort of stuff for your Java/C# database CRUD applications 20:02 sfan5 any comments on https://github.com/minetest/minetest/pull/580 ? 20:02 hmmmm sfan5, looks fine i guess, what is this for, Calinou's mod? 20:02 prestidigitator proller: I'm looking at noise_indev.cpp around line 284 in the change set and not seeing the deleted comment you were talking about. I DID delete dead code when I saw it, as that's usually what revision history is for. If it still served a purpose the deletion could easily be reverted. 20:03 sfan5 hmmmm: i saw VanessaE say that her mod used a check if a specific function exists do determine the minetest "version", so I made this 20:04 hmmmm i hope you're able to check if get_version exists :p 20:04 hmmmm can you do that in Lua? 20:04 sfan5 yep 20:04 PilzAdam it better to check if the function exists than checking the version string 20:04 hmmmm ah, no problems then 20:04 sfan5 "if minetest.get_version" should do it 20:04 hmmmm but yeah, see what PilzAdam just said, and you kind of answered your own question for how to tell if it has a function or not 20:04 PilzAdam what when people fork minetest and use a different version system? 20:04 ShadowNinja maybe it should be a int/float so that you can do > 045 or something like that 20:04 PilzAdam mods wouldnt work on this fork 20:05 hmmmm shadowninja, it'd be better to have a string parsing function in builtin to do that 20:05 RealBadAngel we are using trick with if type == function 20:05 sfan5 checking for functions works: http://pastie.org/7186927 20:05 ShadowNinja yes, that would also work 20:06 hmmmm like, the C-Lua api should have just one way to get something, and the builtin lua functions should do the more petty tasks of presenting it in a different manner 20:06 hmmmm I know we have settings_get and settings_getbool, but that was a blunder (not mine, might i add) 20:07 prestidigitator Take care folks. Better things to do than keep participating in a religious war. Apparently better things to do than keep putting tons of wasted effort into code that's going to get people riled up too. 20:07 hmmmm you could've prevented this by communicating with us before you made all these changes.... 20:08 sfan5 soo.. will anyone merge my pull now? 20:08 PilzAdam no 20:08 hmmmm if I scared him away, i think it might've been in our best interests overall, since his way of doing things (not just in terms of coding) isn't very conducive to the environment 20:09 hmmmm he kind of reminds me of the whole ESR/Linux debacle 20:09 PilzAdam sfan5, its better to check for the function instead checking for a version string that might change completly and would break mods like this 20:10 sfan5 the version string always consist of at least "number.number.number[dev][-something]" 20:11 PilzAdam the version number system might change, people can fork minetest and change it 20:11 hmmmm pilzadam, if they're making a fork where they'd change the version number to something "completely different", don't you think making sure they should appropriately change get_version? 20:11 PilzAdam there are many ways to break this system 20:11 hmmmm though I do agree that a better way of doing this is checking if the function exists 20:11 hmmmm but now you have to check if they all exist before using them..... see a problem? :/ 20:12 sfan5 just because there are many ways to break it doesn't mean it will be broken in the near future 20:13 RealBadAngel checkin for one function is good with rolling release cycle, but overall checkin for version is far better 20:13 PilzAdam but whats the benefit in changing "if minetest.some_function then" to "if minetest.get_version() == "0.4.5" then"? 20:13 sfan5 and if it gets changed drastically the function could return two values one dummy like "9.9.9dev" and one real value 20:14 PilzAdam there is simply no need for this function 20:15 RealBadAngel imho that function shall return version in format just "num.num.num" and nothing more. mods will know that the version of the game is at least based of known stable release 20:15 ShadowNinja ^ 20:15 PilzAdam if people fork minetest and have a different release cycle/version system than mods for the one minetest wont work for the other 20:15 sfan5 RealBadAngel: it does, but the last component (version_patch) can be changed by a package maintainer 20:16 sfan5 but it can only be changed like - 20:17 sfan5 PilzAdam: if the people who fork minetest also want to be mod-compatible they can change minetest.get_version() 20:17 PilzAdam but why force people to do so? 20:17 sfan5 they are not forced to do so 20:18 PilzAdam this problem can be completly avoided by not adding the function 20:18 PilzAdam or add it and add to lua-api.txt "Do not use this function to check for API features" 20:18 sfan5 but anyway, why is it the problem of the minetest core dev team if some work doesn't provide compatibilty for mods using minetest.get_version 20:18 sfan5 *fork 20:19 sfan5 "Do not use this function to check for API features" 20:19 sfan5 then the function would not make any sense 20:19 PilzAdam c55 said Minetest should be easy forkable 20:19 PilzAdam and I agree to him 20:19 PilzAdam sfan5, you can print the minetest version somewere 20:19 sfan5 how does that hinder people in forking minetest? 20:20 PilzAdam they are either have to use the same version system as we do or cange get_version() to support our mods 20:20 PilzAdam -are 20:22 VanessaE if I may chime in: what about the case of "if version > xxx" 20:22 sfan5 "to support" its not good to do "if mt.get_version() != "0.4.6bla" then print('version not supported') explode() end" 20:22 VanessaE ShadowNinja made that point earlier 20:22 VanessaE your string just won't work well in such a case 20:22 sfan5 yeah, thats right 20:22 VanessaE you don't want to check for a specific, exact version 20:23 VanessaE you want to check for "at LEAST this exact version" 20:23 PilzAdam what if one fork adds a feature at 124 and another one in 045 and a mod want to support both forks? 20:23 PilzAdam get_version() is useless in this case 20:23 VanessaE I have to side with PilzAdam for once 20:24 VanessaE check if a desired function exists. 20:24 VanessaE however! 20:24 VanessaE what IS needed is a more complete version string on display at the top left 20:24 VanessaE "0.4.5" is not enough. it should include the current git commit or the build date or something else that's plugged in at compile time. 20:25 PilzAdam hmmmm, http://forum.minetest.net/viewtopic.php?pid=80152#p80152 20:25 sfan5 VanessaE: you are reading my thoughts, but not everyone clones from git 20:25 PilzAdam VanessaE, cmake . -DVERSION_EXTRA=whatever_you_want 20:25 VanessaE it's much easier to tell a user 'your build is too new/old' if you can know for sure what git commit it came from 20:26 RealBadAngel so let it return two strings 20:26 PilzAdam I add the commit hash to my win builds 20:26 VanessaE PilzAdam: nonono think of the random unwashed user who writes to a modder "your mod X won't work, why?" --" well what version is minetest?" --"um...0.4.5" 20:26 VanessaE PilzAdam: so do I. 20:26 RealBadAngel base version and addition 20:26 PilzAdam VanessaE, I saw many people in the forum write: "I have 0.4.5-1a234f45 20:26 PilzAdam " 20:26 VanessaE PilzAdam: I don't see that usually. 20:27 RealBadAngel btw, http://i.imgur.com/CNzoZmb.jpg 20:27 VanessaE every time I have to field a support request 20:27 VanessaE I never get anything but "it's 4.5" (without the 0.) or some similar thing 20:27 RealBadAngel can viewpoint of camera for the clouds be easily changed? 20:27 hmmmm PilzAdam, i don't care about that anymore even 20:27 PilzAdam VanessaE, then point to my "How to report bugs" topic :-) 20:27 VanessaE PilzAdam: hah! 20:28 hmmmm I'll put his simplex and improved perlin noise to use, but the rest... 20:28 VanessaE RealBadAngel: delete menuheader.png 20:28 PilzAdam RealBadAngel, why are there two "Minetest" headers? 20:28 ShadowNinja RealBadAngel: nice, but no, not without source modification 20:28 VanessaE or replace it with a blank image in your texture pack 20:28 ShadowNinja or actually use it for a header 20:28 hmmmm guess prestidigitator never heard of "the frog and the pot" 20:28 RealBadAngel VanessaE, i know, it is still here to check if new one is in good place 20:28 hmmmm it's just way too much, all at once 20:28 VanessaE RealBadAngel: oh ok 20:29 PilzAdam RealBadAngel, also: moretrees trees are ugly 20:29 VanessaE PilzAdam: everyone else seems to like them. 20:29 RealBadAngel cisoun was makin a few versions and i was checkin them 20:29 hmmmm sapier has a bad habit of doing this too, but at least it doesn't completely screw up functionality 20:29 RealBadAngel http://cisoun.dyndns.org/minetest.png 20:29 PilzAdam VanessaE, because they are better than the default trees 20:29 hmmmm and he actually talks with us about it 20:29 RealBadAngel this one is with transparent sky 20:30 PilzAdam VanessaE, one of the trees is good thoug, IIRC is the oak tree or so 20:30 VanessaE PilzAdam: I welcome pull requests to improve the tree models. 20:31 sfan5 what about this? http://pastie.org/7187140 20:31 sfan5 ^ VanessaE 20:32 VanessaE er 20:33 VanessaE and junk would contain.....? 20:33 sfan5 the rest 20:33 VanessaE (where do you populate it?) 20:33 sfan5 e.g. "-deadbeef" 20:33 sfan5 in the sscanf call 20:33 khonkhortisan strace bin/minetest: it runs gettime six times in a row, and lstat from /home all the way down to menuheader.png 20:33 sfan5 actually, i need to use &variable 20:33 hmmmm khonkhortisan, i know about the latter 20:33 VanessaE well 20 chars is a bit much, I was thinking more along the lines of the first 8 chars of the commit hash or something 20:34 khonkhortisan hmmmm, is that normal? 20:34 hmmmm it's a real shame but that's the way things are, it checks if the header/footer/background textures exist in the filesystem every single frame (that's 60 times per second) 20:34 sfan5 think about the case "0.4.7dev-20130617-02d8df94a8" 20:34 VanessaE so perhaps %8s 20:34 hmmmm and then it loads them _FROM FILE_ 20:34 VanessaE hrm 20:35 VanessaE well ok 20:35 hmmmm that's slated to be fixed once someone gets around to renovating main.cpp 20:35 hmmmm and game.cpp 20:35 hmmmm game.cpp more than main.cpp, really 20:35 khonkhortisan Is it possible to check in the opposite order, from the filename then up through the directories if it doesn't exist? 20:35 ShadowNinja I would change that is I knew how... 20:35 VanessaE I guess it wouldn't be obtrusive would it? 20:36 hmmmm is it possible to do that? no it's not.. why would you want to do that again? 20:36 ShadowNinja hmmmm: can you show me an example? 20:36 khonkhortisan So it only does one lstat per-frame 20:36 hmmmm khonkhortisan, yes 20:36 khonkhortisan but that doesn't solve the problem 20:36 hmmmm shadowninja, you don't need an example, just the entire thing is crap 20:36 RealBadAngel guys, would you like to have such wallpaper ingame? 20:36 hmmmm I attempted to fix game.cpp very early on when i started working on minetest, but I gave up 20:36 RealBadAngel as default one? 20:37 VanessaE RealBadAngel: what you linked to? I wouldn't object anyway, of course I override that in HDX 20:37 VanessaE but if we can do it, why not? 20:37 khonkhortisan maybe I'll take a stab at it 20:37 hmmmm a good idea would be to make all the local variables in the_game() into a class called Game 20:37 hmmmm no globals, though 20:37 PilzAdam RealBadAngel, we have a thread for that in the forum 20:37 hmmmm the game state needs to be easily recyclable 20:37 VanessaE RealBadAngel: I think a lot will object to the minecraft-esque pattern the "MINETEST" is rendered as though 20:38 RealBadAngel PilzAdam, yeah but i do have right now cisoun (the author) right there and hes ready to apply any suggested changes if needed 20:39 RealBadAngel lemme do another screenshot, hold on 20:40 PilzAdam RealBadAngel, this thread 20:40 PilzAdam http://forum.minetest.net/viewtopic.php?id=5289 20:40 VanessaE PilzAdam: move the player down/closer to the camera. render "MINETEST" in some Minetest-specific style, maybe using some mese. 20:40 VanessaE er.... 20:40 VanessaE RealBadAngel: ^^^^^^ 20:40 PilzAdam oh god, please no mese in the header 20:40 khonkhortisan it does both clock_gettime(CLOCK_MONOTONIC and stat("/etc/localtime" 20:41 VanessaE PilzAdam: why? 20:42 PilzAdam people always try to make something minetest unique (mese) into everything and it just looks ugly 20:42 Jordach ^ your problem not ours 20:42 VanessaE PilzAdam: you're not an artist. cisoun obviously is 20:42 hmmmm kohnkhortisan, just FYI, that isn't caused by my recent changes 20:42 VanessaE let the artists decide what does or doesn't look ugly to start with 20:42 PilzAdam VanessaE, but I know what looks good :-) 20:43 hmmmm i use CLOCK_REALTIME, not CLOCK_MONOTONIC, CLOCK_MONOTONIC is usually for uptime and is system-dependent (meaning some api that's being called uses that, probably Irrlicht i'm guessing) 20:43 khonkhortisan I just now started running strace, I'm not git-blaming anyone yet 20:43 PilzAdam people dont need to be artitsts to like things or not like things 20:43 RealBadAngel http://i.imgur.com/WvX7gEk.jpg 20:43 hmmmm what's this scrabble about, moretrees? 20:44 hmmmm I like moretrees, I originally planned to have them in Mapgen V7 20:44 VanessaE hmmmm: the menuheader. 20:44 hmmmm oh 20:44 RealBadAngel moving clouds are there, but with wrong angle 20:44 VanessaE see rba's link ^^^ 20:44 hmmmm ahh 20:44 khonkhortisan it could use a real world instead of moving clouds 20:44 VanessaE khonkhortisan: waste of cpu cycles 20:44 RealBadAngel its an artwork 20:45 khonkhortisan yep 20:45 hmmmm if you want to make that look right, you're going to have to 1). disable clouds and take another screenshot and use that as the header 20:45 VanessaE why render the world if the only thing that needs to move is the clouds? 20:45 PilzAdam RealBadAngel, just add it to the thread, people can talk about it there 20:45 hmmmm 2). modify the menu cloud camera vector 20:45 hmmmm or 3). take another screenshot at an angle that matches the clouds being currently drawn 20:45 RealBadAngel 3 is impossible rather 20:46 RealBadAngel 2 is imho best option 20:46 VanessaE hmmmm: I would have voted for a different angle as well, something less steep 20:46 hmmmm okay, i just hope the menu clouds look right 20:46 ShadowNinja look in main.cpp after line 1600 20:47 hmmmm be sure to show me the angle before you make modifications to that 20:47 VanessaE I suggest a youtube video in that case 20:47 hmmmm err upstream modifications 20:47 hmmmm yeah youtube video 20:47 VanessaE (to show the movement of the clouds) 20:47 hmmmm or you can just tell me what camera position you're using and i'll plug it in and see for myself 20:48 hmmmm i have a feeling it's going to make things look too bare if you do fix the camera angle for that particular screenshot 20:48 RealBadAngel cisoun, can you tell us that? 20:48 VanessaE hmmmm: I think the idea is for that ^^^^ image to become the default menu background over the vlouds 20:48 VanessaE clouds* 20:48 hmmmm maybe it would be best if there was a setting for different camera angles, so peoples' custom backgrounds would look the way they'd like 20:48 VanessaE so that the plain clouds are no longer seen by themselves 20:49 hmmmm i like my plain clouds :( 20:49 hmmmm well, doesn't matter to me 20:49 VanessaE I agree with being able to change the camera angle at runtime actually 20:49 VanessaE a simple Lua hook only usable at the menu 20:49 RealBadAngel hmm, bout that i thought too, to make it customizable 20:49 hmmmm lol 20:49 hmmmm lua is definitely not available at the time the menu is being drawn 20:49 hmmmm not only is that a horrible idea, it's impossible 20:49 VanessaE something that can be supplied with a texture pack (like what Gambit does with Minetoon, to modify the furnaces) 20:49 RealBadAngel config setting 20:49 khonkhortisan matrix effect with panoramic spinning pictures + animated clouds 20:50 VanessaE ok, a config setting then 20:50 VanessaE I guess I should have assumed Lua wouldn't be available, duh :) 20:50 cisoun customize the camera's angle in the config file should be a good idea even if it's an useless feature. 20:51 VanessaE cloud_camera_angle = xxx,yyy,zzz; yaw,pitch,roll --> menu_screen_settings.txt 20:51 hmmmm well hold on a minute 20:51 hmmmm you also have to supply the position too 20:52 VanessaE that's what xxx,yyy,zzz are for 20:52 VanessaE six settings. 20:52 hmmmm oh i didn't see that 20:52 VanessaE x,y,z; y,p,r 20:52 hmmmm i didn't notice ; 20:52 VanessaE semicolon to separate them visually 20:52 hmmmm could be a good idea to use getStruct() for this :) 20:53 VanessaE might be useful for turning off some graphical elements too, e.g. menu_header == false instead of supplying an empty image 20:53 hmmmm am i using an m less than usual? 20:53 VanessaE nope 20:54 VanessaE THERE. ARE. FOUR. M'S! 20:54 VanessaE ;) 20:54 hmmmm what are the guys in #minetest talking aobut then 20:54 VanessaE beats me, I'm not watching that channel yet 20:54 cisoun I can't tell the camera angle I took but it must be ~10° 20:54 khonkhortisan Tecan only used three m's 20:54 VanessaE maybe because you use kwloekr or however it's spelled, in some placed? 20:54 VanessaE places* 20:56 sfan5 the possibility of VERSION_PATCH containing junk at the end makes it more complicated: http://pastie.org/7187347 20:57 RealBadAngel sfan5, that looks ok for me 20:57 sfan5 but doesn't work 20:58 sfan5 basic_string::_S_construct null not valid 20:58 RealBadAngel lol 20:58 VanessaE sfan5: you should filter for hex specifically, 20:58 VanessaE not just alphanum 20:59 sfan5 VanessaE: it stops at the first not number 20:59 sapier1 atoi results shouldn't be used unchecked 20:59 sfan5 (i changed isalnum to isdigit 20:59 sfan5 ) 20:59 VanessaE ah 20:59 VanessaE ok 21:00 sfan5 sapier1: how should i check the result? 21:00 sfan5 ... 21:00 sapier1 atoi sets errno on error 21:00 sfan5 i need to check for NULL 21:00 sapier1 I assume major and minor version can't be anything non number but version patch could be 21:01 sfan5 is it ok to use asser(atoi(CMAKE_VERSION_MAJOR) != NULL); ? 21:01 sfan5 *assert 21:02 sapier no ;-) so you'll assert on 0 ;-) 21:02 sapier e.g. 1.0.0 21:02 sfan5 hm, right 21:02 sfan5 is there errno.h on win? 21:02 sapier atm you'll push 0 on valid 0 as well as on error 21:03 sapier maybe this is even desired behaviour but if this is true you should add a comment there to note why you don't need to check for error 21:05 sfan5 wtf?! 21:06 Exio wait wait, atoi? 21:06 sapier as far as I know atoi returns 0 on error too 21:06 sfan5 everything works fine atoi and everything else, but it still raises an exception 21:06 VanessaE brb 21:07 sfan5 silly me! forgot to raise the return value lua handles 21:12 PilzAdam hmmmm, the shadows appeard again 21:12 PilzAdam it has definetly something to do with saplings growing 21:13 PilzAdam when the player isnt near by 21:14 hmmmm hmm 21:17 hmmmm pilzadam, it flickers in and out to being normal and completely dark, no? 21:17 PilzAdam no, its always dark 21:17 hmmmm yeah i don't know 21:17 PilzAdam a new sapling that grows fixes it 21:17 VanessaE hmmmm: it's mapblock-sized and completely black in the center. 21:18 VanessaE I've seen these on my server also. 21:18 hmmmm i guess we can try adding in a Mapgen::calcLighting() before blitBackAll() in the abm 21:18 hmmmm i don't really see why that happens though 21:18 hmmmm do you guys remember when that first started happening? 21:18 VanessaE a few days ago I guess 21:18 PilzAdam yesterday for me 21:18 hmmmm no way before that 21:19 hmmmm I saw it when i was reorganizing mapgen v6 21:19 VanessaE and it happens in mapblocks that are already long since generated and built-on 21:19 hmmmm before the new lighting calculations 21:19 VanessaE whole mapblock-sized square shadows? 21:19 hmmmm yes 21:19 VanessaE in old terrain? 21:19 hmmmm well, no 21:20 hmmmm none of my terrain is old, i don't have a single map 21:20 VanessaE that's what happened here. 21:20 proller and shadows must be fixed for floatlands 21:20 hmmmm i create a new map every time i change something 21:20 proller too dark if jump from 30000 21:20 hmmmm proller, hmm? 21:20 proller every island have shadow 21:20 hmmmm a really dark black shadow? 21:21 PilzAdam VanessaE, the shadows arent square sized for me 21:21 proller at 15000 - full night 21:21 proller like in cave 21:21 hmmmm pilzadam, we're talking about deep, completely black shadows, areas of no light at all 21:21 hmmmm proller, i'm going to have to see it 21:22 sfan5 i've made the get_version() function better: https://github.com/minetest/minetest/pull/580 21:22 proller indev mapgen, teleport 0,30000,0 - jump down from every island 21:23 hmmmm now i know that the tree growing shadow problem isn't caused by my lighting code, because i noticed that before 21:23 hmmmm could it just be that it's a very rarely occuring thing? 21:26 VanessaE hmmmm: I've never seen the square shadows happen on a map before. 21:26 VanessaE only the oblong, dim ones, which I know those are unrelated. 21:27 VanessaE //fixlight in worldedit wasn't enough to fix them, either, btw. I had to spawn a bunch of sand, make that fall, then //replace it with air 21:27 VanessaE if that tells you anything 21:27 hmmmm how does fixlight work? 21:27 VanessaE it digs every air node in the selected region 21:27 sapier Any comments on this: https://github.com/minetest/minetest/pull/575 last discussion didn't quite give a clear result (at least to me) 21:27 VanessaE forcing a lighting update 21:29 hmmmm sapier, the answer was 'yes, but not immediately' 21:29 hmmmm i see you fixed up the minor code style issue 21:29 sapier minor :-) 21:29 hmmmm but something like that.... not right before 0.4.6.. 21:30 sapier ok ... I assume you are aware of the additional work generated by delaying this ;-) 21:30 hmmmm it's not going to be too bad 21:30 hmmmm there are people who want to add more apis right away 21:31 hmmmm they can wait though 21:31 hmmmm and like you said, it doesn't change things functionally, so having to update to the new scriptapi format shouldn't be too hard 21:31 sapier I'll keep the patch up to current master ... hoping there aren't big changes there 21:31 hmmmm i'll make sure there aren't 21:33 sapier I've added rofiler support to the functions that don't require map to be locked ... in numbers this is almost 2/3 of all api functions ... but I'm not quite sure how to interpret profiler results 21:34 hmmmm a decent way to tell is, "if it takes >= 1ms, it shouldn't be locked" 21:34 hmmmm an entire millisecond is really heavy 21:35 sapier yes but 100 0.1 ms locks are heavy too ;-) 21:36 VanessaE interesting thing about that - in the old days if it took more than one vertical refresh, it was "heavy" heh 21:36 hmmmm you're supposed to take into account how often it's called too.... 21:36 sapier and of course most of those functions can contain long run lua code done by modders ... ok as long as separate lua thread isn't added removing locks doesn't help that much 21:36 hmmmm vanessae, that's a full 13.5ms 21:36 hmmmm of course it's heavy 21:37 VanessaE hmmmm: yeah but I'm talking about when computers were measured in single-digit MHz :) 21:37 hmmmm gotta adapt 21:37 VanessaE yup 21:37 khonkhortisan I got it to not lstat / to menuheader.png every frame by static const-ing getTexturePath and getTexture. 21:37 sapier a lock is always to long no matter how short it is ;-) 21:38 hmmmm sapier, which is why i was saying we should get some atomics in there 21:38 hmmmm and non-locking concurrent data structures 21:38 sapier would be best yes 21:38 hmmmm i have an atomic hashtable to be used in place of std::map where you'd normally need a lock 21:38 sapier but it's a long way to get there 21:38 hmmmm i didn't do much with that yet however 21:39 sapier we need to reduce data coupling 21:41 hmmmm vanessae, i think the tree lighting problem is related to caves in the air. 21:42 hmmmm there's some other factor involved that causes problems but i'm not sure of what it is 21:42 hmmmm it happens with MapBlock::propogateSunlight() 21:43 hmmmm it reads no light for an overtop that has a light value of 0, which is the same reason why you have the cave shadows 21:46 sapier grrr ... did anyone ever have to use sandpaper to get his mous working on desk again? :-) 21:47 VanessaE I use a mousepad with gel wrist rest :-) 21:47 VanessaE hmmmm: then it must be happening when someone flies up fairly high and forces mapgen to generate "empty" blocks 21:48 sapier I managed to polish my desk to an extent where optical mice don't work correct anymore ;-) after using sandpaper a few minutes ago it's working again :-) 21:48 VanessaE (since caves are still generated yet) 21:49 khonkhortisan aw, I moved the menuheader while minetest was running and it didn't disappear :( 21:52 Exio well, at least we are not alone, that happens in mc too! 21:52 Exio (the shadows) 21:54 khonkhortisan If I use before and after straces, should I make sure that the clock is actually older in the after? 22:02 hmmmm wow 22:03 hmmmm the more i look at that presdigitator guy's code, the more i'm glad i pretty much told him to fuck off 22:03 hmmmm he really changed everything for the sake of changing everything 22:03 hmmmm and made pretty much all things related to perlin noise really awkward and more difficult to use 22:09 VanessaE bbl 22:09 khonkhortisan heh. Got a temporary 404 on the pull request list after adding one. 22:11 RealBadAngel hmmmm, have you played with the camera settings? 22:12 PilzAdam hmmmm, this shadow bug seems reproduceable 22:12 PilzAdam it keeps reapring when I place saplings, go mining and when I come back the shadows are back too 22:13 ShadowNinja hmmmm: looks like I missed that optimization in one place, the splash path is checked twice 22:16 proller hmmmm, flag for high ores: https://github.com/proller/minetest/commit/8cf75d3cccf1f2d79ee8f60757013ea175b6e0d5 22:31 hmmmm realbadangel, not yet, thought you were going to do that 22:31 hmmmm pilzadam, i need to try that out 22:31 hmmmm shadowninja, make a patch for it? 22:32 RealBadAngel hmmmm, and i thought you were about to do it :) 22:32 hmmmm proller, actually this is a good opportunity to make a generic 'flags' field for the Ore structure which i've been meaning to do for some time 22:32 RealBadAngel ok, i will code it right now 22:32 hmmmm realbadangel, sorry, no.. you're the one with the splash 22:32 ShadowNinja hmmmm: sure, one minute 22:33 RealBadAngel btw, seen a fix regarding menu images 22:33 hmmmm proller, if it's not too big of a deal, change height_abs to 'flags' and make a new enum and all that stuff 22:33 hmmmm i should probably merge what you have right there and then fix it myself though 22:34 hmmmm i got so behind by talking on irc instead of coding 22:37 proller now its possible multiply height_min,max by height_abs - like -64..-256 *2 = 512..128 , but maybe not need it it 22:37 ShadowNinja hmmmm: While I am at it I will remove a useless comment or two from it 22:38 hmmmm okay guys, seriously 22:38 hmmmm from now until 7pm i will not be looking at things, just fixing and pushing what i currently have to do at the moment 22:39 sapier great its already 11:40 pm :-) 22:39 hmmmm you know what i mean 22:39 hmmmm 5? UTC 22:39 sapier I do :) 22:40 hmmmm ugh why do people do this ---> if(!lua_isnil(L, -1)) f.has_on_construct = true; 22:40 hmmmm what's wrong with using the enter key 22:41 RealBadAngel im also using that style when if is followed with single short liner 22:41 hmmmm it makes it seem like you have something to hide 22:42 hmmmm please, everyone, use the linux kernel code style 22:42 RealBadAngel imho it makes code just cleaner 22:42 RealBadAngel but ok 22:42 hmmmm well what it does is makes it more compact, that's for sure 22:43 hmmmm your eyes have to do more work to scan for what the if statement does, instead of just looking at the indented part a line below 22:43 ShadowNinja hmmmm: https://github.com/minetest/minetest/pull/582, note I can't start minetest right now because I am connected over ssh but it compiled 22:44 hmmmm alright no problem 22:52 Jordach hey, i've just spotted irregularities in my server map 22:52 Jordach http://jordachscity.tk/map.png 22:52 Jordach go look near the top 22:52 Jordach repeated dots have been printed 22:52 Jordach uhoh wrong channel 22:59 hmmmm those dots are probably the regular non-jungle grass, and a black pixel was placed because minetestmapper's definitions haven't been updated yet 23:13 hmmmm dosh 23:13 hmmmm https://github.com/minetest/minetest/commit/4d4aa439b90b33e293cc9192e79da03c346297ed 23:23 RealBadAngel well, im not quite sure if settings for clouds are needed at all 23:23 RealBadAngel hmmm, do you have this menusplash.png file? 23:24 VanessaE hmmmm: ShadowNinja made a patch for C++ mapper to fix that black dots bug. 23:24 VanessaE (I think he did anyway) 23:25 VanessaE damned if I can find the commit for it though 23:35 khonkhortisan ShadowNinja|Away, our pull requests probably won't merge automatically 23:36 RealBadAngel http://i.imgur.com/xXhOQBz.jpg 23:36 khonkhortisan even better 23:37 RealBadAngel main.cpp line #1650 set to: 23:37 RealBadAngel v3f(0,0,0), v3f(0, 0, 1)); 23:38 RealBadAngel and player is lookin straight