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 |