Time Nick Message 11:23 whosit there's no way to get the final texture with all the combinators applied and save it to a file, for example, right? 11:23 sfan5 no 11:27 whosit could be useful to have server "cache" the more expensive ones... 11:29 sfan5 the server does not have any of the graphical libs, and this won't work with texture packs 11:30 sfan5 in general I'd say if you have textures modifiers that are expensive to compute you are doing it wrong 11:30 sfan5 (or it's the engine's fault for being slow) 11:32 whosit part of it is the engine's fault for not having sane way to write text on textures... 11:34 whosit but also, I'm just trying to find a simple way to render a "live" map in a formspec - wanted to quickly map node to colors somehow :p 11:38 sfan5 if I had to i'd use write_png and remote media (or the [png modifier) 11:38 sfan5 but there's fundamentally no solution that won't fill up the client's media cache 11:41 whosit there's dynamic_add_media with ephemeral=true... but it's semi broken (I've promised to file a bug about it...) 11:41 whosit can't send same texture to different people at different times with ephemeral=true 11:43 whosit unless long enough time is passed and it's cleared from... somewhere on the server too 11:46 sfan5 you know as a developer it's kind of disappointing to hear that people aren't using a feature because it's broken, yet nobody has told you about it 11:48 whosit we may have discussed it some time ago, I think I wanted to craft a minimal mod to repro it before I got distracted 11:49 whosit what I was trying to do is to create in-game "screen" node/entity that shows images served by an external server 11:49 whosit it works, just not the ephemeral part 11:51 sfan5 it should work tho 11:52 sfan5 hm well the docs are not exact on this, but I agree it should work 11:53 whosit it errors if I try to send same texture again.. I may have to dig up logs to rememeber what it complains about or poke at my mod again.. 11:55 whosit so, my idea is: 11:55 whosit a node showing a texture, but only to people who can see it (who are nearby) 11:56 whosit when someone comes near (I was using AreaStore for it), it's using dynamic_add_media to load the texture. When it's loaded, I show the entity to the player with :set_observers() 11:57 whosit this works fine, only texture is dynamic - it's served over HTTP from a python server that renders it 11:57 whosit so I don't want to fill up the client cache with them 11:58 whosit I set ephemeral=true, but this make dynamic_add_media to error when another person comes near the "screen" withing 3 seconds of the first one 11:59 whosit as this mod has many extra parts, I wanted to make a minimal repro for the issue, which should not be hard actually X) 11:59 whosit but it's not obvious why I do it this way, I guess 12:10 sfan5 what is the error? 12:12 whosit I'm running the mod... and cannot reproduce it XD 12:12 whosit maybe something changed in 9 months... 12:14 whosit I'll try writing a minimal thing to repro it as I remember, to be sure, sorry :p 12:16 whosit would be awesome if my mod got fixed by itself ;D 12:34 whosit ERROR[Server]: Server::dynamicAddMedia(): file "whatever.png" already exists in media cache 12:34 whosit idk what I did with my mod that it does not trigger it... 12:35 whosit this is on 5.14 12:35 sfan5 ok yeah I can see it in the code why it doesn't work 12:36 sfan5 problem: for ephemeral media the server makes a copy of your file, so it's immediately obvious that it's still the same file 12:36 sfan5 however in the non-ephemeral the server also just trusts the mod to keep the file intact 12:37 whosit https://paste.debian.net/1393491/ 12:38 whosit yeah, but it's send to different players, for this use case... 12:38 sfan5 however I think the server hashed it anyway(?) 12:38 sfan5 I'll check if this can be trivially fixed 12:38 whosit I also can't make it texture_1.png and texture_2.png, since they should see same entity... 12:43 whosit I have no idea about internals, but it's a bit strange that it complains about cache when I'm just trying to send a copy to another player... if it's critical, then maybe there needs to be a per-player map of sent media files, or something... which is ugh 12:46 sfan5 the server has a global list of available media, and stuff needs to go in there or it can't be transferred 12:48 sfan5 ok no this is hard to fix 12:54 sfan5 probably the "client should cache" should be disconnected from ephemeral 13:02 luatic whosit: there technically is a way to do texmods on the server and i have invested an in hindsight regrettable amount of time into it (though writing a PNG reader and a parser for texmods was fun). 13:02 luatic it's a bit outdated by now, but supports most texmods: https://github.com/appgurueu/modlib/tree/master/minetest/texmod. 13:02 whosit luatic: sounds awesomely horrible :p I'll look at it... 13:05 ireallyhateirc does luanti do ambient occlusion? 13:05 whosit decode_png() is a nother missing piece that could be added for completeness... 13:07 luatic whosit: indeed, would require making the server depend on libpng though. encode_png is different in that because it is so stupidly simple, it is actually just a few lines of C++ (or Lua, if you wish). 13:07 luatic ireallyhateirc: it does some kind of budget ambient occlusion for nodes as far as i know 13:09 ireallyhateirc this will be me and my wishlist again but I'd like to have more control over light and shading 13:09 whosit server-side image manipulation could make dynamic media more powerful though... or I guess having an external server doing it works too (that's what I did - use python+PIL to render a texture... 13:09 ireallyhateirc I want to replicate this style for characters https://p.mort.coffee/3y7.png 13:10 ireallyhateirc and to achieve this I'd need a 100% emissive material 13:11 ireallyhateirc so AO could get in my way 13:16 whosit sfan5: should I create the issue describing the use case and the error with ephemeral? 13:38 MTDiscord ireallyhateirc: glow = -1 13:38 ireallyhateirc wow so hacky, thanks 13:41 sfan5 whosit: maybe 13:48 whosit ok... 13:49 sfan5 even if the dynamic media worked perfectly as intended there's still https://github.com/luanti-org/luanti/issues/11531 which will ruin your use case 13:52 sfan5 at the very least ephemeral could be split into "client should cache" and "server should delete media after transfer" 13:56 sfan5 so yes please do 14:01 whosit maybe could get away with it if it's just for rendering semi-static signs, but yeah :/ 14:14 repetitivestrain rubenwardy: regarding https://github.com/luanti-org/luanti/issues/16240#issuecomment-3163942268, games will absolutely ship optional mapgen mods, as mineclonia intends to very soon 14:15 repetitivestrain and the mod where the mapgen is implemented also provides facilities which must be enabled even in absence of the map generation itself 14:16 repetitivestrain so what would really benefit mineclonia (at least) would be a means of renaming singlenode in the Create World wizard and providing a settings dialog for options (such as preset type and large biomes) when singlenode is selected 14:18 Oblomov ah, caching, one of the famously essy problems of CS 14:18 Oblomov (sorry for the OT) 14:46 sfan5 whosit: ok no need now I added the feature I was thinking of in https://github.com/luanti-org/luanti/pull/16445 14:49 whosit just submitted my issue X) 14:52 whosit I should try this with my snippet... 14:52 sfan5 it doesn't fix the issue 14:52 sfan5 it just allows you to work around it 14:58 TenPlus1 Hi folks 14:58 whosit so, ephemeral=false, client_cache=false will allow to send it to players selectively, but won't litter client file cache? 14:58 TenPlus1 is anyone having troubles connecting to certain servers at all ??? 14:58 whosit hi TenPlus1 14:59 TenPlus1 o/ whosit 14:59 sfan5 whosit: yes 15:01 TenPlus1 Problem: I can connect to every other server just fine, but cannot log into Xanadu using client, but... if I use the web version of Minetest I can sign into Xanadu just fine ?!?! o.O 15:03 luatic TenPlus1: sounds like some firewall rule gone wrong? the web client uses a proxy 15:04 sfan5 the "web version of Minetest" proxies your traffic over a third-party server 15:04 sfan5 so if anything something might be wrong with your local network 15:04 TenPlus1 even though I can sign into every other server just fine ? 15:05 TenPlus1 P.s. I've also tried different Os' on the same system, has the same result... 15:07 whosit this may need clarification too: "Regardless of any use of ephemeral, adding media files with the same name twice is not possible/guaranteed to work. An exception to this is the use of to_player to send the same, already existent file to multiple chosen players." 15:09 TenPlus1 lemmie go for a full reset, router and all to see what happens, brb