Minetest logo

IRC log for #minetest, 2022-01-28

| Channels | #minetest index | Today | | Google Search | Plaintext

All times shown according to UTC.

Time Nick Message
00:33 Jason232 joined #minetest
01:19 prisonpotato joined #minetest
01:29 Jason232 joined #minetest
01:34 Markow joined #minetest
02:21 Alias joined #minetest
02:26 Markow joined #minetest
02:29 v-rob joined #minetest
02:37 Evergreen7 joined #minetest
02:50 greeter i have some falling water on a server. is there any easy non-admin way to despawn it?
02:51 erlehmann greeter what do you mean with falling water?
02:51 v-rob joined #minetest
02:52 greeter i spilled some water near the top of the world. i'm done with it now and picked up the water with a bucket, but now what's flowed away just keeps falling
02:53 erlehmann greeter get a sponge i gues??
02:54 erlehmann greeter alternatively, get a cheat client
02:54 erlehmann or ignore it
02:55 greeter looks like it's despawned now. i followed it down about 1,000 nodes then flew away. when i came back it was gone
03:16 Jason232_ joined #minetest
03:19 grouinos joined #minetest
03:28 queria^clone joined #minetest
03:33 queria^clone joined #minetest
03:43 v-rob joined #minetest
03:44 kamdard joined #minetest
03:51 v-rob erlehmann: Did you really recommend someone get a cheat client? That's very much against the rules.
03:54 erlehmann v-rob i did, and i believe you are mistaken – https://wiki.minetest.net/IRC#Rules says nothing about cheat clients.
03:54 erlehmann v-rob i believe cora has used waspsalive to fight runaway fires that caused server lag
03:55 erlehmann so i guessed that code could pretty easily be changed to fight water
03:55 v-rob The IRC rules say very few Minetest-specific things, but the forum rules do prohibit it, and most of those should extend to IRC by proxy.
03:55 erlehmann the real solution is, of course, to fix the fire algorithm. cora also do that.
03:56 v-rob I mean, it's certainly possible to have legitimate "cheat" clients, but I'm just trying to warn you that the rules are rather explicit about it. I'd personally rather not have you get banned or anything like that.
03:57 erlehmann i am pretty sure that i have only ever suggested cheat clients that are constructive, i.e. automatically build stuff.
03:58 erlehmann or similar things
03:58 v-rob I know, but it could get questionable. Some might consider automatic building cheating.
03:58 erlehmann waspsaliva can, for example, disable particle effects bc those can cause lag
03:58 erlehmann that depends on the server
03:58 v-rob That sounds like a legitimate fork feature.
03:59 v-rob Forks are definitely different that cheat clients, as one is used for getting unfair advantages over others.
03:59 erlehmann well, i call all of those cheat clients, yes
04:00 erlehmann but that has to do with my view on the virtual lego games genre in general
04:00 v-rob Well, it might behoove you to use better terminology then :)
04:00 erlehmann i.e. that exploring an open world and building stuff is a modern robinsonade
04:00 erlehmann the perfect neoliberal experience
04:00 erlehmann work is always rewarded
04:01 erlehmann well, waspsaliva has also goddess mode
04:01 erlehmann and features to keep griefers at bay
04:01 erlehmann i do not believe there is a good line to draw
04:01 erlehmann i mean, i used halfbright mode myself because i have bad contrast vision
04:02 erlehmann halfbright, as in: every node appears at least with light level 7
04:02 riff-IRC joined #minetest
04:02 erlehmann i do, of course, not do such stuff on CTF or so
04:03 erlehmann apart from all of this: i believe that the forum rules neither do nor should they extend to IRC and i believe this is the first time someone explicitly disagrees on that.
04:03 erlehmann one reason for that is that as a game dev, i need to discuss cheat clients
04:04 erlehmann for the simple reason of “how to defend against that”
04:04 v-rob Discussing cheat clients is a different matter than recommending cheat clients
04:05 erlehmann if you are more comfortable with that, i can also recommend to not use them. there is historical precedence, wait for it.
04:05 erlehmann https://en.wikipedia.org/wiki/Vine-Glo
04:06 erlehmann > On the packaging, it included a very specific warning: "After dissolving the brick in a gallon of water, do not place the liquid in a jug away in the cupboard for twenty days, because then it would turn into wine."
04:07 erlehmann > old in the United States during Prohibition by Fruit Industries Ltd
04:07 erlehmann sold ;)
04:09 erlehmann v-rob i do, of course, not want to be banned. so if someone who actually can ban me threatens me with a ban for recommending waspsaliva, i may try to compy.
04:10 v-rob Well, start distributing source patches that allow cheating features, and you'll probably find out that we're a bunch of Prohibitionists and not Supreme Court members with conflicts of interest then ;)
04:10 erlehmann v-rob but until that happens, i will continue to tell people about that stuff when i deem it apropriate.
04:10 erlehmann wdym start distributing source patches?
04:11 v-rob I'm making an analogy between giving out wine bricks and code that would allow you to turn Minetest into a cheat client.
04:11 erlehmann i *strongly* doubt that anyone is going to ban cheat client authors for anything outside forums. cora and fleckenstein were not banned.
04:11 erlehmann neither was anon5
04:11 erlehmann all three of those have contributed something to minetest in the end, like fixes for exploits.
04:12 erlehmann e.g. i believe fleckenstein fixed the entityspeed exploit (where being attached to an entity allowed players to break the speed limit)
04:12 v-rob In any case, I have no power to ban, as I am not a moderator. I'm just stating that you appear to be on shaky ground.
04:13 erlehmann i doubt it, but i appreciate your concern.
04:13 erlehmann oh also
04:13 erlehmann cheat clients are, definitely, something on almost all servers that have anarchy in the name or description
04:14 erlehmann v-rob have you ever used a cheat client btw? if not, i suggest to try. some features would very well fit into minetest proper.
04:15 v-rob Now you're recommending them to me :)
04:15 v-rob But no, I have not.
04:15 erlehmann yes, because you are a dev and i would like mainline minetest to have more interesting CSM APIs
04:15 v-rob Ah
04:16 erlehmann i mean WS is basically a bunch of CSMs
04:16 erlehmann some of them even work on vanilla minetest
04:16 erlehmann like, cora gave me one once with which i could see the ghost inventories that a specific dupe polluted the world with
04:16 erlehmann so i could research server history
04:17 erlehmann like, where did people dupe
04:17 erlehmann invisible trails
04:17 v-rob I do have a lot of interest in SSCSM (although I'm GUIing for now and the immediate future), and many SSCSM APIs would extend to CSM as well.
04:18 erlehmann i believe that SSCSM is a foolish and dangerous endeavour and should never be done. but apart from that, i do think that we share a goal of better CSMs.
04:18 v-rob It's interesting, I've seen other games that have Lua scripting, and there is no form of SSM, only SSCSM-type things, which is the exact opposite of Minetest
04:18 v-rob Then again, security is not their highest priority...
04:18 v-rob Potential buffer overflows being the norm rather than the exception :/
04:18 erlehmann do you know about afl-fuzz btw?
04:19 erlehmann well, buffer overflows are a reality in the CVE++ programming language ^^
04:19 erlehmann about lua scripting: notch once mentioned that minecraft could have a server-side lua API, with no installation of client side mods necessary
04:19 erlehmann turns out he lied
04:20 erlehmann MC never got that hehe
04:20 erlehmann v-rob what kind of CSM interests you if it is not automating player actions?
04:20 v-rob Rendering
04:21 erlehmann please be more specific about that
04:21 v-rob Like this PR: #10801
04:21 erlehmann btw, automating player actions is important for accessability. i used autoforward, for example, bc it literally hurts to press the forward key after a long time.
04:21 ShadowBot https://github.com/minetest/minetest/issues/10801 -- Add CSM 2D Drawing API by v-rob
04:22 erlehmann i look at it
04:22 v-rob I closed it partly because of a change in GUI development direction and partly because I wanted it to be entirely decoupled from Irrlicht
04:22 v-rob But definitely something I want to pursue more, and also in the 3D realm.
04:23 erlehmann i see what you are doing there, but i believe the approach can be better done by declarative vector graphics and declarative animations
04:23 v-rob For instance, the ability to render arbitrary objects in the world, like client-side entities, but super light-weight
04:23 erlehmann like, see my website here: http://dating.dieweltistgarnichtso.net – the entire thing has rich animations and interactivity, but absolutely no javascript
04:23 v-rob Well, it was a light wrapper around Irrlicht's 2D API, so just image and rectangle drawing, mostly.
04:23 erlehmann it is almost all declarative SVG animations
04:24 erlehmann the difference in performance between declarative drawing and programmatic drawing is A LOT in my experience
04:24 erlehmann like svg animations will work on 10 year old phones … javascript bloatware, not so much
04:25 erlehmann the reason, of course, being that a declarative API means you can improve the renderer
04:25 erlehmann and do not rely on each document to be improved
04:26 erlehmann i believe it to be a collosal mistake to have 2d graphics be programmatic. time and time again it has lead to security and performance problems.
04:26 erlehmann like, take postscript
04:27 v-rob Different things for different jobs. That PR was originally meant for the formspec replacement. All elements have managed rectangles, and then all they need to do is draw an image or box inside that rectangle, so that was the correct approach.
04:27 erlehmann maybe. i can not really tell, formspecs are a cursed thing
04:27 v-rob Well, the formspec replacement is supposed to replace the formspecs, so they're really entirely separate.
04:27 erlehmann i remember having heard a story once, that someone (maybe lutz donnerhacke?) figured out that not only you can make a fractal in the postscript programming language, you can also send that document to a printer
04:28 erlehmann contrary to that, you can not do that using svg, short of including documents fragments in themselves – which can easily be forbidden.
04:29 v-rob Really, that PR was meant to be a backend for more general drawing, not as a thing that general users would use for their drawing needs.
04:29 erlehmann i understand. i took it as an example of a general drawing approach.
04:29 erlehmann and having seen how badly mineclone2 manages client resources, i am strongly against such things.
04:29 erlehmann fire texture metadata, for example, in mineclone2, was sent each frame.
04:30 erlehmann cora calls it “a singleplayer game” for reasons ;)
04:30 v-rob Ouch. The more I hear about MineClone 2, the more I never want to touch it.
04:30 erlehmann well, it is a very successful thing for reasons. but those reasons do not include performance.
04:31 MTDiscord <Jonathon> mineclon* is literally the handbook on what not to do in minetest
04:31 erlehmann a thing you may not have noticed is though that a lot of code in there was cobbled together from other mods.
04:31 v-rob The code is the #1 thing I never want to see from it :)
04:31 ShadowBot https://github.com/minetest/minetest/issues/1 -- GlowStone code by anonymousAwesome
04:31 erlehmann originally, i mean. minetest_game, for example, also had similar bugs. not *too* bad, but similar.
04:32 erlehmann #0
04:32 ShadowBot erlehmann: Error: That URL raised <HTTP Error 404: Not Found>
04:32 erlehmann well
04:32 v-rob Hmm, #-1
04:32 erlehmann hehe
04:32 v-rob Nope, OK
04:33 erlehmann so regarding CSMs
04:33 erlehmann anything else you are interested in?
04:34 v-rob I haven't thought in great detail. My favourite potential application for SSCSM would be entity management, since it's super slow to do it from the server, but that doesn't extend very well to CSM.
04:34 erlehmann here is some inspiration btw https://repo.or.cz/waspsaliva.git/tree/HEAD:/clientmods
04:35 erlehmann there is an encrypted messenger in there and teamchat
04:35 erlehmann and a way to mark other players as friend or foe
04:36 erlehmann i like the simplicity of this one https://repo.or.cz/waspsaliva.git/blob/HEAD:/clientmods/kamikaze/init.lua
04:36 erlehmann basically, someone spammed hostile mobs at the spawn of a server
04:36 erlehmann which kills noobs
04:37 erlehmann kamikaze logs in and punches those, then dies, respawns, does it again
04:37 erlehmann to make the server safe again
04:37 erlehmann it also punches fire and tnt and exploding crystals
04:38 erlehmann v-rob would you consider that cheating? the admin did not interfere  with both spamming hostiles nor cleaning it up
04:38 v-rob Not really
04:38 v-rob But the same code could easily be abused to attack other players
04:39 erlehmann well the bot is too lazy for wayfinding i just realized
04:39 erlehmann so it just flies lol
04:39 v-rob Which makes it difficult to add APIs for such a thing
04:39 erlehmann it's not too difficult
04:39 erlehmann you are thinking of a different thing probably, killaura
04:39 erlehmann it can be detected pretty easily, spawn invisible entities close to players and see if they start punching them
04:40 erlehmann if so, they must be cheaters
04:41 erlehmann v-rob what about autoeat, where if a player has food and is hungry, the script will make the player eat it. cheating?
04:42 v-rob It would probably depend on the hunger mod
04:42 v-rob If it's an extreme survival server, it might be.
04:43 v-rob Minetest Game + hunger? Maybe not.
04:43 erlehmann well, anarchy servers, where players lie, cheat & kill
04:43 erlehmann extreme survival ehehehe
04:44 v-rob Anarchy is a class of its own, and certainly shouldn't be the basis for CSM APIs, to be sure.
04:44 erlehmann to the contrary, i think it should. you get a very good testing that way if an API can and will be used to cheat.
04:45 erlehmann if you have a CSM API and it is not used to cheat on an anarchy server, it's probably fine
04:45 v-rob I mean we shouldn't design APIs _for_ anarchy servers
04:46 erlehmann well, anything that improves user control is like that. so i totally get it that anarchists will want CSMs that are not server-controlled and … others … will want to prevent that level of user autonomy.
04:47 MTDiscord <Jonathon> hey vrob, would you be up for looking at some formspec stuff?
04:47 erlehmann uh, are CSM formpsecs still broken?
04:47 v-rob Sure, which formspec stuff?
04:47 MTDiscord <Jonathon> https://github.com/minetest/minetest/issues/11898 and https://github.com/minetest/minetest/issues/11907
04:48 erlehmann https://github.com/minetest/minetest/issues/11700
04:48 MTDiscord <Jonathon> i have a example out in the wild(pr for fixing it) https://github.com/mt-mods/travelnet/pull/32
04:49 MTDiscord <Jonathon> is this something that would block 5.5?
04:49 erlehmann oh my, this is horrible
04:50 erlehmann i was not aware of that problm
04:50 erlehmann problem
04:50 erlehmann Jonathon, can the pattern be greped for in contentdb? i have an older cdb dump and some scripts to grep it
04:50 erlehmann like, the pattern of close a formspec, open one again
04:51 MTDiscord <Jonathon> it seems unknown if this is a server or client side.
04:51 MTDiscord <Jonathon> erlehmann: im asking vrob
04:52 erlehmann and 0.1 is enough of a delay to always win the race?
04:52 erlehmann unclear to me from the info i have read
04:52 erlehmann maybe appgurueu knows more
05:00 MTDiscord joined #minetest
05:15 v-rob Confusing bug...
05:16 MTDiscord <Jonathon> is it client, server, both?
05:16 v-rob Actually, I think I found it
05:17 v-rob It might only happen in singleplayer, lemme check
05:18 v-rob Well, maybe not
05:32 v-rob I found the source of the bug.  It's an old one; it's been around since 5.0.0 at least, probably way, way longer than that.
05:32 MTDiscord <Jonathon> is it client, server, both?
05:34 MTDiscord <Jonathon> odd it finally surfaced now if its been around that long
05:35 v-rob Both
05:36 v-rob button_exit[] is clicked, client sends fields to server and destroys GUIFormSpecMenu directly after. However, before the client gets that far, the server sends a formspec right back, which then gets shown. Then the client destroys GUIFormSpecMenu, including the newly shown formspec.
05:36 v-rob Nasty
05:37 v-rob It looks difficult to fix cleanly.
05:37 v-rob However, servers with highish latency shouldn't have this problem, so y'all should make the server lag out more :P
05:38 MTDiscord <Jonathon> well, thats a new one
05:38 MTDiscord <Jonathon> how does the issue occur?
05:39 v-rob As far as I can tell, it's essentially a race condition between client and server
05:39 MTDiscord <Jonathon> yikes
05:39 v-rob It's pretty bad
05:39 MTDiscord <Jonathon> is this a 5.5 blocker or?
05:40 v-rob I'd guess no because it's been around such a long time, but IDK
05:40 erlehmann v-rob please post your new knowledge to https://github.com/minetest/minetest/issues/11907
05:41 MTDiscord <Jonathon> so probably need sfan5/other devs opinion or something
05:41 v-rob I will, I'm just doing more testing
05:41 erlehmann ok cool
05:41 MTDiscord <Jonathon> Thank you for looking into ir v-rob
05:41 MTDiscord <Jonathon> *it
05:41 v-rob No problem
05:44 erlehmann v-rob how about canceling GUIFormSpecMenu destruction if the client got a new formspec since the last button press or something?
05:44 erlehmann by which i mean “why is this a bad idea?”
05:44 erlehmann almost all “obvious fixes” are bad ideas, after all
05:46 erlehmann https://gitlab.com/torkel104/libstrangle
05:46 erlehmann > Cap the FPS (frames per second) of a chosen game by using the included script strangle Example:
05:47 v-rob The difficulty is that GUIFormSpecMenu has almost no knowledge of when a new formspec is shown. This is also the cause of difficult problems like showing the same formspec with minetest.show_formspec not causing the formspec to be regenerated.
05:51 v-rob Updated the issue
06:20 loggingbot_ joined #minetest
06:20 Topic for #minetest is now The official Minetest channel | Latest version: 5.4.1 (2021-04-10) | General, player and modding discussion is on-topic. If in doubt, post here | Responses may take a while, be patient | Rules: https://wiki.minetest.net/IRC#Rules | Development: #minetest-dev | Server list: https://minetest.net/servers | IRC logs: https://irc.minetest.net/minetest
06:34 erlehmann v-rob what do you think of declarative animations btw?
06:36 v-rob They're certainly the proper way to do nearly all animations in a GUI
06:37 erlehmann what animations would you not do with them?
06:39 v-rob Assuming they're a good set of rules, you'd use them for all GUI animations. If you're doing something like a 2D game, of course, they won't be enough.
06:41 erlehmann i still do not know what you mean by “they won't be enough”
06:42 erlehmann you want shaders in your 2d images?
06:44 v-rob "2D game". Try making Super Mario Bros. with only declarative animations.
06:45 erlehmann right, you can only make games that have a limited state space with that
06:45 v-rob Granted, that is starting to fall outside the realm of normal GUIs as the term is used, but Minetest does need to support such use-cases.
06:45 erlehmann i wish i could just use svg for interface tbh
06:45 erlehmann it's so damn clean to do everything in it
06:45 erlehmann compared to … literally everything else i have seen
06:46 erlehmann aren't dvd menus SMIL animations?
06:46 v-rob No idea
06:47 erlehmann i looked it up, yes
06:47 erlehmann dvd menus and SVG use both smil
06:47 erlehmann v-rob did you look at the SVG at my website?
06:47 v-rob I definitely should use SVG myself sometime
06:47 v-rob I had a brief look, yes
06:48 erlehmann well if you ever have any svg questions, ask
06:48 erlehmann i wrote every animation in there by hand
06:48 erlehmann in emacs
06:48 erlehmann it's super easy
06:48 v-rob Will do
06:49 erlehmann also, click the red square here, then watch the animation, then look at the source code http://daten.dieweltistgarnichtso.net/src/svg-smil-events.svg
06:50 erlehmann SVG formspecs when
06:51 erlehmann now i wonder
06:51 v-rob Wow, that's pretty clean
06:51 erlehmann if there is some drop-in library for this
06:52 erlehmann v-rob now this ;) http://daten.dieweltistgarnichtso.net/src/svg-animation.html
06:53 erlehmann one advantage i see in declarative animation btw is that it is impossible to mess up the state management
06:53 erlehmann websites that animate using js often have weird races and get in some impossible state
06:54 erlehmann css and svg animations can not have that by design
06:54 v-rob I mean, there's Cairo, which I think supports SVG, but I think a lot of these libraries don't support hardware acceleration.
06:54 erlehmann wdym?
06:55 erlehmann you can just render it onto a surface though?
06:55 v-rob Yes, but relatively slowly
06:55 erlehmann chrome already has GPU acceleration for SVG and CSS
06:56 v-rob I dunno, I haven't looked into it much
06:56 erlehmann most CSS/SMIL animation is hardware accelerated in some way per https://mozillagfx.wordpress.com/2013/07/22/hardware-acceleration-and-compositing/
06:56 erlehmann > Some canvas operations are very fast on the gpu (like blitting surfaces) but others are not (drawing bezier curves and shapes in general), so there is a trade-off and “hardware-accelerated canvas” is not always “accelerated” depending on what you are doing with your canvas.
06:58 erlehmann > “achieving hardware acceleration” is the wrong goal. You should pursue performance and/or smoothness,
06:59 erlehmann https://greensock.com/forums/topic/11842-hardware-acceleration-and-svg/
07:00 erlehmann > GPUs work with a fixed number of triangles. Paths are not defined by triangles, nor do all the points of a path lie on the path itself e.g. Beziers.
07:01 erlehmann v-rob btw the svg path attribute language is a neat little thing that might make sense in minetest for some things you want. not sure.
07:02 v-rob You know, a little bit off the original topic, but I wonder what SVG in 3D would look like
07:02 v-rob As in, make 3D shapes, animate them along 3D paths, etc.
07:02 v-rob Sounds interesting
07:02 erlehmann uh, that's relatively simple. let me see if i have something for you.
07:03 erlehmann v-rob http://daten.dieweltistgarnichtso.net/src/political-compass-surreal.html
07:03 erlehmann there is zalgo text in there, so it might have rendering errors
07:04 erlehmann note that the hyperlinks are clickable
07:04 erlehmann and that, again, everything is purely declarative
07:04 v-rob Well, there we go. SVG's pretty fancy
07:05 erlehmann as i said, give me your svg questions and i shall answer ^^
07:06 erlehmann regarding hardware accelleration, that space thing actually is something that i have checked worked on >10 year old phones with ~256 MB RAM or so
07:06 erlehmann no idea if it was accelerated, but it was smooth
07:07 v-rob Well, I guess I didn't know quite as much as I thought.
07:07 erlehmann that's always a good thing to happen. now you have new things to think about and tinker with!
07:08 erlehmann once youk now a bit of svg, i suggest to check out <svg:use>
07:08 erlehmann you can basically include subtrees, i.e. have icon libraries
07:08 erlehmann hmmm
07:09 erlehmann now i wonder if this can be used to have a simple portable include mechanism without frames
07:09 erlehmann in xhtml
07:09 erlehmann by using the <svg:use> to include a some <svg:foreignObject> that has xhtml in it
07:09 erlehmann would be super useful if that works
07:10 v-rob That would be really nice. Frames would be great if they worked better.
07:10 erlehmann the thing with including a subtree is: you can actually include some icon from an svg file, then have the site css apply to it
07:10 erlehmann (it would not apply to iframe content)
07:12 erlehmann v-rob btw, if you want to move something along a path in 3d space, i think you will have to have a 2d path (since the path language is 2d) and rotate the path in 3d space when you want it to change direction.
07:12 erlehmann maybe there is a less hacky method, not sure.
07:18 specing joined #minetest
07:58 calcul0n joined #minetest
08:33 Jason232_ joined #minetest
08:36 hlqkj hello, is there someone who can help me with building mt on Mingw64?
08:40 MTDiscord <Sublayer plank> cross-compiling for windows on linux or are you on windows?
08:42 MTDiscord <Sublayer plank> there's buildbot scripts in util/buildbot/ for building for windows on linux, idk if they can be used on windows as well
08:46 hlqkj I am on windoes
08:47 hlqkj already using the buildbot.sh script, but i get a weird error on CheckSymbolExists for ZSTD
08:47 hlqkj ld can't find the file at the path, yet it's there
08:47 hlqkj C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find /d/minetest/minetest/winbuild/libs/zstd/lib/libzstd.dll.a: No such file or directory
08:48 MTDiscord <Sublayer plank> are you trying to build stable 5.4.1 or the latest development version?
08:48 hlqkj master
08:48 hlqkj i can try stable, didn't think at that sry
08:49 hlqkj oh actually, idk if it's the buildbot script checking things out for me?
08:50 MTDiscord <Sublayer plank> yeah it does. you can change the branch name inside the script to I think it's stable-5 to switch to building 5.4.1
08:50 hlqkj ok, i
08:51 MTDiscord <Sublayer plank> it clones a separate copy for the repository from the specified branch, but for building with local changes there's an environment variable to specify an existing directory
08:51 hlqkj *i'll try
08:51 TomTom joined #minetest
09:32 delta23 joined #minetest
09:48 Markow joined #minetest
09:55 sys4 joined #minetest
10:11 cation joined #minetest
10:32 cation joined #minetest
10:32 sfan5 the buildbot script is only tested on linux for cross-compilation
10:32 sfan5 if you have a mingw environment on windows you can probably install all deps from its package manager much easier
10:33 sfan5 and just run cmake, make manually then
10:34 MTDiscord <luatic> [OFF] yep I was right: string.char(0x77, 0x73, 0x6F, 0x72) == "wsor"
10:39 MTDiscord <Sublayer plank> erlehmann: so the tga encoder has been broken on windows ever since you implemented the RLE compression?
10:39 erlehmann Sublayer Plank so the thing is, the encoder did not work on windows, but devs and servers run linux
10:39 erlehmann Sublayer plank, yes, but that was relatively recently. before, it apparently corrupted some images, but the header did not contain \n
10:40 MTDiscord <luatic> side note: minetest.safe_file_write should work fine with binary files
10:40 erlehmann let me look it up
10:40 erlehmann i did not write the file code. i guess we need a unit test for that.
10:41 erlehmann oh, also: i guess i should rework my tga devtest nodes to actually *generate* the textures
10:41 erlehmann some time in the future
10:41 erlehmann Subplayer plank, just out of curiousity, the devtest test nodes work fine?
10:41 erlehmann the ones from https://github.com/minetest/minetest/pull/11978
10:42 erlehmann luatic are there other ways that minetest can mangle files?
10:42 erlehmann luatic or is this the only thing?
10:43 HuguesRoss joined #minetest
10:43 MTDiscord <luatic> huh? MT doesn't mangle files AFAIK
10:44 erlehmann so this is a general lua thing i assume
10:44 erlehmann that depending on the platform bytes are replaced unless you set binary mode?
10:44 MTDiscord <luatic> not only a Lua thing - if you want to write binary files, always use "wb"
10:44 erlehmann ok!
10:45 erlehmann luatic oh, i did “man 3 fopen” and it says the b is ignored on POSIX and linux, but “non-UNIX” environments might need it
10:46 MTDiscord <Sublayer plank> erlehmann: yeah all of the devtest tga test node textures work fine
10:46 erlehmann cool
10:46 erlehmann Sublayer plank so if you set the mode for the tga_encoder to wb, can you reproduce the “sometimes the map does not show up” thing?
10:46 MTDiscord <Sublayer plank> also it's just a general thing that omitting "b" puts the file writer in plain text mode, which converts EOL to the platform default. python does this too
10:46 MTDiscord <Sublayer plank> alright will do
10:47 erlehmann i guess i have used linux and mac for too long
10:47 erlehmann but good to know
10:47 erlehmann luatic i guess it makes total sense that the PNG magic value has \r\n in it hihi
10:48 erlehmann always funny when during debugging you find another bug
10:50 MTDiscord <luatic> PNG is actually a decent spec, it just has it's fair share of bloat
10:51 MTDiscord <Sublayer plank> erlehmann: changed the mode to wb and now it writes proper TGA images, and can also reproduce the fact the map texture does not show up sometimes (5.5.0-rc1)
10:51 erlehmann Subplayer plank that means dynamic media is broken in 5.5 i guess
10:51 erlehmann was it recently rewritten?
10:51 erlehmann like … an incompatible change?
10:51 MTDiscord <luatic> there was the dynamic media v2 rewrite
10:52 erlehmann i think maybe minetest needs to be forked into some game engine which is almost exactly like it, only all the incompatible changes are not in it
10:52 MTDiscord <luatic> @floofy ralsei have you checked the warnings?
10:52 MTDiscord <luatic> my recommendation: always set the chat log level to warning
10:52 erlehmann Subplayer plank is there anyhing that you can figure out about this?
10:53 erlehmann luatic what in the rewrite could have broken dynamic media from 5.4.1?
10:53 MTDiscord <luatic> IDK if it wasn't always broken, but sfan5 recently added a warning if a race condition prevents it from working
10:53 MTDiscord <luatic> So I'd be worthwhile to check if that warning appears
10:53 MTDiscord <luatic> it'd be*
10:53 erlehmann for me, it definitely was not always broken like that
10:54 erlehmann i mean maybe there was a race condition, but you always won the race
10:57 MTDiscord <Sublayer plank> what would the "race condition warning" be? I only get the 'generateImage(): Could not load image "mcl_maps_map_texture_27.tga" while building texture; Creating a dummy image' error even with my chat log level set to action
10:57 MTDiscord <Sublayer plank> anyways I can in fact reproduce the fact the map textures always do show up in 5.4.1 though
10:59 erlehmann i have a log
11:00 erlehmann luatic does this look like the race that sfan5 mentioned? https://mister-muffin.de/p/ItLK.txt
11:00 MTDiscord <luatic> https://github.com/minetest/minetest/commit/379473b67007abf78d87ebbaf925b4948cf72ae6
11:00 erlehmann it seems that the file is generated and sent, but then the client assumes it does not have it, even though it does, indeed, have it
11:02 MTDiscord <luatic> ah yes, that's because dynamic media has been changed to use a callback
11:02 MTDiscord <luatic> you must ensure in your mod code that the client has received it already, as dynamic media isn't blocking anymore
11:03 MTDiscord <luatic> so this is in fact not the race condition I had in mind
11:03 erlehmann well this is not my mod
11:03 erlehmann another incompatible change
11:03 erlehmann i will file an issue
11:03 MTDiscord <luatic> why would you file an issue?
11:04 MTDiscord <luatic> https://github.com/appgurueu/epidermis/blob/master/dynamic_add_media.lua#L27-L59 is how it can be done BTW
11:04 erlehmann well the thing is
11:04 MTDiscord <luatic> this is IMO the mod author's fault
11:04 erlehmann this rug-pulling has to end
11:04 erlehmann why
11:04 erlehmann this worked in the past?
11:04 MTDiscord <luatic> the feature was always considered experimental
11:05 erlehmann look, i'll file at least an issue so that i can link to it and collect the knowledge
11:05 erlehmann and then i fix it in mineclonia
11:05 erlehmann but this is super shitty from an API standpoint
11:05 erlehmann like why not call it minetest.dynamic_add_media2
11:05 MTDiscord <luatic> it's not, experimental means devs are free to do whatever they want
11:05 erlehmann if the entire calling paradigm is changed
11:05 erlehmann yeah, sure
11:06 erlehmann i think devs should take reality into account. reality is: no one cares if something is marked experimental, if it works in the default install
11:06 erlehmann web browsers have had this with prefixed css properties
11:06 MTDiscord <luatic> NTM that dynamic_add_media had a callback already to ease migration (that was called immediately though and not per player IIRC)
11:06 erlehmann NTM?
11:07 MTDiscord <luatic> Can you link the relevant mod code? If the callback isn't used at all, this is clearly on the mod authors.
11:07 MTDiscord <luatic> not to mention
11:08 appguru joined #minetest
11:08 MTDiscord <Sublayer plank> does claiming it to be "experimental" really excuse breaking compatibility like this
11:09 MTDiscord <luatic> yes
11:09 MTDiscord <luatic> NVM, 5.4.1 already had the per-name callback
11:10 MTDiscord <luatic> So this is 100% on the mod authors who assumed undocumented and frowned upon behavior for an experimental feature
11:10 MTDiscord <luatic> https://github.com/minetest/minetest/blob/5.4.1/doc/lua_api.txt#L5455-L5456
11:11 MTDiscord <luatic> 5.3 probably didn't have the callback?
11:11 erlehmann luatic it does not matter who is at fault
11:11 MTDiscord <Sublayer plank> where does it say it is experimental?
11:11 MTDiscord <luatic> argh indeed this was broken: https://github.com/minetest/minetest/blob/5.3.0/doc/lua_api.txt#L5233-L5236
11:11 erlehmann it reminds me of hitchhikers guide to the galaxy
11:12 MTDiscord <luatic> 5.3.0 it used to be "blocking", even documented
11:12 MTDiscord <luatic> So yes, this is on the MT devs
11:13 MTDiscord <luatic> But should they really have preserved the very dirty initial API, which sent all media twice and basically blocked everything else (all other packets) while sending media?
11:13 erlehmann yes
11:15 MTDiscord <luatic> Fine, file an issue if you want - this is indeed breakage of documented features between minor versions
11:16 erlehmann luatic, i have a word for changing the API while you try to avoid bugs like sending stuff twice or race conditions
11:16 erlehmann it's called refucktoring
11:16 erlehmann a known agile technique!
11:16 erlehmann (i am joking of course, agile devs usually have unit tests)
11:18 erlehmann Sublayer plank, you are krock?
11:18 erlehmann on github?
11:19 MTDiscord <Sublayer plank> no lol, I'm ROllerozxa
11:19 erlehmann ok!
11:19 erlehmann thx
11:19 erlehmann are you a core dev?
11:20 erlehmann i am asking bc i want approval for the TGA test nodes before i make more test nodes for more complicated formats, in particular PNG
11:20 erlehmann i am pretty sure there are bugs that are platform-specific
11:21 MTDiscord <Sublayer plank> I'm not a coredev, but I do hope the TGA test nodes do be merged
11:21 erlehmann i think all variants of all file formats should have demo files in devtest
11:21 erlehmann i actually compared your file against the devtest textures because they are known-good
11:23 MTDiscord <Sublayer plank> yeah definitively. might not be as useful for png and jpeg since they mostly use standard libraries (libpng and libjpeg) for working with them but TGA is irrlicht's own code we need to maintain
11:23 erlehmann well
11:23 erlehmann i think especially then it makes sense
11:23 erlehmann because the user might have a different version of libpng or libjpeg
11:24 erlehmann so figuring out if some variants of textures do not show up becomes even more important
11:24 MTDiscord <Sublayer plank> yeah that's true actually
11:24 MTDiscord <Sublayer plank> having too much tests is always better than not enough tests :)
11:24 erlehmann tga is so simple everyone of us can write a decoder in a day and make it bulletproof in a week
11:24 erlehmann other formats. not so much
11:25 erlehmann luatic btw i figured out why gamedevs still use TGA. it seems to be the simplest format supported by software (like gimp) that allows having a true alpha channel. all other simple formats either lack it or only have an alpha bit.
11:26 erlehmann also libjpeg-turbo uses it for reference pictures
11:27 erlehmann Sublayer plank, btw mineclone5 is the “merge all the things” mineclonia variant. it also has like 2 crossbows and at least one of them makes colorfull fireworks.
11:27 erlehmann basically kay27 (the maintainer) just picks a lot of stuff up
11:27 erlehmann without reviewing it more than “does the game start”
11:27 erlehmann i mean, maybe a bit more.
11:28 erlehmann but he thinks that having more features is better. whereas mineclonia is the opposite, we take forever, but then it absolutely has to work.
11:28 erlehmann which is also why i find bugs all the time.
11:28 erlehmann minetest bugs that i do not find through fuzzing are usually a side effect of mineclonia code reviews
11:40 Flabb joined #minetest
11:41 sfan5 <luatic> argh indeed this was broken: https://github.com/minetest/minetest/blob/5.3.0/doc/lua_api.txt#L5233-L5236
11:41 sfan5 this api was deprecated in 5.4.0 specifically because it was obvious that it's not viable to keep
11:42 sfan5 and with 5.5 the deprecation period has ended and the old usage no longer works
11:45 erlehmann cool, please call the next release 6.0 i guess
11:46 erlehmann given that we just *now* figured it out, i think this whole API change deprecation thing is totally unworkable in the long-term
11:46 erlehmann and you already pointed out that you can just name the new API differently
11:46 sfan5 maybe read the warnings the game gives you
11:47 MTDiscord <luatic> Depends. dynamic media wasn't used widely enough to warrant a longer deprecation period.
11:47 erlehmann look if the new function had a different name, it would OBVIOUSLY break
11:47 MTDiscord <luatic> sfan5: hence my recommendation to turn chat log level to warning if you're a mod dev ;) literally can't oversee it then
11:47 MTDiscord <luatic> s/oversee/miss
11:48 erlehmann first you add send_dynamic_media2, then later when you remove send_dynamc_media in a minor update, everything relying on it breaks obviously
11:48 erlehmann and not silently
11:48 erlehmann instead of that, we get a function that changes from synchronous, to synchronouos but optionally callback, to callback
11:49 sfan5 your proposal is all cool but I haven't heard why you can't read warning messages
11:49 erlehmann mineclone5 is not even my mod
11:49 erlehmann kay27 maintains it
11:50 erlehmann mineclona has a maps branch, but in the process of figuring out if stuff works, i encounter bugs (about half of them engine breakage, half of them “how did this ever work” stuff like the binary writing thing on windows)
11:53 MTDiscord <luatic> I've brought this up a while ago but nothing has changed so here it is again, paired with a bit of irony: #11998
11:53 ShadowBot https://github.com/minetest/minetest/issues/11998 -- Too damn many unconfirmed bugs
11:53 erlehmann phew, i commented my sarcasm just in time!
11:54 erlehmann https://nikolas.github.io/github-drama/
11:56 erlehmann i think this was my best issue speedrun yet
11:56 erlehmann though i do not appreciate the outcome, thanks for the debugging help Sublayer plank and luatic
12:18 proller joined #minetest
12:24 tech_exorcist joined #minetest
12:45 MTDiscord <MisterE> Just wondering, is it planned to allow light sources to cast dynamic shadows in the future?
12:46 erlehmann MisterE i thought so, which is why i constantly keep saying that a nonexistent *sun* or *moon* should not cast shadows, but on the other hand a shadows API should allow people to define angle or source of shadow casting light sources
12:46 erlehmann even if a sun or moon does not exist
12:46 erlehmann like deep underground
12:46 rubenwardy afaik, it's not planned
12:47 MTDiscord <luatic> MisterE: unlikely
12:47 MTDiscord <luatic> it is very nontrivial to implement in an efficient manner
12:47 erlehmann rubenwardy just to be clear, forum rules do not apply here, do they? v-rob brought it up and i think he is mistaken, but you have OP here so i better ask.
12:48 MTDiscord <MisterE> Hmm... it just seemed to me that having the sun cast shadows but not eg torches eas incoherent :|
12:48 MTDiscord <MisterE> *was
12:48 MTDiscord <luatic> it is
12:48 MTDiscord <luatic> but rendering as a whole is basically a mess, as you have to compromise on realism for performance
12:49 MTDiscord <luatic> the way shadow mapping works, a depthmap of the scene is rendered from the perspective of the light source to determine where shadows should be cast
12:49 Yad joined #minetest
12:50 MTDiscord <luatic> for multiple light sources, you'd have to rerender the scene for each light source
12:51 MTDiscord <MisterE> yes but correct if wrong, you only have to render to a distance of 10 for a torch
12:51 MTDiscord <luatic> perhaps an approximation suffices - such as only doing this for a couple close light sources or reducing shadowmap resolution for small light sources
12:51 MTDiscord <MisterE> Which is much simpler than rendering the whole scene for the sun
12:51 MTDiscord <luatic> MisterE: yes, optimizations may be possible, but this is still hard to implement efficiently
12:52 MTDiscord <luatic> I mean, even a render distance of 10 will probably have the GPU do lots of work
12:52 MTDiscord <luatic> MT currently generates meshes per mapblock, so the GPU has to render the entire 16^3 mapblock
12:53 MTDiscord <luatic> It can then discard faces as after transforming them if it sees they are out of range
12:54 MTDiscord <luatic> But a proper implementation would require lots of carefully tweaked ducttape
12:55 erlehmann i think optifine has it though
12:55 erlehmann whatever, i am fine with the torch fakery that destroys rollback
13:15 MTDiscord <luatic> #10741 must be reopened. I feel devs never test with TPs with empty hearts.
13:15 ShadowBot https://github.com/minetest/minetest/issues/10741 -- Health & breathbar ignore max properties
13:25 Markow joined #minetest
14:33 Fixer joined #minetest
14:53 kamdard joined #minetest
14:57 Taoki joined #minetest
14:58 erlehmann rubenwardy i do not want to cause undue load on your server, but would like to update my local cdb search. can you tell me where to find the latest dump?
15:02 jordan4ibanez joined #minetest
15:02 proller joined #minetest
15:06 grouinos joined #minetest
15:09 Markow joined #minetest
15:10 nemo42 joined #minetest
15:12 definitelya joined #minetest
15:37 erlehmann luatic how can i make a dynamic-add-media that works in all situations from 5.3 to 5.5?
15:38 erlehmann do you have something like that?
15:45 v-rob joined #minetest
15:50 Flabb_ joined #minetest
16:13 v-rob joined #minetest
16:17 Hawk777 joined #minetest
16:17 MinetestBot [git] sfan5 -> minetest/minetest: Add game name to server status string 91c6728 https://github.com/minetest/minetest/commit/91c6728eb8cebf060b5a3aaed588a7b6dbf266ad (2022-01-28T16:15:10Z)
16:17 MinetestBot [git] sfan5 -> minetest/minetest: Get rid of legacy workaround in SQLite backend 66e8aae https://github.com/minetest/minetest/commit/66e8aae9f2a28ee31ffe30694fdb61a8fdceb8d7 (2022-01-28T16:16:02Z)
16:18 erlehmann luatic rebase this? https://github.com/minetest/minetest/pull/11940
16:19 erlehmann not sure if you get a mail or notification from a simple label
16:19 sfan5 don't think so
16:29 Talkless joined #minetest
16:38 appguru joined #minetest
16:56 nemo42 joined #minetest
16:59 MTDiscord <Jonathon> >how can i make a dynamic-add-media that works in all situations from 5.3 to 5.5? dynamic media wasnt even in 5.3. you would have to use [combine hacks
17:01 erlehmann https://github.com/minetest/minetest/blob/5.3.0/doc/lua_api.txt#L5233-L5236
17:01 erlehmann * `minetest.dynamic_add_media(filepath)`
17:01 erlehmann tell me again it was not there
17:01 erlehmann Jonathon did it not work?
17:07 sfan5 it did work
17:09 v-rob joined #minetest
17:10 freshreplicant[m erlehmann: The Minetest wiki's IRC page has rules on it. Not sure if they're up-to-date. https://wiki.minetest.net/IRC (bottom of page)
17:11 erlehmann sfan5 i have since investigated mineclone5 and found that in between minetest.send_dynamic_media() must have *both* accepted a callback *and* blocked. which is a bit weird.
17:12 erlehmann is that true?
17:12 sfan5 yes
17:12 sfan5 this is the case on 5.4.0
17:12 erlehmann no wonder that the callback was empty then
17:12 sfan5 the callback was added to prepare for the changes now in 5.5 but the implementation was not changed
17:12 erlehmann there was nothing to do after all
17:13 erlehmann i do not think that is a good way to handle it, since that means it will not crash, but be racy.
17:13 sfan5 well this was done so mod authors could already make use of the callback to write code that would seamlessly work on 5.5 (once it comes out)
17:13 erlehmann any other APIs that were changed from blocking to non-blocking?
17:14 erlehmann i mean, if devs insist on breaking stuff all the time, maybe it belongs into the release notes
17:14 erlehmann i mean, code in a big project is *rarely* changed
17:15 erlehmann if it still works
17:15 sfan5 so let me get this straight
17:15 sfan5 you are still blaming coredevs instead of the person who commited the empty callback without reading the docs or any warnings?
17:15 sfan5 plus whoever reviewed it (you do have a review process, right?)
17:16 erlehmann i am not blaming anyone, i want the breakage to stop. i literally do not care.
17:16 erlehmann who messed it up.
17:16 erlehmann i mess up stuff all the time, but it gets caught in reviews usually
17:16 erlehmann so i would probably say the reviewer had not the standards i would have, but you don't even let me review stuff (i asked)
17:16 sfan5 if you do not care why why aren't you yelling at passerby's on the street?
17:16 sfan5 after all they share equally much blame
17:16 erlehmann i care about the breakage, not who messed it up
17:17 erlehmann and also that there is a persistent pattern of people breaking APIs and expecting some code written years ago would magically be updated
17:17 jordan4ibanez joined #minetest
17:17 sfan5 I hope you went and annoyed the mineclone5 dev equally then
17:18 erlehmann i believe jordan4ibanez has a lot of stories about me annoying mineclone* devs lol
17:18 erlehmann sfan5 can you maybe tag @kay27 in the issue? i can't, since you locked it
17:18 erlehmann he is the lead of mcl5
17:18 sfan5 you can send them a link
17:19 sys4 joined #minetest
17:19 erlehmann no idea how to reach, but then i'll open an issue on mcl5 i guess
17:19 erlehmann after eating
17:19 erlehmann btw, i think my big problem with the coredev API breaking thing is that it practically does not result in smooth upgrades
17:20 erlehmann processes to do that do exist though, it's not a question of capability. minetest has protocol versions and funny hacks.
17:21 jordan4ibanez My brain has become too overcooked to remember right no
17:22 erlehmann well, i doubt mcl2 and mcl5 are going anywhere fast
17:22 jordan4ibanez no->now
17:26 erlehmann jordan4ibanez you should update this bc the API different in 5.5 due to sentimental versioning scheme https://github.com/oilboi/Crafter-Minetest/blob/b33c96b3f99f8faf8ccf7bc3760f8f1f74a45832/mods/skins/init.lua#L73
17:27 erlehmann by which i mean unexpectedly broken
17:28 erlehmann unless you read the lua API file again
17:28 erlehmann :P
17:31 jordan4ibanez Oh that game mode is pretty dead for now, perhaps one day I will rewrite it in a more data oriented cache happy approach to minimize volatile memory utilization and maximize on chip branch prediction
17:32 erlehmann wdym
17:32 jordan4ibanez localizations littered throughout the code, pretty disgusting
17:32 erlehmann are you making fun of me?
17:32 erlehmann oh
17:32 erlehmann that
17:32 erlehmann well
17:32 erlehmann it's not like lua is *that* slow unless you create a lot of strings
17:33 jordan4ibanez JIT maps it's data translation to C pretty closely, all those localizations need to be mapped to the central station of the linear loading model so that all functions utilize an already cached memory pointer instead of stack memory, or maybe they need to all be on the stack unless local primitive floats in a function get mapped to the heap anyways, I am unsure of this
17:34 Guest3456 joined #minetest
17:36 jordan4ibanez Pretty extreme edge cases of snake case causing issues like this where when I was re-reading my own code I thought I misspelled "read" but it is re-add https://github.com/oilboi/Crafter-Minetest/blob/b33c96b3f99f8faf8ccf7bc3760f8f1f74a45832/mods/skins/init.lua#L320
17:36 jordan4ibanez An absolute mess
17:38 erlehmann oof
17:39 jordan4ibanez Another major things is, is it more efficient for the item entity to get the players, or is it more efficient for the players to get the item entities? Should the item entities just be held in their own table where the elements are the pointers to the item with the only gotten data value is the Vector3f of their position to quickly do math without getting the objects? Just too much to think about
17:40 erlehmann well good that you mention those
17:40 erlehmann you once made a pretty good player magnet
17:40 erlehmann that did not have the lag pingpong problem
17:41 erlehmann do you have a cleaned up version of it or want to explain what your code does?
17:41 erlehmann bc i do not understand it
17:41 jordan4ibanez Yes because it utilized move_to but you cannot set the interpolation speed of move_to so it was using the internal delta to interpolate which for some reason does not stay consistent with it's normalization
17:42 erlehmann uh
17:42 erlehmann i do not understand that
17:42 erlehmann what is the normalization in this context?
17:44 jordan4ibanez normalization of a direction which is a vector 3 float in this context is taking 2 vectors, subtracting VecX from VecY to get a direction, then normalization takes the points from these, gets the biggest one, gets the dividend from it to make it equal to 1, and then divides the other two values to get a normalized vector direction
17:44 jordan4ibanez That is what the regular item drop uses, in this case, this is happening in engine to do the same thing, but client side
17:48 erlehmann so what you worked out is how the client side prediction and the server position can match closer ig?
17:49 ewwegweg_ joined #minetest
17:55 jordan4ibanez Here https://paste.ofcode.org/6ChiVqTKAnUSAatZTfsyEC
17:55 jordan4ibanez :O and that's why you do not use tabs instead of spaces
17:56 erlehmann thx
17:57 jordan4ibanez Oh wait what I explained is an older version of item magnet, this one just avoids shooting out by adding in the player's velocity https://github.com/oilboi/Crafter-Minetest/blob/b33c96b3f99f8faf8ccf7bc3760f8f1f74a45832/mods/itemhandling/init.lua#L289
17:59 jordan4ibanez I think I literally explained why I didn't use move_to, whoops
18:09 Jason232 joined #minetest
18:09 erlehmann sfan5, by the way, i looked at the deprecation warning for minetest.dynamic_add_media … and i believe ppl did indeed read the warning at one point – but the warning only says you have to give a callback function. there is nothing in the warning about that the function will stop being blocking. only that calling it without a callback is deprecated.
18:09 erlehmann but then in the code, the callback is literally called synchronously, so no wonder ppl add an empty callback
18:10 erlehmann probably just assumed weird api design
18:10 erlehmann i would have done the same
18:10 erlehmann (added an empty function)
18:10 erlehmann i guess that clears it up then
18:10 definitelya joined #minetest
18:12 erlehmann jordan4ibanez, can i copypaste that to mineclonia under GPLv3+?
18:13 jordan4ibanez Yeah it's MIT you can just change the license
18:14 erlehmann those are two different statements
18:14 erlehmann conrary to popular opinion, you can not just change the license
18:14 erlehmann but add to id
18:14 erlehmann it
18:14 erlehmann i will do
18:14 erlehmann thank you jordan4ibanez
18:14 erlehmann that was nice
18:15 jordan4ibanez I guess you can just take a screenshot of this statement
18:15 jordan4ibanez I expressly give you permission to relicense my code boi
18:15 erlehmann ah ok!
18:15 erlehmann btw, what is the best version of crafter if i want to try it
18:15 erlehmann i saw your exremely dangerous spiders
18:15 erlehmann and minecart trains
18:15 erlehmann and i still remember them
18:16 jordan4ibanez I wasn't allowed to use code licenses to relicense under any license besides BSD but BSD is boring
18:18 MTDiscord <Warr1024> Of all the criticisms I've seen of BSD as compared to MIT, this is the first time I've heard "boring"
18:20 jordan4ibanez Probably 0.07 but I didn't make any releases for some reason because I have no brain
18:24 jonadab My personal favorite is when people claim the BSD license isn't GPL compatible.
18:32 jordan4ibanez I wonder how optimized the JIT can truly be with pure function oriented approach
18:36 Toothless joined #minetest
18:45 MTDiscord <Warr1024> Which BSD license tho
18:45 MTDiscord <Warr1024> You're not still talking the ancient 4-clause, are ya?
18:49 grouinos joined #minetest
18:56 redquasar joined #minetest
18:57 syl joined #minetest
19:05 dabbill joined #minetest
19:18 specing_ joined #minetest
19:22 v-rob joined #minetest
19:52 nemo42 joined #minetest
20:13 jordan4ibanez joined #minetest
20:16 Guest3456 joined #minetest
20:37 sys4 joined #minetest
20:46 Jason232_ joined #minetest
20:57 nemo42 joined #minetest
20:59 ewwegweg_ left #minetest
21:11 Markow joined #minetest
21:36 v-rob joined #minetest
21:52 Markow joined #minetest
22:05 jordan4ibanez What if: Hand can be custom mesh
22:08 sfan5 can't it already?
22:09 MTDiscord <Jonathon> if i recall correctly no
22:09 MTDiscord <Jonathon> as its a item
22:10 MTDiscord <Jonathon> it can be a mesh if you use the hand inventory
22:10 MTDiscord <Jonathon> and a node def
22:15 sfan5 ah yes I remember
22:15 sfan5 there was even an issue about ":" being a node breaking existing worlds
22:15 MTDiscord <Jonathon> and a pr
22:46 v-rob joined #minetest
23:00 Sven_vB joined #minetest
23:32 Guest345629 joined #minetest
23:46 Jason232 joined #minetest
23:50 gargamel joined #minetest

| Channels | #minetest index | Today | | Google Search | Plaintext