Time Nick Message 06:54 red1 Is there any progress with client sided lua? 06:55 nrzkt no 08:04 RealBadAngel est31, wake up ;) 08:25 nrzkt and est31 appears 08:25 RealBadAngel hi est31 08:25 est31 nrzkt, can you look at https://github.com/est31/minetest/commit/9401b4974094c8f666c79b5e2ff877103e74f000 08:25 est31 hi RBA 08:26 nrzkt est31: trivial, then i'm okay 08:26 RealBadAngel est31, thx to pointin out change blockpos -> nodepos ive found a bug 08:26 RealBadAngel voxel areas are broken in case of MEET_OTHER 08:27 RealBadAngel https://github.com/minetest/minetest/blob/master/src/map.h#L98 08:27 est31 nrzkt, okay gonna push then 08:27 RealBadAngel MEET_OTHER p is blockpos, here its treated as nodepos 08:28 RealBadAngel MEET_BLOCK_NODE_METADATA_CHANGED was also messed, but it should stay like that, becase only MEET_OTHER is supposed to treat p as blockpos 08:30 est31 there is also a similar bug in rollback_interface.cpp 08:31 RealBadAngel i will fix everything related to MEET_BLOCK_NODE_METADATA_CHANGE 08:31 RealBadAngel i mean in my patch 08:31 RealBadAngel MEET_OTHER requires another cleanup 08:39 nrzkt thanks est31 08:43 RealBadAngel nrzkt, est31 thx alot, now i have to rebase ;P 08:44 nrzkt :) 08:44 est31 lol 08:52 RealBadAngel well, auto builds seems to compile that anyway 08:57 RealBadAngel VanessaE, here? 08:59 est31 if she doesnt respond, she's asleep 09:01 RealBadAngel im not sure is she sleeps on same hours each day ;) 09:03 RealBadAngel est31, btw, VE-S has deployed that patch, you may want to try how it works 09:03 est31 VE said she has removed the patch again 09:04 RealBadAngel oops 09:04 RealBadAngel pity, i just wanted to test it again 09:07 nrzkt RealBadAngel i can apply it on my server if you want 09:07 est31 nrzkt can I also test it? 09:07 est31 I join now, note down fps 09:08 est31 then i join afterthe patch 09:12 nrzkt join Appletree now then 09:17 RealBadAngel est31, to see real effect of that patch VE-S spawn is perfect, theres shitload of machines, signs etc - things that are messing with meta 09:17 nrzkt on my server i have a huge pipeworks construction 09:17 nrzkt many pipes 09:17 RealBadAngel good 09:17 nrzkt is this good ? :) 09:18 nrzkt on AppleTree server, to find it, when you are in spawn go to portal cube, then left, follow the road since the sea and in the middle of the sea there is a huge wate rpump 09:23 est31 where is the portal cube? 09:23 nrzkt did you see the cathedral ? 09:24 nrzkt follow the road behind the cathedral, you will see a portal cube on your right 09:24 est31 wow thats quite a building 09:24 nrzkt :p 09:25 est31 there is a farm 09:25 est31 am i too far? 09:25 nrzkt no no 09:26 nrzkt follow the road 09:26 nrzkt if you see a pyramid on your right you have a sea in front of you 09:26 nrzkt search in the see there is a brick huge pump 09:26 nrzkt sea* 09:27 nrzkt sorry i cannot connect to my own server, i'm at work :p 09:28 est31 I've reached a palais, should I continue? 09:29 nrzkt you are too far :p 09:29 nrzkt it's in the sea in front of the palais, on the right 09:29 est31 "nrz datacenter"? 09:30 nrzkt no no 09:30 nrzkt leave the road, swim 09:30 nrzkt you are on a bridge on the sea 09:31 nrzkt go to the right of the road, not in direction of the DC but the other 09:31 est31 DC? 09:31 nrzkt DC = datacenter :p 09:32 est31 and where exactly is the cube? 09:33 nrzkt not here :p you take the bad road 09:33 nrzkt but you find the right sea 09:33 est31 right sea for what 09:36 nrzkt to find the pipeworks huge pump :) 09:40 est31 couldnt find it sry 09:41 nrzkt :( 09:41 nrzkt if you find the pyramid you are close 09:41 nrzkt go back to the spawn 09:41 nrzkt take the road in front of the cathedral 09:41 nrzkt you will see immediately the portal cube 09:45 est31 well I dont find it 09:45 est31 bye 10:54 VanessaE RealBadAngel: I am here now. couldn't sleep. 11:36 VanessaE bbl 12:35 est31 any core dev/trusted contributor wanting to help me review these translations with google translate? https://github.com/est31/minetest/commits/master 12:35 est31 weblate users were quite active xD 12:36 est31 we even got two new languages 12:44 T4im just sad weblate doesn't use the github email address 12:44 T4im (as in the noreply one) 12:44 est31 ---> #weblate 12:44 est31 (or on their github) 12:45 est31 https://github.com/nijel/weblate/issues 12:46 est31 perhaps it can be made to use the github API, in order to find out your setting whether to publish the mail 12:46 T4im from what I've seen they pretty much intent to use verified addresses 14:03 Zeitgeist_ successfully bumped minetest to 0.4.13 on gentoo now 14:25 T4im est31: that locale directory regression.. might it prevent setting locale generally? 14:26 est31 oh sorry its fixed now 14:27 est31 look into the commit msg http://wiki.ubuntu.com/UbuntuDevelopment 14:27 est31 ermm https://github.com/minetest/minetest/commit/2a9da62b21b5c509496b8fd427f29dd650035fe6 14:28 T4im well I ask because that doesn't seem to apply here.. well lemme quickly test if it fixed it anyway 14:32 T4im nope, doesn't look like it 14:32 T4im RUN_IN_PLACE=true here on linux 14:32 T4im no CUSTOM_LOCALEDIR 14:33 T4im just the po/ one from the repo 14:33 nrzkt hmmm 14:34 nrzkt i have an error on locale directory on freebsd 14:34 nrzkt the server load, but the error is triggered at start 14:37 est31 whats the msg 14:39 nrzkt 2015-09-10 16:39:56: ERROR[main]: Couldn't find a locale directory! 14:39 T4im oh, nvm.. stupid me used the wrong compile flags again 14:45 est31 nrzkt, what are your compile options? 14:45 est31 do you run an in place build? 14:45 nrzkt no 14:45 nrzkt here are my options: -march=native -mtune=native -O2 -pipe -std=c++11 -pthread -mavx2 -mssse3 -msse4.2 14:49 est31 cmake? 14:53 nrzkt http://pastie.org/10410124 14:54 est31 hrmmm... do you install it? 14:54 est31 make install? 14:57 est31 nrzkt, whats the output of ls /usr/local/minetest? 14:59 nrzkt it's not there it's in /usr/local/share/minetest 15:14 T4im est31: btw, could you pull once more from weblate? I quickly finished a language 15:18 est31 ok 15:18 T4im thanks :) 15:23 paramat hi proller, did you ever get this bug while working on fractal mapgen? https://github.com/minetest/minetest/pull/3088#issuecomment-134002097 i am bemused 15:31 paramat now merging game#666 game#670 15:31 ShadowBot https://github.com/minetest/minetest_game/issues/666 -- Flowers: Make flowers wave when waving shader enabled by paramat 15:31 ShadowBot https://github.com/minetest/minetest_game/issues/670 -- Default/mapgen: Make river water ice in glacier biome by paramat 15:36 paramat complete 16:47 RealBadAngel hmmmm, can you review 3166? 16:49 hmmmm I'll see if I can 16:50 hmmmm I've been awfully busy the past couple weeks 16:50 RealBadAngel that change is kinda crucial, code is not that long on the other hand 16:50 hmmmm okay 16:50 hmmmm #3166 16:50 ShadowBot https://github.com/minetest/minetest/issues/3166 -- Send to clients only changed node metadata instad of whole mapblock by RealBadAngel 16:52 hmmmm so unless I'm mistaken, this means that if node metadata changed, it forced the entire block to get resent? 16:52 RealBadAngel yes 16:52 hmmmm I guess this would be acceptable if node metadata were sparsely used 16:53 RealBadAngel it means if you move an item in a chest all block metas got deleted 16:53 RealBadAngel client gets new block 16:53 RealBadAngel and meshes for it and neighbours are remade 16:54 RealBadAngel fucking mess to make story short 16:54 hmmmm doesn't this break compatibility with the rollback log? 16:54 RealBadAngel shouldnt imho 16:54 hmmmm maybe I misunderstand the way rollback works but 16:55 RealBadAngel rollback stores blocks anyway 16:55 hmmmm the coordinate for MEET_BLOCK_NODE_METADATA_CHANGED is now node position rather than block position 16:55 RealBadAngel yes 16:55 RealBadAngel and it should be like that for any event 16:55 RealBadAngel see code for voxel areas 16:56 RealBadAngel the case is MEET_OTHER 16:56 RealBadAngel treegen is fucked up 16:56 RealBadAngel somebody made a shortcut with saving blocks instead of single metas 16:57 hmmmm erm 16:57 hmmmm that sounds like a bug to me, not a shortcut 16:58 hmmmm if you're saving block positions and when it's reloaded it expects node positions there's a recipe for silent map corruption 16:58 RealBadAngel that was very serious issue 16:58 hmmmm imho you should make that fix into a separate commit 16:58 RealBadAngel that happens in case of using MEET_OTHER and voxel areas 16:59 RealBadAngel it means lsystem trees are affected with it 16:59 RealBadAngel im aware of it but yes, thats something for another PR 16:59 hmmmm MEET_OTHER is expected to have a modified_blocks list, no? 16:59 hmmmm sigh 16:59 hmmmm alright 17:00 hmmmm just make sure the breakage is fixed very soon 17:00 RealBadAngel some code wants blockpos, some nodepos 17:01 RealBadAngel for pre 27 im sending blocks, for >=27 single packets 17:01 RealBadAngel so theres no worry about compability 17:01 RealBadAngel rollback is saving whole blocks no matter what 17:02 RealBadAngel thats because of block->raise_modified 17:02 hmmmm yes I can see that 17:02 hmmmm oh god dammit 17:02 hmmmm don't declare a variable inside of an if statement 17:02 hmmmm that's got to be the worst thing ever 17:02 RealBadAngel i did? 17:03 hmmmm server.cpp:2140 17:03 hmmmm also, when you're iterating through a vector, use array notation 17:03 hmmmm :) 17:03 RealBadAngel thats not my code 17:04 RealBadAngel see two sends above 17:04 hmmmm oh ffs 17:04 RealBadAngel add and remove 17:04 hmmmm alright we'll fix them in a different commit 17:04 hmmmm nerzhul did that i think 17:05 nrzkt NodeMetadata *meta = m_env->getMap().getNodeMetadata(p); 17:05 nrzkt a crash is present there 17:05 nrzkt meta->serialize(os); 17:05 nrzkt sometimes meta is null :) 17:05 nrzkt experienced atm on my server with pipeworks 17:06 RealBadAngel ok, i will put there check 17:06 hmmmm yep, getNodeMetadata can error if the block cannot be found on disk 17:06 RealBadAngel i will just skip it then 17:08 hmmmm there's also a memory leak 17:08 hmmmm handleCommand_NodemetaChanged 17:08 hmmmm the old metadata does not ever get deleted 17:09 RealBadAngel when client gets meta first thing it does its clear() 17:10 RealBadAngel thats the main reason i noticed something is wrong 17:11 RealBadAngel fiddling with items in chest was deleting signs 17:11 est31 from what I see there is no breakage 17:11 est31 we record only inventory movements in the rollback log 17:11 nrzkt RealBadAngel, when setNodeMetadata return false you should delete meta 17:11 est31 no generic meta data 17:11 RealBadAngel thus my code to render text was invoked enormously too often 17:12 nrzkt like the setNodeMetadata into rollaback_interface L159 17:12 hmmmm clear() doesn't delete heap-allocated objects 17:12 hmmmm what clear() does is destroys the objects it stores, i.e. calls their destructor 17:12 hmmmm the destructor for an integral type such as a pointer is empty 17:13 hmmmm let me repeat myself: 17:13 RealBadAngel i know where youre heading 17:13 hmmmm if you have code like int *foo = new int; *foo = 42; some_stl_data_structure.insert(key, foo); some_stl_data_structure.erase(key); this does NOT delete foo, the memory remains allocatede 17:14 RealBadAngel but i dont want the meta object to be deleted physically on the client side, it can store client only data 17:15 RealBadAngel clearing server sent content is enough 17:32 hmmmm huh 17:32 hmmmm I'm not quite sure I understand 17:32 hmmmm as it exists right now, I'm certain that's a memory leak 17:39 kahrl_ hmmmm: AFAICS NodeMetadataList::set deletes the old one 17:40 est31 lets try it! while (true) { NodeMetadataList::set(...): } 17:40 hmmmm oh you're right 17:40 hmmmm remove() does this which set() calls 17:41 hmmmm I thought that was an stl container function 17:41 nrzkt hmmmm: yes, delete is only called when function return false 17:41 nrzkt in the whole code 17:47 est31 anybody with free time? 17:48 est31 I need sb to help me translating 17:48 est31 https://github.com/est31/minetest/commits/master 17:48 est31 erm review translations 17:48 est31 it is time xD 17:50 kahrl_ est31: https://github.com/est31/minetest/commit/a67a7e18e5c19b575a6f6dfc77a914198ea70f49#diff-c8e6e8c951f32c01e78259462cc8f084R684 17:50 kahrl_ maybe s/Item/Gegenstand/? 17:51 est31 yea better 17:52 kahrl_ rest of that commit looks good 17:54 kahrl_ all the German commits look good 17:59 paramat firelike drawtype is an overcomplex mess, i will soon submit improvements 17:59 est31 I honestly hate plantlike 17:59 VanessaE D: 18:00 VanessaE it's great for table legs :) 18:01 VanessaE maybe MT needs a new drawtype, "grasslike" or something like that, that looks like the four-faced plants MC has 18:01 est31 ? 18:02 VanessaE well if you hate plantlike, what would you replace it with? :) 18:02 est31 I just dont want to look at something from high above and almost not see it because its all so flat 18:02 VanessaE oh yeah 18:02 VanessaE well, you could add extra faces tilted inward/outward at say 20-30 degree angles 18:03 est31 that would work 18:03 VanessaE or rather, *replace* the existing faces 18:03 est31 but if you do it, you end up with firelike 18:03 RealBadAngel extruded.... 18:03 RealBadAngel doesnt extruded plants look cool? 18:03 est31 extruded looks really great but it has very bad performance 18:04 VanessaE two pairs of faces spaced 45 degrees apart in yaw, 40-60 degrees apart between the two faces in each pair 18:04 RealBadAngel est31 but it could be made an option 18:05 est31 RealBadAngel, what about doing "extruding for the poor" 18:05 RealBadAngel when theres enough power, it could be spent on nice looking plantlife 18:05 VanessaE extruded plants look okay, but horrible for fps 18:05 est31 so you keep the flat surfaces as one face 18:05 RealBadAngel sorry, there is "money is for nothing and the chips for free" 18:05 est31 and only add new faces at the edge 18:06 est31 and then you make the blocky look via shaders 18:06 RealBadAngel is no 18:06 est31 you'll spare 40-80% of faces 18:06 est31 with almost same graphical beauty 18:07 RealBadAngel est31 youre talking in practice about geometry shaders 18:07 VanessaE RealBadAngel: seems to me that the heightmap shader code could be used here. 18:07 est31 well that shader we already have 18:07 est31 yea ninjad 18:07 est31 :) 18:07 VanessaE :) 18:07 VanessaE hi-YAH! 18:08 RealBadAngel heightmap has nothing to do here 18:08 VanessaE RealBadAngel: I said the heightmap CODE 18:08 RealBadAngel no 18:08 RealBadAngel geometry shader is about moving vertices and emmiting new ones 18:08 VanessaE if you copy the texture to the heightmap image layer, bit of post-processing to turn it into a flat but raised map, you could use it to "extrude" the texture 18:08 VanessaE fine, fragment shader then 18:08 VanessaE whatever 18:09 RealBadAngel so you can copy one vertex, shift the positions 18:09 RealBadAngel and in the end effect have two surfaces 18:10 VanessaE est31: hell, just do it like stu does in 3d armor -- make a bunch of copies of the face and offset them by a small amount 18:10 RealBadAngel while vertex and fragment shader will think they are working on just one 18:10 VanessaE that's how he gets the 3d wielded item in that mod 18:10 RealBadAngel VanessaE geometry shader will make it better 18:11 RealBadAngel it will fill all the pixels in between 18:11 VanessaE RealBadAngel: well whatever you'd use to DO it, the idea is the same 18:11 RealBadAngel but 18:11 RealBadAngel shaders only 18:11 RealBadAngel but anyway, its 21st century 18:11 RealBadAngel even some fridges do have shaders :P 18:11 VanessaE ... 18:12 VanessaE est31: so, four-faced plantlike drawtype with angle-offset faces then? seems a LOT less expensive than RBA's idea :) 18:16 VanessaE (sorry guys, I'm not gonna sugar-coat it. ^^^ that's the simplest way to add some apparent volume to that drawtype without appreciably affecting fps) 18:17 VanessaE (whether you use a shader to do it or not) 18:18 RealBadAngel make it one face, extruded, with random rotation 18:18 est31 the shader is very lightweight 18:18 est31 its all done by the gfx card 18:21 RealBadAngel http://i.imgur.com/xdeNocY.png 18:22 RealBadAngel they do look cute enough 18:22 VanessaE but they have a fuckton of faces 18:22 RealBadAngel so what 18:22 VanessaE those junglegrass look like they have at least 100 faces each, versus two. 18:22 VanessaE more faces -> less fps 18:22 est31 and most of the faces aren't even needed 18:23 VanessaE given that minetest doesn't do backface culling either.... 18:23 RealBadAngel im gaining fpses elsewhere, i could spend some for nice look ;) 18:23 VanessaE (or doesn't enable it anyway) 18:23 VanessaE no, you can't. 18:23 VanessaE not until all of the fps-sapping corner cases are fixed. 18:41 VanessaE RealBadAngel: is that meta pull ready to try out? 18:42 est31 he has fixed the things I pointed out 18:42 est31 e.g. the rollback bug 18:42 est31 and the save bug turned out to not exist 18:42 VanessaE ok. 18:43 VanessaE applies fine. needs a quick rebase to avoid a merge commit. 18:44 nrzkt and fix the memleak and the crash ? :) 18:44 VanessaE *headdesk* 18:45 VanessaE well VE-S is running it now. 18:46 nrzkt AppleTree server is running it with crash + memleak fix since 1 hour 18:49 VanessaE 30 fps @ 35m in VE-S spawn, looking toward the tunnel. 18:49 VanessaE what's the story on getting that VBO capability into the engine? 18:51 VanessaE I'll say this much: 18:51 VanessaE it feels smoother. 18:52 VanessaE but that's a totally subjective measure. 19:01 RealBadAngel it is smoother 19:01 RealBadAngel youre not lagged by mesh updates all the time 19:01 VanessaE that's what I thought. 19:02 VanessaE do whole mapblock meshes get rebuilt when just one node changes? 19:02 VanessaE (assuming no lighting changes) 19:02 RealBadAngel yes 19:02 RealBadAngel not one block, all around it 19:03 VanessaE I mean even after your code. 19:03 RealBadAngel before it was acting like node change 19:03 RealBadAngel so rebuilt was triggered 19:03 RealBadAngel now it doesnt 19:03 VanessaE ok then that needs worked on too. there's no reason to rebuild an entire mapblock mesh just because a couple dozen faces need updated. 19:04 VanessaE (in a separate pull, of course) 19:04 RealBadAngel mapblock is for us most tiny mesh 19:04 RealBadAngel and believe me its better that way 19:05 VanessaE performance with HDX-256, btw, is about 4 fps slower than default textures now. 19:05 RealBadAngel youre capped by your drivers imho 19:06 RealBadAngel theres no logical explanation other than that 19:06 VanessaE then why can I uncap OpenArena and push it up past 500 fps? 19:07 RealBadAngel some shit we are using they dont 19:08 VanessaE (normally OA self-caps at ...um... 70ish fps? something a bit above 60 anyway) 19:08 RealBadAngel it can be even irrlicht issue 19:08 est31 VanessaE, is the patch deployed on your server? 19:08 VanessaE on VE-S only, so far. 19:08 RealBadAngel est31 then connect there with modified client and non modified one 19:09 RealBadAngel and compare it 19:09 nrzkt VanessaE you are also capped with your screen. ATM there is 500 FPS screen. 19:09 est31 I also want to find out how often metadata change 19:10 VanessaE nrzkt: of course the screen is gonna cap at 60-75 fps, but that's just what refreshes to the screen. OA can uncap its rendering engine regardless of the screen speed; it reports its rendered fps 19:11 VanessaE so if it can do 500+, I'm pretty sure there's nothing wrong with my hardware or drivers. 19:11 RealBadAngel i wonder if they do same tricks as loudspeakers vendors 19:12 RealBadAngel so you could buy tiny speakers with enourmous power 19:12 VanessaE RealBadAngel: afaik, OA ignores v-sync and measures the rendering time and prints the measurement. 19:12 RealBadAngel atm i cannot get rid of 60 fps limit 19:13 RealBadAngel no matter what 19:13 VanessaE "tiny" speakers, said to the lady who has 600 watts driving a pair of 12-inch subs in her car. 19:13 RealBadAngel monitor is not capable of more 19:13 VanessaE it doesn't matter what the monitor's capable of 19:14 VanessaE unlocking v-sync is how you benchmark a rendering routine. 19:15 VanessaE the rendering engine would just keep pushing new data to the framebuffer as fast as it can, doesn't matter if the monitor can show every change made to it. 19:15 VanessaE (well, framebuffer-- or whatever you call the block of video RAM from which the current picture is displayed) 19:16 rubenwardy fps_max = 0 19:16 rubenwardy RBA ^ 19:16 rubenwardy also maybe see if vsync is enabled 19:17 VanessaE what I am seeing for sure is that every time some random node changes, for example these traffic lights cycling colors or a blinkyplant toggling, I get a brief 3-4 fps sag 19:18 VanessaE mesh regen on my client is just plain horribly slow 19:19 est31 RBA is right with one thing: there are TONS of node metadata changes 19:19 VanessaE dtime jitter at this spot in the map is 150% for me. 19:19 VanessaE yes, I know 19:19 VanessaE pipeworks and technic. 19:19 VanessaE (and mesecons probably) 19:20 VanessaE plus traffic lights, and I forget what all else 19:20 VanessaE and nearly none of those meta updates results (or should, anyway) in a visible change to the node 19:21 VanessaE most frequent is: 19:21 VanessaE 2015-09-10 21:21:23: ACTION[Server]: Zefram takes stuff from chest at (-242,5,-479) 19:21 VanessaE 2015-09-10 21:21:35: ACTION[Server]: cheapie takes stuff from chest at (-201,11,-458) 19:21 VanessaE and so on. 19:22 RealBadAngel est31, next step should be queue those changes and send them as list 19:22 est31 thats far too few VanessaE 19:22 est31 I ran your map once 19:22 est31 it perhaps happens once a sec 19:22 est31 but it totally freaks out for me 19:23 VanessaE est31: yeah, that's about right, or at least a few times a second. I'm tail'ing the log 19:23 est31 I count 28 changes in a sec 19:23 VanessaE wow 19:23 est31 http://pastebin.com/Jd53ELhc 19:23 est31 printed every time handleCommand_NodemetaChanged is called 19:23 T4im well not all metadata changes are logged 19:24 VanessaE est31: holy crap 19:24 VanessaE what's the source of those changes? 19:25 RealBadAngel est31, then go there with unmodified client and put there log on mapblock mesh updates 19:25 RealBadAngel you will see something way more funny ;) 19:26 kahrl_ est31: can you log the position too and check what kind of node is at that pos? 19:26 est31 kahrl_, already done: http://pastebin.com/u3Yp9mHi 19:26 est31 at least for the positions 19:27 est31 and this shows us: it gives me all node metadata changes for the whole server! 19:27 VanessaE wat 19:27 RealBadAngel btw, we still do have one problem 19:27 VanessaE that sounds like technic cabling, est31 19:27 RealBadAngel event is called twice 19:27 est31 5606 -526 -498 19:27 est31 that isnt where spawn is 19:27 est31 that isnt even remotely close to spawn 19:27 T4im that could be a quarry 19:28 est31 VanessaE, technic cabling is nice, but even then it shouldn't matter at all for the client 19:28 VanessaE est31: there's technic HV cables there. 19:28 RealBadAngel after you for example close chest formspec, server sends to client an event with old meta and new meta together 19:28 VanessaE and quarrioes 19:28 VanessaE -o 19:28 est31 such changes should ONLY interest the client if its close to that block 19:28 VanessaE this is cheapie's main, big mining complex 19:28 RealBadAngel i have no idea why 19:28 RealBadAngel before it was 3 events, i managed to eliminate one 19:29 kahrl_ I think the problem is here: https://github.com/minetest/minetest/pull/3166/files#diff-ad60d65b34e16a3319296bb5d683acd6R1331 19:29 RealBadAngel https://github.com/minetest/minetest/pull/3166/files#diff-ac9ac0a3a5e432320dd8784aaeeef672R929 19:29 kahrl_ this doesn't pass a far_players list 19:29 RealBadAngel without it, there was one event more 19:31 VanessaE kahrl_: even if the "players" are just ghosts? 19:31 VanessaE (those player names in my log excerpt are "fake" players needed for machines to operate properly in owned areas of the world) 19:32 kahrl_ VanessaE: I meant for est31's problem 19:33 VanessaE est31: the irony of your finding this quarry is that i'm getting 60 fps @ 240m here! 19:33 est31 we should probably remove the default arguments from that method 19:33 VanessaE and that's with HDX-256 19:33 est31 sendMetadataChanged 19:33 est31 from all these methods 19:33 est31 I mean there is really no case where we want to update a node for all players 19:34 VanessaE est31: plus all the quarries in this location are idle, as well (so if they're updating meta, that needs fixed in technic as well) 19:34 est31 5606 -526 -498 19:34 VanessaE yes 19:34 est31 can you find out whats at that pos? 19:35 VanessaE at that location is an idle quarry 19:35 VanessaE like I said, those coords point to cheapie's big mining complex 19:35 kahrl_ est31: or remove the far_players argument from these methods, and do client->SetBlocksNotSent in there directly 19:36 VanessaE est31: see above; 60 fps @ 240m, and I'm using HDX256. 19:37 rubenwardy #3166 19:37 ShadowBot https://github.com/minetest/minetest/issues/3166 -- Send to clients only changed node metadata instad of whole mapblock by RealBadAngel 19:37 est31 I guess technic first sets the quarrie's caption to "active" then to "idle" 19:37 VanessaE well that can be fixed in technic I'm sure, 19:37 est31 yea I guess so 19:40 est31 lol thats my mining complex 19:40 VanessaE oh :) 19:40 est31 I've thought man this looks familiar 19:40 est31 close to the zigurrat there is a switch 19:40 VanessaE heh, server crashed as I flw upwards to find the power source: http://pastebin.com/CNhKEXPD 19:41 est31 uh this looks like code changed by RBA 19:41 est31 Server::sendMetadataChanged is new 19:42 VanessaE RealBadAngel: you broke it! :) 19:46 nrzkt VanessaE 19:46 nrzkt he doesn't broke it. He added a crash 19:46 nrzkt i commented the code. 19:46 nrzkt it's fixed on my build but not in the PR 19:46 VanessaE ok. 19:50 est31 so here are my results with a client which has lowered protocol version (should be same as unmodified): http://pastebin.com/hRkKghwM 19:51 est31 less block changes than metadata changes but still alot 19:51 RealBadAngel block changes are queued and duplicates removed 19:52 RealBadAngel thats why 19:52 est31 yup 19:52 RealBadAngel we dont need duplicate removals for meta changes 19:52 RealBadAngel but grouping them and sending as list 19:53 est31 and if multiple node in a block are modified, then that's still only one block chang 19:53 est31 e 19:53 kahrl_ so wait 19:53 est31 we should only send changes that are inside range 19:53 kahrl_ if lua does meta:set_string("infotext", "...") followed by meta:set_string("formspec", "..."), does each of these cause a message to be sent? 19:53 est31 thats the first step 19:54 RealBadAngel kahrl_, yes, and each is causing meshes to regenerate 19:54 kahrl_ I mean with 3166 19:54 est31 kahrl_, yes 19:55 RealBadAngel same, but with just one packet 19:55 kahrl_ and without it the answer is no, because it's only sent once :P 19:55 RealBadAngel and with whole block 19:55 kahrl_ yea 19:55 VanessaE bbl 19:55 RealBadAngel and ALL the metas 19:56 RealBadAngel thats why i say next step should be a queue for metas to be sent 19:56 RealBadAngel same as for blocks 19:56 est31 we shouldn't wait too long 19:56 RealBadAngel that will reduce load even more 19:56 est31 because otherwise people will see it as lag 19:56 RealBadAngel ive made first step 19:57 est31 RealBadAngel, can you try to fix the bug with the range being ignored? 19:57 RealBadAngel even when i havent touched networkin before 19:57 est31 so that I can continue testing 19:58 RealBadAngel i can do that tommorow, now im dead tired and will go to sleep soon 19:58 RealBadAngel i would like to raise another issue with metas events 20:01 RealBadAngel when client is messing with meta (formspec of chest or a sign) nothing happens 20:01 RealBadAngel but on the close, server is sending two packets to the client 20:02 RealBadAngel with old content and the new 20:02 RealBadAngel at the same time 20:02 RealBadAngel ive spent 2 days trying to find out why 20:03 RealBadAngel with using of blocks that was invisible, the newer replaced older in the queue propably