2015-07-08 21:26:04 --> SopaXT (~androirc@unaffiliated/sopaxorztaker) a rejoint #mcdevs 2015-07-08 21:28:37 +Thinkofdeath Aikar: shouldn't 2015-07-08 21:28:48 +Thinkofdeath since the url is a hash of the skin 2015-07-08 21:35:50 Aikar ok cool, so make timestamp static on game profiles should fix the issue 2015-07-08 21:49:58 <-- SopaXT (~androirc@unaffiliated/sopaxorztaker) a quitté (Read error: Connection reset by peer) 2015-07-08 21:56:03 <-- WizardCM (~WizardCM@14-201-31-151.static.tpgi.com.au) a quitté (Ping timeout: 252 seconds) 2015-07-08 22:04:36 --> olivervscreeper (~olivervsc@host81-129-108-239.range81-129.btcentralplus.com) a rejoint #mcdevs 2015-07-08 22:09:04 Fenhl PierreC: are you talking about *the* player or a different player? 2015-07-08 22:13:45 Fenhl PierreC: because if you want to move the player you need to use Player Position And Look, and if you want to move a different player you need to use Entity Relative Move or Entity Teleport, depending on the distance 2015-07-08 22:13:49 Fenhl if I'm not mistaken 2015-07-08 22:14:01 PierreC ah 2015-07-08 22:14:04 PierreC alright 2015-07-08 22:19:18 Fenhl PierreC: and next time you have a question, you may want to stick around a bit longer, maybe install a bouncer. Otherwise people can't answer your questions 2015-07-08 22:19:37 PierreC I don't use IRC much unfortunately 2015-07-08 22:19:39 PierreC thanks for the tip though 2015-07-08 22:22:27 <-- barneygale_ (~barneygal@5d60a5cc.skybroadband.com) a quitté (Ping timeout: 276 seconds) 2015-07-08 22:26:10 --> barneygale_ (~barneygal@5d60a5cc.skybroadband.com) a rejoint #mcdevs 2015-07-08 22:28:01 PierreC hm 2015-07-08 22:28:14 PierreC I've tried Entity Relative Move Look 2015-07-08 22:28:41 PierreC however the player appears to spawn in the void, fall, stop, and then spasm 2015-07-08 22:32:47 <-- barneygale_ (~barneygal@5d60a5cc.skybroadband.com) a quitté (Ping timeout: 250 seconds) 2015-07-08 22:45:29 <-- Techcable (~Techcable@181.ip-167-114-113.net) a quitté (Quit: ZNC - http://znc.in) 2015-07-08 22:46:01 --> Techcable (~Techcable@181.ip-167-114-113.net) a rejoint #mcdevs 2015-07-08 23:01:53 <-- olivervscreeper (~olivervsc@host81-129-108-239.range81-129.btcentralplus.com) a quitté (Ping timeout: 240 seconds) 2015-07-08 23:04:03 --> benbaptist (~benbaptis@c-50-172-95-66.hsd1.in.comcast.net) a rejoint #mcdevs 2015-07-08 23:13:17 Not-a8a6 [1.8-Models] drXor pushed 1 commit to master [+7/-0/±13] http://git.io/vqojH 2015-07-08 23:13:19 Not-a8a6 [1.8-Models] drXor 5f3667d - Begin the Great Tool Refactor. 2015-07-08 23:19:07 --> UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a rejoint #mcdevs 2015-07-08 23:19:11 <-- UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a quitté (Client Quit) 2015-07-08 23:24:06 --> Dhruv0 (442a0503@gateway/web/freenode/ip.68.42.5.3) a rejoint #mcdevs 2015-07-08 23:24:52 Dhruv0 Is the serverbound Client Status packet sent before or after the world has been sent to the client 2015-07-08 23:28:14 <-- balrog (~balrog@unaffiliated/balrog) a quitté (Ping timeout: 245 seconds) 2015-07-08 23:28:42 <-- PierreC (~PierreC@c-50-135-125-106.hsd1.wa.comcast.net) a quitté (Ping timeout: 250 seconds) 2015-07-08 23:29:06 --> balrog (~balrog@unaffiliated/balrog) a rejoint #mcdevs 2015-07-08 23:29:49 --> PierreC (~PierreC@c-50-135-125-106.hsd1.wa.comcast.net) a rejoint #mcdevs 2015-07-08 23:35:00 +XorBoole Aikar I believe not 2015-07-08 23:35:12 +XorBoole though I think db et al can give you a better answer 2015-07-08 23:40:25 Fenhl PierreC: which packet are you referring to? There is none the wiki calls Entity Relative Move Look 2015-07-08 23:48:37 -- zz_r04r est maintenant connu sous le nom r04r 2015-07-08 23:52:29 Dhruv0 Let me rephrase my question, when is the Client Status sent on login? 2015-07-09 00:07:31 Fenhl good question, that seems to be missing from the FAQ 2015-07-09 00:09:43 Dhruv0 Yeah :| 2015-07-09 00:10:03 Dhruv0 The login sequence is out-dated a bit too 2015-07-09 00:10:17 Dhruv0 (The packet ids at least) 2015-07-09 00:10:52 +ammar2 to be fair the FAQ explicitly mentions that bit may be outdated :3 2015-07-09 00:11:24 Dhruv0 Yeah ;p 2015-07-09 00:12:13 Dhruv0 It says "Initial Spawn", should I assume that be after I spawn the player? 2015-07-09 00:12:43 Dhruv0 My bad, I mean "Request stats" 2015-07-09 00:18:24 Fenhl that FAQ though 2015-07-09 00:18:39 Fenhl > We have a script 2015-07-09 00:18:42 Fenhl > red link 2015-07-09 00:18:50 +XorBoole Fenhl "NYI" 2015-07-09 00:18:58 Fenhl :D 2015-07-09 00:19:06 +XorBoole or, equivalently, "WONTFIX" 2015-07-09 00:20:31 Dhruv0 So I tested the Client Status packet very poorly (So don't take my results seriously) and it seems it is sent before or during the chunks 2015-07-09 00:33:29 Not-48e3 [wiki.vg] Edit by Fenhl to Protocol FAQ -> http://wiki.vg/index.php?title=Protocol_FAQ&diff=6695&oldid=5470 2015-07-09 00:33:52 <-- SpaceManiac (~SpaceMani@74-194-137-165.gtwncmta01.res.dyn.suddenlink.net) a quitté (Ping timeout: 265 seconds) 2015-07-09 00:35:29 +ammar2 so undefined behaviour then :3 2015-07-09 00:35:38 +ammar2 send it whenever pftt 2015-07-09 00:36:36 <-- PierreC (~PierreC@c-50-135-125-106.hsd1.wa.comcast.net) a quitté (Ping timeout: 246 seconds) 2015-07-09 00:37:33 <-- Dhruv0 (442a0503@gateway/web/freenode/ip.68.42.5.3) a quitté (Ping timeout: 246 seconds) 2015-07-09 00:38:38 --> SpaceManiac (~SpaceMani@74-194-137-165.gtwncmta01.res.dyn.suddenlink.net) a rejoint #mcdevs 2015-07-09 00:38:38 -- Mode #mcdevs [+v SpaceManiac] par ChanServ 2015-07-09 00:44:18 --> PierreC (~PierreC@c-50-135-125-106.hsd1.wa.comcast.net) a rejoint #mcdevs 2015-07-09 00:45:08 --> bfoxwell (~Foxwell@c-76-110-182-132.hsd1.fl.comcast.net) a rejoint #mcdevs 2015-07-09 00:45:56 Not-48e3 [wiki.vg] Edit by Fenhl to Protocol FAQ -> http://wiki.vg/index.php?title=Protocol_FAQ&diff=6696&oldid=5470 2015-07-09 00:45:56 Fenhl so I just got a captcha because I added a link to this channel in the Protocol FAQ article 2015-07-09 00:46:08 Fenhl the captcha was, what is the name of our IRC channel? 2015-07-09 00:50:07 Not-48e3 [wiki.vg] Edit by Fenhl to Protocol FAQ -> http://wiki.vg/index.php?title=Protocol_FAQ&diff=6697&oldid=5470 2015-07-09 00:52:00 <-- PierreC (~PierreC@c-50-135-125-106.hsd1.wa.comcast.net) a quitté (Ping timeout: 244 seconds) 2015-07-09 00:55:48 <-- Brandon15811__ (uid13052@gateway/web/irccloud.com/x-tmsgmlletnyrwjeb) a quitté (Ping timeout: 248 seconds) 2015-07-09 00:56:20 <-- deathrat____ (sid14886@gateway/web/irccloud.com/x-cuyzadkcbmvfylma) a quitté (Ping timeout: 248 seconds) 2015-07-09 00:56:52 <-- Kazuto (uid43749@gateway/web/irccloud.com/x-jacrbcpvxjwksaru) a quitté (Ping timeout: 248 seconds) 2015-07-09 00:57:03 --> deathrat____ (sid14886@gateway/web/irccloud.com/x-yazmiblugefvxjqt) a rejoint #mcdevs 2015-07-09 00:58:47 --> Kazuto (uid43749@gateway/web/irccloud.com/x-assattexzmocpeet) a rejoint #mcdevs 2015-07-09 00:59:04 --> Brandon15811__ (uid13052@gateway/web/irccloud.com/x-xbdymmwjqkskncss) a rejoint #mcdevs 2015-07-09 01:01:31 +XorBoole Fenhl what is the name of our IRC channel? 2015-07-09 01:02:05 Fenhl I don't know, I'm a spambot 2015-07-09 01:02:25 +XorBoole you seem awefully quite for a spambot 2015-07-09 01:02:26 +ammar2 is it devmc? 2015-07-09 01:02:58 +XorBoole no, devsmc. pleb 2015-07-09 01:03:28 Fenhl JOIN NOW, RECEIVE COOKIES ===> #mcdevs <=== 2015-07-09 01:06:26 +XorBoole pls join my server 4 drop party 2015-07-09 01:06:43 +ammar2 I am from planet mc devs give root 2015-07-09 01:06:50 +XorBoole 127.0.0.1:25565 free op and admin 2015-07-09 01:06:52 +XorBoole pls join 2015-07-09 01:08:48 Gjum haha 2015-07-09 01:09:38 Gjum mine is better, find it at ::1 2015-07-09 01:12:50 * mniip ddoses XorBoole's server 2015-07-09 01:14:21 +XorBoole Gjum I are jelly. nice ip 2015-07-09 01:14:39 +XorBoole but xors-server.no-ip.org is betur 2015-07-09 01:14:52 +XorBoole I hav a real ip 2015-07-09 01:15:44 +ammar2 that's not a real ip 2015-07-09 01:15:54 +ammar2 real ips have curves 2015-07-09 01:17:01 Gjum ^ 2015-07-09 01:17:07 Gjum 3 at least 2015-07-09 01:28:40 --> Dhruv0 (442a0503@gateway/web/freenode/ip.68.42.5.3) a rejoint #mcdevs 2015-07-09 01:28:48 Dhruv0 So I have another question 2015-07-09 01:29:08 Dhruv0 I'm sending Set compression with -1, but the client crashes due to the -1 2015-07-09 01:29:21 Dhruv0 According to the wiki, -1 should mean "No compression" 2015-07-09 01:29:21 +ammar2 lolwat 2015-07-09 01:29:28 +ammar2 whats the error on the client side 2015-07-09 01:30:01 Dhruv0 java.lang.ArrayIndexOutOfBoundsException: -1 2015-07-09 01:31:26 +ammar2 well that functionality may have been removed, no clue 2015-07-09 01:31:40 Dhruv0 Oh 2015-07-09 01:31:42 Dhruv0 Ok 2015-07-09 01:31:46 Dhruv0 Bye for now I guess 2015-07-09 01:31:50 +ammar2 wait 2015-07-09 01:31:50 <-- Dhruv0 (442a0503@gateway/web/freenode/ip.68.42.5.3) a quitté (Client Quit) 2015-07-09 01:31:54 +ammar2 fuck 2015-07-09 01:32:08 +ammar2 I was gonna tell him sending a really high threshold would serve the same purpose 2015-07-09 01:42:43 +XorBoole ammar2 what does 0 do? 2015-07-09 01:42:50 +XorBoole compress all the things? 2015-07-09 01:43:02 +ammar2 well I'd imagine its packet size > compression threshold 2015-07-09 01:43:05 +ammar2 and everything is > 0 2015-07-09 01:43:09 +ammar2 so it would compress everything 2015-07-09 01:44:14 * XorBoole deflates ammar2 2015-07-09 01:46:36 --> WizardCM (~WizardCM@14-201-31-151.static.tpgi.com.au) a rejoint #mcdevs 2015-07-09 01:48:46 +ammar2 XorBoole: why did zlib choose deflate/inflate anyway 2015-07-09 01:49:16 +ammar2 surely that wasn't more popular than compression/decompression 2015-07-09 01:49:30 gurun i'm giving any kid who ask for OP full creative. And then they are in chock when they are allowed to use Lava and Water as much as they want and spawn 100's of mobs. And then it turns boring when the server doesn't crash, but their clients do. 2015-07-09 01:52:13 Aragas that's cold blood 2015-07-09 01:52:31 gurun and then you have the pathalogical griefes. They have to grief even if griefing is allowed. And they act like it is griefing .. and simply don't know what to do when no one cares. 2015-07-09 01:52:45 gurun or the guys coming in, using hacks .. and it's allowed. 2015-07-09 01:53:04 +XorBoole lolwut 2015-07-09 01:53:23 gurun it's so funny. They simply don't know how to behave. 2015-07-09 01:53:37 Gjum crazy 2015-07-09 01:53:41 Gjum where is that? 2015-07-09 01:53:49 gurun So instead .. they end up PVP'ing eachoter for 2 hours with a game of 3 min kill-em-all k/d ratio counter. 2015-07-09 01:53:55 gurun it's so funny 2015-07-09 01:54:15 gurun it's on the test.inpvp.net server (it's running inside my visual studio) 2015-07-09 01:54:28 Gjum wait what? 2015-07-09 01:54:54 Gjum and it doesnt crash on all the mobs/lava flow/...? 2015-07-09 01:55:00 gurun uh, no? 2015-07-09 01:55:04 gurun why would it? 2015-07-09 01:55:20 Gjum well it crashes clients 2015-07-09 01:55:40 gurun yeah, after around 500 players (entities) .. or when the rendering gets really difficult, it crashes the clients. 2015-07-09 01:55:55 Gjum ah k 2015-07-09 01:56:40 --> PierreC (~PierreC@c-50-135-125-106.hsd1.wa.comcast.net) a rejoint #mcdevs 2015-07-09 01:57:08 gurun i had them wreck a PVP map with a wall around it. Fill it up with lava like a pool. They went on it like crazy for like 15 min .. and then it wasn't fun anymore. 2015-07-09 01:57:58 gurun i always said that .. allow hacks. Just make sure that you reward fair play. 2015-07-09 01:58:18 gurun so fly all you want .. but health only regenerates on the ground. 2015-07-09 01:58:24 gurun etc 2015-07-09 01:59:12 +XorBoole gurun you sound like some kind of crazed psychologist 2015-07-09 01:59:38 gurun i'm a parent 2015-07-09 02:00:03 +XorBoole Gjum this might amuse you: picture a java assembly language that is also a lisp, with lisp macros 2015-07-09 02:00:10 +XorBoole gurun close enough 2015-07-09 02:01:40 <-- PierreC (~PierreC@c-50-135-125-106.hsd1.wa.comcast.net) a quitté (Ping timeout: 250 seconds) 2015-07-09 02:01:59 gurun guess so. I've observed my son .. he can also go into my worlds .. and kill me for nothing, for hours. 2015-07-09 02:02:15 gurun i have absolutely no idea what makes these kids tick. 2015-07-09 02:02:22 gurun but i'm sure it isn't boobs 2015-07-09 02:02:34 +ammar2 XorBoole: (imagine(what (language (? 2015-07-09 02:02:59 +ammar2 did I mention (((()(())(( 2015-07-09 02:03:14 gurun Go? 2015-07-09 02:03:24 Gjum mmh, now I want to eat fish somehow... 2015-07-09 02:03:30 +XorBoole ammar2 (def (public) foo (void) ((new java.lang.Exception) (throw))) 2015-07-09 02:03:49 +ammar2 good god 2015-07-09 02:03:52 gurun wtf is that? 2015-07-09 02:03:59 +XorBoole where new and throw are the new and athrow jvm instructions 2015-07-09 02:04:11 +XorBoole obviouslly 2015-07-09 02:04:20 +ammar2 gurun: lisp, scheme etc are notorious for having too many brackets 2015-07-09 02:04:24 +ammar2 we were making fun 2015-07-09 02:04:46 +XorBoole agreed lisp is pretty silly. but it makes macros super easy to implement 2015-07-09 02:04:49 gurun i don't remeber lisp anymore. The only thing i remeber about it is that i forgot it very quickly 2015-07-09 02:04:50 +XorBoole which is the whole point of the language 2015-07-09 02:04:58 +XorBoole super-low-level asm generation with macros 2015-07-09 02:05:08 +XorBoole you could have a this macro that expands to (load-obj 0) for example 2015-07-09 02:05:22 +ammar2 that's literally what it was designed for anyway 2015-07-09 02:05:23 +XorBoole you could have a macro to generate a lambda 2015-07-09 02:05:30 +ammar2 or one of the prinicpal focuses anyway 2015-07-09 02:05:32 +XorBoole hence why I'm using lisp =) 2015-07-09 02:05:39 +ammar2 the other focus was to make it ugly as butts 2015-07-09 02:05:39 gurun lisp .. was that functional or logical? 2015-07-09 02:05:40 +ammar2 :^) 2015-07-09 02:05:48 +ammar2 uhh kinda functional 2015-07-09 02:06:18 gurun ok, so only one line allowed :-) 2015-07-09 02:06:18 +XorBoole but lisp just writing the ast by hand! 2015-07-09 02:06:30 <-- TheCutter|AFK (bnc119@bncs.monsterserver.de) a quitté (Ping timeout: 264 seconds) 2015-07-09 02:06:35 +XorBoole well, kind of 2015-07-09 02:06:40 +XorBoole a lot of the constructs are lists 2015-07-09 02:07:08 gurun well, that's the def of functional, isn't it .. all is lists .. in one line, or you didn't think hard enough about it. 2015-07-09 02:07:13 +XorBoole a method definition takes a list of modifiers, a name, a signature (a list of types ending in the return type) and list of opcodes 2015-07-09 02:07:19 +ammar2 lisp is literrally lists 2015-07-09 02:07:26 gurun like ml 2015-07-09 02:07:26 +XorBoole s/lists/ lists and atoms 2015-07-09 02:07:28 +ammar2 the name comes from list processing 2015-07-09 02:07:32 +ammar2 not even kidding 2015-07-09 02:08:02 gurun i've never encounterd languages like that in the real world. 2015-07-09 02:08:17 gurun the closest to "functional" i've ever seen is probably xslt 2015-07-09 02:08:18 +XorBoole I thought it meant Lots of Incredible Stupid Parenteses 2015-07-09 02:08:18 gurun eh 2015-07-09 02:08:31 +XorBoole gurun there's some crazy fuckers running around using clojure in ldoruction 2015-07-09 02:08:39 +ammar2 XorBoole: that is also incredibly accurate 2015-07-09 02:08:40 +XorBoole hell twitter used to use scala in production 2015-07-09 02:08:52 +XorBoole now they use ruby which is a joke of a language 2015-07-09 02:08:58 +XorBoole smalltalk is better than ruby in all ways 2015-07-09 02:09:13 gurun ruby was seriously very popular .. only in the states. 2015-07-09 02:09:27 +XorBoole ruby is only popular because of rails 2015-07-09 02:09:43 +XorBoole you should use a real language, like haskell 2015-07-09 02:09:53 +XorBoole with a modern, civilized compiler that can elide entire loops 2015-07-09 02:10:00 gurun nah,i'm from pascal in the beginning. That's my home-language. 2015-07-09 02:10:08 +XorBoole also. 2015-07-09 02:10:09 Aragas gurun: i can try and connect a lot of clients to your server 2015-07-09 02:10:11 +ammar2 btw here's an amazing read on lisp if you have the time http://www.defmacro.org/ramblings/lisp.html 2015-07-09 02:10:12 +XorBoole #define BEGIN { 2015-07-09 02:10:22 +ammar2 gurun: he's threatening a DDoS 2015-07-09 02:10:23 gurun Aragas, it's MCPE .. so i don't think so. 2015-07-09 02:10:25 +XorBoole ever seen the bash source? 2015-07-09 02:10:50 Aragas oh, okay. have still some bugs with mpce 2015-07-09 02:10:51 gurun Aragas, and i have an emulator already .. doing just that. 2015-07-09 02:10:59 +XorBoole ammar2 http://www.loper-os.org/?p=42 2015-07-09 02:11:13 gurun called "service killer" for a reason.. 2015-07-09 02:11:31 +XorBoole wait there's PE emulators for PC? 2015-07-09 02:11:35 +XorBoole where do I find this 2015-07-09 02:11:44 gurun no, it's a code emulator 2015-07-09 02:11:51 +XorBoole oh. =< 2015-07-09 02:11:57 gurun runs the players as .. bots kind of. 2015-07-09 02:12:08 gurun does all the right "bad" things to a server. 2015-07-09 02:12:43 +XorBoole been wanting to check out PE ever since me and shoghi giggled like little girls at pocketmine's pre-startup 2015-07-09 02:12:47 gurun XorBoole, end of month you'll have PE on windows anyways.. 2015-07-09 02:12:52 +XorBoole gurun I have a mac 2015-07-09 02:13:01 +XorBoole do I look like some kind of wandows pwasant to you? 2015-07-09 02:13:13 Aragas wandows iz life 2015-07-09 02:13:17 gurun serously, that have to be YOUR problem :-) 2015-07-09 02:13:45 gurun but i'm sure as always that windows 10 will also run best on mac 2015-07-09 02:13:56 +XorBoole soon enough everything will be PE protocol and I'll never have to worry about it 2015-07-09 02:14:12 Aragas hope not -_- 2015-07-09 02:14:29 +XorBoole win10 is evidence ot that 2015-07-09 02:14:33 gurun yeah, well . 2015-07-09 02:14:40 +XorBoole PC will either peter out or merge with PE 2015-07-09 02:14:44 gurun the userbase is a "bit" bigger on PE anyways. 2015-07-09 02:14:53 +XorBoole PE also has a better protocol 2015-07-09 02:14:54 * XorBoole runs 2015-07-09 02:15:01 Gjum does it? 2015-07-09 02:15:05 Aragas shots fired 2015-07-09 02:15:05 +XorBoole so I'm told 2015-07-09 02:15:07 Gjum whats the main differences? 2015-07-09 02:15:13 gurun XorBoole, i completely agree.. but we seem to be the only ones thinging that. 2015-07-09 02:15:14 Aragas tcp\udp 2015-07-09 02:15:23 Gjum only udp? 2015-07-09 02:15:34 gurun 125.000.000 messages on my laptop 2015-07-09 02:15:38 Gjum or are important things like inventory still tcp? 2015-07-09 02:15:40 Aragas no magic varints 2015-07-09 02:15:45 gurun i can't do that on TCP 2015-07-09 02:15:48 Aragas pure udp 2015-07-09 02:16:09 Gjum how does it handle dropped clicking packets? 2015-07-09 02:16:20 Gjum or block place 2015-07-09 02:16:30 gurun double click on them .. and UDP takes care of the rest 2015-07-09 02:16:31 Aragas who needs so much messages anyway? 2015-07-09 02:16:31 gurun ? 2015-07-09 02:16:52 gurun Gjum it handles it very well .. not sure what you mean 2015-07-09 02:17:15 Gjum no I mean, if I click and my client updates its state, but the server never does? 2015-07-09 02:17:25 gurun it's sequenced reliable UDP 2015-07-09 02:17:31 Aragas i mean, entity movement via upd will be really nice, but other stuff not so much 2015-07-09 02:17:36 Gjum ^ 2015-07-09 02:17:37 gurun so ACK/NAK .. and shitloads of resends on bad clients 2015-07-09 02:17:49 Gjum ok, as expecting that 2015-07-09 02:17:52 Gjum *was 2015-07-09 02:18:10 +XorBoole sadly PE isn't Java(tm) 2015-07-09 02:18:27 +XorBoole C# would have been nicer... but we have C++. oh well 2015-07-09 02:18:32 gurun no, it's cross platform 2015-07-09 02:18:48 Aragas php would be the best option 2015-07-09 02:19:01 +XorBoole Aragas don't encourage them 2015-07-09 02:19:03 gurun Aragas you are making us gigle again 2015-07-09 02:19:19 +XorBoole inb4 PocketMine: Client Edition 2015-07-09 02:19:29 Aragas wow i can literally feel all those burns 2015-07-09 02:20:02 +XorBoole what burns? I haven't notcied, but I'm probably too busy playing pokemon 2015-07-09 02:20:09 gurun yeah, it's us stairing at you forcing you to leave the room. 2015-07-09 02:20:28 gurun but WAIT! 2015-07-09 02:20:36 gurun i've heard PHP will be much faster .. 2015-07-09 02:20:39 gurun .. next release. 2015-07-09 02:20:51 +XorBoole fix your fookin servers nintendo 2015-07-09 02:20:53 Aragas man they even have a 3d engine 2015-07-09 02:21:02 +XorBoole there's a PHP 3d engine? 2015-07-09 02:21:07 +XorBoole well, now I've seen everything 2015-07-09 02:21:11 * XorBoole jumps out the window 2015-07-09 02:21:32 --> TheCutter|AFK (bnc119@bncs.monsterserver.de) a rejoint #mcdevs 2015-07-09 02:21:32 * gurun tailing XorBoole on the way down 2015-07-09 02:21:37 Aragas it's our duty do to a client/server 2015-07-09 02:21:58 gurun but i remeber saying the same with Java3d came out. And we all know how amazing that turned out to be 2015-07-09 02:22:08 * gurun runs reaaaally fast now 2015-07-09 02:22:11 +XorBoole let's see if you can beat Thinkofdeath at the client game 2015-07-09 02:22:43 +ammar2 but his renderer is so pwetty 2015-07-09 02:22:55 +ammar2 aside from the segfaulting amd drivers thing 2015-07-09 02:22:58 +XorBoole I have attempted to do a wonder render three times now. fix your fucking servers nintendo 2015-07-09 02:23:16 Aragas Minecraft PiHiPi Edition: The GameKillah 2015-07-09 02:23:36 Aragas Now with awesome http based protocol! 2015-07-09 02:23:45 +XorBoole but does it run on a raspberry pi? 2015-07-09 02:23:46 gurun why are there so few client implementations of MC? I'm thinking that PVP clients could be popular, just like the PVP servers are. 2015-07-09 02:23:51 +XorBoole spigot does 2015-07-09 02:23:55 * XorBoole runs really fast 2015-07-09 02:24:22 +ammar2 XorBoole: but the pi doesn't have enough memory to run on the pi 2015-07-09 02:24:24 +XorBoole gurun because 3D is hard and the only person crazy enough to try is thinkofdeath 2015-07-09 02:24:26 +ammar2 what the fuck 2015-07-09 02:24:45 +ammar2 the pi doesn't have enough memory for the build process** 2015-07-09 02:24:47 +ammar2 christ 2015-07-09 02:24:53 +ammar2 not sure what happened there 2015-07-09 02:25:06 +XorBoole ammar2 download more dedotated wam 2015-07-09 02:25:36 Aragas Yup. #d< redstone, physics. i'm not even hoping to emulte redstone 2015-07-09 02:25:57 Aragas Not sure from where #d< come from, lol 2015-07-09 02:26:04 gurun lisp? 2015-07-09 02:26:28 Aragas <_< 2015-07-09 02:26:29 +XorBoole this is the fifth time in a row a wonder trade has failed. nintendo, who the fuck wrote your load balancers, notch? 2015-07-09 02:26:54 gurun XorBoole, who the fuck plays on nintendo these days? 2015-07-09 02:27:19 Aragas They don'tr even have consoles! 2015-07-09 02:27:24 +XorBoole gurun people like me who like pokemon 2015-07-09 02:27:26 * XorBoole hides 2015-07-09 02:28:00 gurun Yeah, guess that would have been funny, not being true... 2015-07-09 02:28:09 * XorBoole give sup 2015-07-09 02:28:15 gurun now it's mostly sad. Nintendo .. duh .. 2015-07-09 02:28:16 * XorBoole throws his 3DS in the pool 2015-07-09 02:28:26 Aragas Nonono 2015-07-09 02:28:30 Aragas Wait with that 2015-07-09 02:28:38 gurun who is going to take care of the little pokemons now!? 2015-07-09 02:28:45 Aragas I heard 3ds have some development tools 2015-07-09 02:28:55 gurun Aragas, AXE and HAMMER! 2015-07-09 02:29:18 Aragas :DD 2015-07-09 02:29:48 gurun that's what you learn from late nights with AIX :-( 2015-07-09 02:30:02 Aragas I wonder how big the safe file there can be 2015-07-09 02:30:28 +XorBoole gurun well, I think I have somewhere around 600, you can take them 2015-07-09 02:30:40 * XorBoole pushes gurun into a bin full of pokeballs 2015-07-09 02:30:46 gurun lol 2015-07-09 02:31:05 gurun God .. remeber when people had daycare for that shit 2015-07-09 02:33:15 Aragas I wonder 2015-07-09 02:33:51 gurun hmm, youtube. There something seriously wrong having a sexy bitch singing "bend over" 2015-07-09 02:34:21 Aragas What if minecraft will be ported on nintendo platorms? Maybe they will get some money, i heard they had problems with it 2015-07-09 02:34:40 gurun yeah, Mojang is struggling 2015-07-09 02:35:32 Aragas Swing your sword with a wiimote! 2015-07-09 02:36:08 +ammar2 ( ͡° ͜ʖ ͡°) 2015-07-09 02:36:25 gurun or go into PVP mode and use the development tools mentioned earlier 2015-07-09 02:36:42 Aragas I think i just saved nintendo, where can i contact them? 2015-07-09 02:36:53 +ammar2 Aragas: book a flight to japan 2015-07-09 02:37:05 gurun Aragas i don't think they use email. 2015-07-09 02:37:22 Aragas should i contact first godzilla? 2015-07-09 02:37:38 gurun XorBoole, can have his pokemons setup a meeting 2015-07-09 02:38:22 gurun but seriously, that would be kind of cool. I think there is a place for that. 2015-07-09 02:38:40 * gurun wispers the name of the place silently to himself 2015-07-09 02:39:17 Aragas I wonder if a cubic pikachu can be copyrighted 2015-07-09 02:39:39 gurun No guys. I think that when I'm listening to Selena Gomez on youtube it is time to throw in the towel for today. 2015-07-09 02:39:45 Aragas If i'll do him as a pet, i'll become the new minecraft 2015-07-09 02:40:07 +ammar2 Aragas: depends on the likeness 2015-07-09 02:40:27 gurun i think that could work. And you can do tours in Japan and meet fans. 2015-07-09 02:41:00 Aragas i'll voice my own pika-pika sounds, cause, u know, copystuff 2015-07-09 02:41:56 gurun and if you succeed, will you celebrat? 2015-07-09 02:42:07 Aragas they'll never know what got 'em 2015-07-09 02:42:56 Aragas depends :DDD 2015-07-09 02:43:04 gurun do it in PHP and blameshogi. 2015-07-09 02:43:25 Aragas wow it just got to a whole new level 2015-07-09 02:43:40 gurun i'm sure that if PHP could speak, it would do pika-pika sounds. 2015-07-09 02:43:41 Aragas didn't even needed a candy for that 2015-07-09 02:43:57 Aragas AI with pikachu voice 2015-07-09 02:44:13 Aragas in php 2015-07-09 02:44:28 gurun make the adult version end with pikabooob 2015-07-09 02:44:35 gurun and everybody wil be happy 2015-07-09 02:44:58 Aragas ppppi..pppi..ppphi..pi 2015-07-09 02:45:28 Aragas what are we doing with our lives 2015-07-09 02:45:50 gurun playing nintendo and watching Selena Gomez on youtube? 2015-07-09 02:46:26 gurun hmm, i'm going to run into the bedroom and ask my wife to do pikachu imitations. Cosplay. 2015-07-09 02:46:37 gurun so .. now it's really really time to go to bed 2015-07-09 02:47:04 Aragas i just wanted to connect to a minecraft server via rainmeter, and now i'm here, discussing pikachu cosplays 2015-07-09 02:47:45 gurun I think this was the intention behind IRC, was it not. Night guys. 2015-07-09 02:49:07 Aragas WCGW? 2015-07-09 02:55:58 <-- Aragas (Aragas@37-145-248-112.broadband.corbina.ru) a quitté (Ping timeout: 265 seconds) 2015-07-09 03:36:59 <-- Addisonep (uid86198@gateway/web/irccloud.com/x-tlsiszmxflxbyuhz) a quitté (Quit: Connection closed for inactivity) 2015-07-09 04:21:47 -- r04r est maintenant connu sous le nom zz_r04r 2015-07-09 05:29:51 --> redstonehelper_ (~redstoneh@unaffiliated/redstonehelper) a rejoint #mcdevs 2015-07-09 05:32:09 <-- redstonehelper (~redstoneh@unaffiliated/redstonehelper) a quitté (Ping timeout: 255 seconds) 2015-07-09 05:32:09 -- redstonehelper_ est maintenant connu sous le nom redstonehelper 2015-07-09 06:09:17 <-- gurun (~gurun@c83-249-65-92.bredband.comhem.se) a quitté (Ping timeout: 246 seconds) 2015-07-09 08:07:20 <-- ScruffyRules (Scruff@i.am.scruffyrules.com) a quitté (Quit: Bouncer 1, Husk 0) 2015-07-09 08:07:20 <-- Zachoz (Zachoz@zach.is.oreso.me) a quitté (Quit: System.exit(0);) 2015-07-09 08:10:12 <-- redstonehelper (~redstoneh@unaffiliated/redstonehelper) a quitté #mcdevs 2015-07-09 08:10:22 --> redstonehelper (~redstoneh@unaffiliated/redstonehelper) a rejoint #mcdevs 2015-07-09 08:10:23 <-- redstonehelper (~redstoneh@unaffiliated/redstonehelper) a quitté #mcdevs 2015-07-09 08:10:30 --> redstonehelper (~redstoneh@unaffiliated/redstonehelper) a rejoint #mcdevs 2015-07-09 08:32:36 <-- bfoxwell (~Foxwell@c-76-110-182-132.hsd1.fl.comcast.net) a quitté (Ping timeout: 255 seconds) 2015-07-09 08:36:38 --> Addisonep (uid86198@gateway/web/irccloud.com/x-xtkksvpageqoight) a rejoint #mcdevs 2015-07-09 09:23:44 --> UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a rejoint #mcdevs 2015-07-09 10:24:58 shoghicp so many PHP mentions in this channel lately 2015-07-09 10:40:45 <-- UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a quitté (Quit: UUID00) 2015-07-09 10:46:56 --> kev009_ (~kev009@tempe0.bbox.io) a rejoint #mcdevs 2015-07-09 10:46:56 -- Mode #mcdevs [+v kev009_] par ChanServ 2015-07-09 10:48:10 <-- kev009 (~kev009@tempe0.bbox.io) a quitté (Ping timeout: 250 seconds) 2015-07-09 10:52:41 +md_5- php php php php php 2015-07-09 10:57:09 -- md_5- est maintenant connu sous le nom md_5 2015-07-09 11:04:12 morfin fuck PHP 2015-07-09 11:04:27 * morfin is PHP programmer learning C++ ) 2015-07-09 11:04:45 shoghicp <- PHP programmer doing C++ as well :) 2015-07-09 11:06:09 morfin PHP is for sites, not for anything else 2015-07-09 11:06:33 shoghicp I'll show you that is not true :D 2015-07-09 11:06:40 shoghicp only for the fun of doing it 2015-07-09 11:07:07 morfin you write daemons on PHP? 2015-07-09 11:07:20 shoghicp actually I do 2015-07-09 11:07:24 morfin sick bastard! 2015-07-09 11:07:36 shoghicp with multithreading as well! 2015-07-09 11:07:49 morfin that's shit 2015-07-09 11:07:54 morfin i'd prefer Node.js ) 2015-07-09 11:08:26 shoghicp :P 2015-07-09 11:08:39 morfin what? 2015-07-09 11:09:26 shoghicp I have a NFC library written in PHP as well :) 2015-07-09 11:09:38 shoghicp and other to dump firmware from some USB devices 2015-07-09 11:10:12 morfin you try use it in wrong places) 2015-07-09 11:10:48 morfin don't forget history of PHP 2015-07-09 11:11:24 shoghicp hmm? 2015-07-09 11:12:08 shoghicp anyway, I'm that guy that wrote a full MCPE server in PHP :P 2015-07-09 11:12:26 shoghicp the one that has thephpguy@mojang.com >:D 2015-07-09 11:13:04 shoghicp and I hate PHP as well :) 2015-07-09 11:13:17 morfin but i am trying to implement Minecraft server using C++ and ASIO ) 2015-07-09 11:13:25 +md_5 anyway, I'm that guy that wrote a full MCPE server in PHP :P 2015-07-09 11:13:33 +md_5 he also wrote a full CLIENT in php 2015-07-09 11:13:36 +md_5 TWICE 2015-07-09 11:13:39 shoghicp two of them * 2015-07-09 11:13:44 morfin shit 2015-07-09 11:13:59 morfin you have no life 2015-07-09 11:14:03 shoghicp second one was compatible from b1.6 to 1.5 final I think 2015-07-09 11:14:20 morfin PHP is ugly language 2015-07-09 11:15:29 morfin look at Python - it does not have such ugly API like strtr,str_replace,trim,strpos etc 2015-07-09 11:15:54 shoghicp multithreading :) 2015-07-09 11:16:11 morfin and array_merge,array_search,in_array etc 2015-07-09 11:16:19 morfin what about multithreading? 2015-07-09 11:16:20 shoghicp D: in_array 2015-07-09 11:16:49 shoghicp people use that instead if isset(), O(n) vs almost O(1) 2015-07-09 11:18:47 shoghicp anyway, got work to do 2015-07-09 11:24:09 morfin yes, i am going to return to my little C++ experiment ) 2015-07-09 11:29:11 --> nic (b028e799@gateway/web/freenode/ip.176.40.231.153) a rejoint #mcdevs 2015-07-09 11:29:17 nic hello 2015-07-09 11:29:35 -- nic est maintenant connu sous le nom Guest45803 2015-07-09 11:30:48 Guest45803 i am having trouble with handshaking 2015-07-09 11:31:31 <-- Guest45803 (b028e799@gateway/web/freenode/ip.176.40.231.153) a quitté (Client Quit) 2015-07-09 11:32:19 --> the_user (b028e799@gateway/web/freenode/ip.176.40.231.153) a rejoint #mcdevs 2015-07-09 11:32:53 the_user hi 2015-07-09 11:34:55 the_user hello any one 2015-07-09 11:36:31 --> nickim (b028e799@gateway/web/freenode/ip.176.40.231.153) a rejoint #mcdevs 2015-07-09 11:36:35 nickim hello 2015-07-09 11:37:48 <-- the_user (b028e799@gateway/web/freenode/ip.176.40.231.153) a quitté (Quit: Page closed) 2015-07-09 11:37:49 <-- nickim (b028e799@gateway/web/freenode/ip.176.40.231.153) a quitté (Client Quit) 2015-07-09 11:52:54 morfin hmmm guys 2015-07-09 11:53:25 morfin remember you said packets size is not predictable? 2015-07-09 12:02:45 barneygale you can predict it once you've read the packet length field ;) 2015-07-09 12:04:12 morfin i mean outgoing 2015-07-09 12:04:26 morfin that's more messy 2015-07-09 12:12:31 +md_5 morfin just use a stream to write your data which wraps either an expanding buffer, or a collection of scattering buffers 2015-07-09 12:13:54 --> gurun (~gurun@c83-249-65-92.bredband.comhem.se) a rejoint #mcdevs 2015-07-09 12:14:53 morfin i can just allocate max packet size for some packets 2015-07-09 12:16:31 gurun yes, randomly. just to make some of the packets happy 2015-07-09 12:16:51 morfin becaus expanding means unnesessary copying after every reallocation 2015-07-09 12:17:16 morfin gurun, some packets size is predictable 2015-07-09 12:17:58 gurun i do something similar in C# 2015-07-09 12:18:15 morfin do what? 2015-07-09 12:19:00 gurun allocate "max" memory, and use a var for size 2015-07-09 12:19:21 morfin that's reasonable only for some packets 2015-07-09 12:19:54 gurun it's reasonable for some specific byte operations, not always related to packets. 2015-07-09 12:20:49 morfin there is lots of stuff like metadatas, entities, NBT etc 2015-07-09 12:21:11 gurun but when you have stuff like varint .. it makes it rather difficult to make really optimized implementations with stuff like struct buffer copying etc. 2015-07-09 12:21:36 morfin because protocol developed is mentally retarded) 2015-07-09 12:22:00 morfin i think size of packet should be fixed always 2015-07-09 12:23:26 morfin like HTTP2 developers did - they have fixed size block for size so you can read it and use to read rest 2015-07-09 12:23:58 morfin *SPDY 2015-07-09 12:25:38 morfin well, you can't predict size of NBT of cours e 2015-07-09 12:26:14 gurun well, i think that any and every protcol with messaging should always start first by giving you the complete size. 2015-07-09 12:26:44 morfin but size should not have variable size) 2015-07-09 12:26:50 morfin that's some crap 2015-07-09 12:27:18 gurun i don't care so much about that, just care about being able to read the full message in one chunk without having to parse it. 2015-07-09 12:29:21 morfin that's why i say 2015-07-09 12:29:43 morfin read first N bytes, cast to int, read rest 2015-07-09 12:30:20 gurun yah, that's what i want 2015-07-09 12:30:39 gurun just a very fast and predictabe way to get the full buff out as fast as possible 2015-07-09 12:31:32 gurun and then, never dynamic datatypes for basic stuff, like varint. 2015-07-09 12:32:09 --> kcj (~kcj@unaffiliated/kcj) a rejoint #mcdevs 2015-07-09 12:40:20 barneygale yeah, I agree with that too. I have to double-buffer my read queue because of the packet length varint 2015-07-09 12:40:35 barneygale happy with varints everywhere else, but packet length should be a long or something 2015-07-09 12:40:41 barneygale idk 2015-07-09 12:40:59 * Thinkofdeath is lazy and doesn't buffer 2015-07-09 12:41:30 barneygale using async io so I need at least one buffer 2015-07-09 12:42:13 barneygale I need the second because to determine whether I've got a complete varint read, I need to consume data off the front of the buffer (checking its length isn't enough) 2015-07-09 12:44:08 --> UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a rejoint #mcdevs 2015-07-09 12:44:23 gurun well for MCPE there is a new trend, variable content. So you need business logic in the middle of the packet-parsing in order to get a full message out. It's like varint on steroids. 2015-07-09 12:44:32 <-- UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a quitté (Client Quit) 2015-07-09 12:47:33 morfin barneygale, one buffer for data is enought 2015-07-09 12:49:31 barneygale morfin, I'm using qbuf (http://pythonhosted.org/qbuf/qbuf.BufferQueue-class.html) which doesn't allow you to peek at data, only to dequeue it. 2015-07-09 12:50:40 morfin what do you mean peek? 2015-07-09 12:51:04 morfin no random access? 2015-07-09 12:51:09 gurun barneygale, you should really get some peak going there 2015-07-09 12:51:13 gurun peek 2015-07-09 12:51:34 barneygale I struggled to find a fast python queue implementation that supports it 2015-07-09 12:52:19 barneygale Here's my packet reading code, for reference: https://github.com/barneygale/quarry/blob/master/quarry/net/protocol.py#L183-L232 2015-07-09 12:54:57 gurun L197-L198 2015-07-09 12:55:04 gurun that's what i would want 2015-07-09 12:55:21 gurun in PE 2015-07-09 12:55:28 shoghicp gurun: that exists as well in MCPC :P 2015-07-09 12:55:50 gurun you have to being the parsing before you get to it, you know that too 2015-07-09 12:55:53 shoghicp also in 0.12 batch packets have the length prefixed :) 2015-07-09 12:56:09 gurun that's better 2015-07-09 12:57:03 <-- Addisonep (uid86198@gateway/web/irccloud.com/x-xtkksvpageqoight) a quitté (Quit: Connection closed for inactivity) 2015-07-09 12:58:23 gurun probably have to rewrite the whole packet handling for 0.12 anyway, in case it would go encrypted. 2015-07-09 12:58:23 morfin ah i started rewriting my shitcode) 2015-07-09 13:00:11 morfin i forgot one tiny detail 2015-07-09 13:01:00 morfin packets in Minecraft can be encrypted in case of using premium account 2015-07-09 13:01:03 shoghicp 0.12 won't have encryption 2015-07-09 13:01:24 morfin i mean not MCPE 2015-07-09 13:01:31 shoghicp but we will have in the future, and maybe not RakNet 2015-07-09 13:01:35 morfin but Minecraft 2015-07-09 13:01:40 shoghicp morfin: it's for gurun 2015-07-09 13:01:45 morfin oh 2015-07-09 13:02:16 morfin not sure how should i handle such encryption 2015-07-09 13:03:27 gurun changing RakNet out, i hope there is a really good business value behind that. 2015-07-09 13:04:12 shoghicp we send 1500 bytes, of those 340 are RakNet 2015-07-09 13:04:39 shoghicp maybe more if we send bigger packets 2015-07-09 13:06:10 --> ScruffyRules (~Scruff@2001:19f0:5800:8483:5400:ff:fe06:49ea) a rejoint #mcdevs 2015-07-09 13:06:11 morfin maybe they'll use protobufs) 2015-07-09 13:06:14 gurun you mean all the overhead for reliability and packet splitting? 2015-07-09 13:06:31 -- ScruffyRules est maintenant connu sous le nom Guest74766 2015-07-09 13:06:47 shoghicp gurun: yep, if you split packets you'll get more 2015-07-09 13:07:04 shoghicp it can be done in less bytes because we know what to send specifically 2015-07-09 13:07:06 gurun so, is that RakNets fault? 2015-07-09 13:07:11 --> Zachoz (~Zachoz@2001:19f0:5800:8483:5400:ff:fe06:49ea) a rejoint #mcdevs 2015-07-09 13:07:12 shoghicp RakNet is generic 2015-07-09 13:07:19 morfin guys what if i sent shitty server-id to client? 2015-07-09 13:07:21 shoghicp we want something more specific and simple 2015-07-09 13:07:25 morfin will it crash? 2015-07-09 13:07:40 gurun Hmm, RakNet is simple? 2015-07-09 13:08:26 shoghicp simple = less features 2015-07-09 13:08:51 gurun you have to hae a business value for that stuff shogi. We are coders, so simple or complex doesn't really apply like that. 2015-07-09 13:09:01 gurun are you looking for less bytes, is that it? 2015-07-09 13:09:07 gurun like with compression 2015-07-09 13:09:18 shoghicp yep, and not raknet, but something we can control 2015-07-09 13:09:28 shoghicp (we want to get rid of it as well) 2015-07-09 13:09:39 morfin hmm 2015-07-09 13:09:40 gurun so we are talking about an implementation that can handle 5 concurrent user, right? 2015-07-09 13:09:49 gurun the MCPE server. 2015-07-09 13:09:55 morfin is encryption done over ready to send buffer? 2015-07-09 13:10:04 shoghicp 10 on mine, but will support more 2015-07-09 13:10:56 gurun are they users complaining about the bandwidth used by MCPE? 2015-07-09 13:11:33 shoghicp we want to lower it even more to allow to use data if the user really wants it 2015-07-09 13:12:24 shoghicp also, comparing MCPE over PM with the same usage (10 users around the world, not other entities) shows that MCPE does it horribly 2015-07-09 13:13:24 morfin so i should build packet and then encrypt>? 2015-07-09 13:13:27 gurun hmm, didn't understand that last one 2015-07-09 13:14:26 --> aet2505 (~aet2505@45.55.237.47) a rejoint #mcdevs 2015-07-09 13:15:35 gurun so, the biggest problem right now, is being able to understand the processing speed of the clients connecting to a server. Adjusting based on NAK is simply too slow instrument. 2015-07-09 13:15:46 gurun it wrecks havoc with a server. 2015-07-09 13:16:14 gurun so then you have a choice. Evict bad devices (and loose them forever), or slow everything down for everybody. 2015-07-09 13:16:24 gurun that is something i would like to have a solution for. 2015-07-09 13:20:01 <-- Guest74766 (~Scruff@2001:19f0:5800:8483:5400:ff:fe06:49ea) a quitté (Quit: Bouncer 1, Husk 0) 2015-07-09 13:20:01 <-- Zachoz (~Zachoz@2001:19f0:5800:8483:5400:ff:fe06:49ea) a quitté (Quit: System.exit(0);) 2015-07-09 13:20:42 morfin guys am i right? i build packet and encrypt whole packet data? 2015-07-09 13:21:12 gurun morfin, look https://github.com/barneygale/quarry/blob/master/quarry/net/protocol.py#L183-L185 2015-07-09 13:21:23 <-- kcj (~kcj@unaffiliated/kcj) a quitté (Read error: Connection reset by peer) 2015-07-09 13:21:31 morfin crap 2015-07-09 13:21:32 --> Zachoz (~Zachoz@2001:19f0:5800:8483:5400:ff:fe06:49ea) a rejoint #mcdevs 2015-07-09 13:21:56 morfin i don't understand hmm 2015-07-09 13:22:37 morfin how you know "packet" boundaries? 2015-07-09 13:22:44 morfin when encryption is on 2015-07-09 13:26:45 <-- Zachoz (~Zachoz@2001:19f0:5800:8483:5400:ff:fe06:49ea) a quitté (Quit: System.exit(0);) 2015-07-09 13:27:36 gurun morfin, i don't do PC so i honestly don't know. Maybe they just hope that it's all in the same frame. 2015-07-09 13:27:49 morfin can you explain - when encryption is enabled i should send |length|encrypted_payload|? 2015-07-09 13:28:19 shoghicp the entire stream is encrypted 2015-07-09 13:28:40 --> Zachoz (~Zachoz@2001:19f0:5800:8483:5400:ff:fe06:49ea) a rejoint #mcdevs 2015-07-09 13:28:46 morfin so it's impossible to handle "packets" 2015-07-09 13:29:06 morfin there is no boundaries - how will i know how split stream? 2015-07-09 13:31:06 morfin or there is some boundaries for encrypted messages? 2015-07-09 13:31:11 shoghicp because it's a stream 2015-07-09 13:31:23 shoghicp and you first decrypt in the stream, byte by byte 2015-07-09 13:31:29 morfin protocol is not implementable 2015-07-09 13:31:48 morfin oh 2015-07-09 13:33:10 gurun looks like SSL. Is it? 2015-07-09 13:34:30 shoghicp mostly, but Mojang is the one that verifies things 2015-07-09 13:35:45 morfin hmmmm 2015-07-09 13:36:07 morfin if i only could switch to "SSL" in runtime ) 2015-07-09 13:36:21 gurun so, mojang is in the middle of that communication? 2015-07-09 13:36:25 shoghicp no 2015-07-09 13:36:27 <-- Zachoz (~Zachoz@2001:19f0:5800:8483:5400:ff:fe06:49ea) a quitté (Quit: System.exit(0);) 2015-07-09 13:36:52 shoghicp mojang only helps the client and server to verify that they are communicating with each other and that there is no mitm 2015-07-09 13:37:10 shoghicp people used to have a server redirect to another one 2015-07-09 13:37:23 shoghicp and execute commands that way on the other server 2015-07-09 13:37:46 morfin shit 2015-07-09 13:38:09 morfin encpryption totally breaks my design 2015-07-09 13:38:18 morfin *encryption 2015-07-09 13:38:19 shoghicp use offline mode :) 2015-07-09 13:39:10 --> Zachoz (~Zachoz@2001:19f0:5800:8483:5400:ff:fe06:49ea) a rejoint #mcdevs 2015-07-09 13:39:57 morfin because i read N bytes and do not know what piece i just read 2015-07-09 13:45:37 morfin SSL is applied over TCP stream yes but that's also big problem 2015-07-09 13:45:53 shoghicp have it as a step of reading, it's not that hard 2015-07-09 13:46:00 shoghicp not a problem for me :P 2015-07-09 13:46:43 gurun morfin, what lang/platform are you on= 2015-07-09 13:46:54 morfin it's a problem for me because idk how ASIO implements that) 2015-07-09 13:50:26 morfin seems like i should do more streaming 2015-07-09 13:58:52 gurun Are there any software out there that runs the vanilla servers world-generation code and stores it to file? Like in a batch-mode? 2015-07-09 14:02:26 shoghicp ask williamtdr, he did something like that for 0.8 2015-07-09 14:07:18 --> ScruffyRules (~Scruff@2001:19f0:5800:8483:5400:ff:fe06:49ea) a rejoint #mcdevs 2015-07-09 14:07:42 -- ScruffyRules est maintenant connu sous le nom Guest68132 2015-07-09 14:11:13 gurun sorry, i mean PC 2015-07-09 14:15:00 shoghicp gurun: yep, he did something with PC for that 2015-07-09 14:15:11 gurun oh, ok 2015-07-09 14:15:16 shoghicp then he converted the world to MCPE in parts, but the first part is interesting for you 2015-07-09 14:18:19 +Thinkofdeath How different is PE vs PC at this point? 2015-07-09 14:23:37 Owexz There are several variations, mainly blocks/items that can't be found on one or the other. 2015-07-09 14:24:55 Owexz I believe that The Nether is being added to PE, but no clue as to the End. 2015-07-09 14:25:00 +Thinkofdeath ah, guess it wouldn't be easy for me to add PE support to steven then. Its pretty tied to the blocks that exist on the PC version 2015-07-09 14:25:32 Owexz I saw you mention steven on twitter, care to explain? :3 2015-07-09 14:25:41 +Thinkofdeath https://github.com/thinkofdeath/steven 2015-07-09 14:25:52 +Thinkofdeath its a minecraft client in Go 2015-07-09 14:26:02 Owexz Ah nice. 2015-07-09 14:27:25 Owexz I was talking with shoghicp at Minecon about his protocol converter called BigBrother: https://github.com/shoghicp/BigBrother 2015-07-09 14:28:09 Owexz Some of us at the Sponge team have also been planning to work on a converter also, the main issue at present is authentication. 2015-07-09 14:30:11 +Thinkofdeath I'd imagine that would come in at a later stage 2015-07-09 14:30:31 +Thinkofdeath since from the sounds of it PE is meant to catch up with desktop at some point 2015-07-09 14:30:46 Owexz Auth should be around soon. 2015-07-09 14:32:59 Owexz It has been mentioned that the ultimate goal is feature equivalence. 2015-07-09 14:43:09 shoghicp soon after 0.12 :P 2015-07-09 14:46:46 rom1504 that should be done, just after the standard plugin interface ;) ;) 2015-07-09 14:49:12 Owexz Well with the Win10 edition (PE-based) coming out, getting to a unification stage would be helpful in limiting fragmentation. 2015-07-09 14:51:37 --> Aragas (Aragas@37-145-248-112.broadband.corbina.ru) a rejoint #mcdevs 2015-07-09 14:56:22 --> SopaXT (~SopaXorzT@unaffiliated/sopaxorztaker) a rejoint #mcdevs 2015-07-09 15:01:31 <-- WizardCM (~WizardCM@14-201-31-151.static.tpgi.com.au) a quitté (Ping timeout: 246 seconds) 2015-07-09 15:07:32 rom1504 limiting fragmentation on all platform yes, but increasing framentation on pc 2015-07-09 15:08:28 rom1504 also, win10 edition won't run on linux/mac/..., right ? 2015-07-09 15:08:42 --> WizardCM (~WizardCM@14-201-31-151.static.tpgi.com.au) a rejoint #mcdevs 2015-07-09 15:11:13 shoghicp rom1504: I work on Linux :) 2015-07-09 15:11:51 <-- conehead (~conehead@unaffiliated/conehead) a quitté (Quit: ZNC - http://znc.in) 2015-07-09 15:13:53 Owexz afaik, Win10 edition is just PE for Win10. 2015-07-09 15:14:54 rom1504 so they'll keep updating 3 clients ? 2015-07-09 15:15:25 shoghicp we don't need to update win10 directly :) 2015-07-09 15:15:35 shoghicp it's part of MCPE itself 2015-07-09 15:16:17 rom1504 shoghicp: oh you mean, you work on MCPE for linux in microsoft/mojang ? 2015-07-09 15:16:45 shoghicp I develop MCPE in my computer that runs linux, and it works :) 2015-07-09 15:17:18 rom1504 oh ok 2015-07-09 15:19:24 Owexz I find it interesting that apparently PC users get access to Win10 Edition for free, but existing PE users don't. 2015-07-09 15:20:45 shoghicp PE users have PE itself :P 2015-07-09 15:21:03 shoghicp also we don't have a way to know our users on iOS/Android 2015-07-09 15:21:07 shoghicp no accounts either 2015-07-09 15:21:26 Owexz Indeed, something you'll have to solve with the Auth stuff. 2015-07-09 15:21:50 shoghicp yep. they need to create an account, but game ownership is still a problem 2015-07-09 15:22:27 Owexz No way you can reference it with app stores? 2015-07-09 15:22:50 shoghicp sometimes it can be tricky, and you have to consider accounts that are shared by a family 2015-07-09 15:22:53 shoghicp also patents 2015-07-09 15:23:36 Owexz X number of alts per PE buyer? 2015-07-09 15:24:02 Owexz Limited to a specific purchaser account. 2015-07-09 15:24:04 shoghicp yep, but then there are more issues 2015-07-09 15:24:20 shoghicp also, you can verify a purchase, but not the user in some platforms 2015-07-09 15:24:39 Owexz Bleh, damn fragmentation. :/ 2015-07-09 15:25:10 Owexz Sounds like an annoying issue to handle though. 2015-07-09 15:28:35 Owexz Still, it would be nice to have fully linked accounts across all platforms. :) 2015-07-09 15:29:37 rom1504 and oauth 2015-07-09 15:30:10 shoghicp they will be linked to something, but nothing is decided yet :P 2015-07-09 15:33:52 morfin ✎ 2015-07-09 15:37:33 Not-a8a6 [1.8-Models] drXor pushed 1 commit to master [+0/-0/±2] http://git.io/vqXPU 2015-07-09 15:37:35 Not-a8a6 [1.8-Models] drXor d57da7f - Fix beacons being broken by the minifier. 2015-07-09 15:43:17 SopaXT Hi there! 2015-07-09 15:59:18 <-- HansiHE (~HansiHE@hansihe.com) a quitté (Ping timeout: 264 seconds) 2015-07-09 16:04:30 <-- ashka (~postmaste@pdpc/supporter/active/ashka) a quitté (Remote host closed the connection) 2015-07-09 16:38:18 <-- iBotPeaches (ibotpeache@pdpc/supporter/student/ibotpeaches) a quitté (Ping timeout: 250 seconds) 2015-07-09 16:41:11 --> iBotPeaches (ibotpeache@pdpc/supporter/student/ibotpeaches) a rejoint #mcdevs 2015-07-09 16:42:50 --> ashka (~postmaste@pdpc/supporter/active/ashka) a rejoint #mcdevs 2015-07-09 16:58:03 morfin hmmm guys 2015-07-09 16:58:16 morfin so it's possible to keep some clients unencrypted? 2015-07-09 17:13:55 Aragas with encryption enabled? 2015-07-09 17:14:04 Aragas morfin: ^ 2015-07-09 17:17:08 morfin what if i will ignore Encryption request? 2015-07-09 17:35:34 rom1504 it's not a request 2015-07-09 17:42:20 +ammar2 that sounds pretty nefarious 2015-07-09 18:14:07 <-- SopaXT (~SopaXorzT@unaffiliated/sopaxorztaker) a quitté (Remote host closed the connection) 2015-07-09 18:22:38 <-- Aragas (Aragas@37-145-248-112.broadband.corbina.ru) a quitté (Quit: Leaving) 2015-07-09 18:24:21 --> UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a rejoint #mcdevs 2015-07-09 18:24:40 <-- UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a quitté (Client Quit) 2015-07-09 18:29:30 Techcable morfin: You break the protocol if you don''t do encryption. If an encryption request is sent, its "encrypt or i send you gyberdish". 2015-07-09 18:30:35 Techcable Wait no, what happens if the client doesn't respond to the encryption request? 2015-07-09 18:33:31 <-- balrog (~balrog@unaffiliated/balrog) a quitté (Remote host closed the connection) 2015-07-09 18:45:46 barneygale morfin, the client has no control over it. If the server sends you a crypto request, you either respond or get d/c'd 2015-07-09 18:46:10 barneygale encryption is tied to authentication, so if you don't want to support encryption, you won't be able to auth clients 2015-07-09 18:47:08 barneygale (there are good reasons for all of this) 2015-07-09 18:52:30 morfin is there any good working bot for Minecraft? 2015-07-09 18:54:35 Techcable How 2015-07-09 18:54:45 Techcable Whoops wrong channel 2015-07-09 19:01:42 morfin if i will want to test how do i do that? 2015-07-09 19:13:57 gurun morfin, somone offered to run one on my servers yesteray (in this channel) so i expect there to be one. 2015-07-09 19:15:25 --> balrog (~balrog@unaffiliated/balrog) a rejoint #mcdevs 2015-07-09 19:16:04 barneygale morfin, I have one 2015-07-09 19:16:57 barneygale well, quarry does all the login sequence, and I have another local file that handles sending Player Position and Look etc 2015-07-09 19:24:20 morfin i just asked because i want to proove i am right) 2015-07-09 19:27:39 morfin because i feel like Minecraft have one bottleneck 2015-07-09 19:32:01 morfin if it writes every change to disk instantly right? 2015-07-09 19:34:16 barneygale map changes? no, they go into a queue iirc 2015-07-09 19:34:42 morfin sooooo turn off server => rollback? 2015-07-09 19:37:49 barneygale If you've run `/save-off` then yes. Otherwise it flushes the queue in a thread every so often. 2015-07-09 19:38:37 morfin i mean just turning off PC/electricity) 2015-07-09 19:39:11 barneygale I know 2015-07-09 19:42:59 morfin i have interesting question 2015-07-09 19:43:09 morfin did anybody compare custom servers perfomance? 2015-07-09 19:43:20 morfin with vanilla 2015-07-09 19:59:30 gurun morfin, i'm sure anyone that ever built a server did that comparison. 2015-07-09 19:59:31 +Amaranth Has anyone made a custom server that does everything vanilla does? 2015-07-09 19:59:37 gurun but .. it gets booring very quickly. 2015-07-09 19:59:39 +Amaranth It's easy to be faster if you don't do as much 2015-07-09 20:00:10 gurun Amaranth computation doesn't take all that long you know. 2015-07-09 20:00:25 +Amaranth lol 2015-07-09 20:00:28 --> Aragas (Aragas@37-145-248-112.broadband.corbina.ru) a rejoint #mcdevs 2015-07-09 20:00:29 gurun everyone keeps asking me "do you do block-tickingh" .. so what? 2015-07-09 20:01:28 gurun one think that i'm pretty sure of is that the java code written by the Mojang guys are not bad. Not at all. 2015-07-09 20:01:41 +Amaranth ha 2015-07-09 20:02:06 +Amaranth I'm sure someone can make one faster but you can't brag about being faster while you haven't actually made Minecraft 2015-07-09 20:02:19 morfin hehe 2015-07-09 20:02:21 +Amaranth Subsets of Minecraft should always be faster than Minecraft 2015-07-09 20:02:25 gurun you can brag about being faster on the parts that you do did. 2015-07-09 20:03:44 gurun in my own case, i know why it is faster and it doesn't have anything to do with block ticking. If i'd do the same in Java it would also be faster. And if i did the same as they DO in java, it would also be just as "slow". 2015-07-09 20:04:14 +Amaranth What part are you talking about and how did you do it? 2015-07-09 20:04:35 gurun it's easy. I do what all the C++ winers talk about, but do it in .NET 2015-07-09 20:04:41 gurun i bypass GC. 2015-07-09 20:04:59 Aragas гк ф пщв щк ыщьуерштэ, 2015-07-09 20:05:02 +Amaranth So lots of value types 2015-07-09 20:05:02 Aragas Sorry 2015-07-09 20:05:10 Aragas Ur a got or somethin'? 2015-07-09 20:05:13 gurun no, they are equally slow. 2015-07-09 20:05:16 Aragas aw man 2015-07-09 20:05:18 Aragas god* 2015-07-09 20:05:36 +Amaranth wat 2015-07-09 20:05:52 Aragas try to bypass xamarin GC, that's a lot of fun 2015-07-09 20:05:53 gurun i just class just like everybody else, i just don't create so many new. SO that it exactly the same as people like to do buffer-copy onto structs in C 2015-07-09 20:06:22 +Amaranth So you do object pools? 2015-07-09 20:06:24 gurun i don't do new McpePacket() instead i do McpePacket.Create(number of instances to count) 2015-07-09 20:06:25 gurun yes 2015-07-09 20:06:28 gurun instance pools 2015-07-09 20:06:46 gurun and then built the infrastructure to reset the damn things and all that stuff. 2015-07-09 20:06:50 gurun a shitload of work. 2015-07-09 20:07:15 +Amaranth In java land they claim object pools are no longer better than GC because generational GCs 2015-07-09 20:07:21 +Amaranth I never benchmarked it myself 2015-07-09 20:07:23 gurun and that is real bullshit 2015-07-09 20:07:33 gurun i've bencharked the hell out of that 2015-07-09 20:07:40 +Amaranth IBM apparently did? 2015-07-09 20:09:33 +Amaranth gurun: Did you benchmark it on the JVM or on .NET? 2015-07-09 20:09:47 +Amaranth Because .NET's GC is basically trash compared to JVM's 2015-07-09 20:09:50 gurun i did it on .NET 2015-07-09 20:09:56 +Amaranth Although value types mean the GC is less used too 2015-07-09 20:10:06 gurun and no i don't think it is "trash" in comparison :-) 2015-07-09 20:10:17 gurun but java had some more years under the hood .. 2015-07-09 20:11:28 morfin of course subset of Minecraft is faster 2015-07-09 20:12:18 morfin but i think similar by functionality server will be faster anyway 2015-07-09 20:12:30 morfin if somebody will rewrite it properly 2015-07-09 20:14:17 morfin is not Cubenite full? 2015-07-09 20:14:27 morfin *Cuberite 2015-07-09 20:16:36 gurun morfin, it's that "properly" i don't completely agree on 2015-07-09 20:17:06 morfin ? 2015-07-09 20:17:14 morfin what do you mean 2015-07-09 20:17:33 gurun "rewrite properly" implies that it's not implemented proper today. 2015-07-09 20:17:40 morfin oh 2015-07-09 20:17:51 morfin it's implemented as implemented 2015-07-09 20:18:41 gurun everybody mentions that server that a couple of girls wrote, that is supposed to be way faster. 2015-07-09 20:18:59 morfin without mobs... 2015-07-09 20:19:03 morfin and end 2015-07-09 20:19:07 morfin and netherworld 2015-07-09 20:19:10 morfin :( 2015-07-09 20:19:35 Aragas that russian server? 2015-07-09 20:19:48 morfin i don't beleive anyway that 200 players for Minecraft is superhuge loads 2015-07-09 20:20:23 morfin like simulating nuclear explosion on server hardware 2015-07-09 20:21:30 gurun does anyone have numbers on vanilla. How many entity updates and stuff like that it can handle per second? 2015-07-09 20:22:06 gurun servers like on mineplex, how many players on each server, ec. 2015-07-09 20:22:10 Aragas their server had run 500 players, if i remmember correct. I was on that event 2015-07-09 20:22:45 morfin so you think vanilla server designed perfectly? 2015-07-09 20:23:32 gurun depending on if all the 500 sent updates to eachother, that's not bad. 2015-07-09 20:23:45 gurun assuming that would be something like a highend server 4/8 core thing. 2015-07-09 20:24:24 morfin maybe they fixed server 2015-07-09 20:24:30 gurun ? 2015-07-09 20:24:35 morfin because before it was awfully slow 2015-07-09 20:24:55 gurun mojang or mineplex? 2015-07-09 20:25:02 morfin mojang 2015-07-09 20:25:19 morfin and required hacks like disabling mobs, cleaning up entities on ground etc to handle ~400 players 2015-07-09 20:25:53 Aragas you're stiil about those girls server? 2015-07-09 20:25:55 gurun 400 is not "bad" 2015-07-09 20:25:58 morfin no 2015-07-09 20:26:01 morfin about vanilla 2015-07-09 20:26:22 morfin well, they did nothing i think 2015-07-09 20:26:41 morfin but they modified idea and added new stuff 2015-07-09 20:27:27 morfin i was playing on server not so long time ago(for like an 2-3 hours) it feels not like Minecraft ) 2015-07-09 20:28:44 gurun what does it feel like then? 2015-07-09 20:29:04 morfin it's like Minecraft but totally PvP 2015-07-09 20:30:08 morfin i am thinking to implement server just to learn 2015-07-09 20:31:30 gurun or you can do like Paprikachu,just talk about it :-) 2015-07-09 20:31:43 * gurun ducks for cover 2015-07-09 20:32:19 morfin wait seriously is not that Cuberite full? 2015-07-09 20:35:59 gurun morfin, it doesn't say 2015-07-09 20:37:03 morfin you said "subset of Minecraft is faster" 2015-07-09 20:37:14 morfin sadly i can't op myselfs :( 2015-07-09 20:37:25 morfin to create over 9000 TNT for first test) 2015-07-09 20:54:07 +Amaranth If someone is running 400 players they're using a subset of Minecraft too 2015-07-09 20:54:12 +Amaranth The subset called Spigot 2015-07-09 20:54:43 morfin ? 2015-07-09 20:54:49 morfin oh 2015-07-09 20:54:52 +Amaranth The mineplex thing 2015-07-09 20:55:07 +XorBoole spigot can't handle 400 players 2015-07-09 20:55:11 +XorBoole you need bungeecord for that 2015-07-09 20:55:14 * XorBoole hides under a table 2015-07-09 20:55:40 morfin ) 2015-07-09 20:55:50 morfin it use it i think 2015-07-09 20:55:52 morfin as hub 2015-07-09 20:56:12 +Amaranth You can put 400 players on a server if you turn enough things off 2015-07-09 20:56:24 +Amaranth Like entities that aren't players :D 2015-07-09 20:56:45 +XorBoole Amaranth pretty sure that on that definiftion you can keep going as long as you can send keepalive packets 2015-07-09 20:57:00 morfin hmmmm 2015-07-09 20:57:07 +Amaranth Although there is at least one factions server with more or less full gameplay that does 500 players 2015-07-09 20:57:19 +XorBoole as of when? 2015-07-09 20:57:39 +Amaranth But it's got really low block tick and entity counts as well as a custom server with specific hacks 2015-07-09 20:57:41 +XorBoole minecraft's performance is anything but a constant function. it's gone up and down over time as a function of the number of players 2015-07-09 20:58:19 morfin also last time i've played there was strange issues 2015-07-09 20:58:35 morfin server after some uptime was lagging as hell ) 2015-07-09 20:58:37 +Amaranth Was Gontroller iirc 2015-07-09 20:58:43 +Amaranth Looks like they've got about 230 on right now 2015-07-09 20:58:54 +Amaranth Err, 290 2015-07-09 20:59:23 +XorBoole what about their tps though? 2015-07-09 20:59:35 +Amaranth *shrug* 2015-07-09 20:59:39 +XorBoole they've already passed the typical degradation point 2015-07-09 20:59:51 +Amaranth Go on there and push a button, figure it out yourself :P 2015-07-09 20:59:53 +XorBoole after 200 performance drops off kind of linearly with players 2015-07-09 21:00:03 +XorBoole Amaranth but mah latency! 2015-07-09 21:00:10 morfin but what before 200? 2015-07-09 21:00:25 +XorBoole then it should be constant unless you do something stupid with plugins 2015-07-09 21:00:31 +Amaranth I used to do that on a server, impressed the folks in mumble with how close I was getting :D 2015-07-09 21:00:31 +XorBoole 19.5 is a good mark to shot for 2015-07-09 21:01:49 +XorBoole > mumble 2015-07-09 21:01:51 +XorBoole I feel old 2015-07-09 21:04:31 gurun Amaranth, so what are the things that actually DO kill the server performance? 2015-07-09 21:04:59 morfin oh endereye not working 2015-07-09 21:05:14 +Amaranth gurun: Entities 2015-07-09 21:05:34 +Amaranth iirc more specifically it was collision detection and pathfinding 2015-07-09 21:05:52 gurun i see 2015-07-09 21:05:58 morfin oO really? 2015-07-09 21:06:03 +Amaranth Don't remember how much was the AI logic itself and how much was the things the AI logic called out to 2015-07-09 21:06:04 gurun so .. how many entites are we talking about .. 100's or less or more? 2015-07-09 21:06:15 +Amaranth About 100 per player iirc 2015-07-09 21:06:16 morfin so generation of world is not that slow? 2015-07-09 21:06:27 +Amaranth World generation is something that happens once 2015-07-09 21:06:32 gurun ok, 100 is quite a lot 2015-07-09 21:06:45 +Amaranth 100 players means 10000 entities 2015-07-09 21:06:57 gurun ? 2015-07-09 21:07:14 +Amaranth Yeah, that sounds like it's in the right ballpark 2015-07-09 21:07:42 gurun 10000 entities .. doing what? 2015-07-09 21:07:52 morfin hmm 2015-07-09 21:08:01 morfin nothing but wandering around 2015-07-09 21:08:19 +Amaranth Remember paintings and item frames and minecarts too 2015-07-09 21:08:21 +Amaranth And item drops 2015-07-09 21:08:26 morfin oO 2015-07-09 21:08:26 gurun so you mean that for every player .. there could be 100 entities around? 2015-07-09 21:08:33 gurun item drops doesn't cost anything 2015-07-09 21:08:44 +Amaranth Item drops do collision detection 20 times a second 2015-07-09 21:08:49 gurun "static" entities aren't expensive 2015-07-09 21:08:52 morfin oh 2015-07-09 21:09:08 gurun collision detection is cheap in MC. 2015-07-09 21:09:54 +Amaranth Mobs are certainly higher on the profile but when you have 10000 of something happening it's really easy to be not cheap 2015-07-09 21:09:59 gurun in fact, it's so cheap that it was cheaper to just compare all players with .. projectiles than to calculate the relevant ones :-) 2015-07-09 21:10:21 morfin ok i admit there is no fully implemented server =) 2015-07-09 21:10:30 gurun morfin, not even close i think 2015-07-09 21:10:44 gurun but we are discussing features that affect performance. 2015-07-09 21:10:51 gurun not how many "blocks" you implemented. 2015-07-09 21:10:59 gurun stuff like lava, water, mobs. 2015-07-09 21:10:59 +Amaranth That's the main problem, mostly everything in Minecraft would be alright if you had a view distance of 5 and maybe 100 entities total 2015-07-09 21:11:12 morfin i am not about "blocks" 2015-07-09 21:11:17 +Amaranth But you have a view distance of 10 by default, 100 players, and 10000 entities 2015-07-09 21:11:29 morfin not all entities are done 2015-07-09 21:11:32 +Amaranth (the view distance matters because block ticking) 2015-07-09 21:11:34 gurun i never understood view distane on PC. What is 10? 2015-07-09 21:11:46 +Amaranth It's a radius out from the chunk you're standing in 2015-07-09 21:11:50 morfin and redstone is lagging server as hell 2015-07-09 21:11:53 +Amaranth Except not a radius because it's a square 2015-07-09 21:11:53 gurun in chunks, right? 2015-07-09 21:11:57 +Amaranth Yeah 2015-07-09 21:12:06 gurun ok, so 20 chunks across 2015-07-09 21:12:09 gurun 20x20 roughly 2015-07-09 21:12:11 morfin you forgot about redstone 2015-07-09 21:12:14 +Amaranth So view distance of 10 is (10+1+10)^2 chunks or 441 2015-07-09 21:12:27 morfin several big builduings could slow down server as shit 2015-07-09 21:12:49 +Amaranth Block ticking was a much bigger part of CPU time in the betas 2015-07-09 21:13:32 gurun is lava and water spread considered "block ticking" 2015-07-09 21:13:33 gurun ? 2015-07-09 21:13:45 morfin yes i think 2015-07-09 21:13:50 +Amaranth Between beta 1.8 and the 1.0 release the number of blocks per chunk that were randomly ticked was cut 80% and then when 1.2 switched to the anvil format an optimization was put in to skip chunk sections that have no tickable blocks 2015-07-09 21:13:56 +Amaranth In this case I'm just talking about crops and such 2015-07-09 21:14:09 +Amaranth Random ticks, not scheduled ones like liquids and fire and redstone 2015-07-09 21:14:30 morfin trees growing, crops etc 2015-07-09 21:14:36 morfin but what about redsone? 2015-07-09 21:14:41 +Amaranth Before 1.0 block ticking was usually the #1 thing on a profile 2015-07-09 21:14:46 gurun as i understand, usually block ticks refer to the random ones 2015-07-09 21:14:58 +Amaranth Before 1.2 it was a toss up between block ticking and entities 2015-07-09 21:15:00 morfin it seems to be loading CPU 2015-07-09 21:15:09 +Amaranth Now it's basically all entities 2015-07-09 21:15:12 gurun but i just call all of them doing tick-updates on a block .. for block-ticks,. 2015-07-09 21:15:28 gurun entity ticks, block ticks, and to some extend player ticks 2015-07-09 21:15:39 gurun player ticks is mostly a plugin-thingy 2015-07-09 21:15:58 +Amaranth Although I think some of the performance gains of block ticking might have been CraftBukkit patches, don't remember 2015-07-09 21:16:12 morfin oO 2015-07-09 21:16:25 gurun yeah, well. I'm looking for the "heavy" stuff because i like to simulate 2015-07-09 21:16:28 +Amaranth I didn't benchmark vanilla much :P 2015-07-09 21:17:47 +Amaranth The heaviest stuff on an established server is going to be all the entities 2015-07-09 21:18:04 morfin i think they was understating perfomance issues better than Mojang) 2015-07-09 21:18:15 +Amaranth World generation would probably be heavier if you were doing it every tick 2015-07-09 21:18:19 +Amaranth morfin: They was me :P 2015-07-09 21:18:27 morfin hmm 2015-07-09 21:19:10 morfin but now Minecraft have no Bukkit but only vanilla and some custom servers which are not 100% replacement :( 2015-07-09 21:19:53 +Amaranth Spigot is still limping along but their only answer to performance issues is to turn features off or otherwise heavily gimp them 2015-07-09 21:21:23 gurun i stil don 2015-07-09 21:21:34 +XorBoole well, not always 2015-07-09 21:21:34 gurun still don't get the 10000 entities for 100 players. Doesn't make sese 2015-07-09 21:21:37 +XorBoole just mostly 2015-07-09 21:21:39 gurun (fucking keyboard) 2015-07-09 21:21:54 +XorBoole I wrote a patch that lets you make the usercache as big as you want 2015-07-09 21:21:59 +Amaranth gurun: Well, that is assuming the players are fairly spread out 2015-07-09 21:22:07 gurun well 2015-07-09 21:22:13 +Amaranth And iirc it varied between 6000 and 10000 2015-07-09 21:22:20 gurun if you have 100 players spread out that much .. they aren't affecting eachoter 2015-07-09 21:22:37 +Amaranth So? They still all need their world simulated 2015-07-09 21:22:38 gurun and that is much easier than having 100 players fighting eachoter in close quarters 2015-07-09 21:22:54 +Amaranth Hell no, 100 players in view distance of each other is nothing 2015-07-09 21:23:13 gurun 100x100x20 positions is still .. something. 2015-07-09 21:23:21 +Amaranth The main problem there is the performance of the PlayerTracker subsystem for sending packets 2015-07-09 21:23:22 gurun 500x500x20 is .. a lot 2015-07-09 21:23:36 +Amaranth But you've gone from 10000 entities to probably 1000 2015-07-09 21:23:36 gurun 2000x2000x20 is .. massive. 2015-07-09 21:23:40 +Amaranth So you can afford it 2015-07-09 21:24:02 gurun so .. 100 entities per player. 2015-07-09 21:24:12 gurun i'll have to test that you know, that's why i'm asking. 2015-07-09 21:24:41 +Amaranth It's been probably a year since I tested it so be sure to do so 2015-07-09 21:24:52 +Amaranth But I definitely remember seeing 10000 entities in my test setups 2015-07-09 21:25:02 +Amaranth I just don't remember what I was testing at the time 2015-07-09 21:25:07 +ammar2 10k isn't that muuch 2015-07-09 21:25:19 gurun well, 10000 entities is no problem at all. But 10000 enities sending positions is a big problem. 2015-07-09 21:25:26 +Amaranth I don't think I ever tested more than 100 players though and I usually tested with 20 (although those 20 were completely isolated) 2015-07-09 21:25:44 +Amaranth Entities far enough from players to not send a position basically don't exist 2015-07-09 21:26:05 +Amaranth They are either not loaded at all, dying soon, or stop being simulated 2015-07-09 21:26:06 gurun well, yeah. But not all entites send positions. 2015-07-09 21:26:16 gurun mobs are my only concern. 2015-07-09 21:26:23 +Amaranth You seem to have a real hookup on packet performance 2015-07-09 21:26:38 gurun calculations on the server is instant .. so i don't care about that either. Only the things that generate IO is of concern. 2015-07-09 21:27:00 +Amaranth The only time I remember PlayerTracker even showing up on my profiling was when I put a bunch of players in the same chunk 2015-07-09 21:27:29 <-- SpaceManiac (~SpaceMani@74-194-137-165.gtwncmta01.res.dyn.suddenlink.net) a quitté (Ping timeout: 256 seconds) 2015-07-09 21:27:32 gurun yes exactly 2015-07-09 21:27:49 gurun for pvp, that is the ONLY concern part from player spawn (chunks) 2015-07-09 21:27:50 +Amaranth Simulating 10000 entities is instant but sending the packets for them is where all the CPU time goes? Is that what you're trying to say? 2015-07-09 21:28:13 +Amaranth If you're making a minigames server you don't care about most of this anyway 2015-07-09 21:28:24 gurun i care about entities yes 2015-07-09 21:28:34 +ammar2 which reminds me, is there a packet to send multiple entity locations at once 2015-07-09 21:28:35 +Amaranth If you're not then PVP is rare and players will be split up often hiding from each other 2015-07-09 21:28:51 gurun ammar2, in PE 0.11 it is now. 2015-07-09 21:29:12 +Amaranth Personally I don't really care about the requirements of a pvp minigames server 2015-07-09 21:29:26 +Amaranth Because a good actual Minecraft server will handle that case as a side effect 2015-07-09 21:29:54 gurun hmm, i wouldn't ever play MC on an custom server. It's just lame. 2015-07-09 21:30:40 morfin why? 2015-07-09 21:31:15 gurun because the best they can do is come at half decent distance of the real functionality of both world genration and AI. 2015-07-09 21:31:25 morfin ) 2015-07-09 21:31:45 morfin not sure but that Cuberite have nice generator 2015-07-09 21:31:59 morfin but AI is failure 2015-07-09 21:32:22 morfin Wither exploded once when spawned and then nothing happened 2015-07-09 21:32:47 morfin ender eye does not work so i think no end 2015-07-09 21:32:59 Paprikachu cuberite has pretty fugly c++ :D 2015-07-09 21:33:19 morfin hm? 2015-07-09 21:33:20 morfin why 2015-07-09 21:33:44 Paprikachu also, isnt cuberite some other minecraft server renamed 2015-07-09 21:33:47 Paprikachu source looks familiar 2015-07-09 21:33:58 morfin i think hCraft 2015-07-09 21:34:18 Paprikachu it's mcserver 2015-07-09 21:34:21 Paprikachu knew it 2015-07-09 21:34:27 morfin oh 2015-07-09 21:34:40 --> SpaceManiac (~SpaceMani@74-194-137-165.gtwncmta01.res.dyn.suddenlink.net) a rejoint #mcdevs 2015-07-09 21:34:40 -- Mode #mcdevs [+v SpaceManiac] par ChanServ 2015-07-09 21:35:01 yawkat does minecraft varint encoding follow protobuf rules or does it just explode on negative numbers? 2015-07-09 21:35:21 morfin it should 2015-07-09 21:35:31 yawkat all protocol implementations ive seen on minecraft seem to just use sign as MSB 2015-07-09 21:36:59 --> barneygale_ (~barneygal@5d60a5cc.skybroadband.com) a rejoint #mcdevs 2015-07-09 21:37:10 +ammar2 they definetly work since sending a compression threshold which is a varint of -1 (used to?) works 2015-07-09 21:37:19 +Thinkofdeath it works but it shouldn't :) 2015-07-09 21:37:24 morfin not bad worldgen 2015-07-09 21:37:28 +Thinkofdeath it ends up 5 bytes for negative numbers 2015-07-09 21:37:34 morfin no idea why you don't like such things 2015-07-09 21:37:52 +Thinkofdeath due to them being treated as uint32 during encoding 2015-07-09 21:38:13 yawkat yea, thought so 2015-07-09 21:38:36 yawkat a bit stupid but okay. 2015-07-09 21:39:36 gurun so, hmm .. if i implement one of those AI routines .. and spawn a lot of mobs .. that should be a fairly good estimation. 2015-07-09 21:40:11 Aragas not the best idea i had, but mayb then add CompressionEnabledinstead of using -1? No more negatives then, gight? 2015-07-09 21:40:22 yawkat it's only sent once 2015-07-09 21:40:31 yawkat not a huge issue 2015-07-09 21:41:12 Aragas and becuse of it, varint ends up as 5 bytes, right? 2015-07-09 21:41:38 yawkat only negative ones 2015-07-09 21:42:03 yawkat or 10 for varlong, or 3 for varshort. 2015-07-09 21:42:52 Aragas yea. really wasn't one of my best ideas 2015-07-09 21:54:17 morfin lol on custom server i can hear how my balls rings) 2015-07-09 21:54:29 morfin when i get hit by arrow 2015-07-09 21:55:31 --> UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a rejoint #mcdevs 2015-07-09 21:55:48 <-- UUID00 (~Thunderbi@cpe-213-157-225-153.dynamic.amis.net) a quitté (Client Quit) 2015-07-09 21:56:46 morfin hey Paprikachu 2015-07-09 21:56:55 Paprikachu suo 2015-07-09 21:56:56 morfin i am really looking at C++11 and hm 2015-07-09 21:56:57 Paprikachu sup 2015-07-09 21:57:11 morfin it's way better 2015-07-09 21:57:36 Paprikachu c++11 is old shit 2015-07-09 21:57:44 Paprikachu c++17 incoming! 2015-07-09 21:57:48 morfin i know i know 2015-07-09 21:57:53 morfin tell that VS) 2015-07-09 21:58:01 Paprikachu yeah i dont use VS 2015-07-09 21:58:04 Paprikachu fuck that :) 2015-07-09 21:58:09 morfin slowpoke 2015-07-09 21:58:16 morfin develops it 2015-07-09 21:58:50 morfin anyway even C++11 is big step 2015-07-09 21:58:58 Paprikachu it is 2015-07-09 22:48:30 +Amaranth It could be worse, you could be using Intel's compiler