Time Nick Message 00:03 kahrl sorry for the delay, had to debug by room (it's a hot night) :P 00:03 kahrl I think that, since either way you have to increase the protocol version, both ways would be fine 00:03 kahrl so I'd go for the second 00:04 est31 yea 00:04 kahrl but I'm prone to mess up things like that, so maybe ask other people too :) 00:16 est31 Also, what do you think, should we make the player the chat message comes from a separate field? 00:16 est31 for TOCLIENT_CHAT_MESSAGE 00:17 est31 then clients can think of their own custom player name highlighting 00:17 est31 empty name for service messages like *** est joined the game 00:18 kahrl yeah, good idea 00:58 est31 whats a good way to write U16_MAX? 01:04 kahrl 65535 :D 01:04 est31 (u16)-1? 01:05 kahrl dunno, I'd personally avoid that since it's implementation defined or something 01:07 RealBadAngel 2^16 -1 01:07 est31 ^ is xor 01:07 RealBadAngel power 01:07 est31 not pow 01:08 RealBadAngel i meant pow 01:11 est31 eww 01:11 est31 either I allocate the clients mutex for every client again for every chat message 01:12 est31 or I add a sendChatMessage method to ClientInterface 01:12 est31 which is bad because its low level 01:12 est31 or I make lock functions public 01:12 est31 oh, not needed server is a friend class 01:18 RealBadAngel est31, https://imgrush.com/9ajJtTqYgvOD 01:18 RealBadAngel best i can do 01:19 est31 RealBadAngel, how is it like before your fix? 01:20 RealBadAngel https://imgrush.com/FJAKbEpsE6OE 01:21 est31 well, we can say the rest is a rounding error. 01:22 est31 can you somehow do it so that after the texture, you only use the last pixel's color? 01:23 est31 so not tile it, but "continue" it instead 01:23 est31 I guess it would even be ok to "mirror" it after the line 01:24 est31 you know, like in TV when they show 16:9 content 01:25 RealBadAngel cant, doing so will break tiling at all 01:25 est31 ? 01:25 est31 do we need tiling? 01:25 RealBadAngel ofc we do need 01:26 RealBadAngel otherwise you wont get seamless patterns 01:26 est31 ah, I see 01:26 RealBadAngel until shader do not know if its working on tileable texture or not i cant alter the edges 01:27 RealBadAngel thats why i wanted nodedef property for that 01:30 est31 what we have here is already huge improvement 01:33 RealBadAngel above works only with provided normal maps 01:33 RealBadAngel wont work with autogen 01:33 est31 not yet? 01:34 RealBadAngel i guess never will 01:34 RealBadAngel i can hardcode some random values that could work for dirt with grass propably 01:35 RealBadAngel but then asphalt will fail 01:35 RealBadAngel only solution is to support normal maps at least for problematic cases 01:36 hmmmm agh 01:36 hmmmm it's possible I may have been wrong that (u16)-1 is well definde 01:36 hmmmm take a look at 6.2.6.2 note 44 01:37 est31 which version 01:37 hmmmm "Some combinations of padding bits might generate trap representations, for example, if one padding bit is a parity bit. Regardless, no arithmetic operation on valid values can generate a trap representation other than as part of an exceptional condition such as an overflow, and this cannot occur with unsigned types" 01:37 hmmmm I am looking at ISO/IEC 9899:1999 01:38 hmmmm if it weren't for note 44, then (u16)-1 would be a correct way of representing U16_MAX due to 6.2.6.2 1) 01:39 hmmmm actually no, sorry scratch note 44, that doesn't apply here 01:39 hmmmm that's not an overflow, it's a conversion 01:41 kahrl ah yeah, it's well defined according to C++03 01:42 kahrl 4.7.2 01:42 hmmmm heh 01:42 hmmmm C++ is more friendly to undefined behavior I guess 01:44 hmmmm kahrl: chapter 4 is Conformance, maybe I'm reading a different document? 01:48 kahrl "Standard conversions" for me 01:49 kahrl in ISO/IEC 14882:2003(E) 01:49 hmmmm ahh, i'm reading the draft 01:49 hmmmm i wonder if i have the official version 01:57 est31 how do I again set a standard value for a const std::wstring & param? 01:57 est31 just = "" ? 01:57 hmmmm you mean default value? 01:57 hmmmm yes 01:57 est31 good 02:07 hmmmm heh interesting 02:07 hmmmm did not know this. you can re-call an object's constructor explicitly by doing "new (foo) FooClass" 02:08 est31 lets hope you recall it when needed :D 02:09 hmmmm i don't think i would ever use something so obscure 02:09 est31 well yea, but I wanted to make a joke 02:10 est31 code style doesnt matter when making jokes 02:10 kahrl placement new? IIRC the idea behind that is if you have to allocate an object at some specific address (say, in memory mapped to some hardware), you can use this 02:12 kahrl also it's useful for containers 02:40 est31 how great c++ is hard typed 02:41 est31 makes replacing wstring with string soo easy 03:24 est31 so here it is, with bugs, but ready for concept review: https://github.com/est31/minetest/tree/utf8-chat 03:24 est31 hmmmm, kahrl ^ 03:26 hmmmm when your function has std::string arguments, you might be able to change them to const std::string & instead and save on needlessly copying 03:26 est31 yes i might have overlooked 03:28 hmmmm wait, so what's the purpose of changing from wide strings to utf-8? 03:29 est31 wide strings are system dependent 03:29 est31 utf-8 isn't 03:30 est31 wchar and wstring and so on should really only be used when you directly communicate with irrlicht 03:40 hmmmm oh that's true, wchar_t is only guaranteed to be uts-2 on windows 03:41 hmmmm i suppose this ended up being a problem? 03:41 hmmmm for non-windows users 03:48 est31 hmmmm, I don't have any evidence 05:10 est31 first its ucs not uts 05:10 est31 second, windows is using utf-16 by default 05:10 est31 which is ucs-2 for most cases, but not all 08:09 est31 hmmmm, if you are still awake --> #2885 08:09 ShadowBot https://github.com/minetest/minetest/issues/2885 -- Utf8 based chat by est31 08:10 est31 using const references now 08:15 Krock est31, I see you made a commit.. changed UTF8 to ACP, why is it not merged to master yet? 08:15 est31 Krock, because its wrong 08:15 est31 proper fix is #2885 08:15 ShadowBot https://github.com/minetest/minetest/issues/2885 -- Utf8 based chat by est31 08:16 est31 Krock, see this: https://gist.github.com/kahrl/50669c6beaf57fe1796e 08:17 est31 (note though that a "proper fix" could have been substantially smaller then 2885, but it had to be done anyway) 08:45 Wuzzy I just found this: https://launchpad.net/minetest-c55 Is this the official translation platform for Minetest? 08:45 est31 hm 08:45 est31 no 08:46 est31 the official platform is "submit a pr" right now 08:46 est31 kahrl, ^ 08:47 Wuzzy then how in Earth did this launchpad page appear? o_O 08:47 est31 people test stuff in the past 08:47 Wuzzy Who is responsible for this page? I think it should be closed to avoid confusion 08:47 est31 only because there is some page left doesnt mean its the official version 08:49 Wuzzy its still kinda active, last change at 2015-05-05 08:49 Wuzzy all that work is probably wasted :/ 08:50 est31 Wuzzy, I think its just mirrorring activity from git 08:51 Wuzzy that's not my point. People can directly input translations into this. And they will probably go directly into /dev/null ;-) 08:54 est31 Wuzzy, fine? 08:55 Wuzzy well, people may not know they work is wasted here 08:59 Wuzzy okay, I just sent a message to whoever managed this Launchpad page 09:09 celeron55 uhm 09:09 est31 FYI its disabled now 09:10 celeron55 the message went to me and i have no idea what this is about 09:22 * est31 wonders how to advance minetest as ecosystem 09:22 est31 minecraft has dozens of clean-room re-implementations 09:22 est31 how many does minetest have? 09:22 est31 none 09:22 est31 ofc there is freeminer, which tries to be compatible to minetest 09:23 est31 but they regularly merge our commits 09:23 est31 perhaps we should document our protocol better 09:31 est31 but I think having our own protocol and serialisation also gives us great possibilities 09:32 est31 we can do it differently than the minecraft clones 09:32 est31 and better 09:32 est31 ^thats the point 12:43 Calinou we really should make servers.minetest.net prettier 13:07 paramat hi nore, game#554 is ready to go and i have made the changes sfan5 requested http://irc.minetest.ru/minetest-dev/2015-07-04#i_4310502 (20:32 and 20:34) can i push later? 13:07 ShadowBot https://github.com/minetest/minetest_game/issues/554 -- Default/trees: Add checks for air/ignore/needles to pinetree trunk by paramat 13:10 Calinou paramat, I think you and nore talked about making me a minetest_game maintainer 13:10 Calinou do you remember this? 13:15 paramat that was hmmmm and nore who discussed it 13:19 paramat or maybe hmmmm and someone else, can't remember, anyway i guess it's up to the mtgame team to decide, not hmmmm =) 13:37 paramat i think i'll go ahead and push 554 since it's my own code and sfan5 has reviewed and made requests 14:21 paramat now pushing 554 to game 14:29 paramat complete 14:38 Calinou can someone review https://github.com/minetest/minetest/pull/2828 16:35 Calinou https://github.com/minetest/minetest/pull/2886 16:35 Calinou please merge ASAP 16:35 Calinou I just tested it, for a reason 16:35 hmmmm what's the issue with it? 16:36 Calinou you can jump very high on bouncy nodes if pressing jump key at the same time, even if the node has a low bounciness. 16:36 Calinou (like, 50 nodes high) 16:36 Calinou this PR fixes it 16:36 hmmmm i didn't even know about bouncy blocks 16:36 Calinou maybe play Minetest more often :-) 16:36 hmmmm can you link me to the code for a bouncy block def? i just want to try it myself 16:36 Calinou ok, try this mod 16:36 Calinou https://forum.minetest.net/viewtopic.php?f=11&t=9891 16:36 Calinou install, enable, then /giveme jumping:trampoline_1 16:36 Calinou left click trampoline to increase strength (green = low strength, yellow = high strength) 16:37 Calinou /giveme jumping:cushion for a cushion (impedes all fall damage) 16:37 hmmmm ohh 16:37 hmmmm isn't this the mod that exposed that collision bug where player objects would accelerate at insane speeds 16:37 Calinou probably 16:37 Calinou this one is a fork of Jeija's jumping mod 16:40 hmmmm is this behavior new? 16:40 hmmmm i wouldn't expect a trampoline to shoot me up 120 nodes 16:40 Calinou it happens since like 2013 16:40 Calinou hmmmm, now build Miner59's pull request and see 16:41 Calinou you can't jump anymore on trampoline, fixing the bug 16:41 hmmmm why is it a priority all of a sudden now if this happened for that long 16:41 Calinou last year I made an issue 16:42 Calinou I'm going through my issues and closing the fixed ones 16:42 hmmmm if I'm understanding this code correctly, removing this doesn't disable jumping 16:42 hmmmm it just doesn't add a /second/ jump while on the trampoline 16:43 Calinou you actually can't jump at all on trampoline, which is a downside 16:43 Calinou but I'd rather have that than super high broken jumps 16:43 hmmmm :\ 16:43 hmmmm that's not a fix at all then 16:44 hmmmm maybe the problem should actually be solved instead of removing the ability to jump on a trampoline, you know, something that you expect to be able to do 16:45 Calinou https://github.com/minetest/minetest/issues/1443 16:45 Calinou heh, made the issue exactly 1 year ago 16:46 Calinou this is the issue about bouncy nodes: https://github.com/minetest/minetest/issues/1552 16:47 hmmmm yeah i tried it 16:47 hmmmm -1 from me 16:47 hmmmm sorry calinou, this is like making a patch to remove Xorg if somebody complains that there's screen tearing 16:51 hmmmm actually nevermind, it seems like there's a node group "disable_jump" that explicitly uses this behavior 16:51 Calinou yes but 16:51 Calinou try removing disable_jump=1 16:51 hmmmm so, disable_jump is doing what it's supposed to be doing 16:51 Calinou and see what happens 16:51 Calinou it is not working on nodeboxes 16:52 Calinou disable_jump=1 hasn't worked on nodeboxes for a long time now 16:52 hmmmm it seems to be working here, what do you mean? 16:52 hmmmm i'll try removing disable_jump 16:52 Calinou try jumping on a cushion; you can, even though there is disable_jump=1 16:53 hmmmm isn't a trampoline a nodebox? 16:54 Calinou both trampoline and cushion are nodeboxes 16:54 hmmmm i can jump on it just fine with disable_jump=1 removed from the groups. am I misunderstanding something here? 16:55 hmmmm with disable_jump=1, as expected, it disables the jump 16:55 hmmmm the behavior here is appropriate i think 16:55 Calinou so the trampoline works fully as expected? 16:55 hmmmm of course not. you don't bounce on the trampoline when you jump. 16:55 hmmmm a bouncy jump is what's expected 16:55 hmmmm but that's been removed by this code 16:57 hmmmm this logic is sort of messed up. what is immediately intuitive to me would be that bouncy creates a bounce when you jump on that node. disable_jump disables all jumping 16:57 hmmmm so why would disable_jump ever need to be there to begin with 16:57 hmmmm who wrote this, rather 17:00 hmmmm first of all, the bouncy jump needs to be fixed rather than removed. second, the logic governing jumping and bouncy jumping is screwed up 17:14 paramat i intend to automate the lowest level of mgv7 mountain terrain generation: in base terrain generation, if surface level is at any point < node_max.Y mountain generation will be enabled for that mapchunk. i'm unsure about implementation. 'generateBaseTerrain' already returns a value. what is preferred: that function returning 2 values, one being a bool for mountain generation, or, add this bool as a new member of c 17:14 paramat lass MapgenV7? 17:22 paramat a function returning 2 values seems messy and not used in our code, i think i'll try adding a member 17:26 hmmmm i'd have it return two values 17:27 paramat thanks, i was researching how, seems there are various ways 17:27 paramat std:pair? 17:28 hmmmm void generateTerrain(s16 *y_min, s16 *y_max) { 17:29 paramat cool i'll research and use that method 17:49 paramat have to go, back later 17:50 RealBadAngel hi 17:51 RealBadAngel one out, one in, number of devs in chan hasnt changed ;) 17:51 est31 yea 17:59 RealBadAngel i just tried tape n glue VanessaE's solution for non tileable textures 17:59 est31 ? 18:01 RealBadAngel if i have info texture of that kind: https://imgrush.com/xvvGKq-OEFOD 18:01 H-H-H hi guys any android compillers on at mo? 18:01 est31 H-H-H, yes 18:01 H-H-H im still battling with this sound issue 18:03 H-H-H if i run the apk from fdroid or playstore the sound is fine however if i run the one i build its distorted and i also ran the libvorbis encoder demo and thats distorted so im thinking it might be something with how i compile it 18:03 H-H-H btw im running it on a samsung galaxy note 10.1 18:03 H-H-H do you have an apk i can test and maybe if you could tell me the steps you take to build ? 18:04 H-H-H also im on 32bit build platform not 32 18:05 H-H-H rm 64bit* 18:05 H-H-H i have tried building manually and through eclipse 18:05 est31 I only have the fdroid build 18:06 H-H-H well fdroid one is the one im running right now 18:06 H-H-H 0.4.12.12 18:06 H-H-H literally just updated 18:09 H-H-H mind if i ask what steps you use to build it 18:13 est31 https://gitlab.com/fdroid/fdroiddata/blob/master/metadata/net.minetest.minetest.txt 18:15 H-H-H ty 18:31 H-H-H this is silloy lol i cant find any differences lol 18:31 H-H-H other than ones 32bit and the other is 64 18:31 est31 the f-droid buildserver even uses 32 bit I think 18:32 RealBadAngel est31, https://imgrush.com/QnUp3FBFt1qF.png 18:32 RealBadAngel perfect imho 18:32 RealBadAngel i just need to find a way to pass that info to shaders 18:33 est31 what info again? 18:33 RealBadAngel not tileable, horizontally, vertically, seamless 18:33 est31 what would shaders do with the difference? 18:34 RealBadAngel see the image 18:34 RealBadAngel can you see any flaws on dirt with grass? 18:35 H-H-H i really hope i get this friggin audio issue sorted as i have some interesting ideas lol 18:58 est31 Ah, RealBadAngel I see what you mean 18:58 est31 still I think better than before 18:59 RealBadAngel https://imgrush.com/vydibANTps_d 18:59 RealBadAngel see what tape n glue does with seamless connection 19:00 RealBadAngel you should spot the problem right away 19:00 est31 yes 19:00 RealBadAngel so, shader has to be aware of texture kind, no other way 19:01 est31 I guess the effect is happening because the view angle changes from block to block? 19:01 RealBadAngel no, because of the fix for nontiling textures 19:01 est31 any way to lay out this distortion continously over the block? 19:01 est31 well yea meant that 19:02 RealBadAngel fixing one issue breaks something another 19:02 est31 still I think the effect is not that serious like the problem it fixed 19:02 RealBadAngel its even worse than that 19:02 RealBadAngel all seamless textures are broken if fix is applied 19:03 est31 well its a blocky game 19:03 est31 and there is alot of noise happening 19:03 est31 already 19:03 RealBadAngel this is not a noise, this time it could be called a bug 19:03 RealBadAngel and this time i will agree 19:04 est31 it is more subtle IMO 19:04 RealBadAngel subtle? its damn glitch visible on each surface :) 19:05 RealBadAngel im coding now passing tiling info to shaders 19:05 est31 k 19:05 RealBadAngel i already know the way (in fact i was already using it) 19:05 RealBadAngel with enable/disable textures 19:14 est31 pushing in 10 minutes: https://github.com/est31/minetest/commit/62720b8dafdee36c69f2017e179e5bdd04a44dba 19:14 est31 hmmmm, ^ 19:27 kahrl est31: this is the kind of commit that is definitely not trivial 19:27 est31 kahrl, the field was introduced by me, and it has been a silly mistake 19:27 est31 the serialisation version is something else than the protocol version 19:28 est31 also, what do you propose for me to do? 19:28 est31 I need that commit as bugfix for a PR 19:28 est31 the PR is unrelated however to the commit, should I still put it into the PR? 19:28 est31 should I make an extra PR just for this tiny PR? 19:29 est31 then I would need to make the utf8 PR dependent on the bugfix PR 19:29 est31 ok perhaps not that 19:29 kahrl yeah, or just ping a few devs to get someone to approve it 19:29 est31 because its "just" a bugfix 19:29 est31 so what do you think 19:30 est31 look at how handleCommand_Hello does it 19:30 kahrl I've endured more than 35 degrees celcius the last few hours, I can't think :( 19:31 est31 fortunately, its chillier where I live 19:31 est31 there has been a storm earlier this day 19:31 est31 https://github.com/minetest/minetest/blob/master/src/clientiface.h 19:31 est31 the one handler is for the legacy protocol 19:32 kahrl we had a storm a few days ago, but it didn't lower the temperature any, just made the air humid :( 19:32 est31 the _hello one is for the current protocol 19:32 est31 :( 19:36 est31 nore, RealBadAngel sfan5 Tesseract can you have a look at https://github.com/est31/minetest/commit/62720b8dafdee36c69f2017e179e5bdd04a44dba 19:39 est31 man whats this shit 19:39 est31 I cant even fix that bug because nobody is around 19:39 est31 you know what 19:39 est31 push it yourself 19:39 est31 I wont push it 19:48 kahrl wut 19:49 * kahrl doesn't see what's so urgent about getting this fix into master immediately 19:50 AnotherBrick may be cause it's just little fix that he's fixing for three day already 20:02 kahrl I don't see any talk about this particular bug in the logs 20:03 AnotherBrick remember that suggested change from CP_UTF8 to CP_ACP to fix encoding troubles on win? it's still about that 20:05 kahrl then why can't it be a part of that PR? 20:06 AnotherBrick idk 20:07 AnotherBrick cause it's useful on it's own regardless of that giantic switch chat to utf8 20:11 hmmmm I'm not completely sure I understand the ramnifications of making such a network change 20:11 hmmmm but it has the potential to break lots of things 20:11 hmmmm why are developers themselves judges on what is trivial and not trivial? we need to rethink this exception 20:13 hmmmm what does server_ser_ver stand for? 20:13 hmmmm server server ? 20:13 hmmmm server serialization version? 20:13 hmmmm what is the thing getting serialized here? 20:15 AnotherBrick i kinda feel urge to answer your questions but it's not my commit, so i won't )) 20:18 celeron55 hmmmm: it's the mapblock serialization version 20:18 hmmmm it's used for other things 20:19 celeron55 not really 20:19 hmmmm right *now* it is 20:19 hmmmm look at Client::ProcessData 20:20 hmmmm that if statment doesn't look correct. serialization format support should be determined by the deserialize() functions, not ProcessData 20:20 hmmmm FWIW it's also used for MapNode serialization, not just MapBlock 20:20 celeron55 well yeah, mapnodes too; i consider that to be the same thing 20:21 celeron55 it's also passed to various things serialized inside mapblocks but that's obvious 20:21 celeron55 the name of that variable is ancient though and it has been misleading for years 20:22 celeron55 it should probably be changed to be mapblock_version or something like that 20:22 est31 the problem of our current wstring stuff is that its not well defined 20:23 est31 yes, you can fix the windows regression with a single line 20:23 est31 the PR is not meant as "only possible fix" for the windows regression 20:23 hmmmm well 20:23 hmmmm I guess I can get behind 62720b8 20:24 est31 I've just thought that having wstring input, converting to utf8 then to wstring then to utf8 then to wstring is a bit stupid 20:27 est31 and my other commit is to fix the mistake that the mapblock serialisation version (whether its needed or not) has been mistaken with the protocol version 20:30 est31 wstrings are incredibly wasty, they require 4 bytes per character on gcc 20:31 est31 current network sending code is broken for surrogates I think 20:31 est31 because on linux you will have code points 20:32 est31 and on windows and the current chat protocol you need surrogates 20:32 est31 we just cut off the higher 2 bytes 20:33 est31 this is a typical bug when handling wstrings 20:33 est31 they are harmful, should be avoided as much as possible. 20:34 est31 with utf-8 you are reminded of the fact of being variable length encoding 20:34 est31 all the non-english speaking folks will complain fast enough 20:35 celeron55 you can blame me and i will discard the blame by saying the wstrings in the protocol are just stupid hacks that weren't meant to be left there 8) 20:35 est31 so, I remove the stupid hack now 20:35 est31 I just wanted to give some points because hmmmm has asked for them 20:35 celeron55 utf-8 is the way to go in any serialization format; i don't think anyone can argue against that 20:35 est31 http://irc.minetest.ru/minetest-dev/2015-07-05#i_4311635 20:38 celeron55 cross-version compatibility is an issue with the wstrings in the protocol; i guess it can be handled nicely with a protocol version bump? 20:39 Calinou we definitely should protocol bump more often, we could do more things 20:39 Calinou and it'd force people to run updated versions, which is a Good Thingâ„¢ 20:39 Calinou 20:39 celeron55 (looks like that's how the PR does it) 20:39 est31 yup 20:43 est31 and for why I dont do the commit I wanted to push earlier inside the pr, its unrelated, and I dont want to make unrelated changes in a PR. Yes its fixing a bug that breaks "new client old server" for the PR, but it should be done regardless whether the PR gets merged or not." 20:43 est31 -trailing2 20:43 est31 2* 20:43 est31 "** 20:56 AnotherBrick aaaand merge of est31/master and est31/utf8-chat seems to fix cyrillic! 22:02 paramat seems to work so far, i need to test more though https://github.com/paramat/minetest/tree/automountbase 23:14 crazyR anyone seen sfan5 today? 23:25 RealBadAngel havent said anything today 23:26 RealBadAngel kahrl, here?