Time Nick Message 00:15 BillyS Ugh 00:15 BillyS I'm trying to understand MT packet code 00:15 BillyS It is ... wierd, to say the least 00:18 BillyS Can anyone here explain it, or give me any pointers? 00:21 sfan5 what exactly are you having trouble with 00:32 BillyS sfan5: I wrote a python script to connect to a minetest server so that I could see what it's doing, and I get messages like 'OEt\x03\x00\x01\x00\x03\xff\xde\x00\x02'. What do those characters mean? 00:32 BillyS I'm pretty sure the command is the last one 00:33 BillyS Which would mean it's the TOCLIENT_HELLO 00:33 BillyS I know the beginning \x03 means that it's a reliable packet 00:33 BillyS And I think the \x00 after it means that it's a control packet 00:34 sfan5 i'm puzzled how you managed to understand the protocol despite not knowing what "those characters" mean 00:34 BillyS I read https://dev.minetest.net/Network_Protocol 00:34 BillyS And I found an old python script that connected to a server with an old protocal 00:34 BillyS Which I studied quite a bit 00:35 BillyS But I'm not sure what the '\x01\x00\x03\xff\xde\x00' in the middle means 00:35 BillyS I think \xde is the message number, or something like that, because it usually increases by 1 every message 00:36 BillyS Is the \xff just a separator or something? 00:36 sfan5 interpretation doesn't work here, you need to read and understand the documentation 00:38 sfan5 https://github.com/minetest/minetest/blob/master/src/network/connection.h#L136 00:38 sfan5 ^ start there 00:38 BillyS Okay, thx 00:39 BillyS Ooh, so the \x01 is the peer 00:39 BillyS afk 00:40 sfan5 you skipped a few steps again 00:40 sfan5 the peer ID is two bytes, where's the second one? 00:56 BillyS Oh 00:56 BillyS Hmm .... lemme look at this more closely 01:03 BillyS I am confused ... what's the relation between characters and bytes? 01:03 BillyS I think this is utf-8 ... so 1 to 1 in that case 01:06 GreenDimond byte is an amount of data 01:07 GreenDimond standard latin characters are generally a single byte 01:07 BillyS kk 01:07 BillyS I know that byte is an amount of data, but I was pretty sure that the number of bytes per character depends on the encoding of the text 01:08 GreenDimond It does 01:08 BillyS kk 01:08 BillyS Hmmm ... 01:08 T4im utf-8 can vary between 1 to 4 bytes per character 01:08 BillyS Oh, lovely 01:09 BillyS That complicates things for sure 01:09 BillyS I'll just hope that the devs chose 1-byte characters :P 01:09 T4im when i say vary i mean vary with the text, not the implementation 01:10 BillyS I assumed 01:15 BillyS Ah 01:15 BillyS That explains this header ... one of the characters must be two bytes 01:16 BillyS ..wait 01:17 BillyS ooh 01:17 BillyS In the message 'OEt\x03\x00\x01\x00\x03\xff\xdd\x00\x02' 01:17 BillyS \x00\x01\x00\x03\xff\xdd\x00 would be the header, I think 01:17 BillyS Becuase \x03 is the packet type 01:18 BillyS So \x00 is the protocol type (ACK, SET_PEER_ID, PING, or DISCO) 01:19 BillyS .... I think I'm missing something 01:21 T4im exactly what there is supposed to be utf8 again? 01:22 BillyS I think the message is in UTF-8 01:23 T4im you should probably start with the header 01:23 BillyS That's what I'm trying to do 01:23 BillyS This is the complete message I got from the server, header included: \x00\x01\x00\x03\xff\xdd\x00 01:23 BillyS ACK 01:23 BillyS That's wrong 01:23 T4im uhm yes, the 7 bytes header in that comment, theres nothing of utf8 standing anywhere there :o 01:24 BillyS OEt\x03\x00\x01\x00\x03\xff\xdd\x00\x02 01:24 T4im the u8 are unsigned 8 bit, not utf8 :x 01:24 BillyS That ^ is the complete message 01:24 BillyS I'm confusing bytes with strings again ... 01:25 BillyS T4im, sorry, I thought the whole message was sent as a UTF-8 string. My bad. 01:26 BillyS I still don't get what part of the message is the header though 01:26 T4im the first 7 bytes 01:27 BillyS T4im: So, that is "OEt\x03\x00\x01\x00"? 01:28 T4im 4 bytes protocol id, 2 bytes sender peer id and 1 byte channel, see the comment for details 01:28 T4im maybe; you should probably get a better output there, maybe start up wireshark 01:28 BillyS kk 01:29 T4im and then normalize it to 0prefixed byte everywhere instead of printing strings, that's just hard to read 01:29 T4im hex i mean, 00 00 00 01 etc 01:29 BillyS Good idea; I don't have much experience with this 01:33 T4im s/prefixed/padded/ 02:00 BillyS This is wierd 02:01 BillyS in wireshark, it shows traffic between ports 60760 and 30000 02:01 BillyS But the server is on 30000 02:01 BillyS So shouldn't it be between 30000 and 30000? 02:01 BillyS I need to research some of this stuff ... 02:02 BillyS Meh, it's bedtime for me 04:03 sofar BillyS: server port is fixed, but client port is always random 11:26 tenplus1 hi folks :) 11:55 rdococ idea: mechanical calculator in Minetest (using no mesecons or digilines, but maybe with some medhanical mod) 11:56 tenplus1 hi rdococ, interesting but how would it work ?!?! 11:56 tenplus1 do you have a schematic 11:56 rdococ no 12:05 tenplus1 hi aerozoic 12:06 aerozoic wazup tenplus1 ! 12:06 tenplus1 :P 12:09 rdococ doubt it's even possible in vanilla minetest_game 12:10 tenplus1 would need some sort of control block 12:11 rubenwardy https://twitter.com/MinetestProject/status/1058690759099121666?s=09 12:13 tenplus1 thx ruben 12:17 sfan5 I'd also like to thank rubenwardy for taking the time and effort to represent Minetest publicly at a conf 12:17 rubenwardy See minetest channel 12:17 rubenwardy Got a donation from the conference 12:17 tenplus1 hi sfan... yeah hope you had fun 12:19 rubenwardy Thanks sfan5 12:19 rubenwardy Also Jordach and Shara 12:19 tenplus1 yay 12:42 tenplus1 o/ T4im 12:43 T4im hi :D 12:59 shivajiva for anyone interested https://www.youtube.com/watch?v=dHdU4VRwoxA currently stopped for lunch 12:59 shivajiva Hi tenplus ;) 13:00 tenplus1 hi Shiva :) 13:17 tenplus1 o/ fixer 13:26 Fixer \\o 13:27 rubenwardy So much food 13:28 tenplus1 what ya got ? 13:30 tenplus1 hi calcul0n 13:30 calcul0n hello 13:42 tenplus1 hi Krock 13:42 Krock hi tenplus1 13:43 tenplus1 updated falling pull btw 13:48 Fixer rubenwardy: rip minetest 13:48 tenplus1 ? 13:48 ChimneySwift ?? 13:48 rubenwardy ??? 13:51 Fixer you need to focus on mt/mtg, not on food 13:52 tenplus1 ffoooooooOOOOoooood!! 13:52 Fixer 00f 13:53 Fixer remember, you are here for minetest, food will be later 13:53 tenplus1 aw 13:53 ChimneySwift you're allowed to eat food, you just can't be really focused on it 13:53 tenplus1 in that case: https://github.com/minetest/minetest/pull/7833 13:58 Krock Somewhen next year Debian will be as good as Windows according to the numbers 13:59 tenplus1 already is in my book 14:04 rubenwardy Fixer: I'm not focusing on food at all 14:04 Fixer i'm focused on your food 14:04 rubenwardy Ohh 14:05 rubenwardy I thought you meant on the stall 14:05 Fixer "The PortSmash paper, titled Port Contention for Fun and Profit, continues to recommend fully disabling SMT, not only to blunt the threat of PortSmash, but also those of TLBleed and two similar attacks known as CacheBleed and MemJam." 14:05 Fixer good to have 4 core without this SMT 14:05 Fixer right on time 14:05 tenplus1 ? 14:06 Fixer "Intel CPUs fall to new hyperthreading exploit" 14:07 tenplus1 oh, maybe that's why newest intel cpu doesnt have HT anymore :D 14:32 Jordach greetings from #live 14:33 tenplus1 o///// 14:33 Jordach everyone is doing fine :P 14:33 tenplus1 good to hear, how's the noms ? 14:41 Krock o/ Jordach 15:02 rubenwardy We've ditched Jordach for a talk 15:02 rubenwardy Soz 15:08 xerox123 o/ 15:08 tenplus1 hi xerox 15:10 xerox123 What's the age range at freenode live? 15:12 rubenwardy Varied 15:12 rubenwardy I've seen a 5 year old and a ~70 year old 15:14 xerox123 Ah 15:14 tenplus1 hi CWz 15:14 xerox123 I'll try next year when I'm 18 and don't leave Al my hw to the last weekend™ 15:15 CWz Does Linux support SLI 15:22 tenplus1 the last post I could find is dated 2015 CWz and that mentioned SLI being incompatible with OpenGL 3.x cause it doesnt use page flipping 15:25 CWz so no support for two or more graphic cards 15:25 CWz ? 15:27 tenplus1 https://devtalk.nvidia.com/default/topic/617305/?comment=4705640 15:28 rubenwardy It would nice to support one graphics card well, first 15:29 rubenwardy Fuck Nvidia 15:29 tenplus1 lol, ati are doing much more for the open-source driver than nvidia is for theirs 15:33 Jordach rubenwardy: no problem, had a stretch 15:33 Krock is ati still a thing? I though they now sell everything under AMD 15:33 Krock *under the brand 15:33 tenplus1 amd are awesome :) 15:56 CWz nvidia graphic driver seems to work fine on my end 15:56 CWz but the open source driver isn't as good as AMDs 15:57 T4im if i remember correctly it's not nvidia's nor amd's open source drivers, but both are done from kernel developers; just that amd helps out with specs and perhaps even manpower 16:00 tenplus1 yeah, nvidia really need to open up and assist with the open-source driver, it could be soooo much better 16:01 T4im "In addition to providing the necessary documentation, AMD employees contribute code to support their hardware and features." indeed, they are actively contributing :D 16:01 tenplus1 that in my opinion is a good company 16:01 T4im it's just sad that due to the CUDA stuff, you sometimes still depend on nvidia :( 16:02 T4im amd still needs to catch up there 16:52 tenplus1 could I have some mt-game devs look at this please: https://github.com/minetest/minetest/pull/7833 16:52 tenplus1 !title 16:52 MinetestBot tenplus1: falling entity rewrite by tenplus1 · Pull Request #7833 · minetest/minetest · GitHub 16:58 Fixer SLI is dead 16:59 Fixer tenplus1: yet nvidia still works kinda better 16:59 tenplus1 my net-top has nvidia ion and I do like the binary blob, it's faster 17:09 tenplus1 laters folks 18:45 Krock !tell tenplus1 Please don't take >the< recent comment of "falling entity rewrite" too serious. I very welcome dev time and PRs, ofc 18:45 MinetestBot Krock: I'll pass that on when tenplus1 is around 18:46 Krock <3 MinetestBot 18:46 MinetestBot <3 Krock 18:46 Krock (because he's not in -dev) 18:47 sfan5 ​!tell will be passed on in whatever channel MinetestBot sees him 18:47 sfan5 MTB is not present in -dev though 18:47 Krock neither ten nor MTB is there 18:53 * VanessaE pokes Krock with some minetest-mods PRs... :P 18:56 * Krock opens bookmarks 19:00 Krock framedglass code looks good, non-controversial 19:05 Krock looks like coloring anything other than steel framed obsidian glass wasn't possible? 19:06 VanessaE yeah 19:06 Krock weird that the punch coloring doesn't work for the others even though it has the callbacks registered 19:06 VanessaE I just kept it as it originally was 19:06 VanessaE empty functions. 19:07 VanessaE and anyway only obsidian glass was supposed to be colorable 19:07 Krock yes I see 19:07 VanessaE wait.. 19:07 VanessaE what callbacks? 19:08 Krock "on_punch = framedglass.color_on_punch," but I looked at the wrong line. It's alright. Only steel is colorable 19:11 VanessaE :) 19:15 Krock approved. gets somewhen merged.. maybe tomorrow if I don't forget it 19:16 VanessaE \o/ 19:16 VanessaE fwiw, about whitespace and code style: I tend to just stick with whatever's already there. 19:16 VanessaE thanks for the tweaks. 19:17 Krock would've taken longer to write a comment for all those tiny issues 19:18 Krock sticking to old style is consistent in the project, adjusting it is (optimally) consistent with the minetest-mods style 19:19 Krock although I would be happier if more of the mods could follow the MTG/MTE code style rules. It's very easy to notice copypasta in unmaintained mods right now 19:19 VanessaE yepa 19:20 * luk3yx prefers spaces over tabs, they're more consistent for weird whitespacing things. 19:21 * Krock slaps luk3yx and throws them out of the door 19:21 * Krock slams the door 19:22 Krock luk3yx: they're fine as long it's after the first printable character of the line 19:23 Krock i.e. to line up tables or repetitive function arguments 19:23 Krock that's where tabs fail horribly due to their customization 19:24 VanessaE regarding the technic one, technic depends on pipeworks, which depends on basic_materials, if that's of any importance. 19:25 Krock guess who added that dependency 19:25 VanessaE spaces for indenting? heretic! 19:26 VanessaE Krock: of course I added it :P 19:26 VanessaE but that's been a plan for a years. just never got around to it. 19:27 Krock https://imgs.xkcd.com/comics/citogenesis.png 19:27 Krock same principle as here ^ 19:27 VanessaE granted. 19:30 VanessaE doesn't change the end result: I simply implemented the basics of a plan RBA and I had percolating before he passed away. 19:31 Krock is it some kind of glue to provide item alternatives if another mod is absent? 19:37 VanessaE it's purpose is to provide those simple items that everyone else seems to keep re-inventing from time to time 19:37 VanessaE though it has aliases so that mods that expected say home decor (plastic) or gloopblocks (cement) will still work (assuming depends.txt is appropriately tweaked) 19:37 VanessaE (and assuming I didn't forget any aliases) 19:37 VanessaE i.e. to reduce repetitiveness and crafting conflicts. 19:37 VanessaE if handled properly, basic_materials shouldn't need to grow too much past where it is now, though I can think of a couple of other items that it should probably have 19:37 VanessaE a/ can/'m sure I could/ 19:37 VanessaE you get the idea? 19:38 rubenwardy it's gross, technically 19:38 VanessaE ? 19:38 rubenwardy what's the point of adding items which don't fit in logically? 19:38 VanessaE what doesn't fit into what? 19:38 rubenwardy like, if I have to install the mod just for one part, there's a load of random stuff that isn't used 19:39 rubenwardy it's better to divide things into craft trees 19:39 VanessaE oh here we go again... 19:39 rubenwardy :D 19:39 Krock the get-the-entire-boilerplate-mode or trim-to-necessary-stuff discussion? 19:39 VanessaE can't you just ignore the items that you have no use for? also, technic, as amended in my PR, uses several items in basic_materials 19:39 Krock s/mode/mod 19:39 VanessaE plus, 19:40 VanessaE basic_materials IS split into parts - metals, plastics, electrical/electronic, misc 19:40 rubenwardy it's a bad user experience 19:41 VanessaE no, a "bad user experience" is showing the user two or more of the same item and having them make the wrong one for the thing they want. 19:41 VanessaE (same as in equivalent in a gaming sense) 19:43 VanessaE if a user is stupid enough to make an item that isn't used anywhere, that's their fault. if they're shown two options that look like they ought to do the same job and they pick the wrong one, that's the mod's fault. 19:43 VanessaE THAT is the kind of thing basic_materials is meant to address