Time Nick Message 03:12 VanessaE *sigh*: https://forum.minetest.net/viewtopic.php?f=15&t=9196&p=189201#p189200 05:10 paramat hi hmmmm game#659 is a perhaps temporary fix for issue game#652 any comments? 05:10 ShadowBot https://github.com/minetest/minetest_game/issues/659 -- Default/trees: Add not-force-placed tree schematics grown from saplings by paramat 05:10 ShadowBot https://github.com/minetest/minetest_game/issues/652 -- Schematic tree trunks destroy existing nodes 05:11 hmmmm ehh 05:11 hmmmm just because somebody reports some behavior they don't like in a bug tracker does not mean it needs to be 'fixed' 05:12 hmmmm trees always destroyed nodes when they grew from saplings 05:12 paramat nah mgv6 ones don't 05:12 hmmmm i think you should get more consensus before doing anything. 05:13 hmmmm are you sure they don't? 05:14 hmmmm maybe is_ground_content can get checked when replacing nodes if a certain option is set 05:14 hmmmm or something like that, i don't know 05:14 paramat yeah sure, they are lua routines designed to only replace air, ignore or leaves 05:15 paramat however i'm fairly neutral because i don't run a server 05:16 hmmmm add a schematic flag 05:17 hmmmm SCHEM_PRESERVE_NONGROUND_CONTENT 05:17 hmmmm or something like that 05:17 hmmmm then in blitToVManip, if ((m_flags & SCHEM_PRESERVE_NONGROUND_CONTENT) && ndef->get(node_being_replaced).is_ground_content) continue; 05:18 paramat ah good idea 05:20 hmmmm i don't know, it's just a suggestion 05:20 hmmmm if you want to go ahead with making a duplicate tree schematic then I guess that's fine too... but it strikes me as being kind of hacky 05:21 paramat well ideally trunks need to replace leaves, but leaves not replace trunks, all without griefing 05:21 paramat it's complex, i suggested as idea in the last comment in the issue 05:21 paramat (an) 05:22 paramat but not sure it's useful enough to add 05:23 paramat and recreating tree schematics in lua is a pain 05:23 paramat anyway will consider all this, thanks 05:23 paramat for the moment the commit is a quick perhaps temporary fix 05:24 hmmmm are things exploding without that patch? 05:25 paramat server owners are a bit horrified due to griefing possibilities 05:26 paramat i feel a bit guilty for not having considered this. VanessaE thoughts? 05:26 hmmmm i would do the elegant solution first 05:29 paramat problem is neither water or leaves are ground content, water needs to be replaced for rainforest swamps 05:31 paramat otherwise cool idea. so yeah hacky but maybe temporary, i will probably merge 05:46 neoascetic Wow, finally new minetest.net, it is awesome! 05:50 paramat we should get some mgv7 screenshots up there :} 05:52 Calinou working on the site 05:55 neoascetic btw why doesn't it hosted on github pages? I thought main problem with mediawiki is that we need someone to change the stuff. Now we still need a someone who will rebuild and re-push website when some PR applied 05:56 neoascetic wouldn't it be better to have auto site rebuild ? 05:56 Calinou it is hosted on GitHub pages, neoascetic 05:56 Calinou when I commit something, it is built automatically 05:57 paramat cool 05:57 Calinou http://minetest.github.io redirects to http://minetest.net 05:57 neoascetic Oh, yeah. Great. But it built by whom? 05:58 Calinou me 05:58 Calinou it was a website competition entry, which ultimately won 05:59 neoascetic I think better way is let github pages built without need to do this by hands 06:00 neoascetic If we still need styles/custom jekyll plugins, we may use jekyll for this 06:00 neoascetic * may use travis for this 06:02 Calinou we don't have to do anything by hand for it to be built 06:02 Calinou we can build it locally on our PCs by using "jekyll serve" and connecting to http://localhost:4000/ 06:02 Calinou this works even on Windows, provided you installed Ruby + DevKit (gem install jekyll) 06:03 neoascetic 1. install ruby 2. install npm 3. install jekyll and grunt 06:04 neoascetic btw customize -> forum links are broken 06:05 Calinou you can use "npm install" in folder to install packages locally, then run "grunt watch" :) 06:05 Calinou I need to fix package.json to not throw any warnings too 06:06 Calinou neoascetic, right, I'll fix them 06:08 Calinou done 07:55 est31 should we have merge commits for https://github.com/minetest/minetest.github.io ? 07:55 est31 for prs 07:56 Calinou already did two 07:56 Calinou if they're just typo fixes or such, go ahead 07:57 est31 therefore I ask 07:58 est31 I mean we have decided to not use them for the engine, for some reasons, now I wonder whether those reasons apply here too 07:58 est31 but I guess its not important at all 07:58 Calinou merge commits are much cleaner 07:58 Calinou they actually respect how Git is meant to be used 08:00 sfan5 we do this to keep history linear 08:00 sfan5 that applies to minetest.github.io too imo 08:01 Calinou minetest.github.io isn't something most people will clone 08:02 celeron55 est31: merge commits are fine for me 08:02 est31 thats the reason Calinou why I think its not important 08:03 celeron55 i don't think we need to have a fancy commit history in any of these "minor" repositories 08:03 est31 I agree that merge commits clutter up the history, but the website is such a "minor" repo 08:03 est31 yeah 08:09 celeron55 i'm surprised how much activity this repository immediately got; i guess this is ending up as a fairly good idea 08:11 Calinou most FLOSS projects maintain their site on GitHub these days, it's nothing exceptional 08:26 est31 man, its super ugly how entities handle static data 08:26 est31 if you create an entity from nothing, you not just have no way to pass some static data to it 08:27 est31 you also don't get nil in the on_activate callback 08:27 est31 which means you have to check for "" 08:32 est31 but changing this would possibly break mods 08:36 nrzkt est31: yes it's one of the bloat things in core, and changing it break mods too. You also have another thing like this with mesh entities with empty meshes for some cases... 09:22 Calinou Piwik was merged into minetest.net 09:23 Calinou please test 10:08 celeron55 Calinou: it will take an hour to update if i recall correctly; i can tell then 10:09 celeron55 piwik is kind of slow-paced like that 10:10 celeron55 wait, no, actually i can see already that it's working 10:11 celeron55 it's logging specific pages and downloads too 10:22 Calinou http://www.minetest.net/servers.html is up! 10:22 nrzkt Calinou: i think you should remove more from webpage 10:23 nrzkt else the website only permit to top10 to be shown and be a little bit elitist 10:23 Calinou why? sometimes you want to see all servers 10:23 Calinou if we always expend the list, then the page becomes too long 10:23 VanessaE Calinou: also, it's not necessary to write "Server List" right below "Servers". 10:24 VanessaE I'd say write just "Server List" in the top part, delete the other one, and compact-out all of that whitespace 10:26 nrzkt Calinou: yes but for a player to search a server, only show the most ranked servers discriminate less ranked servers 10:26 VanessaE the banner across the top should be narrower/shorter-in-height, lots of wasted space. 10:28 Calinou VanessaE, sorry but wasted space is a Web design trend :) 10:28 VanessaE ew. :P 10:35 kilbith possible to limit/break that ? https://lut.im/xVOWQ9xV/qD01Z2oz 10:35 kilbith it shifts all the column 10:36 Calinou should we make a news post about new website? 10:36 Calinou there is none right now 10:40 Calinou https://etherpad.net/p/minetest-website-post 10:53 rubenwardy Calinou, seriously, please check before merging :P 10:58 VanessaE bbl 11:31 est31 can I push https://github.com/est31/minetest/commit/e530e5e75499ccb874b70d7416879d3d2b46df86 11:31 est31 reworded https://github.com/est31/minetest/commit/2c637ce1c26145269b09c62afb451240a8def401 11:35 est31 will push it later this day 12:11 nrzkt est31: okay for me 15:43 Megaf Folks, any word on Wayland support? 15:44 Calinou we depend on Irrlicht for this task I guess. 15:44 Calinou either way, native Wayland won't be ready for the desktop until a few years 15:45 Calinou not even Fedora defaults to it, let alone Ubuntu and Debian 15:46 Megaf Hm, fair enough, I'm just curious about it. On Debian we already have a preview of GNOME on Wayland, it runs well enough for a preview 15:47 Calinou until NVIDIA ports their proprietary driver to use Wayland, there won't be any mass migrations really 15:47 Calinou and Steam games need to work with it too... 16:33 celeron55 the way i ran minetest on my jolla/sailish phone was making irrlicht use its SDL2 backend 16:33 celeron55 and SDL2 supports wayland 16:34 celeron55 and whatever driver things on the device supported ES1 16:34 celeron55 some things were partially broken though 16:35 celeron55 in any case that might be the closest MT has gotten to native wayland 16:37 celeron55 and that was... umm... 18 months ago 16:37 Calinou Irrlicht uses SDL 2? 16:38 celeron55 i think it was able to do that and it was the only way i could make it work in that situation 16:40 celeron55 wait, i think it only supported SDL1 and i had to port it to SDL2 16:40 celeron55 http://irrlicht.sourceforge.net/docu/namespaceirr.html#ac25d94cf2e1037c7ca18ee79b3bd4505 16:40 celeron55 the end result was full of weird hacks anyway 16:43 celeron55 i'll upload this just for the sake of it 17:22 celeron55 https://github.com/celeron55/irrlicht-with-sailfish-hacks/commits/master 17:22 celeron55 i think this is mostly what i did to irrlicht at that time 17:23 celeron55 (it's included in https://github.com/celeron55/minetest/tree/sailfish/build/sailfish/irrlicht thoughg) 17:32 Tesseract celeron55: Are you using proxy_pass for the site? 17:32 celeron55 yes; i find it kind of ridiculous but it does work 17:33 Tesseract Have you enabled proxy_cache? It's pretty much static, just hive it a lifetime of 15m or so. 17:33 celeron55 the only reason is for making the ^/forum/?(.*)$ -> forum.minetest.net/$1 redirect work 17:34 celeron55 no i haven't, i guess i should 17:34 Tesseract Doesn't Jekyll have a way of doing something like that? 17:34 celeron55 it might; i don't know jekyll at all 17:35 Calinou CraigyDavi, thanks for all the pull requests :) merged the pretty URLs one 17:49 Tesseract Calinou: Why are there like 20 copies if the icon with different names? 17:49 Tesseract of* 17:49 Calinou Tesseract, responsive favicon :) from http://realfavicongenerator.net/ 17:49 Calinou http://realfavicongenerator.net/favicon_checker?site=minetest.net 17:50 Calinou it's a terrible hack, but we need it until all browsers support SVG favicons 17:50 Calinou (only Firefox 41+ does currently) 17:51 Tesseract Calinou: Why can't you just link to one .png? 17:51 Calinou it's not responsive 17:52 Calinou high-DPI screens will have a blurry favicon, mobile browsers won't recognize it properly (= blurry or small icon) 17:52 Tesseract Calinou: And if that's impossible at least move them into a sub-directory and use symlinks so they're not copies. 17:52 Calinou moving to a subdirectory is possible, but not advised 17:52 Calinou http://realfavicongenerator.net/faq 17:53 celeron55 Tesseract: now it's caching some stuff 17:53 celeron55 umm... at least maybe 17:57 Tesseract Calinou: It looks like you'll be fine if you just add a symlink/leave favicon.ico and change the lines for IOS devices. 17:57 sfan5 >iPhone and iPad users can turn web pages into icons on their home screen. 17:57 sfan5 well uhh 17:58 sfan5 we don't need to support that imo 17:58 celeron55 i don't undetstand; the cache seems to be missing most of the time 17:58 celeron55 i set nginx to set the X-Proxy-Cache header to indicate what its cache is doing 17:59 celeron55 github's cache is seen in X-Cache and it's obviously hitting all the time 17:59 sfan5 like hm 17:59 sfan5 we dont need to support making the mt website into a "link" app on Android/iOS/W8 at all IMO 18:00 Calinou don't underestimate people :) 18:00 Tesseract celeron55: What's your config? 18:02 Tesseract Calinou: Seems the argument for the -precomposed icon is just "there might be some weird platform out there that depends on it or something". 18:02 Tesseract iOS doesn't use it and I see no reason for anything else to ever use it. 18:02 Calinou precomposed could be removed, I agree 18:03 Calinou few users use < iOS 7 18:03 Calinou maybe I'll make an issue on the RealFaviconGenerator GitHub 18:03 Calinou 80% of iOS users are on iOS 8 18:03 celeron55 Tesseract: essentially this http://fpaste.org/261614/41044214/ 18:03 celeron55 it's definitely saving stuff in the cache directory though 18:04 Tesseract Calinou: iOS < 7 doesn't need it either, it can do the precomposing itself. 18:08 Tesseract celeron55: Your request has no cache-control headers? 18:08 est31 Calinou, can i push https://github.com/est31/minetest.github.io/commit/9660badb53b56f6215ec59f954421774e0460758 18:08 celeron55 wait i guess my browser is actually caching all these requests so effectively that i'm unable to make a condition where the browser does not request cache bypass but requests a page that would be cached 18:08 est31 or everybody else :( 18:08 celeron55 well i guess it's working then 18:09 est31 ) 18:10 Calinou est31, go ahead 18:10 celeron55 no; this isn't working 18:11 Tesseract celeron55: wget/curl? 18:11 celeron55 i can test this with curl and even if i request http://www.minetest.net/lib/js/bootstrap.min.js seconds apart, it's still a MISS 18:11 celeron55 as indicated by X-Proxy-Cache: MISS 18:13 est31 why not? → moving to a subdirectory is possible, but not advised 18:14 Calinou some stupid browsers won't see them then :( 18:14 est31 stupid ones 18:14 est31 well, thats an argument 18:45 paramat hi nore sfan5 please can you review game#651 and game#659 ? 18:45 ShadowBot https://github.com/minetest/minetest_game/issues/651 -- Fire: Move flame extinguishing to separate faster ABM by paramat 18:45 ShadowBot https://github.com/minetest/minetest_game/issues/659 -- Default/trees: Add not-force-placed tree schematics grown from saplings by paramat 18:47 Tesseract Calinou: Here's my idea on how it should be: http://ix.io/kyy/diff 18:49 Tesseract Basic changelog: http://sprunge.us/XDTL 18:49 Tesseract I actually decided to leave favicon.ico as it was though. 18:50 luizrpgluiz hi all :D 18:52 celeron55 hmm... i think the cache is working now 18:52 celeron55 i don't even know what fixed it of everything i did but... whatever 18:55 CraigyDavi Calinou, you're welcome :) 18:55 celeron55 what this does in practice is 1) bombard github with considerably less requests, 2) add a 0...5 minute delay to updates from github, 3) make the server usually respond as fast as if it was hosting the site itself 18:56 celeron55 (i thought 5 minutes is probably a good compromise in update delay vs. cache usage) 18:57 celeron55 also if github pages goes down, it will serve stuff from the cache 18:57 celeron55 (probably won't happen but anyway, it's there) 19:54 nrzkt celeron55 which cache did you use ? varnish ? 19:55 celeron55 nrzkt: nginx proxy_cache 19:56 celeron55 github seems to use varnish on their end 19:56 Calinou how much visits does minetest.net get, according to Piwik? 19:56 Calinou per day 19:56 Calinou maybe website team could have some access to Piwik :) 19:56 nrzkt celeron55, nginx proxy cache works good for our visitors, it's sufficient : 19:59 celeron55 Calinou: piwik kind of sucks for generating any kind of good reports but here is a graph that lacks precision because piwik: http://i.imgur.com/9KI04sv.png 20:00 celeron55 the reason why the stats aren't public is because piwik lacks any functionality for limiting what is shown, and we don't want to publish all the stuff that piwik is able to show 20:01 celeron55 i don't even know why piwik is used but oh well... 20:03 Calinou friends don't let friends use Google Analytics :) 20:03 celeron55 well yeah, but the world is a pretty shitty place if this is the best thing when avoiding google analytics 20:03 Calinou did you ask #piwik on how to make it better? 20:03 celeron55 whatever, i guess this works though 20:04 celeron55 oh one thing: that download graph is misleading 20:04 celeron55 it counted viewing screenshots on the dokuwiki pages as being downloads 20:05 celeron55 the actual download number is something like half of that 20:06 celeron55 so that's about 200-300 downloads per day 20:08 celeron55 (also, i think there are plugins for piwik that do some of the stuff i (or we) would like to do; it's really up to Tesseract for installing any of them 20:10 Tesseract celeron55: Anything in particular you want a plugin for? 20:13 celeron55 some kind of a single-page saveable (maybe PDF) report could be useful 20:14 celeron55 then we could set a layout for it and publish it whenever someone asks for stats 20:15 celeron55 here's the same graph, but weekly, from half a year ago when stats started being collected: http://i.imgur.com/QjRijTt.png 20:18 Tesseract Hmmm, I could just use print-to-file for that. 20:40 celeron55 maybe let's not bother 8) 20:40 celeron55 but if you have a lot of time to spare, setting up something isn't the worst of ideas 20:40 celeron55 it's just that the stats are rather boring 20:40 celeron55 it's just those same numbers over and over again, months and months in history and future 20:41 celeron55 there's nothing to see 20:56 Megaf celeron55: I have been using stat counter 20:56 Megaf and they have native public stats (but is not self hosted) 20:57 Megaf Anyway, they seem good enough 21:56 paramat now merging game#654 21:56 ShadowBot https://github.com/minetest/minetest_game/issues/654 -- Default: Allow papyrus growing on default:sand by paramat 22:01 paramat merge complete 22:02 est31 hrmmm #3127 looks good, but why wasn't the error triggered before? 22:02 ShadowBot https://github.com/minetest/minetest/issues/3127 -- Fix syntax error. by jh10001 22:02 est31 or what are the conditions of the triggering? 22:06 paramat nore and all i might merge game#659 later since it's an urgent bugfix, maybe temporary, and is fixing my own work 22:06 ShadowBot https://github.com/minetest/minetest_game/issues/659 -- Default/trees: Add not-force-placed tree schematics grown from saplings by paramat 22:14 paramat my many improvements to fire mod are here for testing game#651 it was a real mess, no wonder it locked up servers 22:14 ShadowBot https://github.com/minetest/minetest_game/issues/651 -- Fire: Move flame extinguishing to separate faster ABM by paramat 22:21 paramat (fire spread is made a little faster than in 0.4.13) 22:31 est31 bad bad trend https://www.google.com/trends/explore#q=minetest 22:35 est31 hi RBA, how are you? 22:35 RealBadAngel howdy 22:36 RealBadAngel im about to finish signlike drawtype, it was pain in the ass to complete 22:36 RealBadAngel i havent imagined whats needed to make it real 22:37 RealBadAngel what ive coded could be called either most ugly hack or most brilliant code, up to who reads it ;) 22:38 est31 A graph comparing open source minecraft clones (mostly minetest forks): https://www.google.com/trends/explore#q=minetest%2C%20multicraft%2C%20voxelands%2C%20Terasology%2C%20freeminer 22:38 RealBadAngel but what ive noticed already, side effect of this code is realtime tinting of nodes 22:38 est31 tinting? 22:38 RealBadAngel grass foliage 22:39 RealBadAngel ive made realtime modifications to textures possible 22:39 est31 okay 22:40 RealBadAngel and its per node, not per def 22:40 VanessaE sounds useful. 22:40 est31 yea 22:41 RealBadAngel ive extended client side (only) meta to hold texture modifiers 22:41 est31 ok 22:41 Tesseract est31: Yikes! 22:43 RealBadAngel atm im holding there textrures with text 22:43 RealBadAngel but i can have there transparent faces with colour 22:43 est31 Tesseract, ? 22:43 Tesseract est31: MultiCraft statistics are way off: http://www.multicraft.org/ 22:43 est31 ah 22:44 RealBadAngel so i can easily tint grass depending on biome for example 22:44 est31 yea 22:44 est31 thats a really good application 22:45 RealBadAngel anyway, the request 22:45 est31 if we have client side modding, we could save tinting information or such in the param1, then mods can provide functions that return texture modifiers for the param1. 22:45 est31 but thats something for later 22:45 RealBadAngel somebody should make ladder stop using NDT_SIGNLIKE in minetest game 22:46 est31 param1 is more efficient storage than meta 22:46 RealBadAngel and make it using nodeboxes or whatever 22:46 VanessaE est31: param1 is needed for any non-solid node and anything that propagates sunlight. 22:47 est31 VanessaE, I know, but dirt doesnt propaggate it :) 22:47 VanessaE true :) 22:47 RealBadAngel im making now proper signlike drawtype and i really dont want to care about misuses of previous inclomplete code 22:47 VanessaE RealBadAngel: how close are you to superseding signs_lib? 22:47 est31 in the worst case we just add a NDT_SIGNLIKE_NEW or such 22:48 RealBadAngel i do have it almost done, not colors yet, but whole basics 22:48 RealBadAngel including freetype 22:48 VanessaE thought you weren't gonna consider freetype? 22:48 RealBadAngel you have made me consider it :P 22:48 VanessaE heh 22:49 RealBadAngel i made signlike using the same font as GUI 22:49 RealBadAngel i will make terminal code later on 22:50 RealBadAngel frankly i found rendering text to texture quite easy 22:51 RealBadAngel but only from main thread 22:51 RealBadAngel anyway code is nice 22:51 VanessaE as long as the rendered images are cached and re-used (rather than constantly re-rendered per frame) I see nothing wrong with that 22:52 RealBadAngel something like that: http://pastie.org/10388406 22:52 RealBadAngel no cache 22:52 RealBadAngel textures are made when meta changes (on demand) 22:52 VanessaE right 22:52 VanessaE I just meant no realtime re-rendering 22:52 RealBadAngel and droped when block is unloaded 22:53 RealBadAngel i was googling for solutions and spotted nice comparission 22:54 RealBadAngel somebody compared each frame text rendering to displaying prepared texture 22:54 RealBadAngel kinda 25x faster 22:54 VanessaE I found a possible memory leak with the minimap btw: it doesn't drop cached imagery when the client discards the relevant mapblocks 22:55 RealBadAngel now i have valgring and i know how to use it, i will test the minimap with it 22:55 VanessaE ok. 22:56 RealBadAngel its surely broken by now 22:56 RealBadAngel at least radar mode is 22:57 RealBadAngel i will try to reorganize logic for it 22:57 VanessaE test procedure is easy though: set client_mapblock_limit = 200 (or something else small) in minetest.conf. fly around some world that's substantially generated (i.e. some public server). compare the loaded, rendered mapblocks in the world with the ones shown in the minimap. 22:57 VanessaE (the default is 5000, it's possible to notice it then, too, but a smaller value makes it easier) 22:57 RealBadAngel what i was doing before was comparing nr of loaded blocks to number of cached minimap ones 22:57 RealBadAngel it was steady same number 22:58 RealBadAngel now its not 22:58 RealBadAngel thx to "fixes" 22:59 RealBadAngel also, i was playing skyblock a lot recently 22:59 VanessaE I know. that's where I noticed it :D 22:59 VanessaE I was flying around exploring that ocean you created. 22:59 RealBadAngel damn, there are so many critical errors thats alomst unbeliveble they went unnoticed 22:59 VanessaE you mean like the water flickering? 22:59 VanessaE :P 23:00 RealBadAngel thats nothing 23:00 VanessaE what else? 23:00 RealBadAngel how about switching picked item from inv and swap it randomly with other one? 23:00 RealBadAngel annoying as hell 23:01 VanessaE that happens to me a lot too 23:01 VanessaE it's a mouse-drag-drop sensitivity issue 23:01 VanessaE there's no threshold. 23:01 RealBadAngel no 23:01 VanessaE no? 23:01 RealBadAngel it just swaps indexes 23:02 est31 as long as the rendered images are cached and re-used (rather than constantly re-rendered per frame) I see nothing wrong with that 23:02 est31 thats the first requirement 23:02 RealBadAngel it can be easily reproduced 23:02 est31 second one is that cache shouldnt leak 23:02 RealBadAngel est31, there wont be any cache 23:02 est31 you want to re-render it on every frame? 23:02 est31 or only meshgen? 23:02 RealBadAngel ofc not 23:02 RealBadAngel on demand 23:02 VanessaE that's a cache. 23:03 est31 yea 23:03 RealBadAngel then stored in memory 23:03 VanessaE you create the image as-needed and then just re-use the image until it has to change. 23:03 RealBadAngel or dropped, so begone 23:03 VanessaE *nod* 23:03 VanessaE in any case, only one call ever, to the rendering code -- when the text changes or disappears. 23:04 RealBadAngel per node (infotext) texure is nothing that should be cached 23:04 RealBadAngel not a fucking way 23:04 RealBadAngel other way is to render that each frame, which is even worse 23:05 RealBadAngel when server sends meta change, i can see that 23:05 RealBadAngel and i can update the texture 23:05 RealBadAngel drop the old one, create new one 23:06 VanessaE that's what we're saying, RBA. 23:06 RealBadAngel and im confirming that 23:06 VanessaE ok. 23:06 RealBadAngel ;) 23:06 RealBadAngel but no cache i repeat 23:06 RealBadAngel such textures are dynamic 23:07 VanessaE saving a single texture somewhere in memory is still cacheing. 23:07 VanessaE even if you delete/rewrite it periodically. 23:07 est31 ah you mean that if two grass nodes are tinted the same way, you still generate two textures? 23:07 est31 because then I agree its no cache 23:07 RealBadAngel under term of "cache" i understand media sent to client and stored on hdd 23:07 VanessaE RealBadAngel: nononono 23:07 VanessaE RealBadAngel: in-memory cacheing 23:08 VanessaE like in top(1) 23:08 RealBadAngel in my code server wont be even aware of that 23:08 VanessaE est31: I should hope that if the source textures, tinting, etc all is identical between two nodes, the same resultant texture would be re-used then :-/ 23:09 RealBadAngel so newer client will show the signs even with old server (just the signs mod updated) 23:09 RealBadAngel you would want to compare two infotexts to see if they can have identical textures? 23:10 RealBadAngel no go 23:10 VanessaE nah, but some kind of hash might be in order. 23:10 est31 yea 23:10 VanessaE hash the texture + markup, store that somewhere 23:10 VanessaE compare the hashes 23:10 est31 hash with reference counting 23:10 VanessaE reference counting, whatever 23:10 VanessaE hah, ninja'd 23:10 RealBadAngel maybe in the future, not now 23:11 est31 okay 23:11 est31 but we should not build large obstacles into the way 23:11 RealBadAngel stop requestin stuff like that when even basic functionality is not yet in :P 23:11 VanessaE RealBadAngel: for now, it's probably fine, but such a thing will need to be implemented before tinting is offered to the modding community 23:12 est31 yea 23:12 est31 otherwise servers will implement tinting and it will be super lag 23:12 RealBadAngel est31, point is to let clients do it 23:12 VanessaE est31: or memory leaks from hell. 23:12 RealBadAngel as with the text 23:12 est31 also, we should implement that idea with the param1 or param2 extraction 23:12 est31 for tinting 23:13 RealBadAngel no no no 23:13 est31 its pointless for signs 23:13 RealBadAngel hands off params :) 23:13 est31 but for tinting its very helpful 23:13 RealBadAngel you have meta 23:13 est31 meta is inefficient 23:13 est31 its a string 23:13 RealBadAngel ofc not 23:13 est31 param1 is an int 23:14 RealBadAngel one of possible usages of meta is to store strings 23:14 est31 also, imagine having a super long modifier string 23:14 RealBadAngel i keep there pointers :P 23:14 RealBadAngel next to strings ;) 23:14 est31 ermmm 23:14 est31 pointers? 23:14 VanessaE for tinting, use param1 as an index into a palette, like with gif. 23:14 est31 seriously? 23:15 RealBadAngel to textures 23:15 RealBadAngel but only client side 23:15 RealBadAngel i do not attempt to send them 23:15 est31 erm... 23:15 est31 using meta this way is a hack 23:16 RealBadAngel when i get the block, deserialize it 23:16 RealBadAngel i know when i should make a new texture 23:16 est31 RealBadAngel, what exactly do you mean with "pointer"? 23:16 RealBadAngel so i do and store it on the client side meta 23:18 RealBadAngel i mean client side meta can hold extra data which server doesnt need to know about 23:18 est31 it can 23:18 est31 but its not the intended use 23:19 RealBadAngel theres no other way im afraid 23:19 est31 its cleaner to have an extra helper structure somewhere 23:19 RealBadAngel textures cannot be made in a thread other than main 23:20 est31 no problem with that 23:20 RealBadAngel thats out of discussion 23:20 RealBadAngel so, we have left content mapblock and mapblock mesh 23:21 RealBadAngel only possible way is to do that on deserialize got content 23:21 RealBadAngel now think about storing the texture you have made 23:21 RealBadAngel where? 23:21 RealBadAngel meta is the only solution 23:21 est31 perhaps we should have client_content_mapblock 23:21 est31 or so 23:21 RealBadAngel otherwise mapblock mesh wont get it 23:21 est31 and then store the pointers there 23:22 RealBadAngel content mapblock is client side only already 23:22 RealBadAngel but not main thread 23:22 est31 but? 23:22 RealBadAngel you cant run there any image or texture routines. read cannot invoke driver 23:23 RealBadAngel irrlicht is not thread safe and will propably never be 23:24 RealBadAngel such simple thing as creating new image in a thread is impossible 23:24 est31 which thread creates content mapblock? 23:25 RealBadAngel mapblock mesh invokes it 23:25 est31 okay 23:25 RealBadAngel which is called by client.cpp and mesh update thread 23:25 est31 yea 23:28 RealBadAngel at the time youre analyzing the nodes to get the meshes you read only defs 23:29 RealBadAngel so each node of the same kind is the same 23:29 RealBadAngel only way to store data that differs them is meta 23:30 VanessaE considering this is the client handling that meta, and the server never sees or stores it, I don't see a HUGE problem with the idea. 23:30 est31 VanessaE, can you open a bug report with that minimap leak 23:30 est31 so that we dont forget it 23:31 RealBadAngel my idea is to server send the text as it does already 23:31 VanessaE I can't confirm if what I saw is accurate, better to let RealBadAngel do whatever rework he has in mind first. 23:31 RealBadAngel then client on receive creates the texture 23:31 RealBadAngel and stores it as long block is in use 23:32 RealBadAngel so its transparent, no send action needed 23:32 RealBadAngel on unload texture got trashed 23:33 RealBadAngel same would apply to foliage 23:34 est31 VanessaE, I dont think that deletion is implemented 23:34 est31 so its a half-confirm from me :) 23:34 RealBadAngel just make random generator work the same on both sides and apply that on client side to the base texture 23:35 RealBadAngel so server will know only the seed, client will apply 23:35 est31 ? 23:36 RealBadAngel i mean transitions in grass colour between biomes for example 23:37 RealBadAngel so on the server side grass node is the same, but on the clients it can look different way 23:38 RealBadAngel but thats just a sidenote 23:39 RealBadAngel btw, ive switched to full hd monitor 23:39 est31 well, texture packs modifications with tinting could be done with that param1 trick 23:40 RealBadAngel its pretty weird that this 80 chars limit makes the code occupying just a margin of my display lol 23:40 est31 you just provide your own function get_texture_modifier(node_name, param1) 23:40 RealBadAngel like 1/4th of the screen 23:40 est31 yea 23:40 est31 its useful though, because you can open multiple windows simultaneously 23:41 est31 no more single tasking :p 23:41 RealBadAngel hehe 23:41 RealBadAngel but 23:41 RealBadAngel what i have noticed 23:41 RealBadAngel now im at much higher resolution 23:41 RealBadAngel no change in speed 23:42 RealBadAngel i mean in game 23:42 RealBadAngel and THATS pretty weird 23:44 RealBadAngel also, another thing, not related 23:44 RealBadAngel inventory has to be given option to split stacks 23:44 est31 you can split stacks already 23:45 est31 into n - 1 : 1 23:45 RealBadAngel what we do have now (touching a stacks with two fingers) is a joke 23:45 est31 1 : n-1 23:45 est31 n/2 : n/2 23:45 est31 n - 10 : 10 23:45 est31 10 : n -10 23:45 est31 that are the options 23:45 RealBadAngel have you actually tried to do that on a small scren? 23:46 est31 you mean touchscreen? 23:46 RealBadAngel yes 23:46 est31 ah yeah 23:46 RealBadAngel there should be two slots to split input 23:46 est31 Tesseract, small question regarding security. does the minetest.something API also get included into the table returned by minetest.request_insecure_environment()? 23:46 RealBadAngel most easy solution 23:46 est31 and if this api gets included, is it the same table as the "official" insecure minetest.something API? 23:47 est31 I mean if a mod overrides minetest.get_player_privs 23:47 est31 and you have something like worldedit chat commands 23:47 est31 which checks for server priv for arbitrary lua command entry 23:48 est31 then the evil untrusted mod could fake server privs, and decide which players to also give arbitrary lua command entry 23:49 est31 and possibly that entry isn't sandboxed 23:49 est31 the mod could even bypass the whole chat mechanism I guess 23:50 est31 just call minetest.registered_chatcommands["/lua_cmd"].func(admin_name) 23:50 Tesseract est31: No, it isn't included. 23:54 est31 do secure trusted mods get loaded before or after untrusted mods? 23:54 est31 or unordered? 23:56 est31 ouch https://forum.minetest.net/viewtopic.php?p=189354#p189354 23:56 est31 one way to fix it would be to load all trusted mods first 23:56 est31 but ofc if a trusted mod depends on an untrusted one, we have a problem 23:57 est31 the sandbox isnt ready for opening the floodgates 23:57 est31 except we dont execute any trusted mod 23:58 est31 (with "opening the floodgates" i mean adding unmoderated mod repos like minetest-bower to the client's functionality)