Time Nick Message 00:22 Helenah How do vaccuum pheumatic tube segments work? I attached one to a chest but it doesn't seem to pipe it out. 00:22 Helenah Items in the chest, that is, don't pipe out. 00:30 Helenah I think I need an injector. :D 00:54 Helenah Sorted! :D 03:33 repetitivestrain sfan5: the fix for #16516 is to prevent some blocks in the border from being inappropriately marked as generated, by restoring my version of the comparison finishBlockMake which did not use v3s16's comparison operators, as those establish a total order rather than just a component-wise comparison 03:33 ShadowBot https://github.com/luanti-org/luanti/issues/16516 -- Suspected lighting regression 03:33 repetitivestrain https://paste.debian.net/1398314/ 03:34 repetitivestrain of the comparison in FinishBlockMake* 07:49 sfan5 ok, please get someone to open a PR 08:06 repetitivestrain it's a trivial change (fewer than 5 lines), and i feel absolutely no obligation to pursue a problem that was introduced by deleting my code against my advice, so Blockhead256 or Wuzzy will have to do the honors 08:06 repetitivestrain I'm afraid 08:08 sfan5 I have a feeling successful open-source collaboration looks different 08:20 repetitivestrain neither does it, i think, conclude with programmers experiencing terminal exhaustion over trifles such as communication... anyway the OP appears to be adequately motivated and I shall defer to him 08:26 Krock repetitivestrain: would you please be so nice to provide this as a patch (not diff), such that authorship is correct if I were to open a PR? 08:26 Krock ok 08:27 Krock heh. I copied the username from corarona's PR description to make sure I make no typos :3 08:28 Krock or I didn't. uh whatever 09:52 shaft I made a mod where you can paste base 64 pngs into a painting in the game. ^[png seems to be the only method to add and remove textures at runtime. However Luanti can't actually validate that it's a png. Might throw a red error message but doesn't seem to crash the game. Is it a bad idea? 10:21 Krock shaft: it'll waste the client's RAM if you update it too frequently. "Might throw a red error message" does seem like a validation, though. 10:22 shaft Yes but I can't check that the PNG is valid before applying it, right? 10:23 shaft Like reaaally valid and will decode to an actual picture with the correct dimensions 10:24 sfan5 you can do basic validation in Lua 10:24 shaft But basic seems halfassed and using some huge library seems overkill 10:39 Krock yes. the server has no dependencies on libjpeg/libpng, or any other client-relevant audiovisual libraries. Thus it cannot validate them beforehand. Also PNGs created during runtime would have to be checked during runtime too... 10:39 Krock unless you can write a test framework to test a few inputs and check the resulting images 11:13 shaft What size should i limit the entity staticdata size to? I found that a 10kB is safe. Somewhere above it crashes the game. 11:30 Krock 64 KiB might be a magic border 11:56 shaft hmm 50 kB still works. I guess 10 kB was rather conseravative. On the other hand it seems like a fine limit. Good enough for a full color image around 60x60. Indexed can go much higher. Of course 128x128 full color is pretty to look at but it seems like not much gain for the increase. 12:08 luatic shaft: png is a simple format, you can parse it using a script of very modest size: https://github.com/appgurueu/modlib/blob/master/minetest/png.lua 12:08 luatic that parser is strict 12:09 shaft Can it actually guarantee that you get out an undamaged image? 12:09 luatic to the best of my knowledge, yes 12:10 luatic if parsing using my parser succeeds, you should have a valid PNG file 12:12 user2_ iirc the 'simplest' image format is the standard windows icon (.ico)- it's header is literally just 4 bytes iirc, but i don't think it's supported 12:12 luatic i believe TGA is also more simple, but that's not the point right now 12:13 user2_ yeah 12:14 user2_ i personally think this could be a crash exploit if you find a way to work around the parser validation 12:17 shaft Yes or resource abuse. I think I'll just have to put some priviledge on it. 12:21 MTDiscord they absorb dropped items 12:41 identity ICO is plenty complex, iirc it is just a container for BMP/PNG images. portable anymaps, on the other hand, are much less so: four numbers for headers + the payload that may be encoded as either binary or plain text 12:41 identity has a description of the file format, and further down plain text examples 12:42 shaft That's a very good point. 12:43 shaft Ico is just another bmp variant at best, just like .cur 12:44 user2_ i meant it has a simpler header than PNG, i wasn't referring to the image data itself 12:44 shaft BMP has a simpler header than ICO 12:46 user2_ BMP is unsupported by the engine since 5.10.0 iirc- however ICO was never supported afaik 12:46 shaft And why should it? It's terrible. Microshit forced it on the web with Internet Explorer. 12:47 user2_ anyway, here is the header from an icon, copied straight from my hex editor: 00 00 01 00 12:47 user2_ shaft: because it's lossless, unlike JPEG, which is still supported? 12:50 user2_ PNG is the best overall, it's very common and is completely lossless 12:50 shaft A minimal bmp has at least 54 bytes header according to ChatGPT. 12:51 shaft And ICO 22 bytes. 12:51 user2_ not according to my hex editor 12:52 identity “a minimal bmp has at least 54 bytes header according to some guy i asked on the street.” 12:53 shaft I made a 1x1 ico with gimp and it's 78 bytes. 12:55 user2_ that's not the header though, that's the full icon 12:56 shaft With PNG I can go down to 69 bytes using GIMP. 12:56 shaft Yes but how much image data do you have at 1x1 12:58 user2_ i'm looking at the 48x48 luanti-icon.ico 12:58 user2_ it's... 9.4 KB 12:59 identity it depends. there could be, like, 16 bytes for a single pixel? 4 per colour, RGBA has 4, so 4×4 13:00 user2_ it seems the 8.1 KB luanti.svg has the highest detail in the smallest file size 13:00 user2_ (because it's not a bitmap-type image) 13:03 user2_ SVG seems to be literally just text in an XML format with a .svg extention 13:05 identity not just seems to be, it is an xml-based vector graphics format 13:06 [MatrxMT] Sure, in an hour 13:06 [MatrxMT] And thanks 13:07 user2_ well it has very good image quality in a tiny file size, i think it might be better than PNG (if the engine supports it ;-;) 13:09 identity it is better when you need something scalable (‘S’ is for Scalable), but for very simple images/bitmaps it is frequently suboptimal, i think 13:12 luatic user2_: the engine doesn't support it; it is a very complex file format and not easy to support, you need a capable rasterizer among other things 13:13 luatic see #10770 for discussion 13:13 ShadowBot https://github.com/luanti-org/luanti/issues/10770 -- SVG icon/texture support 13:14 identity if we are talking about image formats, i have to throw in JPEG XL: 13:16 user2_ interesting 13:17 user2_ i don't think there's going to be a sudden change from PNG any time soon however 13:21 identity JPEG XL is, basically, JPEG but with much better compression/quality (including lossless) and some other neat tricks up its sleeves. it is used sporadically on the web, as browser support is (was?) in flux, but people do not know about it as much as they know about (and complain about the (lack of) support for) WebP&co. 14:37 shaft Google has actively been sabotaging jpeg xl with all means they have. AVIF and WebP on the other hand were shipped out to consumers before anyone could call them finished. 14:44 MTDiscord but firefox doesn't support jpegxl natively too i think 15:12 cheapie One of these fences is not like the others... https://cheapiesystems.com/media/images/screenshot_20250927_101145.png 15:12 cheapie (yes, that's a digiscreen again) 16:49 cheapie digistuff GPU fun: https://cheapiesystems.com/media/2025-09-27%2011-46-30.webm 16:53 MTDiscord cool 16:53 cheapie Maybe if I ever figure music out (like how to make it, not how to play it in game... *that* part is easy) I might have to make a whole demo or something :P 19:07 MTDiscord You also actually implemented cooling? 19:09 Krock aethetics 19:10 cheapie zeminori: Just decorative