Time Nick Message 10:24 CWz ? 11:15 CWz ? 13:04 IhrFussel Map didn't completely stop loading yet since I enabled mapgen logging, but the slowing down of map with lots of mobile clients is definitely not caused by it 13:07 IhrFussel The last on_generated() was called at 13:54 and now it's 14:07 yet the map constantly loads slower than usual 13:09 IhrFussel AFAIK it even happens on CTF where the map is stored in memory only... so mapgen is 90% not the cause of the slow map sending 13:11 IhrFussel Lastly if so many mobile clients would trigger so much mapgen cause of their broken code then my map file must grow at an alarming rate and it doesn't from what I can tell 13:15 IhrFussel September 39 GB -> October 42 GB -> November 45 GB ... pretty linear sizes 13:53 IhrFussel When a mobile player is holding their screen right now to look around and a formspec suddenly appears... I hope that, if there is a button at the position of the finger, the game doesn't count it 13:54 IhrFussel In other words I hope MT only counts "upkey" events for formspecs 13:54 IhrFussel Or it can at least distinguish between pressing and holding 13:58 BuckarooBanzai IhrFussel: i suggest you install some kind of monitoring, it helped me on countless occasions to detect lag-issues and consorts... 13:59 T4im BuckarooBanzai's monitoring setup is great ^^ 14:05 IhrFussel It is no lag the game runs normally 14:06 IhrFussel max_lag is mostly 0.5 secs, load is below 1,00 no I/O bottlenecks etc 14:07 IhrFussel The only way to monitor it is likely a debug build with custom infos which I cannot do cause I'm not that c++ savvy 14:08 IhrFussel It's definitely tied to certain clients/connections cause as soon as those leave everything turns back to normal ... I'm not sure what these clients could cause to the MT servers 14:09 T4im well, having mapgen ruled out is useful already; you could monitor connections with wireshark without having to go into gdb stuff 14:10 T4im that would even work doing that right when the issues happen 14:10 T4im might also help seeing if during those times the process requirements in cpu and memory change dramatically 14:11 T4im both can be done at the time of such a problem; no need to do that all the time 14:11 T4im also check disk i/o 14:13 BuckarooBanzai wireshark plus ip filter/grouping sounds good for a start... 14:14 IhrFussel But wouldn't lots of network activity (so that a certain part of a game even hangs) also cause much load? 14:15 T4im well; it's less about looking for a direct cause than for correlations in general; anything that those clients do differently than normal clients might indicate where to look next 14:17 IhrFussel You mean I need to read the packages and look for stuff that's unusual in them? I don't think I'm the right person for that 14:17 T4im to make something up, if they would send lots of status requests every second and the server's memory consumption would go up to the point that swap causes lots of disk i/o bringing read/writes to a halt, then it might be worth looking for a memory leak in those status requests 14:18 * T4im just pulled that out of a cobble shack though 14:18 IhrFussel It also happens fairly rarely... it didn't happen today (yet) it happened yesterday for a few minutes ... it only happens when lots of users are connected and if most of them are mobile users with "such clients" 14:20 IhrFussel If I'm online while it happens and I manage to see which user causes the map to return to normal after leaving then I can check their protocol version (I log those) 14:20 T4im i think there is a wireshark plugin for minetest, so that you don't need to actually decode the packages 14:20 T4im never actually used it though 14:20 BuckarooBanzai T4im: where do i find that? 14:21 T4im https://github.com/minetest/minetest/blob/master/util/wireshark/minetest.lua 14:22 * BuckarooBanzai forgot the wireshark dissector are written in lua too :) 14:22 T4im :D 14:49 IhrFussel Formspec question: If I use \n inside a text label that starts at x=3 will the next line start at x=3 too or x=0 ? 15:18 IhrFussel Question answered: It will start at x=3 16:11 IhrFussel People are dumb enough to click 'Yes' on something they don't even understand 16:13 Shara Or people are just too bored or being asked to agree to pages long of whatever every time they want to do something. 16:15 IhrFussel Shara, I implemented a new "enable PvP?" formspec on my server that asks on each join cause many didn't understand /pvp ... and some click now 'Yes' even though they didn't want PvP ... I cannot make it easier for them 16:17 IhrFussel I think I can expect from someone (no matter the language) to know what "PvP" "Yes" and "No" means... that is the most basic English I can offer 16:18 T4im clearly time to add a "Yes, but i don't want PvP" button 16:33 Shara People click without reading, even when they can. I get players on my server, in front of the rules signs that explain how to leave the spawn, asking in perfect english, sometimes even perfectly punctuated, how they leave spawn and what the rules are. 16:33 Shara Some of them will even have quite a long conversation with you about how it's too much effort to read so much on the signs. 16:34 Shara With the protests they typing being far far longer than the total text on those signs. 16:34 Shara type* 16:50 IhrFussel The window they see in this case is just 2 sentences "Enable PvP?" "If you click 'Yes' other players can attack you." "Yes" "No" ... this is really already for the dumbest of dumbest 16:57 IhrFussel Dumbest of the dumb* In German we say "dumbest of dumbest" 17:06 T4im who knows; maybe they'd just like to fight others without being fought themselves and didn't think about that 17:09 T4im i'd totally believe some players, especially younger ones, not getting the reciprocity of rules 17:16 IhrFussel Now the prompt appears after joining and on each respawn after being PvP-killed ... I hope they will eventually click No when they get killed too much 21:46 IhrFussel WOW 21:47 IhrFussel My client just crashed after my server shutdown... I was stuck at "shutting down (operator request)" in the chat and got no timeout either...then after ~ 30 secs the client just closed 21:49 IhrFussel Okay now this is weird...another player just reported the exact SAME thing 21:49 IhrFussel How the heck can the SERVER cause all clients to crash when it shuts down?? 21:56 ChimneySwift I know there are things a server can do that causes clients to crash 21:59 MinetestBot Andrey01: Nov-16 23:11 UTC "well?" please be patient on IRC. 5.0.0 will be released when it's ready, and no it's not ready yet. it's impossible, and a bad idea, to set a release date 22:05 Andrey01 hi, is it possible to know by minetest.register_on_receive_fields() a formspec is quited by a player? (on condition if he has pressed "Esc" button on keyboard and has not clicked exit button in formspec) 22:05 Andrey01 or maybe for it a special callback exists? 22:09 ChimneySwift ... 22:15 IhrFussel I'm trying to use "replacements" inside a craft recipe but If I don't comment this line the server won't start -> --replacements = {{"farming:baking_tray"}}, 22:17 IhrFussel The error is "2018-11-27 16:15:24: ERROR[Main]: Invalid replacements (output="farming:blueberry_pie")" 22:25 rubenwardy So, they want to find out whether the player has quited the formspec 22:25 rubenwardy If they have quit 22:25 rubenwardy Quit 22:25 GreenDimond Are you sure you need the double braces IhrFussel? 22:26 GreenDimond oh wait yes 22:26 rubenwardy There's no second replacement 22:26 GreenDimond ^ 22:26 GreenDimond I took too long to type it 22:26 rubenwardy What are you replacing it *to* 22:26 GreenDimond {{"farming:baking_tray", "farming:baking_tray"}} 22:26 IhrFussel I want an empty baking tray to remain 22:26 IhrFussel Ohh 22:26 IhrFussel So that is how you use it? 22:27 GreenDimond Mhm 22:27 rubenwardy From 1 to 2 in that table 22:27 GreenDimond rubenwardy: what happens if I do {{"group:wood", "group:wood"}} or similar? 22:27 rubenwardy I don't think that'll work 22:27 GreenDimond Does it keep whatever the item happens to be? 22:27 rubenwardy Try jt 22:28 IhrFussel So replacements means it will remain in the craft grid? 22:28 GreenDimond No 22:28 GreenDimond It means something in the craft grid is replaced on craft 22:29 GreenDimond There is no actual "keep this from being removed", you are just faking it by replacing it with itself. 22:29 IhrFussel Yes but I mean the visual effect will be that the tray remains 22:29 rubenwardy Yes 22:32 GreenDimond rubenwardy: it outputs literal "group:wood" (unknown) 22:32 rubenwardy I thought that would happen, lol 22:32 GreenDimond Needs fix >:0 22:32 GreenDimond however 22:32 GreenDimond said "group:wood" does output 4 sticks 22:33 rubenwardy Can you register an item called group:wood, and can you use it in craft recipes? 22:33 GreenDimond So I now have the entire group of wood encapsulated in an item :3 22:33 GreenDimond Oh idk 22:33 GreenDimond let's see 22:33 GreenDimond It'd have to be in mod "group" 22:33 rubenwardy Sure 22:33 rubenwardy You could use :, but it would bypass other checks too 22:36 GreenDimond So it cannot act as a separate node, it still acts as the whole group 22:36 GreenDimond However, as a replacement it does replace the group group:wood with the node group:wood 22:38 IhrFussel MT could use a minetest.register_on_custom_message() which handles all chat_send_all() calls ... different mods send those and it would be good to have a global place to manage those 22:38 GreenDimond In theory you could fake replacement of groups using on_craft 22:38 GreenDimond in fact im going to do that 22:41 IhrFussel Right now the only 2 options for it are 1. Create a new mod that only handles the chat_send_all() calls and make every other mod that uses them depend on that one and modify or 2. make your own minetest.chat_send_all() function that overrides the default 22:41 GreenDimond just edit minetest.chat_send_all() 22:41 GreenDimond its a global so you have access to the contents and the ability to override it 22:42 GreenDimond So a mod can handle it without any depending on it 22:46 IhrFussel Hm...maybe, thanks 23:03 rubenwardy Or you could alias group:wood to default:wood, GreenDimond 23:12 GreenDimond ? 23:12 GreenDimond Oh for making the group:wood node sure 23:14 rubenwardy [22:38:35] <4caf50GreenDimond> In theory you could fake replacement of groups using on_craft 23:14 rubenwardy I was responding to that, you can make group outputting replacements work with aliases 23:14 rubenwardy Probably 23:20 GreenDimond ah 23:20 GreenDimond well Im doing something better than that 23:33 GreenDimond and ive already gotten bored 23:34 GreenDimond I was overriding register_craft to add a `keep` def to define which craft grid slots to not remove items from