Time |
Nick |
Message |
00:09 |
|
RealBadAngel joined #minetest-dev |
00:15 |
ShadowNinja |
VanessaE: PM me, maybe I can fix it. |
00:17 |
VanessaE |
ShadowNinja: already did, see inchra. |
00:35 |
Taoki |
RealBadAngel: Since we spoke about adding a dynamic lighting system via shaders, I looked up something which could be very useful. Modern hardware lights are done using "deferred shading". This is the renderer taking multiple passes (geometry with textures + geometry with shading + etc) and combining the images together... obviously all of it each frame |
00:35 |
Taoki |
http://en.wikipedia.org/wiki/Deferred_lighting |
00:36 |
Taoki |
This might be the best way to go for doing it in Minetest too. Multiple passes might be slower, but generating the unlit geometry + lighting map separately could be the key |
00:38 |
Taoki |
RealBadAngel: It would also fix the issue of sunlight shining in caves. How would be simple: We would render 3 passes per frame. First is the textured and unlit geometry, second is the untextured geometry with param2 (current lighting system), and third is the untextured geometry with dynamic lighting. subtract the param2 map from the lighting map, and add that over the textured map. |
00:39 |
RealBadAngel |
sounds pretty easy |
00:40 |
RealBadAngel |
and of course multiple passes will be slower |
00:40 |
RealBadAngel |
i think we shall take a closer look on how SEUS shaders does that |
00:42 |
Taoki |
Yeah |
00:42 |
Taoki |
Actually, 2 passes could work too. We could render the textured scene + dynamic light, and darken that with the untextured scene using black & white areas generated by param2 |
00:43 |
Taoki |
I'm not sure how it works exactly, but thought to let you know about it if it helps :) |
00:49 |
RealBadAngel |
i will read those papers and think about it |
00:50 |
RealBadAngel |
please read "disadvantages" section, there are problems with transparency there |
00:51 |
Taoki |
RealBadAngel: Yeah. It discusses pros and cons of two methods: Deferred lighting, and deferred shading (apparently its opposite) |
00:51 |
Taoki |
Apparently the deferred SHADING approach is much better |
01:17 |
Sokomine |
oh. many people present. fine! |
01:20 |
Sokomine |
i wonder how difficult it would be to integrate the mapp mod into the client? to let the client draw a simple 2d map of the sourroundings of the player? doing that server-side is crazy |
01:21 |
Sokomine |
i do not have the knowledge of the code to do it. a lot has been achieved in the past, and the game has developed greatly (of course there are still issues...and there'll probably always remain some. but it's a great game!) |
01:44 |
|
kahrl joined #minetest-dev |
02:08 |
|
kahrl joined #minetest-dev |
02:13 |
RealBadAngel |
Sokomine, having such minimap would be great indeed |
02:14 |
Sokomine |
i've just forked 4aimans mapp mod. that's server-side and works with formspecs. which is...a bit...inefficient...one could say :-) but what else can a poor mod do? |
02:16 |
OWNSyouAll |
Whats the reason for not allowing custom types for crafting recipes? |
02:18 |
Sokomine |
if you know where everything is (=where to find the data structures for the map chunks received and how to interpret them correctly) and how to get irrlicht to draw something, it certainly ought to be doable |
02:19 |
RealBadAngel |
OWNSyouAll, theres no reason, one should code that |
03:00 |
|
bas080 joined #minetest-dev |
03:38 |
|
us_0gb joined #minetest-dev |
04:08 |
|
OldCoder joined #minetest-dev |
04:32 |
|
OldCoder joined #minetest-dev |
04:58 |
|
Zeitgeist_ joined #minetest-dev |
05:35 |
|
Zeitgeist_ joined #minetest-dev |
05:35 |
|
Zeitgeist_ joined #minetest-dev |
05:57 |
RealBadAngel |
if somebody wanna test and review: https://github.com/minetest/minetest/pull/1112 |
05:57 |
RealBadAngel |
new HUD element |
06:04 |
xyz |
any news on water shader you were making? |
06:07 |
RealBadAngel |
i want to push the latest changes i made to shaders first, the normal map generation etc |
06:07 |
RealBadAngel |
then i will continue with other things |
06:08 |
RealBadAngel |
i have one week off, so plenty time for coding |
06:16 |
xyz |
alright |
06:17 |
xyz |
~tell BlockMen m_camera_direction *= (-1,1,-1); |
06:17 |
ShadowBot |
xyz: O.K. |
06:20 |
us_0gb |
RealBadAngel: That's awesome! |
06:26 |
hmmmm |
i'm not really sure 3d world-oriented visuals should be classified as part of the HUD |
06:26 |
hmmmm |
when people think of a HUD they think of a set of 2d interface elements statically positioned |
06:27 |
hmmmm |
but in this case it just happens to work out cleanly because it requires much of the same functionality as the hud elements do |
06:27 |
hmmmm |
i feel like waypoints should be classified as the same kind of thing that the pointedthing box is |
06:28 |
hmmmm |
which I don't think it is classified as anything in particular, just some 'stuff' that gets drawn in the big main loop |
06:32 |
xyz |
are waypoints always displayed? wouldn't that be kinda annoying? how about additional param, distance? |
06:32 |
xyz |
"number: An integer containing the RGB value of the color used to draw the text" this is quite strange naming |
06:32 |
hmmmm |
that's because number is a generic integer value that happens to take on that role for that sort of HUD element |
06:33 |
hmmmm |
the hud could've been designed a lot better but I was merely enhancing what some other guy came up with already |
06:47 |
xyz |
ah, then it's okay |
06:48 |
xyz |
somewhat |
06:49 |
xyz |
by the way |
06:49 |
xyz |
"what's so hard with having a single packet in the beginning of the connection to negotiate key positions within messages" |
06:50 |
xyz |
ah, nevermind |
06:51 |
xyz |
I wanted to give some argument but forgot it |
07:09 |
|
darkrose joined #minetest-dev |
07:09 |
|
darkrose joined #minetest-dev |
07:43 |
|
Zeitgeist_ joined #minetest-dev |
08:11 |
|
werwerwer joined #minetest-dev |
08:47 |
xyz |
wat |
08:47 |
xyz |
https://github.com/minetest/minetest/blob/master/src/CMakeLists.txt#L590 |
08:47 |
xyz |
why's curl there? |
08:47 |
xyz |
sfan5: |
09:44 |
|
Gethiox3 joined #minetest-dev |
09:54 |
|
bas080 joined #minetest-dev |
10:40 |
|
proller joined #minetest-dev |
12:28 |
|
ImQ009 joined #minetest-dev |
12:31 |
sfan5 |
xyz: probably happend while copy pasting |
12:31 |
sfan5 |
fix incoming in 10 minutes |
13:01 |
RealBadAngel |
xyz, waypoints are displayed when defined, a mod shall manage definition of waypoints, editing them etc |
13:01 |
RealBadAngel |
i made waypoints in Lua before, but since its animation it sucked |
13:02 |
RealBadAngel |
hmmm, and yes, waypoints are generic HUD elemets, look at any flight simulator |
13:06 |
xyz |
okay |
13:09 |
|
BlockMen joined #minetest-dev |
13:10 |
CiaranG |
Say I wanted to use keys (e.g. arrow keys) instead of the mouse - is that something that a) has already been done/discussed, b) can be done in a mod in lua, or c) needs core code changes to support it? |
13:10 |
RealBadAngel |
c i think |
13:10 |
|
ImQ009 joined #minetest-dev |
13:11 |
BlockMen |
xyz, ? |
13:11 |
xyz |
what? |
13:11 |
RealBadAngel |
wait a sec |
13:11 |
xyz |
you mean what's wrong with your code? |
13:11 |
RealBadAngel |
just redefine your keys lol |
13:11 |
xyz |
* (-1, 1, -1) doesn't do what you want it to (what do you want?) |
13:12 |
RealBadAngel |
ah, that would be for movement just |
13:12 |
BlockMen |
xyz, yes it does. it inverts the camera direction in front view mode |
13:12 |
BlockMen |
*the given direction |
13:12 |
xyz |
it's the same as * -1 |
13:12 |
xyz |
why did you write it like this? |
13:12 |
BlockMen |
no, because of y value |
13:12 |
xyz |
eeh |
13:12 |
xyz |
alright |
13:12 |
xyz |
do you know what operator , does? |
13:13 |
CiaranG |
RealBadAngel: Yeah, no ability to redefine mouse movement or left/right click currently, that I could find |
13:13 |
xyz |
if you want to do what I think you want to you need to use v3f(-1, 1, -1) |
13:13 |
RealBadAngel |
CiaranG, so that would be c) then |
13:13 |
CiaranG |
Ok, I'll look into implementing it then, thanks |
13:14 |
RealBadAngel |
maybe pressing ALT + arrows to simulate mouse? just a random idea |
13:14 |
BlockMen |
alright, forgot the vf3, but worked for me anyway:P |
13:14 |
* BlockMen |
will add vf3 then |
13:14 |
xyz |
after fixing it won't |
13:14 |
|
kaeza joined #minetest-dev |
13:14 |
xyz |
be aware |
13:14 |
RealBadAngel |
xyz, have you tested how waypoints are working? |
13:16 |
xyz |
no, but I find the idea nice |
13:19 |
BlockMen |
just as general question, is there a specific reason that there is that much commented out/old code in source? i thought we have github for looking up old code if necessary |
13:20 |
xyz |
dunno, I too think we have git for old code |
13:21 |
xyz |
you see, there's even the "old" directory |
13:21 |
RealBadAngel |
that works pretty well as a reminder for the author on the other hand |
13:22 |
RealBadAngel |
i left there parallax code and implemented better version of it |
13:22 |
xyz |
reminder? |
13:23 |
RealBadAngel |
kinda TODO |
13:24 |
|
diemartin joined #minetest-dev |
13:24 |
xyz |
well in that way it's okay |
13:24 |
xyz |
but I find old unused code way too often |
13:25 |
xyz |
https://github.com/minetest/minetest/blob/master/src/content_sao.cpp#L160 |
13:25 |
xyz |
"DEPRECATED" |
13:25 |
xyz |
still left in source for whatever reason |
13:28 |
xyz |
aha, it |
13:28 |
proller |
but bad idea to move it to lua.. |
13:28 |
xyz |
it's probably left for deserialization? |
13:29 |
RealBadAngel |
no idea |
13:29 |
xyz |
well who knows |
13:30 |
BlockMen |
i was talking about something like this https://github.com/minetest/minetest/blob/master/src/hud.cpp#L188,L209 |
13:31 |
RealBadAngel |
since HUD can add selected slot image its really deprecated and obsolete code |
13:44 |
|
iqualfragile joined #minetest-dev |
13:48 |
|
ImQ009 joined #minetest-dev |
14:04 |
* VanessaE |
grumbles at yet another random segfault |
14:15 |
|
hmmmm joined #minetest-dev |
14:18 |
VanessaE |
ok, I know how to reliably segfault a server. |
14:18 |
VanessaE |
this is a security hole. |
14:18 |
VanessaE |
or DoS anyway |
14:19 |
VanessaE |
Where do I post this? |
14:19 |
|
zat joined #minetest-dev |
14:19 |
VanessaE |
I've got a gdb full backtrace available of the segfault, and a very simple command to cause it. |
14:20 |
hmmmm |
...minetest has had segfaults before. |
14:20 |
VanessaE |
this is a remote exploit. |
14:20 |
hmmmm |
while i'm not at work do you want to tell me |
14:20 |
hmmmm |
because i'm not going to be around for a good 9 or so hours |
14:21 |
VanessaE |
msg --> |
14:21 |
VanessaE |
did it twice in a row, caught the backtrace on the second try |
14:23 |
xyz |
msg me too |
14:26 |
hmmmm |
message the russian hacker about an exploit :D |
14:28 |
VanessaE |
heh |
14:28 |
RealBadAngel |
hmmmm, so whats your vote on waypoints commit? |
14:28 |
hmmmm |
i like it |
14:29 |
RealBadAngel |
any comments on the code itselft? |
14:29 |
hmmmm |
haven't looked at that yet |
14:30 |
RealBadAngel |
its quite simple code anyway |
14:31 |
xyz |
haha |
14:31 |
xyz |
well sapier broke it in one of his commits |
14:32 |
RealBadAngel |
broke what? |
14:34 |
hmmmm |
the connection thing |
14:34 |
hmmmm |
it's hilarious |
14:34 |
hmmmm |
when you encounter a malformed packet that you can't handle, what do you do... |
14:35 |
hmmmm |
log an error? |
14:35 |
hmmmm |
stop processing? |
14:35 |
hmmmm |
both? |
14:35 |
hmmmm |
sapier thinks it's #1 |
14:35 |
ShadowBot |
https://github.com/minetest/minetest/issues/1 -- GlowStone code by anonymousAwesome |
14:35 |
xyz |
it's not hilarious |
14:35 |
hmmmm |
xyz: it's fixed |
14:35 |
hmmmm |
it's trivial. |
14:35 |
xyz |
i figured out as much |
14:36 |
hmmmm |
well |
14:36 |
xyz |
good thing we didn't merge it |
14:36 |
hmmmm |
merge what |
14:36 |
hmmmm |
oh your thing freeminer |
14:37 |
xyz |
yeah on that ripoff thing |
14:37 |
hmmmm |
fucking a |
14:37 |
hmmmm |
anyway it's really easy to DoS the server by keeping conlock always active |
14:37 |
hmmmm |
err rather logging lock |
14:37 |
hmmmm |
and continuously spamming the console with error messages |
14:38 |
hmmmm |
somebody should #ifndef DEBUG #undef LOG #define LOG(x) (); #endif |
14:38 |
hmmmm |
or at least figure out some sane way to tell the server admin about shenanigans |
14:38 |
hmmmm |
but that's not really as critical as what was just fixed. |
14:38 |
hmmmm |
i've gotta go now, laters |
14:39 |
xyz |
ah, logging log is another reason for it |
14:39 |
xyz |
s/log /lock / |
14:39 |
hmmmm |
we should do it like OpenSSH does it |
14:40 |
hmmmm |
if there's a flood of attempts then don't bother logging and after it's done just write "last message repeated X amount of times" |
14:40 |
hmmmm |
but again, that's for later |
14:42 |
VanessaE |
ok, fix confirmed. thanks hmmmm |
14:53 |
|
ImQ009_ joined #minetest-dev |
15:05 |
proller |
somebody must just revert 9edb91da5754cf194637d1d7faa513719b61f9b4 |
15:15 |
|
Yepoleb joined #minetest-dev |
15:16 |
|
ImQ009 joined #minetest-dev |
15:19 |
|
e1z0 joined #minetest-dev |
15:55 |
|
Jordach joined #minetest-dev |
16:03 |
sfan5 |
any more comments on #1110, what subsystem does that even belong into? Network? |
16:03 |
ShadowBot |
https://github.com/minetest/minetest/issues/1110 -- Include system info in the HTTP user agent on Windows by sfan5 |
16:04 |
sfan5 |
s/,/?/ |
16:15 |
BlockMen |
sfan5, network would fit i guess |
16:15 |
BlockMen |
and/or client |
16:19 |
|
ImQ009 joined #minetest-dev |
16:26 |
|
Gethiox4 joined #minetest-dev |
16:28 |
sfan5 |
ShadowNinja: the code in #ifdef _WIN32 obviously works on mac |
16:51 |
xyz |
sfan5: I don't understand #ifdef _WIN64 - #else - #endif part, can you explain? |
16:51 |
sfan5 |
if minetest if compiled for win64 it is out of question that we have a 64bit os |
16:51 |
sfan5 |
if not it checks whether the 32bit app runs on a 64bit os |
16:52 |
sfan5 |
if minetest is compiled* |
16:57 |
xyz |
well this part was easy |
16:57 |
xyz |
what if IsWow64Process is not defined? |
16:57 |
xyz |
like on some 32-bit winxp |
16:57 |
sfan5 |
it is defined on 32-bit xp |
16:58 |
sfan5 |
otherwise that function would be pointless because it is for checking whether you have a 64-bit os (on an os that is possibly 32-bit) |
17:01 |
xyz |
some sources say otherwise |
17:01 |
xyz |
well on win 2k it's not defined for sure although minetest probably won't run on it anyway |
17:02 |
sfan5 |
winXP support ends in april anyway |
17:02 |
xyz |
and some sources say that on win xp pre-sp2 it's not defined either |
17:02 |
xyz |
and? |
17:03 |
sfan5 |
fine, I'll use the complicated way with LoadLibrary and GetProcAddress |
17:03 |
xyz |
wait wait wait, isn't this channel ready to kill for compatibility? |
17:03 |
xyz |
I'm not saying you should |
17:03 |
xyz |
I mean, that feature is so useless.. |
17:03 |
xyz |
just trolling around |
17:04 |
sfan5 |
shall I use the safe way or not? |
17:05 |
xyz |
dunno |
17:05 |
xyz |
ask others |
17:07 |
|
diemartin joined #minetest-dev |
17:08 |
BlockMen |
i dont think it is necessary to use the safe way |
17:08 |
|
damiel joined #minetest-dev |
17:09 |
|
celeron55 joined #minetest-dev |
17:09 |
|
darkrose joined #minetest-dev |
17:10 |
|
specing joined #minetest-dev |
17:10 |
|
darkrose joined #minetest-dev |
17:23 |
ShadowNinja |
I don't think we should support XP SP2 and previous. |
17:23 |
|
Calinou joined #minetest-dev |
17:24 |
ShadowNinja |
And we should drop XP support sometime soon too. That would let us use UTF-8 properly and give us combined IPv4-v6 sockets. |
17:25 |
sfan5 |
http://dev.minetest.net/Organisation says sapier is for low-level networking, useragents aren't low-level, are they? |
17:25 |
sfan5 |
we should drop support for XP after M$ does IMO |
17:28 |
ShadowNinja |
Is there anyone assigned to high-level networking? |
17:28 |
sfan5 |
no |
17:29 |
ShadowNinja |
Then that should be either saier's or kahrl's domain. (As kahrl wrote HTTPFetch) |
17:29 |
ShadowNinja |
+p |
17:29 |
sfan5 |
since it is a rather trivial change, would agreement of 2 or more core devs suffice? |
17:29 |
ShadowNinja |
Yes. I'll agree if it works on mac. |
17:30 |
sfan5 |
please show me the line in question |
17:30 |
sfan5 |
every code I added is windows-specific |
17:30 |
ShadowNinja |
The linux code should work, but mac doesn't have the include. |
17:30 |
sfan5 |
is mac a support build configuration? |
17:30 |
sfan5 |
supported* |
17:31 |
ShadowNinja |
No, but it's better not to make it harder to support it in the future. |
17:31 |
xyz |
how are you going to use utf-8 properly? |
17:32 |
ShadowNinja |
Does anyone know of someone that might be able to work on a Mac build? |
17:32 |
* sfan5 |
has a mac virtual machine with xcode |
17:32 |
ShadowNinja |
xyz: Ask sapier. I based ^ off a coment he made on a issue regarding UTF-8 support. |
17:33 |
sfan5 |
just compiling the function in question would be enough |
17:33 |
celeron55 |
to the previous discussion: the oldest windows minetest supports is XP |
17:33 |
ShadowNinja |
Yes. See if you can compile it. And later you should try to get Minetest to run, and get a package made. |
17:34 |
ShadowNinja |
(If possible) |
17:34 |
xyz |
haha |
17:34 |
sfan5 |
celeron55: we support XP w/o Service Pack? |
17:34 |
xyz |
from stats I have |
17:35 |
xyz |
Linux / Windows XP = 1.25 |
17:35 |
celeron55 |
sfan5: no |
17:35 |
xyz |
that's from June though |
17:36 |
sfan5 |
if we don't support service pack 1 either we won't run into any problems with using IsWow64Process directly |
17:36 |
xyz |
I really don't understand why do you want to drop support for no reason |
17:37 |
celeron55 |
is there any issue in wine with either of them? |
17:37 |
sfan5 |
I don't want to drop support |
17:37 |
celeron55 |
if there is, that makes the choice |
17:38 |
sfan5 |
it works fine for me in wine |
17:38 |
xyz |
I mean, about UTF-8 |
17:39 |
ShadowNinja |
SP2 has been available for a LONG time. xyz: Can you see how many recent SP0/SP1 visitors you have? |
17:39 |
xyz |
no, I can't |
17:40 |
ShadowNinja |
Alright. It should be almost nil though. |
17:41 |
xyz |
indeed |
17:41 |
xyz |
I'm talking more about that UTF-8 issue |
17:43 |
ShadowNinja |
It seems that Mac OSX hasn't messed with uname. So just moving the #include to a #ifndef _WIN32 block should fix it. And it should also make it work on BSD, which is supported(or at least few core devs use it). |
17:44 |
xyz |
why do you care about os x? |
17:44 |
xyz |
nobody provides builds |
17:44 |
xyz |
people have to use wine in order to play |
17:44 |
sfan5 |
ShadowNinja: I can confirm it works on mac (when adding it to the includes) |
17:45 |
ShadowNinja |
sfan5: Well, yes. I meant that the include should be moved to #ifndef _WIN32. |
17:45 |
sfan5 |
s/moving/adding/ you get what I mean |
17:49 |
RealBadAngel |
celeron55, can you take a look on https://github.com/minetest/minetest/pull/1112 ? |
17:51 |
|
rubenwardy joined #minetest-dev |
17:52 |
VanessaE |
ShadowNinja: please check your messages on inchra. we have...a problem. |
17:52 |
ShadowNinja |
sfan5: Since algorithm is only used on windows it should be moved to a windows-specific section. |
17:54 |
sfan5 |
ShadowNinja: done |
17:54 |
proller |
RealBadAngel, you use branches!!11111 |
17:54 |
RealBadAngel |
damn me, rly? ;) |
17:55 |
RealBadAngel |
u must be mistaken or somethin ;) |
17:55 |
ShadowNinja |
sfan5: Isn't there an existing ifdef _WIN32 block for windows.h? |
17:56 |
RealBadAngel |
proller, i have to, i have several pulls incoming |
17:56 |
ShadowNinja |
sfan5: And you can move the unistd.h includes to the ifndef _WIN32 too. |
17:57 |
rubenwardy |
For some reason, my computer thinks my 32gb memory stick is a hard drive |
17:57 |
ShadowNinja |
Seems you'll have to add a windows.h include. |
17:57 |
rubenwardy |
oops |
17:59 |
proller |
RealBadAngel, v3f world_pos = readV3F1000(is); - adding reads only via try, for old servers |
18:01 |
RealBadAngel |
ok, any other suggestions? |
18:01 |
|
PilzAdam joined #minetest-dev |
18:02 |
RealBadAngel |
hi PilzAdam, https://github.com/minetest/minetest/pull/1112 if you can review |
18:07 |
PilzAdam |
RealBadAngel, it looks ugly |
18:09 |
xyz |
that's only because he doesn't use truetype fonts |
18:10 |
xyz |
btw |
18:10 |
PilzAdam |
only text will always look not very good |
18:11 |
ShadowNinja |
RealBadAngel: Indentation change: https://github.com/minetest/minetest/pull/1112/files#diff-18513665750ef5adf42b5ec29e14162eR2368 |
18:11 |
xyz |
why does the code there uses pointers? |
18:11 |
xyz |
in event struct |
18:12 |
PilzAdam |
also why does it add "m" to the distance? one could imagine a game where one node represents 1 cm and the player is very small too |
18:13 |
RealBadAngel |
i thought 1m is 1BS |
18:14 |
ShadowNinja |
You could change it to " nodes"... |
18:15 |
RealBadAngel |
so player eyes are on 1.5 nodes high? kinda weird |
18:15 |
proller |
node - bad name for block |
18:15 |
proller |
and block - bad name for 16^3 blocks |
18:16 |
PilzAdam |
minetest - bad name for game |
18:16 |
RealBadAngel |
xyz, which part with pointers you have in mind? |
18:17 |
RealBadAngel |
ShadowNinja, will fix it |
18:18 |
PilzAdam |
ShadowNinja, or no unit at all |
18:18 |
RealBadAngel |
xyz, ah that. i followed general HUD code style |
18:19 |
xyz |
yea, I'm not saying you did it wrong |
18:20 |
RealBadAngel |
if i were starting from scratch i propably will code it another way |
18:20 |
ShadowNinja |
BlockMen: FIRST, THIRD, and THIRD_FRONT are bad names for enum elements. Prefix them with CAMERA_MODE_. And CAMERA_MODES shouldn't be all-caps(CameraModes). |
18:20 |
ShadowNinja |
(And -s) |
18:20 |
RealBadAngel |
but when im adding something i try to follow the style |
18:21 |
RealBadAngel |
at least all the bells are ringin in the same church then |
18:25 |
BlockMen |
ShadowNinja, you are right, will change this. And i just noticed that i typed 'TOCLIENT_AMINATIONS' instead of 'TOCLIENT_ANIMATIONS', lol |
18:32 |
RealBadAngel |
rotfl |
18:48 |
|
bas080 joined #minetest-dev |
18:50 |
|
grrk-bzzt joined #minetest-dev |
18:54 |
Calinou |
BlockMen, in third person implementation, if you sneak-walk then stop sneaking without stopping walking, sneak-walk animation still shows |
18:54 |
Calinou |
(and inversely) |
19:01 |
|
Miner_48er joined #minetest-dev |
19:02 |
BlockMen |
Calinou, thx for reporting ;) |
19:02 |
Calinou |
also, going on stairs doesn't look smooth from third person |
19:02 |
Calinou |
and moving upwards while flying looks weird |
19:03 |
Calinou |
(stair-smoothing applies even when flying and in air, this should not be the case) |
19:03 |
|
nore joined #minetest-dev |
19:05 |
sfan5 |
ShadowNinja: did that, ok now? |
19:06 |
celeron55 |
xyz: it's an union so you can only put POD in there |
19:07 |
xyz |
ah |
19:08 |
|
SpeedProg joined #minetest-dev |
19:08 |
xyz |
I see, thanks |
19:11 |
celeron55 |
RealBadAngel: what's this waypoint for? |
19:11 |
celeron55 |
i suspect there is some explicit usecase because otherwise nobody would have done it |
19:17 |
ShadowNinja |
sfan5: Merge the ifdef _WIN32 block into the end of the __APPLE__/__FreeBSD__ block. And you should chose one style for it, either ifdef, or if defined(). Then it seems good. |
19:17 |
|
hmmmm joined #minetest-dev |
19:18 |
ShadowNinja |
celeron55: It's so that you can mark things like your home so that you can find it later. |
19:19 |
celeron55 |
i agree to the problems with the "m" as the unit |
19:20 |
celeron55 |
it's also problematic for people who are used to nonstandard units like feet or something |
19:20 |
sfan5 |
"nodes" would be the correnct unit, wouldn't it? |
19:20 |
sfan5 |
ShadowNinja: done that |
19:20 |
celeron55 |
what is our official real world and game agnostic unit of measurement for distances to be shown to players? |
19:21 |
celeron55 |
people have been talking about not using nodes for that, i guess "cube" has been suggested |
19:21 |
rubenwardy |
Nodes are defined as 1x1x1 metre blocks (aparently) |
19:21 |
sfan5 |
cube may confuse people because it is not used anywhere else |
19:22 |
celeron55 |
i don't have anything against just calling it nodes; there's no chance of misunderstanding in it |
19:22 |
celeron55 |
but it may sound odd to new people |
19:23 |
rubenwardy |
I vote metres. You could add a setting to the configuation with a conversion ratio (so it can automatically be converted from metres to another unit). |
19:24 |
rubenwardy |
or meters, if you are American. |
19:24 |
rubenwardy |
Not that I have any real right to vote. |
19:24 |
BlockMen |
i think meters would be fine |
19:24 |
xyz |
let's just leave it empty |
19:25 |
xyz |
nodes will be confusing to players |
19:25 |
ShadowNinja |
sfan5: BOOL is64 = FALSE; -- Why the caps? |
19:25 |
sfan5 |
ShadowNinja: because it's a Windows BOOL and not a C++ bool |
19:25 |
xyz |
proprietary bool D: |
19:25 |
sfan5 |
indeed D: |
19:26 |
ShadowNinja |
M$ needed to define their own bool? ... |
19:27 |
sfan5 |
yes |
19:27 |
Kray |
they defined it for C |
19:27 |
Kray |
not C++ |
19:27 |
xyz |
all those people calling microsoft M$, this makes me facepalm sometimes /blog |
19:27 |
Kray |
also glib defines gbool |
19:27 |
Kray |
is that proprietary bool too |
19:27 |
rubenwardy |
Appl£ |
19:27 |
Kray |
opengl has its bool too |
19:27 |
sfan5 |
Kray: glib is open-source |
19:27 |
sfan5 |
(IIRC) |
19:28 |
Kray |
the header defining the microsoft's BOOL is also open source |
19:28 |
ShadowNinja |
Well, gbool is a better name than BOOL, but whatever. I guess you can merge it now. |
19:29 |
BlockMen |
rubenwardy, Appl€ |
19:29 |
Kray |
FreeImage also uses BOOL |
19:29 |
rubenwardy |
Me |
19:29 |
sfan5 |
well, who is high-level network maintainer anyway? |
19:29 |
rubenwardy |
-h |
19:31 |
xyz |
what's high level? |
19:31 |
ShadowNinja |
sfan5: kahrl would be amanger for that, since he wrote HTTPFetch, and the puprose of the section system is so that the maintainer knows how the section works and can approve things. |
19:32 |
ShadowNinja |
*maintainer |
19:35 |
|
BlockMen left #minetest-dev |
19:35 |
sfan5 |
xyz: I would consider a change with user agents high-level |
19:38 |
|
NakedFury joined #minetest-dev |
19:42 |
xyz |
well yeah but this part of network is totally unrelated to, say, new packets |
19:42 |
xyz |
this subsystems stuff only makes everything more confusing |
19:45 |
|
proller joined #minetest-dev |
20:02 |
|
sapier joined #minetest-dev |
20:13 |
|
rsiska joined #minetest-dev |
20:31 |
celeron55 |
if it's more confusing, don't use it |
20:31 |
celeron55 |
all the previous rules are in effect and the subsystems exist for making things easier that they make easier, not to make anything harder or more confusing than before |
20:32 |
proller |
need more restrictions and division! |
20:33 |
celeron55 |
our issue is that there are too many people working for too little time on a too large project; i guess there's no solution to it other than hoping that people are sensible |
20:34 |
proller |
bad hope |
20:34 |
celeron55 |
well do something to fix it then |
20:34 |
|
bas080 joined #minetest-dev |
20:34 |
celeron55 |
everyone is waiting |
20:35 |
proller |
need more popularity -> more developers |
20:35 |
celeron55 |
fix too many devs with even more devs? hmm |
20:35 |
celeron55 |
sounds like a masterplan |
20:35 |
ShadowNinja |
Too many devs? |
20:36 |
proller |
now ~0 active devs |
20:36 |
proller |
not too many |
20:36 |
ShadowNinja |
proller: What do you consider active? Commited something in the fast hour? |
20:36 |
ShadowNinja |
past* |
20:36 |
proller |
past 10 min |
20:38 |
kahrl |
while true; do echo >> README; git add README; git commit -m "I'm still active"; git push upstream master; sleep 600; done |
20:40 |
|
bas080 joined #minetest-dev |
20:43 |
sapier |
hmm I prefere to commit at least somehow finished stuff ... pull requests and private branches are enough for others to see whats going on |
20:43 |
celeron55 |
22:40:10 <proller> also assigning sapier to important subsystems - bad idea. |
20:43 |
celeron55 |
22:40:51 <celeron55> is halting development a better idea? |
20:43 |
celeron55 |
22:41:10 <celeron55> should we just raise coding standards and hope someone who makes good stuff comes in? |
20:43 |
celeron55 |
22:41:20 <celeron55> and who is going to judge it |
20:43 |
celeron55 |
22:42:22 <proller> look at his commits |
20:43 |
celeron55 |
22:42:37 <proller> and mobf |
20:43 |
celeron55 |
22:43:15 <celeron55> i'm asking, what's the solution? if not sapier, then who does the work? |
20:43 |
celeron55 |
22:43:36 <proller> better nobody than this |
20:43 |
celeron55 |
22:43:53 <proller> i have no other idea than wait |
20:43 |
celeron55 |
22:43:58 <celeron55> also i would want this discussion to be on #minetest-dev |
20:43 |
celeron55 |
22:44:33 <celeron55> i don't like talking shit about people behind their backs |
20:43 |
celeron55 |
i suppose sapier is against it and sapier won't change his way of coding, right? |
20:44 |
celeron55 |
also does anyone else agree with this |
20:44 |
|
sapier1 joined #minetest-dev |
20:45 |
sapier1 |
if someone tells me what's wrong with my coding I may change it if it's a real issue |
20:45 |
celeron55 |
if you insists, you can tell me privately and i will keep you anonymous (i asked proller whether i can copy that here) |
20:46 |
sapier1 |
constructive criticisim is always welcome |
20:46 |
sapier1 |
but I can't improve anything on comments like "it's bad, I hate it, ... " |
20:47 |
ShadowNinja |
Requested by qwrwed, comments? http://ix.io/a2v |
20:48 |
ShadowNinja |
sapier: Can you look at #862? |
20:48 |
ShadowBot |
https://github.com/minetest/minetest/issues/862 -- Add the option to bind to a specific address by ShadowNinja |
20:48 |
sapier |
I'm positive |
20:49 |
sapier |
862 is in my list I hope to have time to merge it this weekend |
20:49 |
celeron55 |
proller: it would probably be of much help in this discussion if you made a list of what is wrong (in some commit or commits) (no matter how annoying that might be to make and no matter how obvious the contents) |
20:49 |
ShadowNinja |
Also #1113 and #1110 |
20:49 |
ShadowBot |
https://github.com/minetest/minetest/issues/1113 -- Minor pathfinder error message changes by CiaranG |
20:49 |
|
grrk-bzzt joined #minetest-dev |
20:49 |
ShadowBot |
https://github.com/minetest/minetest/issues/1110 -- Include system info in the HTTP user agent on Windows by sfan5 |
20:51 |
proller |
splitting connection to two threads and adding looot of locks everywhere - why? |
20:51 |
proller |
remixing it to fix imagined problem - why? |
20:51 |
proller |
loooot of wtf in formspec |
20:53 |
sapier |
I already said if you can proof some lock isn't necessary I'll remove it immediatly |
20:53 |
proller |
why you make two threads? |
20:54 |
proller |
with one thread all locks isn't necessary |
20:54 |
celeron55 |
i agree that all the crazy threading is nonsense |
20:54 |
sapier |
you already found out about enet in your simple version consuming all cpu power |
20:54 |
proller |
yes, but its okay |
20:55 |
sapier |
ok celeron55 if you have a suggestion how to fix lag AND cpu power with a single thread you're welcome |
20:55 |
proller |
cpu power - because 20+ megabytes per second transfer |
20:55 |
proller |
and processing this data |
20:56 |
sapier |
20+ mbytes is nothing for a current cpu |
20:56 |
proller |
apply 20 megabytes of media needs cpu |
20:56 |
sapier |
the two thread version does use less then 20% in this situation |
20:56 |
sapier |
and I've got a quite outdated phenom2 |
20:57 |
proller |
again: cpu - not a problem |
20:57 |
sapier |
it's a quite simple thing, with one thread I can do either send OR receive |
20:57 |
proller |
your current connection can only 200-400kbps, and it not eat cpu |
20:57 |
sapier |
so if I'm busy with sending I can't receive and other way round |
20:57 |
sapier |
vanessaE managed to get 9mbit for a single client |
20:57 |
proller |
you can send-recieve 100+ mbps in one thread |
20:58 |
sapier |
no I can't |
20:58 |
proller |
in real word, not in your imagined |
20:58 |
proller |
yes, you not. |
20:58 |
sapier |
enet can't do that either because your os cache wont take that much data |
20:58 |
proller |
do not touch networking if you cant |
20:59 |
sapier |
proller I wont discuss this issue any longer the fixes are way better then before, we already decided to switch to a new version. It's up to you to provide a better version instead of complaining about non issues |
21:01 |
sapier |
the reason why this was merged is because it fixes a lot of issues ... if you're annoyed this is incompatible to your own tons of changes in this area I'm sorry but I wont change it |
21:02 |
sapier |
and proller I'd like to know your background about network programming. Maybe your accusations are right but I have quite some doubt |
21:03 |
celeron55 |
(observation: nobody else has yet said to agree with that issue that proller raised; please do if you do agree) |
21:04 |
sapier |
celeron55 could you please be more specific about "that issue"? |
21:04 |
celeron55 |
the one i pasted 20 minutes ago |
21:04 |
celeron55 |
which is the one you are talking about |
21:05 |
sapier |
my coding style? |
21:05 |
sapier |
multiple threads? |
21:05 |
xyz |
yea, multiple threads |
21:05 |
celeron55 |
your way of designing programs being bad, i think |
21:06 |
celeron55 |
it's a bit hard to tell what exactly |
21:06 |
celeron55 |
(if there's something else than the threads) |
21:06 |
sapier |
because of separating sending from receiving? |
21:07 |
sapier |
It's hard to improve something if you don't tell me what's wrong? |
21:07 |
xyz |
haha, well, I'll leave it to proller to argue with you |
21:07 |
celeron55 |
i'm sure nobody wants to be your teacher so that's a bad argument really |
21:08 |
sapier |
and how am I supposed to change something if you don't tell me what you don't like? |
21:08 |
celeron55 |
(i am intentionally not taking any side on this for now) |
21:08 |
celeron55 |
(or, well, not anything new from me at least) |
21:09 |
sapier |
My intention when coding is to break down a big task into small managable components each of them almost independent from others |
21:10 |
sapier |
yes for some things this seems to be more complex then necessary ... but after some years of developing old code I realized this way it's way more easy to replace one of those parts with a better version without rewriting all of it |
21:11 |
sapier |
but back to multiple threads |
21:12 |
sapier |
the basic reason for this is to NOT have to care about how much data can I send prior I have to stop and do some receive |
21:12 |
sapier |
or other way round because this decision is already made implicit by os scheduling, semaphore and select |
21:13 |
sapier |
in best case (core beeing available) send and receive will run 100% in parallel without interfereing each other |
21:14 |
|
iqualfragile joined #minetest-dev |
21:14 |
sapier |
it's annoying everyone is great on accusing people doing work but once you ask what's wrong everyone ducks and hides |
21:15 |
xyz |
well it's just in general |
21:15 |
sapier |
celeron55 if you feel my way of coding is bad I can stop coding and stick to check and merge fixes by others. Hope they really will fix the issues |
21:16 |
xyz |
main menu, multiple connection threads, locking on every log |
21:16 |
sapier |
I hate the log lock but it's been a quick fix for this subsystem broken |
21:17 |
sapier |
If you feel ok with broken logging I remove it at once |
21:18 |
sapier |
main menu needs some cleanup which I haven't done because someone said he's already working on it ... as often those fixes never arrived |
21:18 |
proller |
logging is 99% development feature |
21:18 |
sapier |
so we're fine with crashes in producion every now and then? |
21:19 |
sapier |
because of a production feature? |
21:20 |
sapier |
make mientest show all connection debugging to error stream, it won't stand for 5 minutes prior crash due to inconsistent memory handling in logging |
21:20 |
proller |
your log locking when logging disabled - full WTF |
21:21 |
sapier |
wtf? a second opinion you want to remove this lock and it's gone |
21:21 |
sapier |
I don't care about this lock |
21:21 |
sapier |
if you want your crashes back fine |
21:22 |
sapier |
xyz? do you want the lock removed? |
21:22 |
xyz |
I've never said that |
21:22 |
xyz |
uhm, what else |
21:23 |
xyz |
btw, what's our official reason for keeping backwards compatibility? |
21:23 |
xyz |
I mean, people can just update, the game is free after all.. |
21:23 |
celeron55 |
xyz: was the problems in each of these expressed at the time they were going to be merged? |
21:24 |
sapier |
stop guys the connection fixes have never been meant to be merged, celeron55 suggested to merge them, I only did this fixes to understand what's going on there |
21:24 |
sapier |
they did work very well for vanessae because she wanted to try the compatible fixes |
21:25 |
sapier |
and I have said more then once I do not see this as final solution but only a interim fix till decision about follow up protocol is done |
21:26 |
celeron55 |
it seems to me that this is more of a bunch of individual issues than something that can be fixed by doing anything more extensive |
21:26 |
xyz |
celeron55: yeah, I guess there was some sort of discussion back then, on connection stuff |
21:26 |
sapier |
I still have enet as well as tcp branches open, both ready for evaluation |
21:27 |
sapier |
with open result, but I have an issue with enet as it's statistic values are crap |
21:27 |
xyz |
sapier: what's your experience with network programming btw? |
21:27 |
sapier |
I don't believe enet to have absolutely no jitter |
21:27 |
celeron55 |
xyz: it all ended up quite messy and the current one is supposed to be a temporary solution |
21:27 |
sapier |
5 years industrial grade network communication devices |
21:28 |
celeron55 |
xyz: i assume you are still standing for enet |
21:28 |
xyz |
sapier: where do you work? |
21:29 |
sapier |
I don't wanna tell the name of my company |
21:30 |
xyz |
why? |
21:30 |
celeron55 |
has anyone else told here for whom they work? |
21:30 |
celeron55 |
i suppose no |
21:30 |
sapier |
because I don't mix up private things and business |
21:30 |
xyz |
alright |
21:31 |
xyz |
celeron55: I don't think anybody has ever asked for it; nor I do see any problems with telling |
21:31 |
proller |
my ip show my work sometimes.. |
21:32 |
sapier |
xyz I don't claim to know everything, in fact I learn every day, mobf is perfect example when I started it I didn't know anything about mobs and ai ... that's why it's rewritten multiple times by now |
21:32 |
proller |
and why it still unusable and BLOAT? |
21:33 |
sapier |
because you didn't read the code, if you did you would've seen that entity code is built on initalization so low featured mobs don't have overhead of high featured ones |
21:33 |
PilzAdam |
is it some kind of tradition to always pick on the most active dev in Minetest? |
21:34 |
sapier |
seems to be pa |
21:34 |
celeron55 |
so is it okay to xyz and proller that each of these things is intended to be a temporary solution and as such they will be replaced or fixed in the future |
21:35 |
sapier |
xyz could you help with finding out what's wrong about enet statistic data? |
21:35 |
celeron55 |
because that seems to be a fact |
21:35 |
xyz |
sapier: what statistic? |
21:35 |
sapier |
rtt and jitter |
21:35 |
sapier |
those values I read can't be true |
21:35 |
xyz |
sapier: not interested atm |
21:36 |
sapier |
ok but don't blame me for not beeing able to decide about a final solution if I can't find a reliable way to judge the options |
21:37 |
sapier |
does anyone have a wireshark dissector for enet? |
21:37 |
kahrl |
is the log lock only for getting the thread name or for synchronizing output as well? |
21:37 |
sapier |
I abused the thread name lock for output |
21:38 |
kahrl |
okay, if it was only the thread name I'd have suggested TLS |
21:38 |
xyz |
sapier: sure |
21:38 |
sapier |
I actually intended to remove it prior pushing but as it fixed the crashes on error output I haven't removed it |
21:38 |
celeron55 |
there's no need for output synchronization if it degrades speed |
21:38 |
celeron55 |
so kahrl's suggestion is very valid |
21:39 |
sapier |
wasn't thread name lock added because of some crash at prollers bsd? |
21:39 |
celeron55 |
(assuming all crashes get fixed nevertheless) |
21:40 |
sapier |
and what speed benefit do we get if we remove a lock done once on startup and once on shutdown? |
21:40 |
sapier |
the lock around output is NOT related to threadnames at all it's just the same lock |
21:41 |
sapier |
I should've added a separate lock for this |
21:42 |
celeron55 |
well that sounds like something xyz and proller will absolutely love |
21:43 |
proller |
mooooore locks!! |
21:43 |
sapier |
or even better someone investigates why this output needs to be locked I wasn't interested in the exact reason I just wanted to have a quick solution to continue the network fixes |
21:44 |
sapier |
celeron55 yes ... but we already see that using the thread name lock to make output exclusive results in confusion about threadname beeing involved |
21:45 |
sapier |
but thread name has nothing to do with those crashes (as far as I know) |
21:47 |
sapier |
something different on x86 32bit assignements are atomic, I used some locks around those because of this may not be true on arm. What do you think about arch specific lock defines? |
21:49 |
sapier |
everyone shout's "here I am" on flame wars but on a real technical question all is quiet |
21:49 |
|
bas080 joined #minetest-dev |
21:53 |
kahrl |
they may be atomic on x86 but with the compiler optimizing writes you might not see those writes on a different thread |
21:54 |
sapier |
any suggestions how to remove those locks? |
21:54 |
kahrl |
you need something like volatile which might work, but volatile isn't meant for that kind of thing and its semantics aren't properly defined in a multithreaded scenario |
21:54 |
kahrl |
better would be std::atomic but that's C++11 |
21:55 |
sapier |
hmm so I guess those locks are the less risky option right now |
22:10 |
|
VanessaE joined #minetest-dev |
22:32 |
sapier |
https://github.com/sapier/minetest/tree/conlock_split this branch is supposed to fix the client initialization issues. It's splitting the "conlock" too wich actually isn't related to connection but is used for client list only. It's wip but as people seem to need a lot of time to read code you can have a look at it in unfinished state. I intend to move back the block sending functions to server. PLEASE COMMENT PRIOR MERGE this time. |
22:33 |
sapier |
and maybe move the clientinterface to a separate file |
22:38 |
|
sapier left #minetest-dev |
22:50 |
|
NakedFury joined #minetest-dev |
22:51 |
|
martin33 joined #minetest-dev |
22:52 |
|
martin33 left #minetest-dev |
23:10 |
|
VanessaE joined #minetest-dev |
23:30 |
|
Sokomine joined #minetest-dev |
23:32 |
VanessaE |
Can someone please check into the /auth_reload command and make it not crash the damn server? :) |
23:33 |
|
zat1 joined #minetest-dev |