Luanti logo

IRC log for #luanti, 2025-06-25

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

All times shown according to UTC.

Time Nick Message
00:04 shinbet joined #luanti
00:40 Can0xfBows_ joined #luanti
00:50 gera joined #luanti
01:13 fluxionary joined #luanti
01:48 Bombo joined #luanti
01:48 Bombo joined #luanti
02:04 SFENCE_arch joined #luanti
02:48 aliasalreadytake joined #luanti
03:01 diceLibrarian joined #luanti
03:13 diceLibrarian2 joined #luanti
03:18 diceLibrarian2 joined #luanti
03:36 diceLibrarian joined #luanti
04:00 MTDiscord joined #luanti
04:00 diceLibrarian2 joined #luanti
04:15 amfl2 joined #luanti
05:05 amfl2 joined #luanti
05:13 SFENCE_arch joined #luanti
06:34 shinbet joined #luanti
07:06 shinbet joined #luanti
07:07 shinbet joined #luanti
07:20 shinbet joined #luanti
08:00 alpiquero joined #luanti
08:08 fluxionary joined #luanti
08:09 mrkubax10 joined #luanti
08:11 jemius joined #luanti
08:49 jemius Are there any big tech modpacks like for Minecraft? The modlist in the starter doesn't seem to contain any
08:50 MTDiscord <jordan4ibanez> Would you like to update one?
09:14 amfl2 joined #luanti
09:23 Guest97 joined #luanti
09:24 Guest97 Has minetestmapper been updated to the new 5.12 database format?
09:24 sfan5 yes
09:25 Guest97 has the github been updated.  The page shows last update on Apr 8 of this year
09:26 sinvet joined #luanti
09:28 MTDiscord <jordan4ibanez> Blockhead256: Did you find any information on the performance difference between node timers and abms? viewtopic.php?t=29489
09:28 MTDiscord <jordan4ibanez> Oh wait I forgot the tell command nooo
09:28 cheapie jemius: Is techage ( https://content.luanti.org/packages/joe7575/techage_modpack/ ) sort of like what you're after?
09:29 [MatrxMT] <Blockhead256> I'm here, but that topic ID doesn't even look right
09:29 MTDiscord <jordan4ibanez> https://forum.luanti.org/viewtopic.php?t=29489
09:30 [MatrxMT] <Blockhead256> jordan4ibanez: No, I never did work out how to actually measure things correctly, so that project got abandoned :(
09:31 Guest97 jordan4ibanez,  I've found that node timers, with unique timers based on a seed, can be far more effictient that ABMs.  Use case always matters, but I'm getting alot less ABM lag by converting most ABMs to timers with unique times.  Usually a time based on the node name in question, with a random fudge factor.  With over 150 mobs, advtrains,
09:31 Guest97 mesecons, digilines and others all within my game, it matters/.
09:31 MTDiscord <jordan4ibanez> A seed?
09:31 Guest97 A custom function that creates a seed based on the node name.
09:32 [MatrxMT] <Blockhead256> see, that is the kind of advice I saw and apparently Mineclone-something was following that practice, but I never had an active server or anything good to measure lag/not lag
09:32 Guest97 I don't have a pastebin, but can share the small simple function if you'd like/
09:32 MTDiscord <jordan4ibanez> So you're randomizing the timer tick addition?
09:33 sfan5 <Guest97> has the github been updated.  The page shows last update on Apr 8 of this year
09:33 sfan5 yes that's correct
09:34 sfan5 minetestmapper supported the new database format before luanti 5.12 was even released
09:35 Guest97 well, yes and no.  is it OK to paste function here?  I know it's frowned upon.
09:35 sfan5 https://paste.debian.net/ put it here and copy the link
09:36 [MatrxMT] <Blockhead256> if you're gonna post more than like 3 lines please use a pastebin
09:37 Guest97 Thanks sfan, I guess I need to download again.
09:37 Guest97 Like this?   https://paste.debian.net/1382228/
09:38 [MatrxMT] <Blockhead256> one problem I have with using nodetimers is they don't have catchup like ABMs. ABMs will just coalesce the odds towards 1 after a long time
09:38 [MatrxMT] <Blockhead256> you should be able to come back to a complete field of crops
09:39 MTDiscord <jordan4ibanez> I guess I should keep the hopper as a node timer then, thanks
09:39 MTDiscord <jordan4ibanez> wait no, I meant an abm
09:39 Guest97 Which is why use case matters.
09:39 MTDiscord <jordan4ibanez> lmao, I am thinking too deeply about the side effects
09:39 [MatrxMT] <Blockhead256> yes, it quickly spirals into analysis paralysis for me..
09:42 Guest97 Timers should catch up, just in a different way.  If the timer is continuous, the code within the time should still run.  Maybe my crop hasn't grown completely, but I don't have ABM induced lag from trees plants and crops.  Working this into mob spawning as well.  I find too many ABMs also cause single node mapgen to be slower.
09:42 [MatrxMT] <Blockhead256> Guest97: Did you know that you can create ASCII letters by adding 96 to a number (97 if you start from 0) and running it through string.char() ?
09:42 [MatrxMT] <Blockhead256> > print(string.char(math.floor(math.random(0,25)+97)))
09:42 [MatrxMT] <Blockhead256> u
09:43 MTDiscord <jordan4ibanez> Might want to limit the range and throw an error if out of bounds
09:44 Guest97 did not know that.  however, I would then need to translate ASCII code into numeric value.  It just seemed simpler to type the letters, than to reach back into the API.
09:46 [MatrxMT] <Blockhead256> well, for the other direction there's string.byte
09:52 Guest97 There's always room for improvement.  Still, I don't know that I'd write such a simple function any differently, unless there were profound performance issues.
09:53 [MatrxMT] <Blockhead256> well, I thought the discussion was about improving performance in the first place, but of course the incentive to do that usually only comes when you have issues
09:58 Guest97 The thing about ABMs, as that they get called even if there isn't a single instance of the node in question in world.  At one point I was using a vacuum mod that essentially choked the server.  And that was without a single vacuum node in world.  Just the ABM.  And don't get me started on mob spawning.  Especially when the mob count exceeds 30
09:58 Guest97 to 40 mobs.  When accommodating over 150 mobs, as well as trees, plants, and crops,  ABMs have to be tamed.
10:00 MTDiscord <jordan4ibanez> Hmmm
10:30 diceLibrarian joined #luanti
10:36 diceLibrarian2 joined #luanti
10:37 jemius cheapie: yeah, sth like that
10:49 YuGiOhJCJ joined #luanti
11:57 Leopold joined #luanti
12:12 erstazi_ joined #luanti
12:17 ireallyhateirc joined #luanti
12:23 cheek_pain joined #luanti
12:44 sinvet joined #luanti
12:48 Guest88 joined #luanti
12:50 Guest88 If I understood the licensing of minetest_game correctly, if I am to say clone minetest_game and modify it or add to it to create my own game, I would need to release my own game under the same license, affording those who use it the same freedoms, right? I did read the licensing though I'd like some clarification to ensure I understood things.
12:52 Guest88 The idea is I want to create a game but I will be working on functionality of it, not very good at graphics design, however, I can get functionality in place at the very least, it would be nice if there was a bit of a base to start off with that has terrain and what not, I thought minetest_game would be an ideal candidate.
12:54 [MatrxMT] <Blockhead256> for any mods you write, you get to choose the licence
12:55 [MatrxMT] <Blockhead256> for modifications to MTG's own mods, you have to maintain their licence
12:55 [MatrxMT] <Blockhead256> for what it's worth, the shape of the land and its heat and humidit values are just built into the engine, so the "terrain" in Minetest Game is just biomes drawn on top of that
12:56 Guest88 Though... what the intention is, is I'll be forking minetest_game, it will be given a new name, I'll be modding within the game, and exposing an API, to which developers can write mods for it if they please, I suppose anything I add to the forked minetest_game could use a different license, right?
12:56 Guest88 Ah, have to maintain their license.
12:56 silverwolf73827 joined #luanti
12:56 [MatrxMT] <Blockhead256> the only exception is a public domain mod, technically you could change the licence on that, but it would be kinda rude
12:58 Guest88 Well, rudeness/wrongdoing is not what I want to do, and it's not like I'm a person whose out for money/points/whatever, all I want to do is code and provide for the community so I highly doubt I would have any quibble over any licensing requirements or what would be best for the community around there.
12:58 Guest88 *that
13:00 [MatrxMT] <Blockhead256> whenever you change a mod, go and add yourself and the year of the modification to the copyright info of that mod
13:00 Guest88 I have felt my fair share of rudeness from people in communities so I know how that feels, it's like, ever used a piece of open source, entirely free to use and modify software but for some reason, you got a developer writing mods/plugins for it, trying to make money off the back of it? Yeah... if you felt the anguish from something like that, I
13:00 Guest88 really do understand you.
13:01 Guest88 Sure, that makes sense.
13:01 [MatrxMT] <Blockhead256> can I ask what your game design will be like?
13:02 Guest88 To be honest, I've just been coding anything, like I had a play around with how I'd prefer a server management mod to be, this time, I'm playing around with the concept of an RPG in a way I think it should be. It's kind of like... NodeCore vs minetest_game, different way of playing/doing.
13:04 Guest88 It also gets me used to lua which I do not know but I understand a bit of programming theory, enough to figure it all out, it also feels like a cross between python and something else, perhaps C/C++ or perl...
13:05 MinetestBot [git] sfan5 -> luanti-org/luanti: Make `core.get_node_raw` a public API (#16265) 8eceabd https://github.com/luanti-org/luanti/commit/8eceabd8122448e9fbf9957e509c78151701bce5 (2025-06-25T13:05:22Z)
13:05 MinetestBot [git] lhofhansl -> luanti-org/luanti: Avoid copying empty blocks for mesh-generation (#16286) 0ea89d4 https://github.com/luanti-org/luanti/commit/0ea89d411230b448adc183fe92f66e7b43033090 (2025-06-25T13:05:34Z)
13:07 [MatrxMT] <Blockhead256> python but simpler and not pedantic about whitespace
13:08 Guest88 Okay, it was a cross between python and C++ I was thinking, not python and perl.
13:08 Guest88 perl for example uses subroutines for functions like pascal does.
13:09 [MatrxMT] <Blockhead256> not much of C++ in Lua except that it's a C program with a few functions that are basically wrappers over the C standard library
13:13 Guest88 I was meaning syntax while I was writing it. :D For example, python, you don't put an end to say a function or a statement, in C/C++ and in Lua, you do, in Lua you would end it with "end" and in C/C++, you would end it with "};". There's other things I noticed where here it feels a bit C/C++ but not quite and there it feels a bit python but not
13:13 Guest88 quite. lol
13:15 MTDiscord <luatic> as far as syntax is concerned, Lua is not C-family, but rather Modula-family (Pascal and friends).
13:16 MTDiscord <luatic> really just about every language that does not have indentation-based syntax requires you to somehow delimit your blocks, be it shell script, algol, lisp, whatever
13:17 sinvet joined #luanti
13:21 Guest88 To be honest, I won't go near non-indented code, to the human eye, it just looks like a wall of text, therefore it's much harder and takes much longer to read. I knew a guy who was doing this in PHP, infact, I could've swore he was about avoiding all whitespace because he would not intent and he would not use spaces and I found him a nightmare to
13:21 Guest88 work with because of this.
13:21 Guest88 I don't mind the language not enforcing it, but it's good practice that you use some.
13:26 [MatrxMT] <Blockhead256> some coworkers are just like that . . .
13:26 SFENCE_arch joined #luanti
13:28 Guest88 "coworkers", that's even worse, if people are to work as a team, they need to do things to a uniform standard where each member can collaborate to each others work efficiently, not saying this out of naivity, I know these things happen, I've heard it many times being a nerd but yeah.
13:29 Guest88 He wasn't a coworker but a friend, and he's still not friend, don't hate or dislike him, disliked his coding practices, I just decided "I won't do coding with him", that was good enough for both of us.
13:29 Guest88 *he's still a friend
13:30 MTDiscord <luatic> ofc indentation is good practice, though lack of it is not a terrible issue on its own as its trivial to fix by running a formatter
13:30 Guest88 Yeah, formatters are very useful.
13:31 MTDiscord <luatic> however people who don't value indentation probably tend not to value readability more general
14:24 Evergreen5 joined #luanti
14:31 Glaedr joined #luanti
14:39 bwarden joined #luanti
15:00 [MatrxMT] <Bracket> is speed or readability more important
15:01 [MatrxMT] <Blockhead256> holy false dichotomy batma
15:01 [MatrxMT] <Blockhead256> n
15:21 repetitivestrain sfan5: [git] sfan5 -> luanti-org/luanti: Make `core.get_node_raw` a public API (#16265) 8eceabd
15:21 repetitivestrain Thanks!
15:21 ShadowBot https://github.com/luanti-org/luanti/issues/16265 -- Make `core.get_node_raw` a public API by sfan5
15:24 Helenah joined #luanti
15:39 jaca122 joined #luanti
15:40 bwarden joined #luanti
15:40 sfan5 all it took was for someone to make a PR
15:40 sfan5 and uhh 8 months
15:41 greeter joined #luanti
15:45 [MatrxMT] <Blockhead256> what's the deal with the radar minimap maximum zoom being nearer than the overview/normal minimap maximum zoom?
16:10 MTDiscord <jordan4ibanez> 8 months? That's a new record
16:22 SFENCE joined #luanti
16:26 fluxionary joined #luanti
16:27 SFENCE joined #luanti
16:46 Talkless joined #luanti
17:03 ineva joined #luanti
17:05 oneeyedalien joined #luanti
17:28 SFENCE joined #luanti
18:16 jaca122 joined #luanti
18:27 fluxionary joined #luanti
18:29 Kimapr joined #luanti
18:43 imi joined #luanti
18:54 SFENCE_arch joined #luanti
19:01 Kimapr joined #luanti
19:24 Krock repetitivestrain: https://paste.debian.net/1380026/ does no longer exist. could you please re-upload it somewhere with a longer lifespan? It's somewhat relevant information for the get_node_raw PR I suppose
19:29 orwell96 joined #luanti
19:33 Kimapr joined #luanti
20:36 Yof joined #luanti
20:40 kamdard joined #luanti
20:45 Yof Is there a way to install a mod on Android without a PC, root access or uploading to a ContentDB instance? I want to test a mod of mine.
20:49 sfan5 not anymore I think
20:50 sfan5 https://docs.luanti.org/for-players/mobile/#accessing-android-data-directory
21:14 peterz joined #luanti
21:39 diceLibrarian joined #luanti
22:05 Kimapr joined #luanti
22:09 MTDiscord <redundantcc> Couldn't you just make a file explorer mod, or is it not possible to gain read and write access to one mods directory from another mod?
22:11 MTDiscord <redundantcc> I guess even if you could you would still need to be able to unzip mods and have secure.http and I don't think mods have access to compression API?
22:16 [MatrxMT] <Bracket> You can probably, main menu does it too afaik
22:17 MTDiscord <redundantcc> Oh yeah that's right, cdb has to run a decompression undownloaded files. See this is the problem with having undocumented / private API, I can never tell if something exists from a cursory glance.
22:17 turtleman joined #luanti
22:18 MTDiscord <redundantcc> It's still probably too much work though, if anything probably better just to allow downloading and unpacking of arbitrary zip files so you can support multiple use cases.
22:19 [MatrxMT] <Bracket> zip bombs
22:19 [MatrxMT] <Bracket> my beloved
22:20 MTDiscord <redundantcc> Or you could just not put in random links, I mean if I gave you a link to the 42 zip bomb and your client crashed at worst you would restart the app and not click it again right? And you can just unpack it in memory and if you get an out of memory error just don't write it to the file system?
22:21 MTDiscord <redundantcc> It wouldn't fix being able to point to a zip bomb, but it would never take up your entire storage if it had to be loaded in memory first. And I believe you can also uninstall mods from the content page anyway so you can just extend that functionality to arbitrary folders?
22:22 ineva joined #luanti
22:23 sfan5 there are no undocumented / private APIs in that sense. the mainmenu just has different APIs because it does all sorts of tasks normal mods don't
22:24 MTDiscord <redundantcc> Okay and where can I look up that API? What file contains information about and documents and makes public in the sense that it's not undocumented or private. I'm not saying it's proprietary I'm just saying I can't read it.
22:25 sfan5 https://github.com/luanti-org/luanti/blob/master/doc/menu_lua_api.md
22:25 MTDiscord1 joined #luanti
22:25 MTDiscord1 <redundantcc> Like I know I could just open the folder that defines the cdb window, look at the file that defines the tab and pull the API. But not only is that more work then modding, but as I've been told before "it's considered unstable and may change it anytime" which is a problem when you want to make a solution available to more than just you, or God forbid publish it as a mod only for it to break years later without any notice because it's not
22:25 MTDiscord1 written down anywhere.
22:26 sfan5 but these APIs do not exist in the environment where game mods run so I don't know why you'd want to know about them
22:26 chloetax joined #luanti
22:28 MTDiscord <redundantcc> Let's say I wanted to make a contribution to your main menu, and in this hypothetical I wanted to add the functionality for a file browser. Putting aside for a minute concept approval, having these things written down somewhere would make adding cool features easier.
22:28 MTDiscord <redundantcc> That's all I'm saying
22:31 MTDiscord <redundantcc> Correct me if I'm wrong but there are functions available to built-in mods to replace and redefine the main menu, wouldn't it be cool to have multiple main menus choose from with different layouts and features with wider larger or shinier buttons or maybe for accessibility. I don't know I was just thinking out loud.
22:31 sfan5 not sure if the bridge missed it but I posted a link to the documentation
22:32 MTDiscord <redundantcc> Last link I got from you was the mobile documentation, no I don't see it sfan5
22:33 Juri joined #luanti
22:33 Niklp joined #luanti
22:33 panwolfram joined #luanti
22:40 cheapie redundantcc: https://github.com/luanti-org/luanti/blob/master/doc/menu_lua_api.md
22:42 MTDiscord <redundantcc> https://tenor.com/view/m-and-ms-christmas-commercial-they-do-exist-they-exist-commercial-gif-19390949
22:43 MTDiscord <redundantcc> Is there a security reason for not exposing the zip extraction methods?  core.extract_zip(zipfile,destination)
22:44 syl_ joined #luanti
22:45 MTDiscord <redundantcc> Cuz that does seem pretty useful, putting aside the ability to download and unzip arbitrary file structures so you can create things like file managers or mod updators being able to unzip data just seems like something you don't want implemented in lua for speed reasons.
22:46 MTDiscord <luatic> given how few users it has, by far the main user being just luanti itself, being able to break the menu API is more valuable than guaranteeing backwards compatibility for some fringe projects at the moment.
22:49 MTDiscord <redundantcc> Well of course it has a few users no one can use it, tell you what I'm happy any of this exist at all for me to use but will you grant me that having more nice things is generally pretty cool?
22:53 MTDiscord <redundantcc> Also you can break compatibility across major versions, and there are plenty of things scheduled to break when you hit 6.0.0 so I don't see the sense in using backwards compatibility as an excuse to not expose cool things like optimized decompression functions. I'm sure if I understood the challenges of developing and maintaining billions of lines of code I'd be more sympathetic to wanting to reduce complexity, but I make free games on
22:53 MTDiscord the internet which never get maintenance so I'm drawing a blank.
22:56 MTDiscord <luatic> one thing at a time. of course it's nice the API exists, and it is meant to encourage e.g. people writing main menus (and maybe PR'ing them back).
22:56 MTDiscord <luatic> but if you do this, you should expect to live on the bleeding edge: the API will change, and your code will need to adapt.
22:56 MTDiscord <luatic> usually the changes will be minor, but they need not be.
22:57 MTDiscord <redundantcc> Yeah I'm sorry about that, my client barely works and you'll probably never see it cuz my codes architecture brings me great shame to me and my family lineage.
22:57 MTDiscord <luatic> as for the decompression API, that's another story. maybe it should be exposed, but also i haven't seen anybody asking for it yet.
22:58 MTDiscord <redundantcc> Admittedly I did just ask and provide a use case...
22:58 MTDiscord <luatic> (well, except you right now of course. which doesn't mean that it's useful, i can imagine use cases, but the fact that i can't remember an issue off the top of my head means it's not nearly as high priority as other matters.)
22:58 MTDiscord <luatic> not useful* lol
22:59 MTDiscord <redundantcc> Maybe in 5.20 when we finally get the new formspec alternative?
23:00 MTDiscord <redundantcc> A joke, but I fear it very well might take that long.
23:01 MTDiscord <redundantcc> Issues really are super important to programmers huh, maybe I should get around too publishing one for that bug.
23:01 MTDiscord <luatic> issues are essentially the main way of communicating needs to developers in a somewhat organized manner.
23:05 Eragon joined #luanti
23:16 diceLibrarian2 joined #luanti
23:23 diceLibrarian joined #luanti
23:24 orwell96 joined #luanti
23:31 diceLibrarian joined #luanti
23:43 FileX joined #luanti

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