Time Nick Message 02:05 curiousNoob What is the PEER ID used for in communication, and when s it agreed upon/determined for a given connection? 02:12 curiousNoob Hi! 02:22 hmmmm curiousNoob, the peer id is sent in the basic packet header after the server assigns it with the peer_id_new field in the CONTROLTYPE_SET_PEER_ID control packet 02:22 hmmmm it is the first application-level packet that the server sends 02:22 rarkenin_ What file is that in, in the source? I seem to have overlooked that. 02:23 hmmmm connection.cpp, line 832. 02:23 rarkenin_ Perfect, thanks! 02:24 rarkenin_ And that's sent once, right after the client sends something? 02:25 hmmmm yes, it is sent in response to the client's packet of type TYPE_ORIGINAL 02:26 rarkenin_ Sorry, but where is that thing about TYPE_ORIGINAL? 02:27 hmmmm connection.h, line 232 02:27 hmmmm that first packet has no actual payload 02:28 hmmmm you can read about this in doc/protocol.txt, by the way. 02:28 rarkenin_ Oh, didn;t see that file. Thanks! 02:29 rarkenin_ So sequence numbers are incremented with each packet? 02:29 hmmmm yes 02:30 rarkenin_ Why does it start so high? It's 16-bit unsigned, so it'll wrap around almost immediately. 02:31 hmmmm dunno 02:31 hmmmm it doesn't really matter.. the client and server just need to agree on what the initial number is 02:36 rarkenin_ How do they agree on an initial? Just the one sent in the firstpacket? 02:36 hmmmm they agree on it because it's defined as such in the code 02:36 rarkenin_ Ah, OK. 02:38 rarkenin_ So right after seqnum, the payload begins? 02:38 rarkenin_ And the payload starts with TOCLIENT_FOO or TOSERVER_BAR? 02:39 hmmmm the sequence number is sent in reliable packets, not sent with regular packets 02:39 rarkenin_ So the actual game-chat-and-entity stuff is sent in non-reliable packets? 02:40 rarkenin_ In what places are reliable used? 02:41 hmmmm seemingly everywhere 02:42 rarkenin_ So then I just stick my payload, TOSERVER_FOO/TOCLIENT_FOO and parameters right after the seqnum in that case? 03:29 hmmmm yes, well, your payload starts with TOSERVER_FOO/TOCLIENT_FOO 07:43 proller hi all. here branch with like- waterplus mod finite liquids 07:43 proller https://github.com/proller/minetest/commits/liquid 07:43 proller question: why LIQUID_LEVEL_MASK 0x07 ? 07:44 proller i want to change to 0x3f 09:25 Taoki Hi. Is there a specific part in the code where the server reads settings from minetest.conf and sends their values to clients? Any examples of that? 11:45 thexyz Taoki: server.cpp:4299 11:46 Taoki thanks 11:47 PilzAdam thexyz, do you have anything against this: https://github.com/celeron55/minetest/pull/462 ? 11:48 thexyz it's good as long as it works 11:48 PilzAdam I just tested it 11:48 thexyz then merge it 11:58 Taoki Erm... you do see the each of the 2 planes from any direction right? 11:58 Taoki Just not the opposite one 11:59 Taoki Since if not, it means that looking at a plant from its front-right would show it, but looking from its back-left would cause it to not be seen 12:12 PilzAdam is there anything wrong in this: https://github.com/celeron55/minetest/pull/429 13:20 PilzAdam is there any good reason why this isnt merged yet? https://github.com/celeron55/minetest/pull/275 13:37 Taoki PilzAdam: Still not sure about that plantlike backface-culling change. What does it do exactly? 13:37 Taoki Plants have 2 planes in total in an X shape IIRC. If backface culling would be enabled, you'll only be able to see them from one direction, which would completely break them 13:37 PilzAdam previously the images were backface culled and 4 images were drawn 13:38 Taoki If it's just not rendering the back face of each plane however, when looking at it from one direction, then it's good 13:38 Taoki Yeah. But when drawing 2, does it make sure for each to show the one you can see from either side? 13:38 PilzAdam backface culling is disabled now 13:39 Taoki That means that at any given moment and from any angle, exactly 2 faces should be drawn for each plant 13:39 Taoki And visible 13:39 Taoki If it works like that then I agree it's a good change and should be merged without worrying 14:41 Taoki My changes to physics are nearly done, just need to fix one more bug. To those interested, I recomment desting them on my GIT. https://github.com/MirceaKitsune/minetest/tree/movement 14:41 Taoki PilzAdam: ^ If you have nothing else to do in MineTest or otherwise at the moment 14:43 Taoki What my branch does: 1 - Turning nearly all player movement values into settings, configurable in minetest.conf (we can even have low gravity now). 2 - Tweaking a lot of physical properties to work correctly and smoothing... such as proper diving in water, correct acceleration in all circumstances and directions, low air acceleration by default so you can't move around in the air, etc. 14:45 Taoki Worst was air acceleration which allowed the player to walk freely in mid-air, now it's 1/4 of ground acceleration. Second worst was diving into water... when hitting water at high speed the player would have their speed instantly cut and slowly begin to sink in, now they will go in hard and slowly descent to water friction speed. Going up / down when swimming of flying also uses acceleration now. 14:45 PilzAdam building.... 14:46 Taoki ok. The bug that's not fixed yet is the Y axis acceleration. The new function is used, but the formula is somehow wrong and it's still too fast, rather than the same as X and Z acceleration. Once this is fixed however, the code is ready as far as I'm concerned. 14:47 Jordach Taoki, its just getting the physics to a "T", isnt it? 14:47 Taoki Jordach: To a T? 14:47 Jordach its a term 14:47 PilzAdam Taoki, do you have decreased the Y fast movement when flying? 14:47 Taoki Not sure what that means :P But this should get physics working realistically and correctly 14:48 Taoki PilzAdam: No. When flying without fast movement, you have the normal ground speed and acceleration. When flying with fast movement, you have speed and acceleration for fast movement 14:49 Taoki Apart from the changes I listed, most should work like before 14:52 PilzAdam its definetly slower than before 14:52 Taoki Ground speed shouldn't be. But that's all about the default values, I can raise them 14:52 PilzAdam flying at fast speed up and downwards is slower 14:53 Taoki BTW: Diving in water might not always be noticeable. To really see how it works, find a deep enough lake ( 10 or more blocks) and fly very high above it, then stop flying and drop into it very fast. You now sink to the bottom 14:53 Taoki PilzAdam: How much slower does it feel like as a percentage? I can turn up the defaults in that case 14:53 PilzAdam dunno, 70%? 14:54 Taoki Ok. Fast move feels pretty fast to me 14:54 Taoki Ground speed seems the same 14:54 Taoki Water movement is too slow however, will fix that 14:55 PilzAdam water movement is too fast 14:55 PilzAdam its like normal walking 14:55 Taoki :P 14:56 PilzAdam does it depend on the viscosity? 14:56 Taoki PilzAdam: Only when you have fast_move enabled 14:56 Taoki no. Turn off fast_move mode and try walking in water then 14:56 Taoki That's because when fast_move is on, you have more acceleration. This probably changes water friction 14:56 PilzAdam I have always_fly_fast = false 14:56 Taoki ok. Don't think that affects it 14:57 PilzAdam fast move should only effect flying and walking when holding E 14:57 Taoki Still, try walking in water without fast move 14:57 Taoki Yeah I can try to fix that 14:58 PilzAdam it should stay as before, fast_move shouldnt have any effect on moving in water 14:58 Taoki Currently fast_move also gives a higher acceleration all the time when enabled 14:58 PilzAdam (except when flying) 14:58 Taoki ok, will fix 14:59 PilzAdam so, now playing with gravity :-) 14:59 Taoki Try a value 4 times lower, you'll find it pretty fun :) 14:59 PilzAdam does the server send all the settings to the client? 14:59 Taoki Just commited code that does that, it does now 15:02 PilzAdam heh, with gravity = 100 you cant jump onto a slab, but walk on it 15:03 Taoki PilzAdam: Fixed the fast movement acceleration, update the branch again and try water now 15:05 Taoki Also, test flying and ground speed again, both with and without fast movement, and let me know if you think any of them should be faster or slower by default. Personally I find the current defaults good, but IIRC few should have changed from what they used to be 15:05 PilzAdam also rename water to liquid in the settings names 15:05 Taoki sure 15:06 PilzAdam now holding E while swiming gives you the fast speed but swiming up/down is still slow 15:06 Taoki Water speed is very low now, need to turn it up a little 15:07 Taoki right. Which would the correct behavior be? 15:07 Taoki Swimming down doesn't really exist, since you sink down regardless of what you do if you don't swim up 15:07 PilzAdam either now effect of fast move on swiming or increase the vertical speed when moving fast 15:07 PilzAdam s/now/no 15:08 Taoki I think fast underwater is good, so I'll try to make it change the sinking and swimming only 15:09 Taoki For swimming down it's hard however, since the physics do that and it's not a player control 15:09 PilzAdam maybe use shift to swim down? 15:09 PilzAdam (with and without fast) 15:09 PilzAdam since in RL you can swim down too 15:10 Taoki Yeah... and when not holding shift have the player stall in water 15:10 Taoki Anyway, need to go for now. Will fix these when I'm back 15:10 Taoki Still, I would appreciate it if you could look into something, if that's ok 15:11 PilzAdam another bug: when moving fast and realsing W and E you slide like 10m over the ground 15:12 Taoki With my code, look at player.cpp line 100 (void Player::accelerateY). That's the new function aimed to make Y acceleration work the same as X and Z one. But for some reason it's not working the same when given the same value as Player::accelerateY. I can't figure out why... if you have some time and like those changes and wish to help, maybe you can at least find a hint on what I should change 15:12 Taoki That one's normal, since now you have the normal acceleration when not holding down E any more 15:12 Taoki Acceleration also means deceleration 15:12 Taoki I hope that one can slip by since it doesn't do any harm, and I also think it's a bit more fun that way :) 15:13 Taoki BRB for now 16:05 rarkenin_ Hi! Quick question about seqnum. It is incremented with each packet in either direction, or is a separate seqnum used for each direction? 18:37 celeron55 rarkenin_: separate for each peer 18:37 celeron55 umm... actually, separate for each side of a connection 18:54 rarkenin_ celeron55: Sorry, had to go AFK. But, for the server and one client, a packet , for instance , that requests media might be 65521, and the next packet from the server would be 65522? 18:56 Taoki PilzAdam: Finished the water physics changes you suggested. Feel free to pull the branch again and test, let me know if that's good now 18:56 Taoki Note that up / down swimming seems a very little bit faster than horizontal swimming, due to the Y acceleration code which I haven't figured out how to fully fix yet 18:57 Taoki But other than that it should work as discussed. You now swim down with the Sneak key, up with the Jump key by default, and you only sink very slowly in time. 18:58 blah_craft Hi all - I'm getting a "generate_shader(): failed to generate" error when I enabled shaders. I'm pretty sure it's an OpenGL / graphics driver issue, but wondered if u knew any way to debug it? 19:00 Taoki celeron55: Feel free to test my branch as well if you aren't working on something else right now, and let me know if there's something you believe needs to be changed absolutely. https://github.com/MirceaKitsune/minetest/tree/movement 19:01 Taoki [16:41:44] What my branch does: 1 - Turning nearly all player movement values into settings, configurable in minetest.conf (we can even have low gravity now). 2 - Tweaking a lot of physical properties to work correctly and smoothing... such as proper diving in water, correct acceleration in all circumstances and directions, low air acceleration by default so you can't move around in the air, etc. 19:01 Taoki [16:43:46] Worst was air acceleration which allowed the player to walk freely in mid-air, now it's 1/4 of ground acceleration. Second worst was diving into water... when hitting water at high speed the player would have their speed instantly cut and slowly begin to sink in, now they will go in hard and slowly descent to water friction speed. Going up / down when swimming of flying also uses acceleration now. 19:02 F00 Diminished air control may make conventional (whole-block-only) stairs particularly tedious 19:03 Taoki Don't think so, but I can test to see how it works 19:03 Taoki BRB for now though. My water fixes are in the latest branch tho 19:08 blah_craft any guesses on that issue loading shaders? 19:08 celeron55 rarkenin_: no, the ids from different ends can be anything 19:10 celeron55 Taoki: not being able to control horizontally when falling is a good thing in games 19:10 celeron55 Taoki: it's one of the things where reality *really* sucks 19:10 celeron55 eh 19:10 celeron55 s/not // 19:14 rarkenin_ celeron55: So it just matters that each direction has continuous peer IDs, but each direction is indepedent of each other. Right? 19:47 celeron55 rarkenin_: yes 19:48 rarkenin_ OK, thanls! 19:48 celeron55 ehm 19:48 rarkenin_ *thanks* 19:48 celeron55 peer id is a different thing 19:48 celeron55 you are talking about packet ids 19:48 rarkenin_ Yeah, sorry, I meant sequnums. I was just thinking one thing, typing another. 19:49 celeron55 what are you doing, if i may ask? 19:50 celeron55 blah_craft: you can usually see a more precise error in stderr/stdout as printed by irrlicht 19:50 rarkenin_ Actually, making a little utility to query extended stuff from the server, for automated detailing, like mapping, and activity levels. 19:50 celeron55 so you are implementing the network stack yourself? on what language? 19:51 rarkenin_ PHP, actually 19:53 rarkenin_ If I have time, I may as well extend it to be a bot that runs on PHP in CLI mode(as opposed to webserver SAPIs) 19:53 thexyz wow 19:53 thexyz but why php? 19:53 rarkenin_ The original plan was for this querynig to be done by webservers hosting server lists. 19:54 rarkenin_ Also, I like PHP, and I don't like wasting my time typing variables. 20:03 Taoki celeron55: Air speed can still be controlled with my patch, just very little. The old way felt very wrong and basic to me... but since the physics are settings now old air acceleration can be re-enabled too 20:03 Taoki Problem is how to fix the new Y acceleration, which still doesn't work right 20:03 rarkenin_ afk for 15 minutes. 20:03 Taoki Gonna keep looking into that for now, since it should be the last bug left 20:04 Taoki Really love how the new physics are working and feeling now though :) 20:32 doserj PilzAdam: I included your suggestion for pull-request https://github.com/celeron55/minetest/pull/439 20:36 rarkenin_ What file(s) explain(s) the NodeDef, MapBlock, and MapNode serialization formats? 20:37 rarkenin_ All I can find are the respective source files, which don't help me much. 20:37 PilzAdam doserj, nice 20:45 rarkenin_ Does Minetest assume a machine endianness? 20:52 hmmmm no 20:53 Taoki What's the exact difference between float and f32? 20:54 hmmmm actually come to think of it, it does... the endianness of the client and server must match 20:58 hmmmm taoki, f32 means a floating point number that's 32 bits wide.. float on the other hand may be anything 20:58 Taoki ok. So float can store more decimals and be more accurate overall 20:59 hmmmm there are no restrictions on the size of floating point numbers except float must represent a subset of the values of double, which must represent a subset of the values of long double 21:33 rarkenin_ OK, another question. I'm looking at a wireshark dump of a TOCLIENT_CHAT_MESSAGE. 21:34 rarkenin_ I see my magic bytes, PeerId, channel, type, sequence number(since its reliable), then a really odd 01 00(hex) before the payload starts. What is that? 21:36 rarkenin_ Actually, it's just the 01 after the seqnum that puzzles me. I know where the 00 came from. 21:55 Taoki New physics are ready for testing and merging: https://github.com/celeron55/minetest/pull/483 21:56 Taoki VanessaE: Feel like switching your server to my branch and maybe someone else can join to test stuff? 21:58 VanessaE dare I ask what I'll be getting into ? :-) 21:58 VanessaE oh the water physics et.al? 21:59 Taoki Yes. See the points in the note on that pull request 21:59 VanessaE checking... 22:01 VanessaE sure, what the hell :D 22:01 Taoki ok :) Just merged master into my branch, update again if you just got it 22:01 hmmmm alright 22:01 VanessaE I'm just about to clone it now. 22:02 hmmmm vanessa, let's +q $~a 22:02 hmmmm i'm getting sick of this 22:02 VanessaE hmmmm: that'll catch way too many false positives 22:02 hmmmm there's nothing else we can do 22:04 VanessaE hmmmm: there is - keep banning whole class C's, or even larger ranges, and forbid anyone from just nonchalantly clering the ban list. 22:04 VanessaE sooner or later there won't be any proxy addresses left to use. 22:04 hmmmm have you seen how many different class As he's had? 22:04 VanessaE and maybe yeah, ban webchat entirely. 22:04 VanessaE three by my count 22:05 hmmmm so far 22:05 hmmmm he stopped using the 189 which i guess was his ip without VPN 22:05 VanessaE actually he hasn't stopped using that one 22:05 VanessaE I've seen him just recently on that host 22:06 hmmmm not with the most recent spamming 22:06 VanessaE that wasn't LM, that was markv. different person or so I thought. 22:07 hmmmm i guess not 22:08 * VanessaE sighs 22:09 hmmmm we'll give it a day and judge how much we actually need to do something about it 22:13 VanessaE ok 22:14 doserj rarkenin_: http://forum.minetest.net/viewtopic.php?pid=69521#p69521 22:28 Taoki Testing low gravity on VanessaE's server. If anyone is interested, compile my branch ( https://github.com/celeron55/minetest/pull/483 ) and connect :) 22:50 Taoki VanessaE: Might be doing a patch to my code in 5 minutes, don't shut down yet 22:50 VanessaE bah, I just did haha 22:50 VanessaE ok, going back up with it 22:51 VanessaE (gravity set to 0.2 as before) 22:51 Taoki NP :) 22:57 VanessaE should I be worried about your next change? ;) 22:58 Taoki VanessaE: Update my branch again. I fixed a bug with being unable to sink into water when near the surface 22:58 Taoki Not at all :) 22:59 VanessaE ok, sec 22:59 Taoki Also, please set gravity to 1.5 or something around that, it seems to be good and much more usable (I had other values in mind with 0.2 :P ) 22:59 Taoki Something between 1 and 2 is good 22:59 VanessaE I'll set it to 1.6, moon-like. :-) 23:00 Taoki yes :) 23:02 VanessaE waiting for the install to finish. 23:03 VanessaE ok, it's up 23:05 VanessaE I still can't swim down.... 23:05 Taoki VanessaE: Might be another issue with the swim key, no idea in that case 23:06 Taoki VanessaE: Ahhh. Aux 1 descends means the E button is used to go down? 23:06 VanessaE yes 23:06 VanessaE and it is used to sprint when on land also 23:06 VanessaE shift is sneak in this case 23:07 Taoki Yes, it is my fault then sorry :P Hope everyone can bare another restart, gonna fix that too 23:07 VanessaE lol 23:07 Taoki VanessaE: When that option is enabled, is fast movement possible any longer? 23:07 VanessaE sure 23:08 Taoki Cuz in this case, it will mean fast movement also descends fast automatically 23:08 Taoki Don't restart yet tho, need to test locally first 23:08 VanessaE on land, E runs fast when fast is enabled, or descends ladders. When flying, j turns fast on/off, and E descends 23:09 VanessaE maybe fast while swimming shouldn't be possible? 23:09 VanessaE just E or shift descends, and that's it? 23:09 Taoki Fast swimming is useful. I'm not sure how this is to be done sadly... 23:09 VanessaE hm 23:10 Taoki Since with this, E means going up fast automatically when fast movement is on 23:10 VanessaE then let j toggle fast on/off like while flying 23:10 VanessaE then E (or shift) descends. 23:10 VanessaE at least it's consistent then 23:11 VanessaE think of swimming as flying in water :-) 23:11 VanessaE then it makes sense 23:11 Taoki When fast movement is off this works fine. But when it's on things conflict 23:11 Taoki Since E either activates fast, either swims down 23:11 VanessaE when fast movement is on, make it always on. 23:11 VanessaE let E swim down only. 23:11 VanessaE in other words, make the controls behave just like flying through the air 23:12 Taoki need to think 23:13 Taoki I think I should do that, but only when aux1 descending is enabled 23:13 VanessaE yeah 23:28 Taoki VanessaE: Coded and tested, you can update my branch. aux1_descends will work properly underwater now 23:30 VanessaE sure thing 23:30 VanessaE updating now 23:33 VanessaE ok, it's in 23:33 Taoki connecting 23:33 VanessaE perfect. 23:34 RealBadAngel was connected just in time 23:34 RealBadAngel to see server shutting down lol 23:35 Taoki It's back now :) 23:38 VanessaE Taoki: every so often when I'm swimming on top of the water, it'll jump out of the water several blocks up (in low gravity anyway) 23:38 Taoki VanessaE: Only in low gravity and because you're swimming up in Fast mode 23:39 Taoki Which throws the player upward more than normally. But on normal gravity it's not as visible 23:39 VanessaE right 23:39 VanessaE ok so that's fine then 23:39 VanessaE now here's a real challenge: make the water visibly splash when the player enters/exits it :D 23:39 F00 Being able to toss yourself out of the water a bit ought to be desirable, I think. 23:39 VanessaE (think client-side particles as with digging) 23:41 F00 The most hilarious thing is seeing somebody die because they can't get themself out of lava due to a panel or something blocking them 23:42 VanessaE Taoki: possible oversight: Should one be able to stop themselves short by switching from W+E to S+E? 23:42 Taoki VanessaE: Normally yes, but there's still some inertia 23:43 VanessaE ok good 23:43 Taoki That should work as expected now though 23:43 Taoki yes, works fine 23:43 Taoki When you have fast movement on and hold down E, acceleration is automatically higher too 23:45 VanessaE it seems to work as one would expect now. 23:45 VanessaE the inertia in fast mode takes some getting used to, but it's good 23:48 Taoki RealBadAngel: I see you online but not moving or saying anytihng 23:49 RealBadAngel sry, was busy, back now 23:49 Taoki ok., WB