Minetest logo

IRC log for #minetest-hub, 2019-08-02

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

All times shown according to UTC.

Time Nick Message
00:31 nri joined #minetest-hub
00:46 pauloue joined #minetest-hub
00:59 pauloue joined #minetest-hub
01:03 Ganome317 joined #minetest-hub
01:07 nri joined #minetest-hub
03:50 benrob0329 !tell Krock nvm, was a different problem
03:50 MinetestBot benrob0329: I'll pass that on when Krock is around
06:15 CWz_ joined #minetest-hub
06:25 ssieb joined #minetest-hub
07:34 Krock joined #minetest-hub
07:34 MinetestBot Krock: Aug-01 21:47 UTC <roben1430> how do I move the on_generated function?
07:34 MinetestBot Krock: Aug-02 03:50 UTC <benrob0329> nvm, was a different problem
07:34 Krock nice. problem solved itself (for me)
07:39 ANAND Heya Krock
07:39 ANAND Nice timing ;)
07:41 Krock hi ANAND
07:42 ANAND :)
07:44 tomraceror joined #minetest-hub
07:59 tomraceror joined #minetest-hub
08:23 Krock "Post your screenshots!" will soon reach 1 million view
08:41 ANAND nice
09:17 twoelk joined #minetest-hub
09:52 Megaf joined #minetest-hub
10:21 Megaf Hi all
10:22 rubenwardy hi Megaf
10:22 rubenwardy long time no see
10:22 rubenwardy probably
10:22 Megaf yep, very long, how are you doing rubenwardy
10:24 rubenwardy good, good
10:55 Krock joined #minetest-hub
11:11 Fixer joined #minetest-hub
11:11 Fixer joined #minetest-hub
11:16 IcyDiamond I try
11:20 calcul0n joined #minetest-hub
11:42 DS-minetest joined #minetest-hub
12:11 tomraceror joined #minetest-hub
12:21 DS-minetest !tell ANAND I've found you: ⊼
12:21 MinetestBot DS-minetest: I'll pass that on when ANAND is around
12:21 ANAND Stupid bot... I am already around >.>
12:21 MinetestBot ANAND: Aug-02 12:21 UTC <DS-minetest> I've found you: ⊼
12:21 ANAND ...
12:22 DS-minetest it's a nand
12:22 DS-minetest o/
12:22 ANAND Hi! :)
12:25 Krock hey it's a NAND https://i.imgur.com/Oj4zExo.png
12:27 DS-minetest doesn't this cause a short circuit?
12:27 Krock where?
12:27 Krock lower NPN BJT to ground? add a resistor in front
12:27 DS-minetest if both are on, the power will flow to ground, right?
12:28 Krock power flows nowhere. it converts into heat. there's no big current flow due to the resistor
12:29 Krock oh wait. his username is actually an AND
12:29 DS-minetest dam dam damm
12:29 DS-minetest both are possible
12:30 Krock fixes. https://i.imgur.com/hGiU07h.png
12:30 Krock *fixed
12:30 Krock oh wait
12:32 ANAND Krock, adding the HUD element irrespective of breath would probably result in the breath bar flashing in and out of existence every once in a while, I think?
12:33 Krock fixed AND https://i.imgur.com/XImXxF2.png
12:34 Krock ANAND: it would appear but not disappear if the props are changed within the regain phase
12:34 IhrFussel joined #minetest-hub
12:34 Krock hi IhrFussel
12:35 IhrFussel Hello guys... I think set_wielded_item() takes up to 50 ms to execute
12:35 ANAND But why exactly would you want to show the breath bar if the player has full breath? o_O
12:35 Krock you think ?
12:36 IhrFussel I need someone with 5.0.1 or latest dev to confirm it with this code https://paste.ee/p/uVQIU
12:36 Krock ANAND: sorry? Are we talking cross each other?
12:36 Krock checking PR again
12:36 ANAND I'm speaking to you :P
12:37 * ANAND cleverly changed the topic of the conversation to avoid further embarrassment regarding his name :D
12:38 IhrFussel I debugged why my mob on_punch() callbacks take so long (20 ms on average and highest in profiler was 60 ms) so I added several .log() calls to the different parts of the code ... and as soon as I commented out 'set_wielded_item()' after adding wear to the weapon the execution time went from 30-60 ms to under 1
12:38 Krock the HUD bar will always be removed properly in the current PR state
12:39 IhrFussel I tested even just holding a steel ingot while running the snippet I just posted and STILL get ~ 30 ms
12:40 DS-minetest IhrFussel: you could measure the time in the source code, too
12:40 DS-minetest https://github.com/minetest/minetest/blob/b8aaef704d3e29c43edc3312a3c5e25516d9c864/src/script/lua_api/l_object.cpp#L345
12:40 Krock now I see what you mean by flashing since there's now no longer an additional step to trigger the "HUD remove" action
12:40 DS-minetest btw hi IhrFussel o/
12:40 IhrFussel There is no need to measure it there when the call alone is definitely the culprit
12:41 Krock IhrFussel: that's to expect when it has to resend the entire inventory, I guess?
12:41 Krock 30ms is still a bit long, though
12:41 Krock probably slow inventory serialization
12:41 IhrFussel I need someone else first to confirm the values
12:41 IhrFussel It shouldn't be a problem on my end but who knows
12:44 Krock Time per call: 0.034
12:45 Krock that's in ms
12:45 Krock https://pastebin.com/raw/M94nwqX7
12:50 IhrFussel But I didn't change the engine code at all and AFAIK this only calls the engine directly right? No mod callbacks involved
12:51 calcul0n joined #minetest-hub
12:51 CWz_ for some reason my version of minetest only lets me use english letters
12:51 CWz_ anything else won't type
12:52 DS-minetest tested, a single set takes much longer than the average in 1000
12:53 IhrFussel So you get 20+ ms too?
12:53 DS-minetest (ca. 100 ms and ca. 30 ms)
12:53 DS-minetest yes
12:54 IhrFussel With 5.0.1 ?
12:54 DS-minetest with newest aster
12:54 DS-minetest +m*
12:54 IhrFussel Okay then I think it's time to open an issue
12:55 DS-minetest Krock: that's in s, you devide twice by 1000
12:59 DS-minetest here's my test code: https://gist.github.com/DS-Minetest/acc13c4399fbd08b4ba8c50ea2596092
12:59 IhrFussel I hope that's enough details https://github.com/minetest/minetest/issues/8738
12:59 sfan5 do you have test code?
12:59 DS-minetest add testing code (eg. link to my gist:)
13:04 IhrFussel This is before I commented out 'set_wielded_item()' in my mobs code:
13:04 IhrFussel 2019-08-02 13:41:18: ACTION[Server]: MOB PUNCH DEBUG -> ADDING WEAPON WEAR 121 µs
13:04 IhrFussel 2019-08-02 13:41:18: ACTION[Server]: MOB PUNCH DEBUG -> AFTER ADDING WEAPON WEAR 42848 µs
13:05 IhrFussel And this is after:
13:05 IhrFussel 2019-08-02 13:43:32: ACTION[Server]: MOB PUNCH DEBUG -> ADDING WEAPON WEAR 161 µs
13:05 IhrFussel 2019-08-02 13:43:32: ACTION[Server]: MOB PUNCH DEBUG -> AFTER ADDING WEAPON WEAR 195 µs
13:05 DS-minetest oops, I got 30-100 µs, not ms, I forgot that us are µs sorry
13:06 IhrFussel Hm...then it's either on my side (which would be very weird since I didn't modify the c++ code at all) or a bug in 0.4.17.1
13:15 IhrFussel Wait maybe this only is a problem when it runs on a remote server?
13:15 * DS-minetest tested in singleplayer
13:16 Krock same results
13:16 Krock (used Host Server)
13:17 IhrFussel Yes but I mean the server is still on your machine
13:17 IhrFussel I run mine remotely...it is in a data center
13:18 IhrFussel It is not its network speed though:
13:18 Krock it's still the same amount of data. even if there's packet loss to re-send, I really doubt there's an issue
13:18 IhrFussel Download: 227.62 Mbit/s
13:18 IhrFussel Upload: 303.27 Mbit/s
13:19 CWz_ Holy
13:19 IhrFussel I need someone with a remote server to run the code and check the times to make sure
13:20 IhrFussel Otherwise I don't get why it would be only a problem on my machine
13:20 * DS-minetest tested with 5.0.1, same results as in 5.1-dev
13:21 IhrFussel Inventory mods shouldn't affect set_wielded_item() correct?
13:24 IhrFussel HOLD ON
13:24 IhrFussel unified_inventory craft grid causes this??
13:24 IhrFussel I had the craft grid full of stacks and now I took them into 'main' and execution time is 200-300 µs
13:31 rubenwardy IhrFussel: are there any large meta in the inventory?
13:31 rubenwardy oh what
13:31 IhrFussel As soon as I move a stack into the u_i craft grid I get 20-30 ms again
13:32 IhrFussel When the craft grid is empty I get 200-300 µs ... why would u_i cause that?
13:34 IhrFussel Can mods even use a custom craft grid or is it from the engine?
13:35 IhrFussel Even with full main inventory it takes 200-300 µs to execute when nothing is in the craft grid
13:35 IhrFussel But then I move a stack of dirt into it and get 22 ms
13:36 rubenwardy what about the default player inventory
13:36 rubenwardy sfinv
13:36 rubenwardy to see if it's ui related or something else
13:36 rubenwardy Minetest does have core support for craft inventories
13:37 rubenwardy I doubt it's UI's fault, as terrible as it is
13:37 rubenwardy :eyes:
13:37 rubenwardy UI's bloat manifests in other ways
13:37 IhrFussel Can I safely replace u_i with sfinv without giving players free items?
13:38 rubenwardy yes, but they may lose access to items as sfinv isn't compatible with respect to bags and such
13:38 rubenwardy it's fine to do it temporaril
13:42 IhrFussel Just move unified_inventory out of the mods dir? Cause sfinv already exists in MTG and was just disabled by u_i
13:42 rubenwardy yeah
13:42 rubenwardy are you developing live on the server?
13:42 IhrFussel Mostly but with many backups
13:43 rubenwardy I advice setting up a staging server
13:43 rubenwardy bonus points if you use docker
13:44 rubenwardy with docker you can duplicate all the scripts and PHP services too
13:44 rubenwardy CTF has a staging server, but it's not docker unfortunately
13:47 DS-minetest joined #minetest-hub
13:57 IhrFussel 25 ms with sfinv
13:57 IhrFussel Same behavior...whenever a stack is in the craft grid
14:03 IhrFussel Now could someone use my test mod again while having something in their craft grid and see if that affects the execution time?
14:04 DS-minetest tested, there's a small difference
14:04 DS-minetest it's maybe around double as slow
14:06 IhrFussel Maybe something involving craft grid + network then? Not sure...
14:06 DS-minetest filling the inventory even more makes it worse
14:06 DS-minetest but not 1000 times more worse
14:07 DS-minetest have you already tried reproducing without any other mods, like armor or bags
14:07 DS-minetest ?
14:08 IhrFussel I moved unified_inventory completely out of the mods dir and only had sfinv
14:08 IhrFussel 3d_armor shouldn't affect it cause it's its own page
14:08 DS-minetest but I guess the player inventories are still set in the world
14:09 IhrFussel Bags only store their contents as player meta and the general inventory is just part of the player file
14:09 IhrFussel 3d_armor also stores its contents in player meta
14:11 IhrFussel The inventory slots of the 3d_armor page don't affect the execution time at all
14:12 DS-minetest indeed, 3d armor uses detached inventories (i wonder why…)
14:13 IhrFussel It uses player attributes which are now player meta...I think the detached inventory is only created in on_joinplayer()
14:14 IhrFussel But no matter how much armor I wear (move into 3d_armor page slots) the time is the same
14:14 DS-minetest ui bags use player inv: https://github.com/minetest-mods/unified_inventory/blob/774674d0f5ba2a557ddef30e6002575c6d61a0cc/bags.lua#L53
14:15 DS-minetest have you tried to reproduce in singleplayer yet?
14:16 IhrFussel I'm not sure if I need to since you already told me it doesn't happen then
14:17 DS-minetest yes, but I haven't tested with all your mods
14:17 IhrFussel And it still happens with the default MTG inv
14:17 IhrFussel All mods that depend on u_i haven't been loaded at all
14:17 IhrFussel Since it was missing
14:18 IhrFussel The craft grid comes from the engine I think and it is only this part of the inventor that seems to cause the problem
14:18 IhrFussel inventory*
14:19 DS-minetest the craft is updated when sending the inventory
14:19 Krock oof
14:20 Krock found another possible crash in u_i
14:20 IhrFussel It looks like when I spam move stacks into it or out of it the time is even higher (50-60 ms)
14:21 Krock both set_wielditem and the craft field trigger an inventory re-sending
14:22 DS-minetest btw. why is the whole inventory sent if only one or two item changed?
14:22 DS-minetest +s*
14:22 Krock lack of optimization
14:23 IhrFussel Why does an empty inventory take the same amount of time in my case as a full one?
14:23 DS-minetest maybe it's UpdateCrafting
14:24 IhrFussel Now the craft grid is empty and main is full of stacks -> 192 µs
14:25 IhrFussel Now I move just 1 single dirt into the craft grid -> 17,830 µs
14:25 DS-minetest bogo sort also lacks in optimization
14:26 IhrFussel My guess is the data to send is a lot larger when the engine registers a non-empty craft grid?
14:26 DS-minetest have you tried disabling register_craft in builtin? (set it to function()end)
14:27 IhrFussel I can try that
14:29 IhrFussel You mean 'register_craftitem'?
14:30 IhrFussel I only find that in builtin
14:30 DS-minetest no, register_craft
14:30 DS-minetest yes, add to builtin core.register_craft = function() end
14:30 IhrFussel Ahh that's what you mean
14:36 IhrFussel WHAT
14:37 IhrFussel So it resends all craft registers when calling set_wielded_item() ?
14:37 IhrFussel Cause now I have stacks in my craft grid and get 181 µs
14:39 DS-minetest no, craft registers aren't sent
14:39 DS-minetest so it did actually help?
14:39 IhrFussel Or does the server loop through every single registration whenever you call set_wielded_item()?
14:39 DS-minetest it calles Server::UpdateCrafting
14:40 IhrFussel And what happens in there that it took 30 ms and more before?
14:40 DS-minetest you could now count how often register_craft is used by your mods
14:40 IhrFussel Well I have about 2,000 nodes so a lot for sure
14:41 DS-minetest well, it tries to match a recipe
14:41 DS-minetest of course, we need to update crafting if we set the wielded item XP
14:41 IhrFussel And it returns immediately when the craft grid is empty...makes sense
14:50 twoelk left #minetest-hub
14:57 IhrFussel What can I do now?
14:57 IhrFussel Idon't want to omit any craft recipes
14:58 IhrFussel Maybe don't call set_wielded_item() for every mob punch and instead use a timer that updates it periodically
14:58 sfan5 open a bug and hope someone optimizes it
14:58 DS-minetest or modify the existing issue
15:00 aerozoic joined #minetest-hub
15:01 IhrFussel Should I rename it to 'Server::UpdateCrafting is very unoptimized and lags servers with many recipes'?
15:02 sfan5 if this is more accurate than the old title, sure
15:02 Krock I thought there were optimizations recently
15:16 IhrFussel I guess I'll have to compile the newest dev and bloat it with lots of craft registrations
15:17 Lone_Wolf joined #minetest-hub
15:25 IhrFussel Can I add the same craft recipe many times or will that result is false values?
15:26 IhrFussel in*
15:26 rubenwardy jeez, Terasology has a splash screen XD
15:27 sfan5 why don't we?
15:27 VanessaE MT starts fast enough not to need one :P
15:27 VanessaE (at least on my box it does)
15:27 DS-minetest try using main menu music
15:27 VanessaE one thing it could use though is a splash screen for server joins (something to put behind the progress bar)
15:27 rubenwardy Minetest loads a lot faster
15:28 DS-minetest a splash screen would cost time when you want to start your game fast
15:28 VanessaE if a splash is costing you boot-up time, your splash screen code is shity.
15:28 VanessaE shit*
15:28 DS-minetest IhrFussel: idk. but you could get many combinations automatically, use core.registered_items
15:28 rubenwardy sooo muchh laggg
15:29 VanessaE if an image viewer can load and display a 4k x 3k jpeg in milliseconds, MT should be able to as well, were it able to show one at all that is.
15:29 Krock currently trying to implement incremental inventory sending
15:30 IhrFussel DS-minetest, how do you mean? I will only have MTG after compiling and don't want to add other mods just for testing this
15:31 IhrFussel So I hoped I could duplicate recipes for the same item
15:31 DS-minetest idk if you can
15:31 IhrFussel And simulate the 1,000+ I have on my server
15:31 DS-minetest use mesecons_wires, it adds many items
15:32 IhrFussel moreblocks might work too if I add more default nodes to its registration list
15:32 DS-minetest if you have n items, you can easily make n^9 recipes
15:44 IhrFussel Can I somehow count the amount of craft recipes I have now?
15:44 IhrFussel I guess loop through core.registered_crafts
15:47 DS-minetest does such a table exist?
15:47 DS-minetest I don't thinks so...
15:48 DS-minetest you could count by overriding core.register_craft: local old_register_craft = core.register_craft local i = 0 core.register_craft = function(...) i = i + 1 return old_register_craft(...) end
15:52 IhrFussel Nah I simply installed crafting_guide and get 53 pages (downloaded random mods)
15:52 jas_ joined #minetest-hub
15:53 IhrFussel I guess it is indeed fixed in master -> 160 µs with items in craft grid
15:54 DS-minetest why does your server still run on 0.4.17 anyway?
15:58 IhrFussel Cause my iOS users have no MT 5 app yet basically
15:59 IhrFussel https://github.com/minetest/minetest/pull/8097/ is it this PR? Doesn't mention UpdateCrafting though
16:00 IhrFussel Or possibly this one https://github.com/minetest/minetest/pull/8432
16:02 DS-minetest or maybe #8445
16:02 ShadowBot https://github.com/minetest/minetest/issues/8445 -- Prioritise craft recipes by HybridDog
16:05 IhrFussel But the changes then are likely not part of 5.0.1 so I would have to wait for 5.1.0 either way to have those fixes
16:07 tomraceror joined #minetest-hub
16:11 IhrFussel Closed my issue
16:55 Krock the single call to "clearItems();" makes this entire incremental inventory sending somewhat complicated
17:02 Ganome317 joined #minetest-hub
17:07 srifqi joined #minetest-hub
17:49 twoelk joined #minetest-hub
18:09 tery joined #minetest-hub
18:10 srifqi joined #minetest-hub
18:20 tumeninodes joined #minetest-hub
18:21 tumeninodes rubenwardy: Terasology may have a splash screen... but the latest build runs like a dead dawg on my machine... literally unplayable even with all the fancy dodads disabled
18:21 srifqi left #minetest-hub
18:21 rdococ Is there a way to add a safe version of load/loadstring to luacontrollers?
18:54 twoelk|2 joined #minetest-hub
19:24 nyanredice joined #minetest-hub
19:45 twoelk|2 left #minetest-hub
19:46 twoelk joined #minetest-hub
20:07 Krock dID y0U kN0W? Th3 F0rm5PeC el3MeNt "//[text...]" aCtUally Act5 A5 a ComMenT
20:07 Krock Coincidence? I think not!
20:12 Lone_Wolf https://tenor.com/view/coincidence-think-not-gif-5757189
20:17 Krock that
20:17 Krock we passed the 1 million mark on the forums btw
20:17 Krock came 59 clicks too late
20:38 tumeninodes 1 million tacos?
20:40 tumeninodes 1 million mark, how does that transfer into US$  https://coinmill.com/DEM_USD.html
20:41 Krock 567840.56 USD
20:42 tumeninodes \0/
20:42 tumeninodes we can has shaders
21:52 Lone_Wolf joined #minetest-hub
21:55 Lone_WolfHT joined #minetest-hub
22:12 rdococ how should I attract attention to an unpopular server that isn't mine, but I think it could be very fun?
22:14 VanessaE is it one of mine? :P
22:18 rdococ no, it's a "king of the hill" one :P
22:19 rdococ feels like it should be up there with CTF, but I guess nobody's really noticed it yet
22:20 VanessaE oh well who cares then... :)
22:22 Lone_Wolf If you have any friends maybe schedule a play event with them
22:22 Lone_Wolf If people see there's people in a server the chances of those people joining increases by about 50% lol
22:23 Lone_Wolf *If a person sees && *the person joining
22:31 rdococ all my friends that are online at the moment are playing on a different server (one which *is* VE's) tho
22:36 Lone_Wolf So you've have to schedule a session at a time other than this then
22:36 Lone_Wolf *you'll
22:53 GreenDimond joined #minetest-hub
22:59 Ganome317 joined #minetest-hub
23:21 twoelk left #minetest-hub
23:26 benrob0329 joined #minetest-hub

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