Minetest logo

IRC log for #minetest, 2024-02-07

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

All times shown according to UTC.

Time Nick Message
00:00 Mantar :(
00:00 alguien What's the point of client-side mods that you have to install on the server-side?
00:00 Mantar seriously?
00:00 alguien Yes
00:00 alguien Well maybe there's a point, but it's also missing the other point
00:00 alguien The client wanting to mod his own experience
00:00 Mantar okay, use-case: I can set up controls and node prediction in Exile and send it to the client so that there's no lag on input
00:01 alguien I don't understand that use case, but I'll take your word for it. I understand CSMs are for avoiding round trips
00:01 alguien *SSCSMs
00:01 Mantar as it stands any specialized control handling is done server-side, and cannot take effect until a client-server-client loop has been made
00:02 alguien But you're driving users who want to mod to cheat clients
00:02 alguien By disabling people from modding on the client side
00:02 Mantar this is especially annoying for our crouch mode, which is done by double-tapping shift -- any significant server lag makes it unreliable
00:03 Mantar I don't care what those people want to do, I'm trying to write a game here and the engine is fighting me
00:03 alguien I'm one of those people
00:03 alguien Why should I care what you're trying to do if you don't care what I'm trying to do?
00:03 alguien It's not a dichotomy
00:03 Mantar you don't have to?
00:04 Mantar but when I ask for SSCSM and you say "hopefully never" that implies you DO care and don't want me to have the thing
00:05 alguien I corrected myself, I recognize there are legitimate use-cases, I was actually thinking in terms of dichotomies, because that's how SSCSMs were presented to us: As a replacement for CSMs. They're not
00:05 Mantar well yeah, it's a very different thing
00:05 alguien I hope you get your SSCSMs, and I get my CSMs back
00:05 Mantar ^_^ b
00:10 alguien Here's my use-case: Since I'm composing textures, I want to be able to find out the texture name of something. But even the get_item_def/get_node_def that _are_ listed in client_lua_api.md return nil for me. Why?
00:17 alguien Betcha if I used the snakevenom client I'd be able to do that. But then I'd be able to do 100 other things by the click of a button
00:18 alguien cheating things, mind you
00:23 alguien joined #minetest
00:34 alguien Given a server and a port, how would I go about downloading only its textures?
00:34 cheapie [17:29:59] <MTDiscord> <luatic> Use [texture modifiers] when necessary or useful, but don't use them as a janky image editor when you could just use a real image editor instead.
00:34 cheapie Aww, so no https://cheapiesystems.com/media/mtpaint-saveload.webm ? :P
00:35 alguien cheapie, what's that canvas mod?
00:35 cheapie https://cheapiesystems.com/git/digiscreen/
00:36 alguien Ah, nice
00:36 cheapie I should probably convert it to use [png sometime. It predates it AFAIK.
00:36 alguien wait, it doesn't? ouch
00:37 alguien cheapie, what about the memory leak?
00:37 cheapie The memory leak is normally not particularly significant unless you *really* hammer one for a long time.
00:38 alguien Ayo cheapie, I like your digistuff, but...
00:39 alguien So this image is thousands of texture modifiers? https://content.minetest.net/uploads/V3eGHkFrYU.png
00:39 cheapie Yes, a total of 4112 things being [combine-d if my math is right.
00:40 alguien Cheapie my friend. Heal me from this cringe
00:40 cheapie With a static image like that the performance tends to be alright. If you start trying to animate it then clients start slowing down.
00:40 alguien lol
00:41 alguien on an unrelated note: are you familiar with basic_robot?
00:41 cheapie In terms of hearing nonstop complaining about it and having it break all kinds of things, yes. In terms of actually having used it, no.
00:42 alguien Too bad that's not two yes-s.
00:43 alguien I'm hoping someone will take over that wonderful but unmaintained mod
00:44 alguien By the way what's the difference between the touchscreen and the advanced touchscreen?
00:44 MTDiscord <warr1024> advancedness
00:48 alguien Also, which mod adds the console and help tabs to the lua controller?
00:48 alguien That one's a lot of help (no pun intended)
00:48 alguien I don't think it's digistuff though
00:48 Mantar can't beat advancedness, it's too advanced
00:58 MTDiscord <jordan4ibanez> cheapie: you don't say eh?
00:58 MTDiscord <jordan4ibanez> We need a very dangerous function in the lua api
00:59 MTDiscord <jordan4ibanez> delete_texture()
01:00 MTDiscord <jordan4ibanez> "the game crashed huh? What's your code do?" oh yeah, that'll do it
01:01 alguien MTDiscord, can't you make it a method on the owner's reference? (capability-based security)
01:01 MTDiscord <jordan4ibanez> That's always going to be a dangerous function, you'd need to wrapper the thing in an RC, but good luck with lua talking to it
01:01 MTDiscord <jordan4ibanez> That's manual memory management up and down
01:02 MTDiscord <jordan4ibanez> What if you want it gone now? But you want to use it later without regenerating it? It's gone
01:02 MTDiscord <jordan4ibanez> Or it's leaking
01:02 MTDiscord <jordan4ibanez> Oops
01:02 alguien well if you have a reference, it should still be there if we're talking RC
01:03 alguien if you deleted it it's your fault. have a generic texture instead
01:03 alguien or regenerate ad-hoc
01:03 alguien there are answers to these questions
01:03 MTDiscord <jordan4ibanez> You'd think that right? But what's referencing it? If it's Lua, it's still a memory leak, if it's nothing, it's gone
01:04 alguien can't you make the texture table a weak table?
01:04 alguien wouldn't that auto-solve all the problems?
01:05 alguien wait, i forgot the engine is C++ not Lua
01:05 alguien you brought lua up
01:05 alguien anyway, C++ has weak references too
01:05 alguien right?
01:05 MTDiscord <jordan4ibanez> Yeah, you're talking to a raw pointer from lua
01:06 MTDiscord <jordan4ibanez> Not literally, that's the super condensed version
01:06 alguien so what you're saying is that you should add lua's own reference count to c++'s?
01:07 alguien as in, hook into where Lua releases it, and decrease the count in C++
01:07 MTDiscord <jordan4ibanez> You run into situations, where then a lua mod, has to safely hold a reference to a C++ smart pointer
01:07 alguien these issues have to have well-known solutions
01:08 ShadowBot joined #minetest
01:08 alguien minetest isn't exactly the first game to embed lua
01:08 alguien granted, i don't know the first thing about minetest's use of lua
01:09 MTDiscord <jordan4ibanez> And we barely let mods do anything outside the engine, basically just talk to it, we're gonna let the mod store a reference to an engine texture's smart pointer?
01:09 alguien well it's using it
01:10 MTDiscord <warr1024> that IS the first thing about it
01:10 MTDiscord <warr1024> you mean you don't know the second thing about it
01:10 MTDiscord <jordan4ibanez> Are you familiar with C99?
01:10 alguien i am
01:11 MTDiscord <jordan4ibanez> Well there's plenty of that smashed in with the rest of the C++ irrlicht code
01:11 MTDiscord <jordan4ibanez> Whatever generation is in that portion
01:12 MTDiscord <jordan4ibanez> If you would like to rectify this, open the PR yesterday
01:12 proller joined #minetest
01:13 MTDiscord <jordan4ibanez> It's like a ladder, to the top of the empire state building, where it was started with office chairs and they kept piling up whatever they had lying around to get up there, that's what you'll be dealing with
01:13 alguien That would mean lifetime management is manual, which is a good thing here. So just need to see how to hook into Lua's reference garbage collection
01:14 alguien The truth is, while I know C and Lua, I'm not a gamedev, and I have zero experience with embedding Lua
01:15 alguien And I don't know the second thing about minetest. My only contribution was to utils :D
01:15 MTDiscord <jordan4ibanez> Lifetime management is more or less completely manual in minetest, even with the gc, the gc is your friend, but you want to tell it your lifetimes by "leaking" memory, unless you get real fancy
01:16 MTDiscord <jordan4ibanez> Or unless you register something there's always that
01:19 alguien To change the topic away from the expectation of my contributing to the engine: Is there a way to tell which mod registered which recipe? Would be nice to do that in lua mods, rather than ordering by recipe number. How many times did you have to skip through N pages of recipes to find the most basic one.
01:19 cheapie alguien: mt-mods mesecons is the one with the terminal/help/examples tabs on the LuaC - I have no idea how it's comparing to the minetest-mods one any more, I kind of stopped paying attention.
01:20 alguien cheapie, thanks for the info
01:21 smk joined #minetest
01:27 MTDiscord <wsor4035> wouldnt recommend using mt-mods/mesecons. iirc most of the differences have been extracted to https://github.com/mt-mods/mooncontroller
03:01 the_sea_peoples joined #minetest
03:04 CRISPR joined #minetest
03:09 SFENCE joined #minetest
03:15 CRISPR joined #minetest
03:28 amfl2 joined #minetest
03:40 example_name7584 joined #minetest
03:49 example_name7584 left #minetest
03:53 SFENCE joined #minetest
05:00 MTDiscord joined #minetest
05:18 KURWAMAC https://files.catbox.moe/90gqo6.mp4
05:23 MTDiscord <wsor4035> Oh joy
05:41 KURWAMAC minecraft WOOOONT ADD INCHES TO YOUR COOOOOOOOOoooooooOOooooooooooOoooooooooooooooooOOOOOOOOOOOOOOCK
05:45 gregon joined #minetest
05:59 tarsovbak joined #minetest
06:04 MTDiscord <jordan4ibanez> My eyes, someone get me some voxel water immediately
06:08 tarsovbak1 joined #minetest
07:09 fling joined #minetest
07:20 tarsovbak joined #minetest
07:27 SFENCE joined #minetest
08:08 calcul0n joined #minetest
08:13 SFENCE joined #minetest
09:36 KURWAMAC was kicked by rubenwardy: kick
10:02 mrkubax10 joined #minetest
10:10 YuGiOhJCJ joined #minetest
10:41 gregon joined #minetest
10:42 TomTom_ joined #minetest
10:47 tarsovbak1 joined #minetest
11:29 s20 joined #minetest
11:39 tarsovbak joined #minetest
11:44 Desour joined #minetest
12:24 proller joined #minetest
12:41 ROllerozxa wtf
13:29 Thermoriax joined #minetest
13:41 MTDiscord <luatic> modlib has such a system
13:41 MTDiscord <luatic> but the "not cached" of ephemeral media refers to on-disk caching
13:41 MTDiscord <luatic> we don't have any kind of tile image cache eviction
13:46 MTDiscord <warr1024> Anybody: "I wonder if it's possible to--" Warr1024: "I tried to use this in a feature for NodeCore and it doesn't actually work that way" and simultaneously Luatic: "modlib already has an API to use that and it doesn't actually work that way."
14:15 s20 joined #minetest
14:48 proller joined #minetest
15:24 acarrico joined #minetest
15:38 qqq joined #minetest
15:41 MTDiscord <fatalisterror> (Or if you dont want the bloat i have extracted into an independent system)
16:05 mrkubax10 joined #minetest
16:07 definitelya joined #minetest
16:13 jaca122 joined #minetest
16:39 s20 joined #minetest
17:21 Glaedr joined #minetest
17:25 proller joined #minetest
17:28 Desour joined #minetest
17:59 kamdard joined #minetest
18:02 smk joined #minetest
18:14 Talkless joined #minetest
18:44 Trifton joined #minetest
18:47 Trifton joined #minetest
18:57 grorp joined #minetest
19:14 MinetestBot [git] cx384 -> minetest/minetest: Move hard coded minimap to builtin (#14071) adaa4cc https://github.com/minetest/minetest/commit/adaa4cc2f3c6e624b2c9ab7f40df4139b2a61c5a (2024-02-07T19:13:23Z)
19:23 kamdard_ joined #minetest
19:53 SFENCE joined #minetest
19:56 kamdard joined #minetest
19:59 kamdard joined #minetest
20:00 kamdard joined #minetest
20:17 SFENCE joined #minetest
21:10 cow321 joined #minetest
21:24 SFENCE joined #minetest
22:24 acarrico joined #minetest
22:28 proller__ joined #minetest
22:53 germ_ not too shabby
23:34 panwolfram joined #minetest

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