| Time |
Nick |
Message |
| 00:56 |
|
AliasAlreadyTake joined #minetest |
| 01:01 |
|
grouinos joined #minetest |
| 03:28 |
|
queria^clone joined #minetest |
| 03:33 |
|
queria^clone joined #minetest |
| 04:00 |
|
MTDiscord joined #minetest |
| 04:09 |
|
Hawk777 joined #minetest |
| 04:26 |
|
Elzington__ joined #minetest |
| 04:36 |
|
Elzington joined #minetest |
| 05:01 |
|
riff-IRC joined #minetest |
| 07:15 |
|
CWz joined #minetest |
| 08:00 |
|
plainoldcheese joined #minetest |
| 08:05 |
|
hendursa1 joined #minetest |
| 08:06 |
|
Sven_vB_ joined #minetest |
| 09:19 |
|
specing_ joined #minetest |
| 09:34 |
|
olliy joined #minetest |
| 10:50 |
|
AristotIe joined #minetest |
| 10:57 |
|
calcul0n joined #minetest |
| 11:44 |
|
dunj3 joined #minetest |
| 11:48 |
|
search_social joined #minetest |
| 11:49 |
|
calcul0n_ joined #minetest |
| 11:50 |
|
CWz joined #minetest |
| 11:51 |
|
reductum joined #minetest |
| 12:29 |
|
definitelya joined #minetest |
| 13:06 |
|
absurb joined #minetest |
| 14:02 |
|
CWz joined #minetest |
| 14:04 |
|
appguru joined #minetest |
| 14:07 |
|
olliy joined #minetest |
| 14:16 |
|
grouinos joined #minetest |
| 14:27 |
|
proller joined #minetest |
| 14:30 |
|
tech_exorcist joined #minetest |
| 15:15 |
|
kamdard joined #minetest |
| 15:42 |
|
erlehmann joined #minetest |
| 15:53 |
|
FreeFull joined #minetest |
| 15:55 |
|
grouinos joined #minetest |
| 16:02 |
|
Extex joined #minetest |
| 16:03 |
|
hendursaga joined #minetest |
| 16:22 |
|
fluxionary joined #minetest |
| 16:26 |
|
Fixer joined #minetest |
| 16:30 |
|
garywhite joined #minetest |
| 16:30 |
|
garywhite joined #minetest |
| 16:34 |
|
garywhite joined #minetest |
| 16:41 |
|
___nick___ joined #minetest |
| 16:43 |
|
___nick___ joined #minetest |
| 16:45 |
|
___nick___ joined #minetest |
| 16:53 |
|
Extex joined #minetest |
| 17:03 |
|
Boingo joined #minetest |
| 17:04 |
|
est31 joined #minetest |
| 17:21 |
IceDragon |
Has anyone thought of using Luau in minetest yet? https://luau-lang.org/ it would be interesting to get proper type information in various apis |
| 17:21 |
MTDiscord |
<Sublayer plank> luau's source code is not available |
| 17:22 |
MTDiscord |
<Sublayer plank> at least not at the time I checked |
| 17:22 |
MTDiscord |
<Sublayer plank> oh no wait it is open source now, yay! |
| 17:25 |
MTDiscord |
<Sublayer plank> yes, it would be very interesting to see how compiling minetest with luau would change things |
| 17:43 |
Chompy |
That could be cool |
| 17:50 |
|
Talkless joined #minetest |
| 17:57 |
IceDragon |
trying to compile minetest with Luau at the moment, I'll let you guys know if it works out of the box (after I butcher the cmake files) |
| 17:57 |
MTDiscord |
<Sublayer plank> I'd love to see if there'll be some sort of performance difference between PUC or LuaJIT |
| 17:58 |
IceDragon |
From the site, it should be faster than PUC and competitive with LuaJIT |
| 18:01 |
celeron55_ |
it seems it doesn't have JIT which would mean it won't perform well in the kind of bare number crunching done by some mapgens or such |
| 18:01 |
celeron55_ |
quite interesting though |
| 18:03 |
|
longerstaff13 joined #minetest |
| 18:03 |
IceDragon |
If it could transpile luau to lua, we could use it to have linting and analysis, but keep the runtime on luajit |
| 18:18 |
erlehmann |
celeron55_ it is interesting how *fast* lua stuff can actually be if the code is good. i optimized the tga encoder in mcl2 today and got it from no compression and taking about 0.1s to RLE-compressed bitmaps made in 0.005s, which is about as fast as minetest.encode_png() … the culprit was appending a string to the encoded data for every pixel instead of using a table and table.concat() at the end |
| 18:19 |
erlehmann |
i.e. lua string creation is so slow that just avoiding them gave a 20 times speedup |
| 18:20 |
erlehmann |
i bet slow mapgen stuff is usually similarly badly optimized |
| 18:21 |
celeron55_ |
well, i bet no |
| 18:21 |
erlehmann |
i mean, cora got rid of the mapgen lag in mineclonia on her server just by moving village generation around in the code |
| 18:21 |
erlehmann |
maybe mcl2 and related mods are a special case |
| 18:22 |
erlehmann |
what i'm saying, usually the number crunching isn't the issue?! |
| 18:22 |
erlehmann |
maybe it's different in most mapgens |
| 18:22 |
erlehmann |
or maybe it can be *much* faster even and i have no idea of that |
| 18:22 |
erlehmann |
bc all lua mapgen dog slow, is it that, celeron55_ ? |
| 18:22 |
celeron55_ |
yes, usually no. but the problem is, sometimes the only option is to do serious number crunching, and those cases are why JIT is needed |
| 18:23 |
celeron55_ |
JIT doesn't really help code that's structured wrongly or uses a bad algorithm |
| 18:23 |
MTDiscord |
<luatic> From my experience, LuaJIT is smart enough to optimize the string appending pattern |
| 18:23 |
erlehmann |
yeah |
| 18:23 |
MTDiscord |
<luatic> (you shouldn't rely on that though) |
| 18:24 |
erlehmann |
luatic creating an ever longer string is shitty anyway |
| 18:24 |
MTDiscord |
<luatic> I wouldn't say it's the number crunching. It's the looping. |
| 18:24 |
MTDiscord |
<luatic> With immutable strings it is |
| 18:25 |
erlehmann |
aren't all lua strings immutable? |
| 18:25 |
MTDiscord |
<luatic> They are |
| 18:25 |
MTDiscord |
<luatic> Which is why I avoid string concatenations in loops like the plague :) |
| 18:25 |
celeron55_ |
it's actually a bit silly to say "lua string creation is slow"... it's just as fast as in any language, it's just that you always create a new string |
| 18:25 |
celeron55_ |
doesn't differ from eg. python though |
| 18:25 |
celeron55_ |
and everyone knows how to work around it |
| 18:26 |
MTDiscord |
<luatic> IIRC V8 had some unholy opimizations for that too |
| 18:26 |
erlehmann |
well, apparently a bunch of ppl didn't, or else i wouldn't have been able to speed up their encoder |
| 18:26 |
erlehmann |
luatic wait you maintain modlib right? |
| 18:26 |
MTDiscord |
<luatic> It's a bit slower compared to other languages, as Lua does string intering besides copying the memory |
| 18:26 |
MTDiscord |
<luatic> yes I do |
| 18:28 |
erlehmann |
luatic could you test with os.clock() before and after how long the png encoder there takes for an 128x128 8 bit RGB image? |
| 18:29 |
MTDiscord |
<luatic> Random colors? |
| 18:29 |
MTDiscord |
<luatic> (the V8 optimization for instance was that the "new" immutable string would actually be a slice in order to save memory & time) |
| 18:29 |
|
est31 joined #minetest |
| 18:29 |
MTDiscord |
<luatic> (downside was a waste of memory, as long strings were kept around if only a tiny substring pointed to them) |
| 18:29 |
erlehmann |
luatic, no, random colors is the worst case for any predictor. try a map image. |
| 18:30 |
erlehmann |
luatic wait, i send you one i made just now |
| 18:30 |
MTDiscord |
<luatic> Predictor? Does your encoder support filtering? |
| 18:30 |
erlehmann |
i thought you had compression? |
| 18:31 |
MTDiscord |
<luatic> I have compression, but I don't use filtering |
| 18:31 |
erlehmann |
i only do RLE, bc the mcl2 devs said that their issue is encoding speed, not filesize (but i wanted to reduce the filesize anyway) |
| 18:31 |
erlehmann |
wait, i upload the pic |
| 18:31 |
erlehmann |
so we can compare |
| 18:31 |
MTDiscord |
<luatic> Filtering is used to further improve the deflate compression |
| 18:34 |
erlehmann |
luatic https://mister-muffin.de/p/lrNr.bin is a 128x128 RGB 8pp RLE TGA |
| 18:34 |
erlehmann |
ok it's maybe BGR or something, i don't care. little-endian, big-endian, this that. |
| 18:35 |
erlehmann |
luatic lots of water to give a chance for compression ;) |
| 18:37 |
erlehmann |
i mean this is still unreasonably big |
| 18:37 |
erlehmann |
filesize-wise |
| 18:37 |
erlehmann |
bc to make the map art you actually have to have a palette entry for each node |
| 18:37 |
erlehmann |
not reusing this for the actual picture is wasteful |
| 18:39 |
erlehmann |
but as i said, they care about encoding speed |
| 18:39 |
MTDiscord |
<luatic> 2.7e-3 secs |
| 18:39 |
erlehmann |
wdym |
| 18:39 |
erlehmann |
pls use dotted decimal notation |
| 18:40 |
MTDiscord |
<luatic> 0.0027 |
| 18:40 |
erlehmann |
well |
| 18:40 |
erlehmann |
how big is your output file? |
| 18:40 |
erlehmann |
is it about 4kb? or smaller? |
| 18:41 |
MTDiscord |
<luatic> 746 bytes |
| 18:41 |
erlehmann |
LOL |
| 18:41 |
erlehmann |
luatic with that kind of runtime behaviour, this is much better than what hecktest made? |
| 18:41 |
erlehmann |
like, about the same speed, much smaller filesize |
| 18:41 |
MTDiscord |
<luatic> No, hecktest made effectively the same thing but in C++ |
| 18:42 |
|
est31 joined #minetest |
| 18:42 |
erlehmann |
well if it is about the same |
| 18:42 |
erlehmann |
why does the C++ thing exist at all |
| 18:42 |
MTDiscord |
<luatic> https://cdn.discordapp.com/attachments/749727888659447960/905889842318163978/lrNrEnc.png |
| 18:42 |
MTDiscord |
<luatic> good question |
| 18:43 |
MTDiscord |
<luatic> as my username indicates, I'm generally in favor of writing things in Lua ;) |
| 18:43 |
erlehmann |
like honestly |
| 18:43 |
erlehmann |
i see only downsides if it is possible to have it equally good in lua |
| 18:43 |
erlehmann |
does your thing crap out on bigger images? |
| 18:43 |
MTDiscord |
<luatic> erlehmann: it's most likely so small because I used compression level 9 (the highest) |
| 18:44 |
erlehmann |
luatic ig the devtest checkerboard texture is not 20 times the size it should be then? |
| 18:44 |
IceDragon |
Well it doesn't compile out of the box, getting some type errors on luaL_Buffer and such (luau) |
| 18:44 |
MTDiscord |
<luatic> performance-wise, the only bottleneck I see is my CRC calculation |
| 18:45 |
IceDragon |
Ah I see what it did, nevermind going to have to convince it not to load the main lua header as well |
| 18:45 |
MTDiscord |
<luatic> But that'll be fixable to after #9847 is merged |
| 18:45 |
ShadowBot |
https://github.com/minetest/minetest/issues/9847 -- Add bitop library by Lejo1 |
| 18:45 |
MTDiscord |
<luatic> too* |
| 18:45 |
erlehmann |
luatic, the thing is, if you don't have any quadratic blowup, this is fine |
| 18:45 |
erlehmann |
uh no |
| 18:45 |
erlehmann |
then it becomes worse again |
| 18:45 |
erlehmann |
the beauty of a pure lua implementation is the backwards compat |
| 18:45 |
MTDiscord |
<luatic> Why would I have quadratic blowup? |
| 18:46 |
erlehmann |
no idea, everyone has it nowadays |
| 18:46 |
MTDiscord |
<luatic> The code I have written is all linear time. I'm not quite sure about deflate, but it's probably fast too. |
| 18:46 |
MTDiscord |
<luatic> don't worry, I'd leave my XOR polyfill in |
| 18:46 |
erlehmann |
remember when someone attached 100k signatures to a pgp key and some software crapped its pants? |
| 18:46 |
erlehmann |
good |
| 18:46 |
erlehmann |
so yeah, why isn't your stuff in minetest proper? |
| 18:47 |
erlehmann |
celeron55_, and idea? |
| 18:47 |
erlehmann |
any |
| 18:47 |
MTDiscord |
<luatic> #11427 is the only Lua PR I've opened so far |
| 18:47 |
ShadowBot |
https://github.com/minetest/minetest/issues/11427 -- Redo serialize.lua by appgurueu |
| 18:48 |
MTDiscord |
<luatic> Apart from the URL escaping fix... |
| 18:49 |
erlehmann |
luatic does the performance of your thing depend on lua interpreter maybe? |
| 18:49 |
MTDiscord |
<luatic> Most likely |
| 18:50 |
erlehmann |
well what's the worst that could happen |
| 18:50 |
MTDiscord |
<luatic> Oh, annoyance of the today: Minetest will happily create it's database.test.sqlite or whatever it's called in your current working directory |
| 18:50 |
erlehmann |
what kind of database is that? |
| 18:51 |
MTDiscord |
<luatic> worst is still linear time |
| 18:51 |
MTDiscord |
<luatic> but with a larger factor |
| 18:51 |
erlehmann |
nah i mean encoding wise |
| 18:51 |
MTDiscord |
<josiah_wi> erlehmann, we need to talk. |
| 18:51 |
MTDiscord |
<luatic> currently I have no Lua interpreter specific code though |
| 18:51 |
erlehmann |
josiah_wi about testing i guess? |
| 18:52 |
MTDiscord |
<josiah_wi> Yes. |
| 18:52 |
MTDiscord |
<josiah_wi> If you have history of #minetest-dev I discussed it there. |
| 18:52 |
erlehmann |
i can look it up. which days? |
| 18:54 |
MTDiscord |
<josiah_wi> Today. Last few messages. |
| 19:03 |
|
est31 joined #minetest |
| 19:13 |
IceDragon |
After fighting with cmake and my system headers for awhile, I've made some progress |
| 19:13 |
IceDragon |
But minetest is using both luaL_checkint and luaL_checkinteger the former isn't available in the Luau headers (even as a alias) |
| 19:13 |
IceDragon |
so that would need to change if we plan to support it |
| 19:17 |
|
moongaia joined #minetest |
| 19:27 |
|
olliy joined #minetest |
| 19:43 |
|
Extex joined #minetest |
| 19:52 |
IceDragon |
Oh wtf, I can't even file a bug report to luau, their lua_error is incompatible with any other 5.1 implementation |
| 19:55 |
|
grouinos joined #minetest |
| 20:01 |
sfan5 |
they didn't say that the API would be compatible did they? |
| 20:04 |
IceDragon |
Nope, but I kinda expected some compliance |
| 20:04 |
IceDragon |
Anyway I've reached a roadblock |
| 20:04 |
IceDragon |
completely missing functions lua_getstack and luaL_loadbuffer |
| 20:06 |
IceDragon |
One major change I did was unifying the lua*.h includes into a single local header file |
| 20:06 |
IceDragon |
My compiler kept including luajit, puc lua or whatever the heck it felt like |
| 20:09 |
IceDragon |
https://github.com/IceDragon200/minetest/commit/33874d5a684eaf9945f1b7c1bcb8a3dc015fd5d4 |
| 20:09 |
IceDragon |
So the verdict for now: it doesn't work |
| 20:14 |
|
Elzington_ joined #minetest |
| 20:23 |
|
Verticen joined #minetest |
| 20:33 |
|
proller joined #minetest |
| 21:12 |
|
grouinos joined #minetest |
| 21:18 |
|
specing_ joined #minetest |
| 21:36 |
|
delta23 joined #minetest |
| 21:44 |
|
grouinos joined #minetest |
| 21:44 |
|
Elzington joined #minetest |
| 22:18 |
|
josiah_wi joined #minetest |
| 22:18 |
josiah_wi |
Hello. I do not have access to Discord right now, so I'm looking for modding help on the IRC here. |
| 22:18 |
josiah_wi |
Is this the right channel to do that in? |
| 22:21 |
calcul0n_ |
josiah_wi, yes it's the right place |
| 22:22 |
calcul0n_ |
and this channel is bridged with discord anyway |
| 22:22 |
josiah_wi |
My friend and I are trying to register an arrow with the mobs API. We've created and exported a b3d mesh, but we can't figure out how to register the mesh for the arrow to use. |
| 22:23 |
josiah_wi |
We want the arrow to be its own item, but we aren't sure how to sync that up with the arrow registration either. |
| 22:23 |
erlehmann |
josiah_wi look in mineclonia source code for it ig |
| 22:24 |
josiah_wi |
Ok, thank you! |
| 22:24 |
erlehmann |
we got it from mcl2 ofc, but fixed some bugs |
| 22:25 |
erlehmann |
on second thought, not sure if that helps |
| 22:25 |
erlehmann |
you'll figure it out ig |
| 22:27 |
calcul0n_ |
in mobs_redo arrows are defined like entities, i guess you need visual="mesh", mesh="model.obj" |
| 22:28 |
calcul0n_ |
for the second part i can't tell |
| 22:28 |
josiah_wi |
That's the one thing we've tried so far, and it failed to load the mesh. Checking now for spelling typos. |
| 22:30 |
josiah_wi |
It says mesh not found: "" so I think mesh is nil. |
| 22:31 |
josiah_wi |
There's no mesh field specified in the mobs API reference, so maybe it's not forwarding that to the mesh loader properly. |
| 22:34 |
calcul0n_ |
hmm, right, looks like register_arrow only uses textures, not mesh |
| 22:34 |
josiah_wi |
So it may not be supported. That would explain it. |
| 22:35 |
calcul0n_ |
yep, probably |
| 22:39 |
|
Ingar joined #minetest |
| 22:48 |
|
Taoki joined #minetest |
| 23:01 |
|
Sven_vB joined #minetest |
| 23:02 |
|
independent56 joined #minetest |
| 23:02 |
independent56 |
Is 64 n/s too fast for a realistic high speed train mod based of advtrains? |
| 23:02 |
|
Conradish006 joined #minetest |
| 23:04 |
independent56 |
It is equal to 155 mph, the minimumm for category 1 of high speed rail. |
| 23:06 |
independent56 |
Follow up question: Give me a rating for my stratergy to decode the Advtrains code: https://pastebin.com/EjFU1vDH |
| 23:08 |
definitelya |
decode free software? |
| 23:08 |
definitelya |
jk |
| 23:09 |
independent56 |
I mean reading the source code |
| 23:09 |
independent56 |
My jokes are the worst |
| 23:10 |
definitelya |
64 n/s seems realistic to me tho. |
| 23:10 |
definitelya |
ahah |
| 23:12 |
independent56 |
In minetest, "50 n/s is relativistic speeds" according to another IRCgoer |
| 23:14 |
definitelya |
well, when chunks can't load fast enough... just add teleportation to the code and call it a day? |
| 23:15 |
independent56 |
They have handled it; i once went through unloaded chunks on a train journey in advtrains |
| 23:16 |
independent56 |
https://pastebin.com/aG87uvuk Here is what i wish to change |
| 23:16 |
definitelya |
did you pop in and out of the void? |
| 23:16 |
independent56 |
I went into the void, waited at a signal, and then went back in |
| 23:19 |
independent56 |
(i am using tiddlywiki syntax; tiddlywiki helps me work better) |
| 23:22 |
|
grouinos joined #minetest |
| 23:23 |
definitelya |
Have to go, cya. |
| 23:26 |
|
Boingo joined #minetest |
| 23:35 |
independent56 |
thanks |
| 23:43 |
|
YuGiOhJCJ joined #minetest |
| 23:47 |
IceDragon |
so close to getting a working copy of minetest with luau now, just need the linker to behave itself |
| 23:57 |
IceDragon |
I should have taken the hint that since loadfile and loadbuffer were missing it also meant the dofile and friends were probably not implemented either |