Minetest logo

IRC log for #minetest, 2021-08-04

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

All times shown according to UTC.

Time Nick Message
00:19 specing_ joined #minetest
00:40 Sven_vB joined #minetest
00:54 Verticen joined #minetest
01:07 gg_ joined #minetest
01:17 Verticen joined #minetest
02:21 Sokomine is the forum still in maintenance mode?
02:21 FriendlyPerson[m Sokomine: It's been out of it ever since this afternoon actually. 🙂
02:22 Sokomine :-( hope it will soon be up again
02:22 FriendlyPerson[m Sokomine: It IS and it's BEEN since this afternoon lol.
02:22 MTDiscord <Jonathon> current IS up
02:31 Sokomine er. is the forum now up or not?
02:32 FriendlyPerson[m Sokomine: As I already said twice now... The forum been up since this afternoon.
02:32 Hawk777 joined #minetest
02:32 MTDiscord <fatalerror420> shut up
02:33 MTDiscord <fatalerror420> stupid head
02:34 FriendlyPerson[m ??
02:42 MTDiscord <Jonathon> :thonking:
02:42 MTDiscord <Jonathon> sokomine: if your that confused, why not visit it and find out for yourself?
02:44 FriendlyPerson[m I mean it's possible if they have difficulties processing information or even if they are not native. Which is why I reworded my responses every time and reassured them that that what I meant in the past.
02:46 MTDiscord <fatalerror420> STOOPID
02:46 MTDiscord <fatalerror420> Bashes head into window
02:48 funkydom joined #minetest
02:48 wsor4035 well then
02:49 FriendlyPerson[m Um not quite and I never understand why people think it's "cool" to be calling others "stupid" per say.
02:49 MTDiscord <fatalerror420> im not a hero, just a man with a dream
02:50 MTDiscord <Jonathon> please cease
02:50 Verticen joined #minetest
02:50 MTDiscord <fatalerror420> ceased
03:31 FriendlyPerson[m Alrighty I am gonna head off, you all take care and have a good evening. 🙂
03:34 aldo joined #minetest
03:39 Extex joined #minetest
04:16 olliy1or joined #minetest
04:40 AspireMint joined #minetest
04:44 reumeth joined #minetest
05:01 riff-IRC joined #minetest
05:17 Elzington joined #minetest
06:11 CWz joined #minetest
06:27 ssieb joined #minetest
06:33 independent56 joined #minetest
06:53 Talkless joined #minetest
07:05 Guest88 joined #minetest
07:43 Talkless joined #minetest
08:22 est31 joined #minetest
09:00 reumeth joined #minetest
09:04 hecks joined #minetest
09:04 hecks left #minetest
09:41 entuland joined #minetest
09:50 calcul0n__ joined #minetest
09:52 Fixer joined #minetest
10:27 absurb joined #minetest
10:32 tech_exorcist joined #minetest
10:34 Elzington joined #minetest
11:04 gg__ joined #minetest
11:53 independent56 joined #minetest
12:20 specing_ joined #minetest
12:23 Verticen joined #minetest
12:30 independent56 joined #minetest
12:40 Taoki joined #minetest
12:41 jluc joined #minetest
13:06 funkydom joined #minetest
13:32 gg joined #minetest
13:53 independent56 joined #minetest
13:54 kamdard joined #minetest
14:17 olliy joined #minetest
14:23 FamilyMiner joined #minetest
14:25 FamilyMiner Hi, can someone tell me how to use /spawnentity to get mods_animal animals appear?
14:26 FamilyMiner I have tried mobs_animal:bunny as the EntityName
14:27 FamilyMiner the animals are spawning in wild as they should
14:27 MTDiscord <Warr1024> probably need to read the code (unless it's documented) to find out the names of entities
14:28 FamilyMiner I thought it was by this line: mobs:register_mob("mobs_animal:bunny")
14:29 FamilyMiner but I just get message "Cannot spawn an unknown entity"
14:31 FamilyMiner Ha! sorry, I just realized... mods != mobs :D
14:35 Sven_vB hi :) is there any way in MineTest 5.4.1 to toggle safe dig mode via a chat command?
14:36 Sven_vB I'd prefer to not have to leave the server for that, because the login takes several minutes
14:37 Sven_vB joined #minetest
14:38 FriendlyPerson[m Sven_vB: 100's of MBs of media I am assuming? Because even when I was trying to remote media mine with 9 .oggs it was done in a minute or two.
14:40 MTDiscord <Warr1024> You should probably setup a test SP world to verify your settings or something.  Client config stuff is generally either "baked in" or otherwise frozen at the time you enter a world, and there's no way to access those settings, let alone modify or apply them, without dropping back out to the menu.
14:43 Sven_vB FriendlyPerson[m, yes, it's the media section that takes forever
14:44 Sven_vB FriendlyPerson[m, however, even if it were just a second to reconnect, it would clear the chat history. there's just no excuse why toggling such a simple flag would require a reconnect.
14:46 FriendlyPerson[m Sven_vB: It's not that setting it's how the server is. Even changing a chat message (e.g. a mod) requires the server to be restarted. I am assuming since the minetest.conf is only read when the server is started.
14:57 longerstaff13 joined #minetest
15:29 IvanGorinich joined #minetest
15:29 IvanGorinich Hello i have dynamic Ipv6 with Miredo
15:29 IvanGorinich I connect DynDNS
15:29 IvanGorinich can i use only domain
15:29 IvanGorinich without bind_adress
15:30 MTDiscord <Warr1024> I think you can bind to an IPv6 wildcard address, similar to how binding to 0.0.0.0 in IPv4 means "all IPv4 addresses"
15:33 sfan5 you shouldn't need to specify the bind_address
15:34 hanetzer joined #minetest
15:37 hlqkj joined #minetest
15:37 Sven_vB FriendlyPerson[m, safe dig mode is a client setting
15:38 Sven_vB FriendlyPerson[m, the server is not restarted. I'm playing in multiplayer.
15:38 Sven_vB would be hilarious if admins would have to restart the entire server just for one player toggling their dig mode. :D
15:40 MTDiscord <Warr1024> You might have to specify the bind address if MT only tries to bind a single socket, and the OS only allows one address family per socket.
15:40 FriendlyPerson[m Sven_vB: I honestly never heard of such of a client setting before. Forgive me for sounding "dumb" but what does it actually do? Auto sneaks you to prevent you falling so easily?
15:41 Sven_vB FriendlyPerson[m, it decides whether holding the primary mouse button will continue digging after the first successfully dug node, and whether holding the secondary mouse button will atempt to place more blocks after the first successfully placed block.
15:42 Sven_vB would be super nice if I could easily toggle whether my super fast pickaxe shall mine one block or lots
15:44 FriendlyPerson[m AH I see so it's prevent you digging too fast so you are diging more safely. That's makes sense.
15:47 hanetzer joined #minetest
15:48 specing Sven_vB: you can write a CSM that rate-limits it
15:49 specing you can do this with stock client
15:50 Sven_vB specing, I'd rather implement a toggle key for the existing option if I have to
15:51 sfan5 IvanGorinich: if you specify ipv6_server = true in your config it should just work automatically
15:51 IvanGorinich i do
15:51 IvanGorinich but nothing
15:51 Extex joined #minetest
15:51 sfan5 how are you testing it?
16:00 Talkless joined #minetest
16:09 garywhite joined #minetest
16:09 garywhite joined #minetest
16:45 Verticen joined #minetest
16:50 calcul0n_ joined #minetest
17:56 erlehmann joined #minetest
17:59 erlehmann sfan5 why does this PR also remove a comment? "// added in protocol version 14"
17:59 erlehmann https://github.com/minetest/minetest/pull/11511/files
18:00 sfan5 nobody cares about that
18:01 erlehmann joined #minetest
18:02 erlehmann sfan5 why does your PR have „Drop it ingame, observe a warning but no crash“ here? https://github.com/minetest/minetest/pull/11511
18:02 sfan5 because that's one of the things it fixed?
18:03 erlehmann wait, what happens if you drop the item?
18:03 erlehmann it is very important that the item metadata gets preserved as long as it is only dropped and picked up
18:03 erlehmann (otherwise shulkers will break)
18:04 Krock which metadata are you talking about?
18:04 erlehmann staticdata
18:04 erlehmann i have an example for you
18:04 Krock do you know right that such large packets couldn't be sent in first place?
18:04 erlehmann these objects exist in mineclone2, mineclonia and mineclone5
18:05 erlehmann https://git.minetest.land/Mineclonia/Mineclonia/pulls/132
18:05 erlehmann they are fine as long as … oh
18:05 erlehmann well
18:06 erlehmann i think they are fine as long as their metadata is not touched because the PR by fleckenstein that avoids bookbanning is active on clamity
18:06 Krock btw staticdata != metadata
18:07 erlehmann shulkers are portable chests. it is very easy to get over the 64kb (or so) threshold
18:07 sfan5 erlehmann: the server crashes because the wield item in object properties also has a limit of 64k
18:07 erlehmann so i just want to make sure that this patch does not break mineclone2 / mineclone5 / mineclonia and whoever else uses shulkers
18:07 sfan5 the entity will not be modified
18:07 sfan5 it just may not appear correctly on the client
18:08 erlehmann sfan5 so it is possible to drop it and pick it up even with the patch?
18:08 sfan5 yes
18:08 erlehmann good, thank you
18:09 erlehmann i would suggest to add something like the “getwrittenbook” command here to devtest https://git.minetest.land/Mineclonia/Mineclonia/pulls/132/files
18:09 erlehmann > “/getwrittenbook 65323” creates an item that creates the largest possible serializable written book item entity when dropped.
18:09 Krock don't don't do that
18:09 Krock *just don't
18:09 erlehmann > “/getwrittenbook 65324” creates an item that creates the smallest possible non-serializable written book item entity when dropped.
18:10 erlehmann Krock, what do you mean?
18:10 erlehmann don't do what?
18:10 Krock keep data within reasonable limits
18:10 erlehmann have you used shulkers?
18:10 Krock I never used MineClone2, so I don't think so
18:11 erlehmann there is a shulker mod on contentdb i think
18:11 erlehmann they are very important for the gameplay
18:11 Krock however the wrench from technic also might contain tons of metadata, but that's item metadata
18:11 erlehmann now the problem is, an object can legitimately have a few kb of metadata. think of a book, or a heavily enchanted item.
18:11 erlehmann the problematic interaction has two parts
18:11 Krock then compress it better
18:11 erlehmann first, you have shulkers – the portable chests
18:12 Krock anything else requires a protocol change
18:12 erlehmann second, you can drop those and item entities are created
18:12 erlehmann uh no it works right now
18:12 erlehmann the only thing that did not work was the crash
18:12 erlehmann maybe i am missing something
18:12 Krock the crash did not work, so no crash happened?
18:12 MTDiscord <Warr1024> You'll probably have to limit the capacity of those things, or you'll have to store the data in a separate channel when it overflows
18:13 erlehmann oh the interesting thing is that those things are heavily used but so damn worth it that apparently since they were introduced it only rarely happened that anyone dropped them and walked away
18:13 erlehmann the capacity of them is limited
18:14 Krock deflate compression might solve that
18:14 sfan5 not reliably
18:14 sfan5 image putting books inside
18:14 sfan5 imagine*
18:14 erlehmann yeah, someone could write a book with random characters. that book is like, what, 4kb or so. typical book size.
18:14 FriendlyPerson[m I think they are concerned that if this patch goes live it will break those games. While MCx shouldn't be the king of everything it's probably best to at least understand the implications it MAY have on those games. If it can't be easily adjusted at least make it clear on the patch that games that uses so much metadata (or whatever it is) MUST adapt accordingly.
18:15 erlehmann well as i understand sfan5 it will only lead to a warning and nothing will break
18:15 erlehmann to the contrary, the crash that i experienced (and fixed in mineclonia) will not occur
18:15 erlehmann because the serialization function does not bug out
18:16 erlehmann Krock Warr1024 mineclone2 did a lot of stupid things regarding resources, but shulkers are an essential gameplay concept. people make so-called “kits” with specific contents, dupe them and give them to other players. like: redstone kit.
18:17 erlehmann or someone wants to build a city, first thing they do is carry a lot of shulkers with building materials there.
18:17 sfan5 should've used chest minecarts smh
18:17 MTDiscord <Warr1024> Yeah, NodeCore has Totes that are similar, but their capacity is limited so they're never close to serialization limits.
18:17 erlehmann ton clamity, i made a kit that contains banners with patterns. (banners are another item that can legitimately have metadata)
18:18 Krock or detached inventories :3
18:18 erlehmann sfan5, chest minecarts do not exist as far as i know.
18:18 sfan5 i thought MCL2 was a minecraft clone
18:18 sfan5 how can that be
18:18 MTDiscord <Warr1024> If you can have an item that can hold up to the limit of metadata, then that item cannot also be stored inside another item that stores its items in metadata.
18:18 erlehmann sfan5 no one implemented it properly yet
18:18 sfan5 granted making this work via detached inventories is a bit tricky but shouldn't be that hard
18:19 erlehmann i have a shulker full of shulkers full of obsidian hehe
18:19 MTDiscord <Warr1024> Storing overflow metadata in mod_storage or separate files is also not that hard
18:19 erlehmann that's like, 27 * 27 * 64 obsidian
18:19 erlehmann yes i thought about mod storage
18:19 MTDiscord <Warr1024> You can't allow nesting these infinitely without either running into an engine limit, or just bombing the engine.
18:19 sfan5 @Warr1024 tracking item metadata stored separately is hard
18:20 erlehmann it was allowed to do it in minetest 5.3 as far as i know
18:20 erlehmann at least fleck claimed that
18:20 MTDiscord <Warr1024> I mean it's straightforward, it's just messy as hell.
18:20 sfan5 how do you know when to delete an entry then?
18:20 MTDiscord <Warr1024> Whenever the world is deleted
18:20 erlehmann sounds like a memory leak
18:20 sfan5 that does not satify my criteria for a proper implementation
18:20 erlehmann TO ME
18:21 erlehmann what sfan5 says
18:21 erlehmann Warr1024 do not worry, shulkers can not legally be nested anymore.
18:21 erlehmann but you can put items in them
18:21 MTDiscord <Warr1024> I didn't say it was possible to do properly
18:22 erlehmann and even if every item has like 2.5kb of metadata only (standard size for heavily enchanted stuff), then 27 items get you over the limit
18:22 erlehmann the enchantment stuff might get better with zlib/deflate
18:22 erlehmann but books exist
18:22 sfan5 that kinda seems like a problem with enchantments to me
18:23 MTDiscord <Warr1024> Also all this obsession with having the highest standards of "proper" implementation is probably why we only ever have complete crap implementations instead of having moderately okay ones.  As soon as someone thinks "I should make this not be a complete piece of shit" development gets stalled trying to make it actually GOOD.
18:23 erlehmann sfan5 oh, the enchantments mod was way worse before ryvnf fixed it!
18:23 Krock they might be serializing some date to JSON or lua tables to put into a meta data field
18:23 erlehmann an enchanted item could take up 21kb of space!
18:23 MTDiscord <Warr1024> You might just have to disallow items in the shulker that contain more than a certain total length of metadata.
18:23 FriendlyPerson[m MTDiscord: Agreed I think they are worried about breaking more than it's worth. At least in ONE SITTING.
18:23 sfan5 there's a difference between a non-ideal implementation and a hack
18:23 erlehmann >  As soon as someone thinks "I should make this not be a complete piece of shit" development gets stalled trying to make it actually GOOD.
18:24 erlehmann lol what
18:24 MTDiscord <Warr1024> Yeah, the difference between a non-ideal implementation and a hack is how long it takes you to say the name
18:24 erlehmann ok then tell me something
18:25 erlehmann fleckenstein has delivered a thing that deals with item lag (bookbanning)
18:25 erlehmann where you throw a bunch of books at a player to lag them
18:25 erlehmann that is not merged in minetest, why
18:25 erlehmann is it because it breaks client stacking prediction?
18:25 MTDiscord <Warr1024> Basically when you have something that's bad, you should try to move the needle toward good.  If you can't make it as far as you wanted to, that doesn't mean you should just leave it as bad.
18:25 Krock add text limits to your books. easy.
18:26 erlehmann this one https://github.com/minetest/minetest/pull/11014
18:26 sfan5 erlehmann: it doesn't break that
18:26 FriendlyPerson[m MTDiscord: Exactly aim for 100% but when that's not possible do what's practical.
18:26 z812 joined #minetest
18:27 erlehmann sfan5, oh then i misunderstood
18:27 Krock FriendlyPerson[m: MTDiscord is a bot or relay server. check the name afterwards
18:27 erlehmann >  TechDudie approved these changes Apr 23, 2021
18:27 erlehmann what else needs to happen?
18:27 erlehmann as far as i know, that patch runs on clamity
18:27 erlehmann but
18:28 sfan5 you quoted a random person approving the changes.
18:28 sfan5 anyone can do that
18:28 erlehmann ah ok
18:28 erlehmann so anyone can approve stuff lol
18:28 erlehmann sfan5 what is your gripe with the thing? is it still that you think it is unreasonable to store this stuff?
18:28 erlehmann i think in any case it is a good optimization
18:28 FriendlyPerson[m Krock: Understood thanks for reassuring me of that but I was trying to quote the reply. Is there's a better way to do that?
18:28 Krock FriendlyPerson[m: copypaste the name
18:29 sfan5 FriendlyPerson[m: ah, must be matrix doing that automatically then?
18:29 sfan5 erlehmann: https://github.com/minetest/minetest/pull/11014#issuecomment-791531973
18:29 FriendlyPerson[m sfan5: Yes it does  that automatically.
18:30 MTDiscord <Warr1024> Don't we already have private vs. public fields on node meta?
18:30 sfan5 apart from discussion about the implementation having the client announce that it's saving the map is a misfeature IMO
18:30 FriendlyPerson[m So I can either quote the reply or I can't. There's no "quote this person as"
18:30 sfan5 yes, this would be item meta
18:31 MTDiscord <Warr1024> Oh, I see, Fleck already discussed that in one comment
18:31 MTDiscord <Warr1024> saying that it would be better to make these private by default instead of public ... unfortunately, there was an issue to do the same for node meta but it got shot down
18:31 MTDiscord <Warr1024> I ended up doing it at the Game level
18:31 MTDiscord <Warr1024> I suppose if we had set_private in item meta then it could similarly be done at the game/mod level
18:32 erlehmann sfan5, my browser (elinks) says “The requested fragment "#issuecomment-791531973" doesn't exist.”
18:32 sfan5 it's inside the collapsed comments
18:32 erlehmann oh
18:32 erlehmann damn github
18:33 sfan5 gitlab runs on even more javascript stuff, be glad we aren't using that
18:33 erlehmann is it possible to link directly to it?
18:33 erlehmann i mean to the comment
18:33 erlehmann i try chromium
18:34 sfan5 expanding comments and then pressing return inside the address bar should bring it up
18:34 sfan5 anyway it's my comment from 5th Mar
18:34 MTDiscord <Warr1024> Map-saving concerns are certainly scope-creep.  The server should be allowed to choose not to send data to the client for the common use-case of the client simply playing the game and wanting non-shitty behavior.
18:34 erlehmann such UX ._.
18:34 erlehmann ok thx
18:34 erlehmann hiding comments is really an antifeature
18:35 erlehmann “common use case” lol
18:35 erlehmann i am an amateur historian
18:35 erlehmann i collect cursed items and impossible builds in world downloads
18:35 Alias joined #minetest
18:35 MTDiscord <Warr1024> Allowing the server to hide selected meta fields from the client seems like a perfectly reasonable thing to live at the MetaRef level, not just at the NodeMetaRef level.
18:36 erlehmann wow, it is possible to click “more items” on github before the js has fully evaluated everything and then it does not work. so everyone, do not click as soon as the page loads, wait a few seconds.
18:36 erlehmann sfan5 ok i see your comment
18:37 erlehmann sfan5 but the thing you are proposing is an entirely different way of addressing the problem that requires mod authors to do stuff
18:37 erlehmann whereas fleckensteins solution requires mod authors do to basically nothing
18:37 erlehmann the engine just handles it
18:37 MTDiscord <Warr1024> Requiring mod authors to do stuff is not at all unreasonable.  Mod authors already have to do stuff to be mod authors.
18:38 MTDiscord <Warr1024> Requiring people to do stuff to keep things the same is more unreasonable than requiring them to do stuff to take advantage of a new feature.
18:38 erlehmann well i work in IT security and from experience i think it is wishful thinking that every poser with a keyboard will do the work to check if their items are too big.
18:38 MTDiscord <Warr1024> I would not be opposed to a compromise of having some fields marked private by default and using the set_private API just to handle exceptions to those rules ... but historically PRs that leave default behavior intact have a better chance of actually passing.
18:38 erlehmann i mean, a lot of people who claim to be professional developers can't make hello world binaries that fit on a floppy
18:38 erlehmann or web pages that can be downloaded over 3g lol
18:39 MTDiscord <Warr1024> It's not the engine's job to completely prevent broken mods, only to provide the tools necessary for sufficiently competent mod authors to be able to solve the problem in at least SOME way.
18:39 erlehmann the thing is, in this case, fleckenstein is one of the posers with the keyboard
18:39 erlehmann but i think he has a point
18:40 MTDiscord <Warr1024> Yeah, too bad this isn't an open source community where anyone could just send a PR to ... oh wait... :-|
18:40 MTDiscord <Warr1024> Personally I would be okay with marking a shitton of stuff private by default and require it to be manually marked public ... but based on MT's past history I don't expect that to fly.
18:41 erlehmann the thing is, i agree that mineclone2 approaches are ridiculous often
18:41 erlehmann and i disagree with fleck about it being a super important game or something
18:41 erlehmann it is just one of many
18:41 erlehmann but it is one that manages to be so broken at times that it shows how badly designed some engine things are (because it lets mods do the things that mineclone2 does)
18:41 MTDiscord <Warr1024> I honestly haven't decided whether having a relatively good clone of MC in the MT ecosystem is actually more beneficial or harmful yet, it's clearly some mix of both.
18:42 erlehmann Warr1024 i have had a lot of fun with it
18:42 erlehmann best thing, i don't need to think about game balancing when implementing stuff, unless minecraft is obviously wrong
18:43 FriendlyPerson[m erlehmann: YEA I am not gonna say he's the king of everything but to be fair what games do we have that people would want to make servers for right? I can count maybe the top 5 would probably be competent on a server. MCx games, NodeCore variants and Dreambuilder. There's possibly a few others but that's seems to the highest polished games I can see.
18:43 erlehmann (like with snow layer / silk touch interaction – silk touch does not work on snow layers in minecraft because they erroneously closed the bug)
18:43 MTDiscord <Warr1024> I've sort of given up on expecting the engine to do the right things out of the box.  Mostly I just want it to support doing the right things at all, and leave whether they're done right or not to the community.  Footgun, cold dead hands, etc, apparently.
18:44 erlehmann my approach right now in mineclonia is also “mineclone2 does probably the first thing that come to mind and it is probably not the best thing and the engine will find some way to handle it in most cases and crash if i approach the boundaries”
18:44 MTDiscord <Warr1024> We don't need a TON of games.  Really just a few good ones.
18:44 MTDiscord <Warr1024> Having an MC clone makes it easier for MC players to make the jump to MT ... but on the flip side, it also keeps them sort of stuck in the MC rut.
18:45 erlehmann well that is an issue entirely orthogonal to “should the engine try to do the right thing because mod authors don't read the rubenwardy book”
18:46 erlehmann i mean, think of stuff like a network packet being sent as a side effect, even if some value did not actually change
18:46 MTDiscord <Warr1024> I mean a LITTLE idiot-proofing is not a bad thing, I just wouldn't go too far down that rabbit-hole after I've seen the speed at which they patch the idiots to bypass said idiot-proofing.
18:46 erlehmann in my opinion, the engine could at least output a warning whenever a packet is sent that is not necessary
18:46 FriendlyPerson[m MTDiscord: Yes and no, there still not a lot of choices when it comes to games. As I said there's maybe 5 games that are worth actually playing. As in "I installs it, turns on and it's plays".
18:46 erlehmann like, mineclonia sends over 50 packets/s less than mineclone2 and mineclone5
18:46 sfan5 erlehmann: if it could output a warning it could also just not send that packet
18:47 MTDiscord <Warr1024> There's some stuff that seems really obvious that the engine could do, like not sending duplicate entity properties ... but I also find that solving it in Lua actually works out better anyway.
18:47 erlehmann sfan5 the problem with not sending that packet without a warning is that the globalstep or whatever that uselessly updates the stuff is then not detected
18:48 erlehmann the problem with “solving it in lua” is the bookkeeping
18:48 erlehmann if you get it wrong … well, crash, corruption, or, ideally, dupe :D
18:48 MTDiscord <Warr1024> Friendly: there are a few hidden gems farther down the list.  A lot of the problem is that "top" stuff is mostly sorted by popularity, and especially popularity is measured by downloads rather than the experiences people have AFTER the downloads.  Reviews and the CDB Featured list is helping with that, but there's still a lot of built up popularity effects that haven't dissipated yet.
18:48 sfan5 erlehmann: great so we agree this should be solved in lua ;)
18:48 sfan5 btw this should be easy to detect with a lua wrapper
18:49 sfan5 engine doesn't have to do it
18:49 MTDiscord <Warr1024> It's also important to remember that not everyone is looking for the same kind of playing experience, and some of the more obscure games offer very different play styles.  Box World 3D, for example, is basically a 3D Sokoban clone with no sandboxiness at all, plus it's a very SHORT game, so it's fun for a while and then you reach the end and (probably) uninstall it.
18:50 FriendlyPerson[m Isn't the GS akin to "ticks" in Minecraft? or I am missing something on why it's "stupid"?
18:50 erlehmann sfan5 the problem with the current approach is that people like fleck develop stuff that works on their machine
18:50 erlehmann because the engine is not limiting it
18:50 MTDiscord <Warr1024> I prefer to solve stuff in Lua in-situ, and if I find the problem is part of an underlying theme, I promote it up to the Game level, and then if I think it might be applicable beyond that, I'd migrate it into builtin, if it's clean enough.  ABM Muxing, for example, could be a candidate for that, if it were only cleaner.
18:51 erlehmann FriendlyPerson[m, it is stupid to do a bunch of stuff in a globalstep that should be event-based. mineclone2 and mineclone5 for example, check each globalstep if the player has armor or not and then send a network packet to either show the armor bar or not. mineclonia has that fixed (by upgrading to a newer version of the wuzzy hudbars mod).
18:52 MTDiscord <Warr1024> It's not terrible to do background checks for things where there's a possibility of events being lost ... but every step is overkill, and actually sending updates every step even if there is no change is extra-bad.
18:52 FriendlyPerson[m erlehmann: Understood thanks for explaining that to me. It was just the context not the actual GS. I thought it was.
18:52 erlehmann FriendlyPerson[m, similarly, the sprint mod in mineclone2 and mineclone5 tells every player to adjust their field of view every tick. it just adjusts which value it sends, based on if the player is sprinting. this is, of course, really bad. and fixed in mineclonia!
18:53 erlehmann i think the engine should at least output a warning for sending dozens of packets with the same content each second
18:53 erlehmann i mean, dozens of warnings lol
18:53 sfan5 erlehmann: if there was good documentation on what to look for and how to debug this it would be less an issue, but there is not
18:53 erlehmann then ppl would *probably* clear it up
18:54 FriendlyPerson[m Indeed warn then limits/removes.
18:54 sfan5 the fewest modders know about the packet counter in --verbose
18:54 sfan5 which it gives a pretty good idea what you're doing wrong in many casesd
18:54 sfan5 -d
18:54 sfan5 while*
18:54 erlehmann sfan5 i actually used that and it is in --info i think?
18:54 MTDiscord <Warr1024> I don't see a reason the engine should actually send the packets if they match the state that was already just sent.  If I can keep track of past sends in lua then the engine should be able to do so too ... but then, if I can keep track of it myself, then I'll probably just do that and not care whether the engine does.
18:54 sfan5 --trace also shows it if you mean that
18:56 erlehmann sfan5 oh i have a thing that could be in minetest utils/tools directory: https://git.minetest.land/Mineclonia/Mineclonia/src/branch/master/tools/analyze-packet-spam
18:56 erlehmann # To collect such a log file of minetest running for 10 minutes, run:
18:56 erlehmann # timeout 600 minetest --info >log.txt 2>&1 >/dev/null
18:56 erlehmann # To get packet counts from that file, run:
18:56 erlehmann # ./analyze-packet-spam <log.txt
18:57 erlehmann sfan5 could that script go into minetest proper?
18:57 sfan5 that's pretty mcuh an exact recreation of the packet counter I'm trying to tell you about
18:57 sfan5 much*
18:57 erlehmann oh lol
18:57 erlehmann ok tell me more
18:57 sfan5 except the builtin one works in 30 second intervals
18:57 erlehmann oh well
18:57 sfan5 would be easier to make that configurable if wanted
18:58 erlehmann this one just does one thing
18:58 erlehmann it figures out the measurement interval, eats the 30 second interval things and calculates packets per second
18:58 erlehmann so i would argue it is an improvement
18:58 sfan5 http://sprunge.us/4fLyab
18:58 sfan5 hmm I thought I added per packet averages...
18:59 erlehmann well right now my thing works
18:59 erlehmann we used it to reduce mineclonia packet spam
18:59 erlehmann and i bet other mods would use it too
18:59 erlehmann the per-second thing is important to see when it is excessive
19:00 sfan5 maybe if we had a fancy GUI more modders would use it ;)
19:00 erlehmann did you know that some weather mod (the one in the mcl* games) simulates each raindrop separately and sends a TON of particle spam
19:00 erlehmann maybe i am not in the mood for jokings
19:01 specing sounds like a job for CSM
19:01 MTDiscord <Warr1024> I actually started work on a proxy that analyzed MT traffic, but wasn't sure exactly which direction to take it.  I was sort of inclined to try to measure networking costs ... seeing that it's possible with logging sounds like it would simplify things a lot
19:01 erlehmann sfan5, that thing is the thing i parse
19:01 sfan5 yeah I realized
19:01 MTDiscord <Warr1024> I'm more concerned with total bandwidth than packet count, for the most part, though.  Sending a lot of big packets is a lot worse than a lot of little ones...
19:02 erlehmann sfan5 yeah so can my script go into minetest proper or do you think it needs work? it is immensely useful, because 30 seconds is too little of a measurement interval tbh
19:02 erlehmann so it adds up a bunch of 30 second thing, figures out start and end, gives you packet count per second, done
19:02 erlehmann on the other hand the 30 second thing helps you if you want to see if you have issues *right now*
19:02 erlehmann but it does not work well in code review
19:02 sfan5 hm
19:05 erlehmann sfan5 you can see how we used it in mineclonia here: https://git.minetest.land/Mineclonia/Mineclonia/issues/111
19:06 Conrad joined #minetest
19:07 MTDiscord <Warr1024> Do you see evidence of these problems in the F5 graphs, or do you actually have to dig into them with more powerful tools before you can detect them?
19:07 erlehmann well you can see that there are too many packets
19:07 erlehmann but you need to figure out which ones
19:07 erlehmann we used my script and asked anon5 for help
19:08 erlehmann anon5 has this go-based proxy (that also strips out needless stuff i think)
19:08 erlehmann sfan5 you can see here how the 30 second counts were too variable for cora to say “yep this is it” https://git.minetest.land/Mineclonia/Mineclonia/issues/111#issuecomment-25445
19:08 erlehmann so she averaged 10 of them
19:08 erlehmann my script just automated that process
19:10 erlehmann sfan5 Warr1024 you can see here how we checked that the improvements wuzzy did to the hudbars mod were working https://git.minetest.land/Mineclonia/Mineclonia/issues/111#issuecomment-25729
19:10 erlehmann or no
19:10 erlehmann this was just for armor bar autohiding turned on vs off
19:10 erlehmann 58.0PACKET_COUNT_TOCLIENT_HUDCHANGE
19:10 erlehmann vs
19:10 erlehmann 44.1PACKET_COUNT_TOCLIENT_HUDCHANGE
19:11 erlehmann you see, there was a change, but it is not obviously supported by 30 second sampling
19:12 erlehmann (which is why we sampled for around 600 seconds)
19:12 erlehmann (i.e. 10 min)
19:12 erlehmann <specing> sounds like a job for CSM
19:12 MTDiscord <Warr1024> It'd be nice if we could also get an idea of the bandwidth cost of those packets rather than just the counts...
19:13 erlehmann specing, to you everything sounds like a job for a CSM lol
19:13 erlehmann Warr1024 true, but the problem with the packet amount is that any lost packet can lead to lag / desync etc.
19:13 erlehmann try playing on a high-bandwith connection with a few percent of packet loss
19:13 MTDiscord <Warr1024> For a while I used to just compare packet counts against MTG, but "do-nothing game does nothing" doesn't seem like a fair standard.
19:13 erlehmann lol
19:14 erlehmann try to compare against mineclonia. if you exceed it, you probably do something stupid.
19:14 erlehmann i doubt you will exceed it. the stupidity i have encountered is entirely located within mineclone2, mineclone5 and the weather mod all three games share.
19:14 erlehmann and by stupidity i mean the things i already described.
19:15 specing erlehmann: yeah
19:15 erlehmann simulate each raindrop etc.
19:15 erlehmann specing why don't you contribute to waspsalive then
19:15 specing need to rebase first
19:15 specing read its api and port my scripts
19:16 MTDiscord <Warr1024> Well, just shooting for "more packets than MTG but fewer than MC2" sounds like a decent sanity range, but I'd really like to have a narrower target :-D
19:16 specing i also want to make sscsm a reality
19:17 MTDiscord <Warr1024> even if SSCSM were extremely sandboxed and could only do things like manipulate HUDs, particles, and sounds, I could see getting a lot of use out of them.
19:17 erlehmann Warr1024 not fewer than mineclone2, fewer than mineclonia.
19:17 erlehmann mineclonia is mineclone2 with a lot of packet spam fixed
19:17 erlehmann (and other stuff ofc)
19:18 erlehmann if minetest makes server-sent client-side mods, i guaranteed you i will spend a *lot* of energy to make client-send server-side mods
19:19 erlehmann (very sad that the feature of client-sent server side mods got removed)
19:20 specing nah warr, I'd do SSCSMs on waspsaliva, with full access to the whole API
19:20 specing and a contentdb for them, so they'd be reviewed beforehand
19:23 erle joined #minetest
19:27 Pexin erle: client-sent server side mods..  I cannot express how deeply I wish I could inject serverside code into web servers that try to force js for basic functionality..   :|  (very different problem domain, I know. but I can fantasize)
19:28 erlehmann Pexin well, sometimes you can
19:29 Pexin "you want to force me to run your code on my side of http? well Fair's Fair!"
19:31 MTDiscord <Warr1024> At first you think "js is code! I shouldn't be running somebody else's CODE, that could cause security problems!"  ... then they discover yet another bug in common JPEG libraries that allows RCE ... :-/
19:32 MTDiscord <Warr1024> Turns out that the difference between code and data is mostly just something we made up and hackers don't abide by it.
19:33 Pexin js is _intended_ to be code
19:33 MTDiscord <Warr1024> On the flip side, the fact that JITted JS runs so close to your hardware that they can actually read stuff out through timing sidechannels is pretty bonkers.
19:33 longerstaff13 joined #minetest
19:34 Pexin outright security vulnerabilities aside, there are things "modern" js is deliberately allowed to do that I may not want it to
19:35 Pexin even something like android's halfassed permission system for the js engine would arguably help
19:36 MTDiscord <Warr1024> Effectively js does have a half-assed permission system in the browser, but it's sort of meta-half-assed because it's not implemented or enforced consistently across browsers, and may be meta-meta-half-assed because they decided to only make it cover very few things like location APIs and stuff.
19:37 MTDiscord <Warr1024> ...so, eighth-assed?
19:37 Pexin quantifiable ass
19:39 MTDiscord <Warr1024> tbh it's been bugging me for a long time: when you say half-assed, is the "assed" half the half you screwed up, or the half that you actually at least made an attempt at?  Would quarter-assed be better or worse than half-assed?
19:39 * Pexin ponders
19:40 reumeth joined #minetest
19:45 erlehmann <Warr1024> Turns out that the difference between code and data is mostly just something we made up and hackers don't abide by it.
19:45 erlehmann no Warr1024 read about LANGSEC
19:45 erlehmann everything not context-free or regular or calc-regular is dangerous
20:12 delta23 joined #minetest
20:27 reumeth joined #minetest
20:29 Guest joined #minetest
21:16 ShadowBot` joined #minetest
22:00 Sven_vB joined #minetest
22:20 erlehmann joined #minetest
22:44 Verticen joined #minetest
22:48 Norkle joined #minetest
23:06 Extex joined #minetest
23:39 AliasAlreadyTake joined #minetest
23:40 erlehmann joined #minetest

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