Time Nick Message 00:06 Megaf kaeza, #3859 00:06 ShadowBot https://github.com/minetest/minetest/issues/3859 -- Add minetest.check_password_entry callback by est31 00:09 Megaf I mean, comments? 00:09 Megaf And you don't see me wanting a new feature very often... 00:14 kaeza weird. I'm pretty sure I had a patch for that somewhere 00:15 Megaf well, you +1ed that 00:16 kaeza Megaf, https://github.com/kaeza/minetest-irc_commands/commit/33b7045d174adc782a027e24fb3b63e76b58d8b2 00:39 hmmmm hey guys what's the consensus on #3919? 00:39 ShadowBot https://github.com/minetest/minetest/issues/3919 -- Add base64 encoding and decoding to the lua api. by red-001 00:39 hmmmm it's been code reviewed extensively and looks good there, but lacks concept approval 00:40 OldCoder Is there a problem with the concept? 00:40 OldCoder Lack of use cases? 00:41 sofar hmmmm: added my +1 00:41 hmmmm it's explained in the comments 00:41 sofar I think it's a good idea 00:41 hmmmm celeron pointed out the same concerns but when i asked if it was a definite +1 or -1 he didn't respond :) 00:41 hmmmm in other words "i can't be arsed with this" 00:42 hmmmm sofar: so that makes one, now just another one 00:42 hmmmm i'm leaning toward "why not" but then i remember why not 00:43 hmmmm adding code is an implicit obligation to maintain that code for now and forever 00:44 OldCoder hmmmm, exclusionist as opposed to deletionist? Adding code adds opportunities. Code requiring far more maintenance has been added in the past, no? 00:44 OldCoder base64... not exactly the most variable codebase out there, is it? 00:44 hmmmm this is part of the lua api though 00:44 OldCoder Ah 00:45 OldCoder And the API has stricter standards 00:45 hmmmm there's an obligation to keep reverse compatibility, blah blah 00:45 OldCoder This breaks compatibility? 00:45 hmmmm and then you're invariably going to get people who want to add more options to something as simple as base64 00:45 OldCoder All right; excuse interruption 00:45 OldCoder But... 00:45 OldCoder One more question 00:45 hmmmm all for something that could really just be implemented in lua to begin with 00:45 OldCoder Is base64 more compact than what is being used now? 00:46 hmmmm nothing is being used now 00:46 hmmmm nobody mentioned any use cases 00:46 * OldCoder will withhold further comments until he reads the proposal 00:46 OldCoder If no use cases, then I'd concur with holding off 00:46 hmmmm we should ask the PR author what his intended use cases are 00:47 OldCoder So, comment that 00:47 OldCoder Maybe he's thought of something 00:48 hmmmm minetest email client...? 00:48 hmmmm i don't know 00:54 OldCoder If you're busy, I'll comment there 00:54 * OldCoder goes to do so 00:56 * OldCoder requests comments on the following PR while he is here: 00:56 OldCoder https://github.com/minetest/minetest/pull/3859 00:56 paramat i'm neutral on it 00:57 hmmmm reminds me of PAM somewhat 00:57 OldCoder paramat, thank you. If the issue is that core devs have actively disabled something that I need, shouldn't it be more of a yes or no position? 00:57 OldCoder I and other server hosts 00:57 OldCoder Note, also, ShadowNinja's points 00:57 OldCoder Security of the system has arguably been weakened 00:58 paramat i mean i'm neutral on 3919 00:58 OldCoder Excuse me, there was no context 00:59 paramat sorry i didn't see your comments when i typed mine 00:59 OldCoder :-) 01:04 paramat i've asked indriApollo for usecases in the issue also 01:05 paramat sometimes we get 'it would be nice to have ..' without any real need 01:45 paramat hmmmm and all, i think it would be good to bring some of RBA's PRs to a resolution, thoughts on #3616 ? est31 is not keen, perhaps for reasons given in the previous version #3391 01:45 ShadowBot https://github.com/minetest/minetest/issues/3616 -- Allow to set shader for a node, add special and normal texture defs f… by RealBadAngel 01:45 ShadowBot https://github.com/minetest/minetest/issues/3391 -- Allow mods to define which shader to use for a node by RealBadAngel 01:48 paramat i think #1685 should be closed for the reasons given in final comments, anyone agree? 01:48 ShadowBot https://github.com/minetest/minetest/issues/1685 -- Digging animations tweaks. by RealBadAngel 01:52 paramat sofar perhaps you'd like to open a new version of #3774 so we can close that? 01:52 ShadowBot https://github.com/minetest/minetest/issues/3774 -- Halo: highlight selected face by RealBadAngel 01:52 hmmmm i think some of the effects are cool but the way it's coded is not cool 01:52 hmmmm also 3774 seems unnecessary to me... like really unnecessary 01:52 hmmmm or maybe if you want to disable the crosshairs 01:53 paramat 3774 seems not needed to me too, but pretty 01:55 paramat -1 for 3774 02:01 hmmmm same thing with 3774 as 1685: some concerns would need to be addressed before merging, and that requires somebody still around to take over the PR 02:01 hmmmm however it should be noted that once a PR is closed, it pretty much becomes forgotten about 02:02 paramat my feeling is, even if any of those PRs are worth taking over and reworking (possibly #3623 ), i still think they should be closed because the author cannot work on them. they'll still be findable 02:02 ShadowBot https://github.com/minetest/minetest/issues/3623 -- Postprocessing (WIP) by RealBadAngel 02:02 hmmmm findable yes but not visible at all 02:04 paramat close 1685 now or later? 02:05 hmmmm maybe let some more people chime in on it first 02:05 hmmmm later 02:05 paramat ok 02:06 hmmmm FWIW i think the ability to download shaders from the server would add a new dimension of depth to the game, but security really is more important than neato effects 02:07 hmmmm i look forward to whoever solves this issue of sandboxing shaders 02:07 hmmmm to seeing somebody solve this issue* 02:22 paramat will merge game#870 in a moment 02:22 ShadowBot https://github.com/minetest/minetest_game/issues/870 -- Farming: Trees: Convert saplings and plants to NodeTimerRef. by sofar 02:36 paramat merged 02:37 paramat ugh i can't stop thinking about how to create a Minetest galaxy now 02:38 paramat might have to start a mod 06:49 nore btw, can #4077 be merged? 06:49 ShadowBot https://github.com/minetest/minetest/issues/4077 -- Colored chat and other strings by Ekdohibs 06:49 nore hmmmm: ^ (do you think it needs yet another review?) 06:51 hmmmm what do you mean "yet another review" 06:54 nore well, was you review complete or not? 06:54 hmmmm i didn't do any review yet 06:54 nore you also said that it needed more than 2 reviews 06:54 nore oh, ok :) 06:55 hmmmm do you understand the size of this change? 06:55 nore I do 06:55 nore (but since you commented on it, and nothing since, I thought that meant you had reviewed it and not found other problems, my bad) 06:56 hmmmm people actually say "looks good to me" or "+1" or so on 06:56 hmmmm so first off there are a lot of lines just commented out 06:56 hmmmm i don't know why. they're probably leftovers from old code, but is this PR actually ready to go or is it still a work in progress? 06:57 nore it is ready to go 06:57 nore I should remove those lines, indeed 06:57 hmmmm second, there are curious changes not quite related to colored chat such as moving guiChatConsole to client/ 06:57 hmmmm not sure what that's all about. 06:58 nore I think that was another change of the pr I rebased 06:58 nore which I should cancel 06:59 hmmmm third, lots and lots of low-level style errors 06:59 hmmmm like lines way over 80 columns, conditional statement bodies on the same line as the condition, etc. 07:01 nore If you mean things like static_text' 07:01 nore That's an Irrlicht file with some changes 07:01 hmmmm yeah so wait a minute 07:01 nore So I tried to keep the changes to a minimum 07:01 hmmmm how do you include this modified irrlicht file into irrlicht 07:02 nore It is not 07:02 hmmmm does this PR require people to compile their own version of irrlicht? 07:09 nore hmmmm: it doesn't 07:09 hmmmm how does it work then?? 07:09 nore It provides a modified version of an Irrlicht class 07:09 hmmmm one that's already compiled 07:09 nore Which is used instead of the Irrlicht class when needed 07:09 hmmmm wouldn't that cause problems if the ABIs differed? 07:10 nore No, it works as if there was a new class 07:10 nore It doesn't replace the existing one 07:11 nore It's just that it is possible to instanciate one or the other 07:12 nore And we instanciate ours when needed 07:13 hmmmm doesn't irr::gui::addStaticText cause a name collision? 07:14 nore no, this function doesn't exist in Irrlicht 07:14 nore it is a class member of environment (or whatever the name is) 07:14 hmmmm oh, right, because this version takes an EnrichedString 07:14 hmmmm ahh i see 07:14 hmmmm this is just similarily named 07:14 nore yes, and it either calls our version or the Irrlicht one 07:15 nore yes, since it should be used the same way 07:15 hmmmm so our version is irr::gui::addStaticText, and the Irrlicht version is irr::gui::IGUIEnvironment::addStaticText 07:15 hmmmm that's not confusing or anything ...? 07:15 hmmmm or at the very least, misleading 07:15 nore except that it needs to take the environment as parameter, instead of class member 07:16 nore well, addStaticText is supposed to be the function we use instead of IGUIEnvironment::addStaticText 07:16 hmmmm and if USE_FREETYPE is not defined, then it falls back to the irrlicht vupplied version 07:16 nore (with the IGUIEnvironment as first argument) 07:16 hmmmm is there no better way to do this...? 07:16 nore I haven't one 07:16 nore this solution has the advantage it doesn't require patching Irrlicht 07:17 nore of course, if we decided to patch Irrlicht, it would be easy 07:17 hmmmm could you give it a different name though or maybe stop using the irr::gui namespace? 07:17 hmmmm something like that 07:17 nore you think it is clearer like that? 07:18 hmmmm absolutely 07:18 hmmmm right now this is incredibly misleading 07:18 nore ok, moving it out of the irr::gui namespace then 07:18 hmmmm thanks 07:19 hmmmm ahh okay, i see, this doesn't depend on the compiled irrlicht's abi 07:20 hmmmm you're literally just using the virtual class definition from their header files 07:20 hmmmm and everything else is the same 07:20 nore do I move our StaticText class out of it too? 07:20 nore yes 07:20 hmmmm the irrlicht version is called CStaticText, no? 07:20 nore Hm, I don't know 07:21 hmmmm it would also help if this were in a separate directory maybe 07:21 hmmmm it feels very strange having modified irrlicht code jumbled along with minetest code 07:21 nore well, that was why it was in util/ in the first place 07:21 hmmmm you're allowed to make new directories if it doesn't fit any existing categories 07:22 nore an "irrlicht" directory, then? 07:22 nore (for modified irrlicht code?) 07:22 hmmmm no... no... could you call it "irrlicht_modifications" or something similar? 07:22 hmmmm please stop being confusing and ambiguous 07:22 nore ok, better name indeed 07:23 hmmmm "irrlicht" directory -> "hey they're bundling Irrlicht's source with minetest now? 07:23 hmmmm and another big thing i noticed was EnrichedString 07:24 nore what's with EnrichedString? 07:24 hmmmm unless I'm misunderstanding it (i haven't really looked closely at any of this code) this class has an unescaped version of the text and a vector of SColors representing the color of each individual character 07:24 hmmmm is this correct? 07:25 nore it is 07:25 hmmmm so each character in an EnrichedString takes up at least 5 bytes? 07:25 hmmmm why do you do this 07:26 nore well, it is not constructed until we need to draw the string 07:26 hmmmm sorry, at least 6 bytes :) 07:26 hmmmm huh? really? 07:26 nore hm, except in chat 07:26 hmmmm it seemed to me that it was being used as a replacement for std::wstring in various places 07:27 nore yeah, in chat for example 07:27 hmmmm now if you were actually only using it as an internal representation at draw time then i guess it makes sense 07:27 hmmmm but i don't get why you'd use it in chat 07:27 nore but in tooltips, etc. it isn't 07:27 hmmmm but... why 07:27 nore well, the problem is that the string needs to be split in chat 07:27 hmmmm split how? 07:27 nore and you can't split it before you determine escape sequences 07:28 nore split along newlines, etc. 07:28 nore and when part of the text disappears, you don't want the color of the text that follows to disappear too 07:28 hmmmm can't you just prepend the last used escape sequence (if any) to the newly split strings? 07:29 nore it would be possible 07:29 nore but that would add even more complexity 07:29 hmmmm you're adding complexity by repurposing EnrichedString for storage as well as an internal representation 07:30 nore why does it add complexity? 07:30 hmmmm because now you have to modify more interfaces to accept enriched strings whereas before they only needed to accept wide strings 07:31 hmmmm and the additional methods needed to support its usage as general string type 07:31 nore the additional methods were needed 07:31 nore because of the internal code that splits an EnrichedString to display it 07:31 hmmmm not to mention the penalty of at least +4 bytes per char 07:32 hmmmm also another thing is that there is only one background color per EnrichedText 07:32 hmmmm is this intentional? 07:33 nore are 4 bytes per char that costly anyway? that's at most 100KB since there can't be a lot of text displayed at once 07:33 nore one background color is because we can't do the background per character 07:33 hmmmm why not 07:34 hmmmm i 13,12can do it just fine 07:34 nore two problems: it would require more extensive modifications 07:34 hmmmm whoops 07:34 nore :D 07:34 nore and, what do you do with newlines? 07:34 nore moreover, you want to use that in tooltips for example 07:35 nore to modify the whole tooltip background 07:35 nore not just behind the characters 07:35 hmmmm the tooltip background color should be different from the text background color 07:35 nore well, this is for tooltip background color 07:35 hmmmm i don't like that this field has different meanings for different contexts now 07:36 hmmmm so in one instance it really is the background color of the string 07:36 nore it is used only for tooltip background 07:36 hmmmm and then in the next instance it's the color of the entire control 07:36 nore no, it's never the background of the string 07:36 hmmmm so in chat it's ignored? 07:37 nore it's the background of the GUI element 07:37 hmmmm err... 07:37 nore in chat its effect is unspecified 07:37 nore (it is said in lua_api.txt that it should only be used for tooltips and item descriptions) 07:38 hmmmm there's really no way to streamline this interface into something more intuitive and orthogonal? 07:39 nore I don't see one :/ 07:39 nore (that doesn't mean there is none, of course) 07:39 hmmmm if i'm able to come up with something that i think better, would you consider it? 07:39 hmmmm i think is better* 07:41 nore I would 07:42 hmmmm have you considered using std::basic_string for EnrichedString? 07:43 hmmmm you'd be able to get many of these methods you had to implement 'for free' 07:43 nore std::basic_string with a custor char type, you mean? 07:43 hmmmm right 07:43 hmmmm EnrichedChar, say 07:43 nore would I be able to add new methods to it, though? 07:43 hmmmm that's what i would personally do 07:44 hmmmm you'd be able to write functions that take EnrichedStrings 07:44 hmmmm and operate on them 07:45 nore hm, so EnrichedString would be no more than a basic_string 07:46 nrzkt nore what is the purpose of this string,n is missed the beginning of the conversation ? 07:46 nore and if I want to add new methods, I would need to make them global methods and not class members? 07:46 hmmmm you can make it a namespace 07:46 hmmmm it's just a suggestion 07:46 nore nrzkt: parse strings with escape sequences, assign them colors, etc. 07:47 hmmmm what you end up doing is up to you 07:47 nrzkt nore did you look at an efficient library used in gaming ? 07:47 nore I'll think a bit about it then 07:47 nrzkt how did other game engines like atomic or urho3d or irrlicht itself using the XML backend ? 07:48 nore nrzkt: no, I didn't 07:48 nrzkt before re-creating the wheel, check if there isn't already existing and efficient library or papers for that 07:50 nore it looks like Irrlicht doesn't support multiple text colors 07:51 nore (in a single GUI element) 09:01 est31 agh 09:01 est31 finally i find out about something useful in c++14 and I cant use it because we cant use c++14 http://stackoverflow.com/a/2612556 09:04 nrzkt est31: writing binary format ? :) 09:05 est31 implementing joystick support for minetest 09:05 est31 and you get a u32 09:05 est31 every bit is a pressed button 09:05 est31 so I wanted to add bitmasks 09:05 est31 and write pressed_buttons & 0b0000110000 09:05 est31 bitmasks in order to have support for button combinations 09:06 est31 like: key "1" means jump but if you press key 4 + key 1 you drop an item 09:06 est31 or something like that 09:06 nrzkt 0x1 0x2 0x3 :p 09:07 est31 yeah thats what ill have to do 13:01 Fixer https://forum.minetest.net/viewtopic.php?f=5&t=14744 lol, again 18:29 paramat nore sfan5 please can anyone review game#1001 ? also, game#1110 is simple 18:29 ShadowBot https://github.com/minetest/minetest_game/issues/1001 -- Fire: move fire node removal out of ABM. by sofar 18:29 ShadowBot https://github.com/minetest/minetest_game/issues/1110 -- Default: Bookshelf has 2 openings instead of 4 by paramat 18:32 sfan5 paramat: 1110 is good 18:33 paramat thanks 18:47 paramat hi hmmmm i added a request to #4135 18:47 ShadowBot https://github.com/minetest/minetest/issues/4135 -- Biomegen by kwolekr 18:52 paramat sfan5 i think those fire functions can be removed, they're so simple 18:53 sfan5 that's not the point 18:53 sfan5 they are probably there to allow overriding them 18:53 paramat hm 18:54 sofar they're not documented as API, at all 18:54 paramat i doubt anyone is overriding them, let's wait for someone to complain first 18:55 sofar https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=find_pos_for_flame_around 18:55 sofar I might put them back 18:56 sofar ahh, no, that's just a copy of the fire mod 18:56 sofar so, there's no mods using those functions that google can find 18:57 paramat we have until 0.4.15 for modders to complain 18:58 sofar sfan5: the only reason those 2 functions exist is because the code used to have the `rarely ignite things from afar` ABM 18:58 sofar and that ABM has been disabled for a long time (and I should just PR remove that) 18:58 paramat modders can use group:puts out fire to make their mod nodes extinguish 18:59 sfan5 ah 18:59 paramat yeah there used to be multiple calls due to old code 19:03 hmmmm paramat: aren't you the one who put that heightmap[j] < water_level - 16 thing there 19:04 paramat erm not sure, possibly 19:05 paramat i'll find out 19:07 paramat no, but i did deepen the level from -4 to -16 19:07 paramat https://github.com/minetest/minetest/commit/408d9b72f00b1aed2de5a6738571acab1149f690 19:08 paramat rivers channels used to stop in shallow water 19:08 hmmmm ahh 19:08 hmmmm i originally did that 19:08 hmmmm oh yes i know what you mean now with the 'vertical' wall 19:08 hmmmm i wanted to add some kind of interpolation for that eventually 19:09 hmmmm if you remove that line there will be an ugly ditch everywhere 19:10 paramat just chasms in mountain terrain sometimes, well i'll try it and see 19:11 paramat i guess it's for a later PR then 19:11 paramat what i mean is, don't let it delay 4135 19:13 paramat btw everyone #4135 needs more review, big and important PR 19:13 ShadowBot https://github.com/minetest/minetest/issues/4135 -- Biomegen by kwolekr 19:14 hmmmm the purpose of 4135 isn't to make modifications to mapgen output 19:14 hmmmm i'd prefer to not include that change (if we do decide to go forward with it) in that PR 19:19 paramat agreed 19:32 Megaf [19:57:59] <sofar> sfan5: the only reason those 2 functions exist is because the code used to have the `rarely ignite things from afar` ABM 19:32 Megaf [19:58:18] <sofar> and that ABM has been disabled for a long time (and I should just PR remove that) 19:33 Megaf that's what I mean when I say to remove legacy/dead code 19:33 Megaf I'm glad there's someone doing it 19:35 sfan5 this code removal will not magically make your whole minetestserver faster 19:37 Megaf hm, it does, but not magically 19:38 Megaf in my fork I removed all mapgens but v6 and all databases from the code but sqlite. The client is much lighter and snapier according to 5 testers 19:38 hmmmm placebo effect at work 19:40 celeron55 :D 19:41 Megaf dat placebo tgo 19:41 Megaf tho* 19:41 celeron55 placebo works though; it's scientifically tested 19:42 celeron55 in many things! 19:42 Megaf so we should make makers think that Minetest is better than the word that shall not be said 19:42 celeron55 always include some placebo in the things you do, because it's free 19:42 Megaf make players* 19:42 Megaf Minetest, now shipping with free placebo to make your experience better 19:43 Megaf maybe we should put like, mods plus extension. SpeedX addon something else 19:43 Megaf and something else* 19:43 celeron55 "don't just trust our competitor's placebo - get our placebo today" 19:44 Megaf fair enough 19:47 celeron55 https://paste.fedoraproject.org/370860/14642055/ 19:47 celeron55 this is the minetest player of the day, by the way 19:47 celeron55 he reads manuals 19:48 sofar lol 20:00 hmmmm hah 20:00 hmmmm you do get some funny emails 20:13 sofar I've been starting to get the "I'm brilliant but noncoherent" type a lot 20:36 celeron55 these ridiculous emails make my day 20:49 sofar I've had one guy send me qualcomm specs and telling me to write a driver 20:49 sofar *delete* 23:04 paramat 'float wicked_time_of_day' 23:04 Fixer my RTT (ping) counter does not change after connection to server, is this correct? 23:06 Fixer !seen 4Evergreen4 23:06 ShadowBot Fixer: I haven't seen 4Evergreen4 in #minetest-dev.