Minetest logo

IRC log for #minetest-dev, 2013-03-30

| Channels | #minetest-dev index | Today | | Google Search | Plaintext

All times shown according to UTC.

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:13 rarkenin joined #minetest-dev
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:42 dexter0 joined #minetest-dev
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 <time.h>
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?
02:46 celeron55_ joined #minetest-dev
03:26 sapier left #minetest-dev
05:10 rerivero joined #minetest-dev
05:20 rerivero left #minetest-dev
05:20 rerivero joined #minetest-dev
09:28 RealBadAngel https://github.com/minetest/common/pull/16
09:29 RealBadAngel anybody have something against such huge change? ;)
09:59 _nyuszika7h_ joined #minetest-dev
10:01 _nyuszika7h_ left #minetest-dev
10:13 serengeor joined #minetest-dev
10:24 serengeor joined #minetest-dev
10:33 Jordach joined #minetest-dev
10:33 Jordach joined #minetest-dev
10:57 darkrose joined #minetest-dev
10:57 darkrose joined #minetest-dev
11:22 PilzAdam joined #minetest-dev
12:11 rarkenin joined #minetest-dev
12:25 rubenwardy joined #minetest-dev
13:02 Jordach joined #minetest-dev
13:42 Zeg9 joined #minetest-dev
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:00 hmmmm joined #minetest-dev
15:04 MasterBot joined #minetest-dev
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:17 iqualfragile joined #minetest-dev
15:21 Calinou joined #minetest-dev
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 sapier joined #minetest-dev
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 serengeor joined #minetest-dev
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:43 rarkenin_ joined #minetest-dev
15:43 rarkenin_ joined #minetest-dev
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
15:48 kaeza1 joined #minetest-dev
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:18 prestidigitator joined #minetest-dev
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 prestidigitator left #minetest-dev
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 <original value>-<maintainer value>
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 cisoun joined #minetest-dev
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 sapier joined #minetest-dev
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:58 sapier1 joined #minetest-dev
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 iqualfragile joined #minetest-dev
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

| Channels | #minetest-dev index | Today | | Google Search | Plaintext