18:14 < Grum> bit sad the two-way stuff is gone? 18:14 < Grum> mmm 18:15 < Grum> it is still there sortof 18:15 < Grum> http://wiki.vg/index.php?title=Protocol&oldid=6286#Ping <-- there for example 18:15 < nickelpro> That's what I was asking about, all the Clientbound and Serverbound are mixed. I prefered them seperated as it is now http://wiki.vg/index.php?title=Protocol 18:16 < nickelpro> It's a formatting issue is all, but it saves me time since the packet ids for Clientbound and Serverbound don't correlate most of the time 18:16 < Grum> the ids do not even correlate per version 18:16 < Grum> they are dynamically assigned 18:17 < nickelpro> Really? Heh, I've been doing it all wrong apparently 18:17 < Grum> since 1.7 18:17 < Grum> i think i did sort the list before 1.7 though 18:17 < Grum> and i do not think we did many additions for 1.8 18:17 < Grum> but that is how we maintain that list now :p 18:17 < Grum> it has no ids internally anymore until registration time 18:48 < Bibl> why doesnt minecraft switch to a cache based system 18:48 < Bibl> like runescape 19:01 < Grum> cache for what? 19:05 < Grum> Bibl? 19:06 < Bibl> storing game data 19:06 < Bibl> like instead of having classes for each mob 19:07 < Bibl> and each block and stuff 19:07 < Bibl> define it in a cache 19:07 < Bibl> and load it 19:07 < Grum> load it as what? 19:07 < Bibl> around 2000 classes in 1.8 broke my identifier :( 19:07 < Grum> 'your identifier' ? 19:08 < Bibl> http://λ.pw/hbb 19:08 < Bibl> like mcp 19:08 < Bibl> ill be back in 30 mins 19:08 < Bibl> soz 19:08 < Grum> I guess it is not our problem that your code breaks with a certain amount of 'things to identify' :p 19:31 < Bibl> back 19:31 < Bibl> http://λ.pw/hbc :( 19:37 < Bibl> "Gee wheeze baby please 19:37 < Bibl> Let me take you to an island of the sweet cool breeze 19:37 < Bibl> You don't fell like drive baby hand me the keys 19:37 < Bibl> And I'll take you to a place to set your mind at ease 19:37 < Bibl> Don't you tickle my foot bottom ha ha baby please 19:37 < Bibl> Don't you play with my nose I might ha chum sneeze 19:37 < Bibl> Well you a the bun and me a the cheese 19:37 < Bibl> And if me a the rice well baby girl you a the peas " 19:37 < Bibl> words from the great shaggy 19:37 < Bibl> god bless 20:19 < morfin> hmm 20:21 < morfin> what about metadatas etc? 20:28 < Bibl> what do you mean? 20:31 < morfin> i mean storing different stuff for blocks/entities etc 20:35 < Bibl> confused 20:36 < Bibl> morfin: can you explain further? 20:45 < Xor_Boole> Grum exactly what needs to be fixed? 20:53 < Grum> Xor_Boole: no idea, i didn't quite get Bibl's problem :/ 20:53 < Bibl> too many classes 20:53 < Bibl> in 1.8 20:53 < Xor_Boole> meh, the render code is scary 20:53 < Bibl> no need for 60 mob classes 20:54 < Xor_Boole> my real question is why jukebox blockstates aren't in the blockstate file 20:54 < Xor_Boole> either I'm missing something or you guys missed it and nobody noticed yet 20:56 < Xor_Boole> I'd check myself but setting up an MCP environment is /work/ 20:57 < Grum> Xor_Boole: because 20:57 < Grum> imho jukeboxes are a hack and should be turned into a 'i do not tick but am a tile-entity' 20:57 * Xor_Boole screenshots 20:57 < Xor_Boole> caught you saying tile entity! 20:57 * Xor_Boole runs 20:57 < Xor_Boole> tile entities are a mess anyways 20:58 < Bibl> i have a tilentity class for my packet bot 20:58 < Bibl> dont think i use it 20:59 < Xor_Boole> though it doesn't explain why the block state didn't carry 20:59 < Xor_Boole> then again there is still a significant amount of work left to be done so I don't blame you 21:00 < Bibl> why is boolean? 21:01 < Xor_Boole> Bibl blame Grum 21:01 < Bibl> if string unsigned long is vector 3 in sun.impl 21:01 < Bibl> then why is boolean? 21:01 < Bibl> unbelievers 21:01 < Xor_Boole> wait wat 21:01 < Bibl> god bless 21:01 < Xor_Boole> I thought you meant has_record 21:01 < Bibl> yes but why is boolean?!?!?! 21:02 < Xor_Boole> do I have a crystal ball? 21:02 < Bibl> yes if signed double long int is 21:02 < Xor_Boole> if bytecode preserved comments we might know 21:02 < Bibl> so why is boolean?! 21:02 < Xor_Boole> I know as much as you do 21:02 < Grum> yeah block-entity still sounds weird 21:02 < Bibl> http://λ.pw/hbf 21:02 < Xor_Boole> I am but a humble spigot dev that knows too much about the model system 21:03 < Bibl> blockentity doesnt sound wierd 21:03 < Xor_Boole> it does 21:03 < Xor_Boole> blame notch 21:03 < Grum> it doesn't have comments 21:03 < Bibl> https://github.com/TheBiblMan/CFIDE get me github followers http://λ.pw/hbf 21:03 < Grum> its just ... hacky 21:03 < Grum> it should actually remember whihc record it is 21:03 < Grum> aaaand it does record the id 21:03 < Xor_Boole> yeah I really don't want to touch that code 21:03 < Xor_Boole> I do not envy you guys. 21:03 < Grum> and then it adds some magic sauce to it .. +2000 ... to get the item >.> 21:03 < Grum> that code has to be destroyed, hard 21:04 < Bibl> whats wrong with jukebox/ 21:04 < Xor_Boole> many things 21:04 < Xor_Boole> many, many things 21:04 < Grum> ^ that 21:04 < Bibl> they dont play seether 21:04 < Bibl> thats a problem 21:04 < Xor_Boole> my friend and I made a system to add custom records from the server side 21:04 < Xor_Boole> it was painful 21:05 < Bibl> how do i emulate minecraft gravity? 21:05 < Bibl> at first i was just moving down 1 block at a time 21:05 < Xor_Boole> Bibl it's not that 21:05 < Bibl> but nocheatplus really doesnt like that 21:05 < Bibl> 0.08 right? 21:05 < Xor_Boole> there's drag. and every entity has its own g 21:05 < Bibl> for localplayer 21:06 < Xor_Boole> Grum what do you think about mixin inheritance for models though? 21:06 < Bibl> http://hastebin.com/ihicupucuz.avrasm 21:06 < Xor_Boole> i.e. multiple parents, whose element lists are all combined at runtime 21:08 < Grum> horrrrid 21:08 < Bibl> http://wiki.vg/Protocol#Block_Change i dont get the id field 21:08 < Grum> worst way EVER 21:09 < Thinkofdeath> Bibl: same as ids in the rest of the protocol 21:09 < Grum> Bibl: what do you not get? 21:10 < Bibl> is id << 4 | data a forumla? 21:10 < Xor_Boole> Grum how would you propose a way to reduce the boilerplate in complex model packs 21:10 < Thinkofdeath> Bibl: if you have it in the old format, yes 21:11 < Xor_Boole> mixin inheritance seems like the easy way to do it, but I'm a scala guy so there's that 21:11 < Grum> Xor_Boole: that just has no relevance to eachother, mixins and models O.o 21:11 < Grum> for your models; something similar to; https://gist.github.com/grum/4dd7744035fffceee2bd perhaps 21:11 < Bibl> Thinkofdeath: if i read the id from the packet where does data come from? thats what im confused about 21:12 < Grum> Bibl: the block is changed, the data is the new 'thing at that location' ? 21:12 < Grum> not sure how that is hard to guess :p 21:12 < Xor_Boole> the issue is I have a lot of high cuboid models that have to be modified in small ways, which leads to a large repetition of code 21:13 < Xor_Boole> if I want to change all of them I have to write a script to do it 21:13 < Grum> Xor_Boole: not sure how that is my problem 21:13 < Grum> fix your editor :) 21:13 < Grum> or build a composer script that makes them from fragments 21:13 < SinZ> its always your problem though 21:13 < Xor_Boole> yeah I'll probably end up doing it that way 21:13 < Xor_Boole> thought I'd mention it in case you wanted to implement it, since the model loading code isn't that bad 21:13 < Grum> now sure what sort of highly overcomplicated thing you are making that would need it but ok :p 21:14 < Grum> yes, because the code to load is super simple 21:15 < Xor_Boole> yeah, it's the only part I've understood just from reading the proguarded code 21:15 < Xor_Boole> also, this is an example of my use case: http://puu.sh/dTYHv/3ae3b06f2e.png 21:15 < Xor_Boole> the little bag of sugar might be replaced with, say, a spider eye 21:16 < Xor_Boole> but hey, if it doesn't belong in vanilla, I'm cool with that, writting lexers is fun 21:19 < Grum> lexers for? 21:19 < Xor_Boole> an alternate format 21:19 < Xor_Boole> that compiles to your json format 21:20 < Xor_Boole> might end up just using json. *shrug* 21:20 < Grum> %REPLACEHERE% 21:20 < Grum> not sure how you'd use that btw 21:20 < Grum> you making alternatives orso? 21:20 < Thinkofdeath> Xor_Boole: add scripting to it and make 'jsonscript' 21:20 * Thinkofdeath hides 21:20 < Grum> iirc there are only 8 different stands 21:21 <+Amaranth> What's wrong with calling them tile entities? 21:21 < Xor_Boole> Thinkofdeath don't give grum ideas, he'll accept it as the API 21:21 < Grum> Amaranth: they are kinda called blockentities now ;) 21:21 * Xor_Boole runs after Thinkofdeath 21:21 <+Amaranth> But blocks are called tiles 21:21 < Grum> they are not 21:21 <+Amaranth> And worlds are levels 21:21 < Xor_Boole> Amaranth except the name is unnatural because we've been calling them TEs for 4 years 21:21 < Grum> that they are 21:21 <+Amaranth> Statistics still calls them tiles, doesn't it? 21:21 < Grum> but in our code block == block 21:21 < Xor_Boole> personally I dislike the "level" nomenclature 21:21 < Grum> yes that is because static keys are hard to trivially change without major upgradepaths 21:22 < Xor_Boole> but hey, we remap everything so who cares 21:22 < Grum> so shit like translations (and those keys are used for statistics .....) 21:22 <+Amaranth> The log/console output calls them levels too 21:22 < Bibl> i prefer map over level 21:22 < Grum> they are levels in our code for now 21:22 < Grum> they most likely will end up being called dimensions 21:23 < Xor_Boole> but worlds is shorter, smaller source files means faster runtime 21:23 * Xor_Boole runs 21:23 < Grum> because the 'world' to 'universe' namechange would be a bitch :) 21:23 < Xor_Boole> that's why minecraft is so fast, all the method names are single characters 21:23 * Xor_Boole runs faster 21:23 <+Amaranth> Oh yeah, and level.dat 21:23 < Grum> will also be renamed to world ... or something else :p 21:23 <+Amaranth> Which, sadly, isn't per dimension 21:24 < Grum> Xor_Boole: you might be surprised by this, but it is actually faster 21:24 < Xor_Boole> I'm not 21:24 < Bibl> can i buy the minecraft eclipse workspace for £2.99 21:24 < Xor_Boole> smaller names means faster load time 21:24 <+Amaranth> Just like minifying JS or PHP makes it faster 21:24 < Grum> not the right reason Xor_Boole 21:24 < Xor_Boole> no? tell me, I'm interested now 21:24 < Grum> i do not think you can truly measure the 'speed up' anyhow 21:24 < Bibl> names can be changed after compilation 21:25 < Bibl> or at compilation 21:25 < Grum> java does string-based searches for method names 'the first time' (when overloads etc) 21:25 < Grum> at runtime 21:25 < Grum> so shorter strings == faster matching :) 21:25 < Grum> but meh i do not even think you can really measure it 21:25 < Xor_Boole> Grum yeah that's what I meant 21:25 < Bibl> or make everything static 21:25 < Bibl> and dont use objects 21:25 <+Amaranth> That would be significantly faster in a number of ways 21:25 < Xor_Boole> nah, they should just use haskell 21:25 < Bibl> readability must be maintained 21:26 < Xor_Boole> > minecraft source 21:26 < Xor_Boole> > readable 21:26 * Xor_Boole chokes on his laughing 21:26 < Bibl> >.< 21:26 <+Amaranth> Wish you had more Haskell in your life but want syntax you can read? Try Rust ;) 21:26 < Xor_Boole> ew no 21:26 * Xor_Boole stays with his scala 21:27 < Bibl> eww scala 21:27 < Bibl> the deformed child of the jvm 21:27 <+Amaranth> It's really closer to OCaml with C syntax anyway 21:27 < Xor_Boole> 6:13 now sure what sort of highly overcomplicated thing you are making that would need it but ok :p 21:27 <+Amaranth> And even that is before several years of iteration and refinement 21:27 < Xor_Boole> if you want to see overcomplicated you should see my pack's code 21:27 < Bibl> pack? 21:27 < Xor_Boole> it's the biggest clusterfuck ever written 21:28 < Xor_Boole> I'm working on a resource pack 21:28 < Bibl> are those not just textures? 21:28 < Xor_Boole> no. tons of models 21:28 <+Amaranth> Textures and json files for blockstates 21:28 < Xor_Boole> Bibl the greatest clusterfuck you'll ever see: https://github.com/drXor/1.8-Models 21:29 < Bibl> why write json by hand? 21:29 <+Amaranth> And if you use optifine or MCPatcher you can do custom models for named items too for extra flavor 21:29 < Xor_Boole> because none of the editors are good enough for me 21:29 < Bibl> make your own :) 21:29 < Xor_Boole> nah that's work 21:29 < Grum> what sort of non-vanilla pack is that? O.o 21:29 < Xor_Boole> easier to write it by hand 21:30 < Xor_Boole> Grum load it up, you'll regret adding models to minecraft 21:30 < Grum> it doesnt seem vanilla 21:30 < Bibl> https://github.com/drXor/LOLCODE/blob/master/spec.txt 21:30 < Bibl> lool 21:30 < Bibl> lol* 21:30 < Xor_Boole> it's vanilla. 21:31 <+Amaranth> Is that the gratitous 3D model version of vanilla people kept posting on reddit? 21:31 < Grum> there is nothing in that repository O.o 21:31 < Xor_Boole> Grum wut 21:31 < Xor_Boole> Amaranth I haven't seen mine on reddit 21:31 <+Amaranth> Like giving furnaces depth and such 21:31 < Grum> https://github.com/drXor/1.8-Models/blob/master/assets/minecraft/models/block/brewing_stand/brewing_stand_ <-- wtf ? 21:31 < Xor_Boole> Grum don't ask 21:32 < Grum> that makes no sense 21:32 < Xor_Boole> seriouslly, a lot of cleanup has to be done 21:32 < Thinkofdeath> https://github.com/drXor/1.8-Models/blob/master/assets/minecraft/models/block/jukebox/jukebox.json#L140 gson allows this? o.O 21:32 < Xor_Boole> actually, I can explain. it's for a script that combines stuff 21:32 < Grum> ah ok 21:32 < Xor_Boole> Thinkofdeath ues, amusingly 21:32 < Grum> so you are just using block alternatives 21:32 < Grum> that is nothing special, i mean, i added it just for that reason 21:32 < Xor_Boole> yeah, they're fun 21:33 < Bibl> you want unreadable? 21:33 < Bibl> a while ago my friend posted this http://hastebin.com/bebezoyane.axapta 21:33 < Xor_Boole> NOPE 21:33 < Grum> Bibl: send that guy back to indentation class 21:33 < Thinkofdeath> is every gson instance in minecraft in lenient mode or something? lol 21:33 < Grum> (or teach him how to use gist.github.com) 21:33 < Bibl> it was posted http://rs-hacking.com/forum/index.php?/topic/381-finding-fields-patterns-in-methodnode/#entry3475 21:33 < Grum> Thinkofdeath: i think that is the default 21:34 < Bibl> he now works in a bank lol 21:34 < Thinkofdeath> Grum: might explain why 1.7 signs with '[private]' on them parse as valid json and lose the brackets in 1.8 21:34 < Grum> yeah do not post stuff behind a login-gate :p 21:34 < Bibl> what do you mean? 21:34 < Grum> Thinkofdeath: no that is because of different shit 21:34 < Bibl> there is an influx of idiots on the forum 21:34 < Grum> not exactly sure why that goes wrong 21:34 < Bibl> they wont care 21:34 < Xor_Boole> I've enjoyed making this pack, I've broken so many things, it's hilarious 21:34 < Grum> Xor_Boole: nothing is broken? 21:35 < Xor_Boole> Grum well, not "broken" 21:35 < Xor_Boole> I've just pushed the format to its limits 21:35 < Grum> Thinkofdeath: is that vanilla-fail for a sign made in 1.7.10 and then updated to 1.8? 21:35 < Thinkofdeath> yes 21:35 < Xor_Boole> i.e. faking non-cuboids and stuff 21:35 < Grum> meh you are making me verify shit :/ 21:36 < Thinkofdeath> Grum: since the conversion code is try { line = parse(text) } catch { line = text } or something like that 21:36 < Thinkofdeath> http://hastebin.com/ikepumuhuf.java 21:37 < Xor_Boole> while(true) try { thing(); break;} catch (ConcurrentModificationException e) {} 21:37 < Bibl> ConcurrentBrokenDesignException 21:37 < Grum> goddammit. 21:38 < Grum> meh and that wasn't seen during snapshots/pre-releases? 21:38 * Thinkofdeath checks bug tracker 21:39 < Xor_Boole> you know what else'd be nice? making the angle in a rotation object be any multiple of 22.5. any reason we're limited to [45,-45]? 21:39 < Thinkofdeath> Grum: https://bugs.mojang.com/browse/MC-64154 21:40 < Thinkofdeath> I found out once people started complaining that their protection signs broke :/ 21:40 < Bibl> lol 21:40 < Grum> yeah i heard about that 21:40 < Grum> we even talked about that 21:40 < Grum> now i wonder why the **** it wasn't fixed 21:40 < Bibl> fuck 21:40 < Bibl> oh you starred it yourself 21:40 < Grum> no stars 21:40 < Bibl> i see 21:40 < Bibl> i was baited 21:41 < Thinkofdeath> Grum: signs in 1.8 are generally a pain 21:41 * Thinkofdeath looks at recent major issue 21:42 < Thinkofdeath> Grum: https://bugs.mojang.com/browse/MC-75630 incase you haven't seen 21:46 < Grum> i think something has been done about that already .. not sure what 21:46 < Grum> go bother searge @ twitter with those two things honestly : 21:46 < Thinkofdeath> My last issue with signs was 'fixed' in 1.8.1 21:46 < Thinkofdeath> that one isn't as far as I know 21:47 < Thinkofdeath> and that one has been used on a few servers already 21:47 < Thinkofdeath> main issue with signs is they ignore server.properties 21:51 < Grum> in what way? 21:52 < Thinkofdeath> they work when command blocks are disabled and their permission check is hardcoded to true instead of following op-level (or whatever it is) 21:52 < Thinkofdeath> so all the commands work 21:52 < Thinkofdeath> (/op and all those ones that should be blocked) 21:53 < SinZ> wait, what changed on signs for them to be abused 21:53 < Xor_Boole> SinZ you really don't want to know 21:53 < Thinkofdeath> SinZ: map makers can make them execute commands 21:54 < SinZ> so signs are commandblocks now, dafuq 21:54 < Thinkofdeath> commandblock++ actually 21:54 < SinZ> and what stops you from using them in survival 21:54 * Thinkofdeath stops talking about the issue 21:54 < Bibl> "[20:53:25] Dylan: I ended up being some kids PP holder and pretending to get caught with 2lb of weed and he thinks I'm in prison. 21:54 < Bibl> [20:53:35] dr gaspondo da5id sils dong; the painter: lolwot 21:54 < Bibl> [20:53:38] noodle coffee: LOL 21:54 < Bibl> [20:53:40] Dylan: But I progressively got $5/day from his deal and $2k total. 21:54 < Bibl> [20:53:43] Dylan: Yeah." 21:55 < Thinkofdeath> SinZ: :) 21:56 < Grum> I think its hilarious that people talking about any sort of money of drugs think they are any sort of cool 21:57 < Grum> Thinkofdeath: jira on that? 21:57 < Thinkofdeath> You mean one I linked? 21:57 < Thinkofdeath> or something else? 21:57 < Grum> the permission one 21:58 < Grum> i gave the other two to searge 21:58 < Thinkofdeath> https://bugs.mojang.com/browse/MC-72530 21:58 < Grum> he fucked with signs, he can fix ;) 21:58 < Grum> oh that one is fixed ? 21:58 < Grum> or isnt it? 21:58 < Thinkofdeath> that was marked as fixed but I don't think it changed when I last poked 21:58 < Thinkofdeath> he just stripped the run_command from incoming packets 21:58 < Thinkofdeath> or something like that 21:58 < Bibl> Grum: he was talking about a forum account he sold for $250 even though his account was worthless 21:58 < Grum> Thinkofdeath: that should be fine not? 21:59 < Thinkofdeath> Grum: apart from the creative issue which allow it to be abused again 21:59 < Grum> Bibl: not sure why you shouldb e proud of being able to hold your penis 21:59 < Thinkofdeath> '/op' and all that was blocked for safety reasons last time I checked 21:59 < Thinkofdeath> which signs ignore 21:59 < Grum> Thinkofdeath: how? or doesnt the check apply in creative? 22:00 < Thinkofdeath> blockEntityTag 22:00 < Grum> means nothing to me sorry 22:00 < Bibl> i cant hold my penis 22:00 < Thinkofdeath> because of the whole 'creative can spawn nbt thing' 22:00 < Bibl> i lookup to him tho 22:00 < Bibl> look up*] 22:00 < Grum> Bibl: that guy could hold some kids pp 22:00 < Thinkofdeath> Grum: a block with a blockEntityTag will load the tile entity from that on place 22:00 < Grum> Thinkofdeath: which allows you to set a sign with the json in it? 22:01 < Thinkofdeath> yes 22:01 < Grum> sigh 22:01 < Thinkofdeath> and command blocks with commands 22:01 < Grum> go make a ticket for it 22:01 < Grum> all stacking issues from feature creep 22:01 < Thinkofdeath> https://bugs.mojang.com/browse/MC-75630 22:01 < Grum> i'll assign it to him and harras 22:01 < Grum> kk! did assign that one 22:01 < Grum> cheers 22:01 < Thinkofdeath> :) 22:01 < Grum> (getting annoyed with this stuff, the intend is to get less complicated bugprone code .....>) 22:02 < Thinkofdeath> hehe 22:02 < Grum> *intent 22:02 < Grum> also god this talos level is hard 22:03 < TkTech> Not stuck in an elevator are you? :) 22:03 < Grum> nah 22:03 < Thinkofdeath> I've yet to play that, is it any good? 22:03 < Grum> some stupid level with tons of buttons :( 22:03 < Grum> Alley of pressureplates 22:03 < Grum> i know how to solve it ... i think 22:03 < Grum> but i only have two halves of the puzzle and miss 1 piece to make it work :p 22:03 < SinZ> also, how do the QR codes in that game work 22:04 < SinZ> I've seen a bunch of them on IRC 22:04 < Grum> i seriously do not like those 'mirror' machines 22:05 < Grum> mm think i can solve it 22:05 < Grum> but i do not like waiting around for a frikkin minute to test it >.> 22:07 < Xor_Boole> Grum you playing with that one redstone map I heard about? 22:07 < Grum> ? 22:07 < SinZ> Grum: have you found the minecraft grass block 22:07 < Xor_Boole> wait.. my bnc is trolling me 22:10 < Grum> gah solved it :p 22:10 < Grum> nasty level ;( 22:11 < Xor_Boole> Grum hmm, what are you playing? 22:11 < Grum> Talos 22:11 < Grum> The Talos Principle 22:12 < Xor_Boole> uhh oh that 22:12 < Xor_Boole> not sure why I thought you were playing a redstone map 22:13 < Grum> Because the level i was playing was called "Alley of pressureplates" 22:13 < Xor_Boole> touche 22:13 < Grum> and now that i solved it, lets see if that was the way to solve it ;) 22:14 < Grum> god i did it the hard way 22:30 < Xor_Boole> I like how gimp decided it's not going to release file descriptors 22:33 < Grum> i guess you are using it on windows 22:35 < Xor_Boole> nope, mac 22:35 < Grum> not sure what the problem is then :) 22:36 < Xor_Boole> yeah I don't know either 22:36 < Grum> locked files? running out of filehandles? 22:36 < Xor_Boole> it's pretty recent to 22:36 * Xor_Boole shrugs 23:05 < btilm305> Thinkofdeath: did you ever fix the /version issue 23:05 < btilm305> the one that says its 4000 versions off 23:05 < Thinkofdeath> yes 23:05 < btilm305> you even tested it! nub --- Day changed jeu. janv. 01 2015 01:14 < Bibl> who updated the protocol page 01:14 < Bibl> its confusing with the "bound to" part of the table 01:14 < Bibl> needs s->c or c->s 01:15 * Xor_Boole jabs Thinkofdeath 01:28 <+SpaceManiac> I think it's been like that for quite some time 01:37 < Thinkofdeath> Xor_Boole: I haven't touched the wiki in ages 01:38 * Xor_Boole glares 04:36 < nickelpro> Bibl: Clientbound means Bound to the Client, ie Going from server to client 04:36 < nickelpro> Serverbound means the opposite 04:36 < nickelpro> What's the confusion? 07:42 < btilm305> so I'm updating my client to 1.8, and I'm getting random disconnects ~ 500 ms after connecting to a server 07:42 < btilm305> I know for a fact that it's not my code.... whenever I do readByte() on the input stream, it tells me the stream is closed 07:43 < btilm305> the server doesn't have any error messages in console either 07:43 < btilm305> any idea what this may be? is there some hidden packet chain that needs to be send in 1.8 07:44 < btilm305> authentication is fine... I can see chat messages 07:46 < Scruff> "I know for a fact that it's not my code" 07:46 < Scruff> Errr 07:46 < Scruff> Well it is since the client kinda stays connected. xD 07:47 < btilm305> ?? 07:47 < btilm305> getting an exception that says that the socket is closed 07:47 < btilm305> and I didn't close it! 07:47 < btilm305> so the server is 07:48 < btilm305> it's usually either a SocketException or EOFException 07:49 < btilm305> and it always happens on reading the packet size 07:49 < jython234[2]> On a particular packet? 07:51 < btilm305> no :\ 07:51 < jython234[2]> Hmm 07:52 < btilm305> it's only for certain servers though 07:52 < jython234[2]> Certain? 07:52 < btilm305> yeah 07:52 < btilm305> NEVER happens on my tests server 07:52 < btilm305> spigot 1.8 07:52 < jython234[2]> Spigot doesn't work? Or does it? 07:52 < btilm305> but when I go on a server that is "heavier", like with a bunch of players+plugins, it doesn't work 07:52 < jython234[2]> Hm 07:52 < btilm305> never happens meaning never disconnects randomly 07:53 < jython234[2]> Nothing in the server log? 07:53 < btilm305> But I can go on some heavy servers just fine! 07:53 < btilm305> nope, just typical join, uuid, leave messages 07:53 < jython234[2]> Hm 07:53 < jython234[2]> It seems like a connection problem but that would change in the log 07:54 < btilm305> am I not sending it a packet it wants? 07:54 < btilm305> did that change in 1.8 07:54 < btilm305> does it want more packets 07:54 < jython234[2]> As far as I know the docs are well done 07:54 < btilm305> I send everything that is required in 1.7 07:54 < btilm305> which isn't much after auth 07:54 < btilm305> just client status really 07:54 < jython234[2]> How far does your client get? 07:55 < jython234[2]> Past login? Past auth? Etc 07:55 <+SpaceManiac> have you implemented compression? 07:55 < jython234[2]> O.o 07:55 < jython234[2]> Forgot about that xD 07:56 < btilm305> yup to compression 07:56 < btilm305> I get to the play stage 07:56 < btilm305> and get a bunch of chunks 07:56 < btilm305> and even get chat messages for a sec 07:56 < jython234[2]> And poof 07:56 < jython234[2]> Gone 07:56 < btilm305> yup 07:57 < btilm305> I tried disabling all outgoing packets after auth.... still same problem 07:57 < jython234[2]> Strange 07:57 < jython234[2]> Very strange 07:57 < jython234[2]> You are sending the position updates every like second correct? 07:57 < btilm305> so the only thing I can think of.... it's wanting a packet and not getting it 07:57 < btilm305> wut 07:57 < btilm305> not at all 07:57 < btilm305> 1.7 didn't need it 07:57 < jython234[2]> That's your problem 07:58 < btilm305> this client doesn't have a gui 07:58 < btilm305> hm 07:58 < btilm305> which packet? 07:58 < btilm305> positionlook? 07:58 < jython234[2]> The vanilla client sends a player position look I think 07:58 < btilm305> same coords that I get sent in the packet it sends to me? 07:58 < jython234[2]> Yup 07:58 < jython234[2]> If they Arnt moving 07:59 < jython234[2]> Try that, then tell me if it works 08:00 <+SpaceManiac> what's the last thing you get before the drop? 08:00 < btilm305> sometimes PacketPlayerListItem 08:00 < btilm305> sometimes the header footer packet 08:01 < btilm305> yeah the position look didn't help 08:01 < jython234[2]> Hm 08:01 < btilm305> just now it was PacketEntityProperties 08:01 < btilm305> client is as still as mojang's progress on mc 08:02 < btilm305> let me try getting nocheatplus 08:02 < jython234[2]> Lol 08:03 < btilm305> nope... that didn't kick it 08:05 < jython234[2]> Did you try testing against vanilla? 08:05 < btilm305> na... 08:05 < btilm305> what would that do 08:08 < jython234[2]> Maybe it is a spigot problem 08:08 < jython234[2]> Or bukkit 08:10 < btilm305> shouldn't be an api thing 08:10 < jython234[2]> Try 08:10 < jython234[2]> There is no try, only do or do not 08:11 < btilm305> there's no 1.8bukkit :P 08:12 < jython234[2]> Yes there is... 08:12 < btilm305> sorry, craftbukkit* 08:12 < jython234[2]> Are you using spigot 1.7 with the protocol back? 08:12 < jython234[2]> *hack 08:12 < btilm305> tried that AND spigot 1.8 08:13 < jython234[2]> There is CB 1.8 08:13 < jython234[2]> It is built using BuildTools.jar 08:16 < btilm305> -.- 08:18 < btilm305> nope, nothing can be reproduced with my setup 08:18 < btilm305> is it even possible for a plugin to mess with that kind of stuff 08:18 < Scruff> What kind of stuff? 08:19 < btilm305> well it's possible.... but do any popular plugins mess with packets to the point that you get kicked for not doing something right 08:19 < btilm305> nocheatplus doesn't seem to be a problem 08:20 < jython234[2]> Nope 09:37 < btilm305> ug 09:37 < btilm305> no fix 10:18 < nickelpro> No kick/drop message in the server log? 10:19 < nickelpro> "so-and-so has disconnected: [stuff here]" 10:20 < btilm305> no :\ 10:20 < btilm305> looks like a regular disconnect 10:22 < nickelpro> It IS something on your end then, server would tell you if it was disconnecting for a reason 10:22 < btilm305> hm 10:22 < btilm305> but why would it consistently work and not work for the same servers? 10:23 < nickelpro> ¯\_(ツ)_/¯ 10:24 < btilm305> its gotta be something to do with the server 10:24 < btilm305> perhaps its a specific build of spigot o.O 10:25 < nickelpro> If vanilla client connects fine to the server, it's not the server 10:27 < nickelpro> What spigot build are you using? I'll run my client against it and see if I notice anything weird 10:28 < btilm305> I don't have access to the machine atm 10:28 < btilm305> I asked a server admin to get me the console log : 10:28 < btilm305> let me get the version 10:28 < nickelpro> The machine have a url? I can just connect to it and see if I have anything weird in the my client's logs 10:29 < btilm305> meepcraft.com, then /server wild 10:29 < btilm305> wait 10:29 < btilm305> actually no 10:29 < btilm305> here's a better one 10:29 < btilm305> play.melonmc.org 10:29 < btilm305> sorry, .com 10:29 < btilm305> play.melonmc.com 10:31 < btilm305> what kind of client do you have? basic? or full on guy? 10:32 < nickelpro> Huh 10:32 < nickelpro> It's not you 10:33 < btilm305> seeing anything odd 10:33 < nickelpro> https://github.com/nickelpro/spock << My client 10:34 < nickelpro> Not really, here are the logs sans chunk data http://pastebin.com/HjKYRbLw 10:35 < nickelpro> It's like it's waiting for something, then it kicks 10:36 < btilm305> YES! 10:36 < btilm305> ITS NOT JUST ME 10:36 < btilm305> ikr! it's like I didn't give it what it wants 10:36 < btilm305> if only I could reproduce it on my machine 10:37 < btilm305> by the way that's some nice logging there 10:38 < nickelpro> I'm checking something right now, see if we can figure this out 10:38 < btilm305> yay 10:41 < btilm305> did I miss anything? 10:42 < nickelpro> Still checking 10:42 < nickelpro> Got it 10:43 < nickelpro> That server requires you to register your account, with a /register command. It has a timeout that kicks you if you don't register 10:43 < btilm305> uh 10:43 < btilm305> you'd get a kick message 10:43 < btilm305> and I went on that with my client 10:43 < btilm305> had about a 1 min timeout 10:43 < btilm305> also I've seen the issue on servers without /register 10:44 < nickelpro> Ah, well that's what kicked mine. I didn't get the kick message because I just shutdown the bot when they closed the socket on me 10:44 < nickelpro> Let me register my bot and check again 10:44 < btilm305> try cribexmc.com 10:45 < btilm305> no registration 10:45 < nickelpro> You have the problem there too? 10:45 < btilm305> yup 10:45 < btilm305> my client is in production mode via an iPhone app 10:45 < btilm305> when I see a bunch of consecutive connections, I test the ip out 10:45 < btilm305> same issue usually 10:47 < nickelpro> Works fine so far 10:47 < nickelpro> I'll post some logs in a second 10:47 < btilm305> o.O 10:49 < btilm305> also kadcon.de 10:51 < nickelpro> hmmm 10:51 < nickelpro> Yep, getting disconnects 10:51 < btilm305> yay 10:52 < btilm305> then it's not just me 10:52 < btilm305> works perfectly fine on the client 10:54 < btilm305> ever seen anything like this before? 10:55 < nickelpro> Nope 10:55 < btilm305> idk anything about python, but in java, it looks like a disconnect that happens after the server sends a disconnect packet 10:55 < nickelpro> Yes, but why is the server upset with the client and disconnecting it? 10:56 < btilm305> NO IDEA 10:57 < nickelpro> That makes 2 10:57 < nickelpro> of us 10:58 < btilm305> ok 10:58 < btilm305> I'll ask more people about this tomorrow 10:58 < btilm305> they should have the same issue to 10:59 < btilm305> and someone should be smart enough to fix it 10:59 < btilm305> curious, what time zone are you i 10:59 < btilm305> in 11:01 < nickelpro> EST 11:01 < nickelpro> Just me and my ramen at 5am 12:06 < gamingrobot> mmmm ramen 13:54 < Bibl> btilm305: compression/encryption? 13:54 < Bibl> http://wiki.vg/index.php?title=Protocol&oldid=6297 this is when the change happened i think 13:54 < Bibl> thats the last version of the wiki before the change 18:45 < gamingrobot> in spock why do I keep getting "Socket has hung up, stopping..." 19:19 < Bibl> whats spock? 19:19 < Bibl> link? 19:19 < Bibl> gamingrobot 19:23 < btilm305> Hi, IRC, so last night nickelpro and I discovered this very odd situation.... we both have our own clients (nothing fancy, no gui) that are updated to 1.8. Previously, his client seemed to be working fine. I discovered that whenever I connect to some servers, the server disconnects me for no reason. It doesn't give a proper kick message or anything--just a disconnect message. nickelpro tried with his client too and is getting the same errors 19:24 < btilm305> Does anyone else in here have a client that they can test on? try connecting to kadcon.de 19:24 < Bibl> got teamviewer? 19:24 < btilm305> works fine from mc client 19:24 < btilm305> yup.... but what would that do 19:25 < btilm305> here's his paste from last night http://pastebin.com/HjKYRbLw 19:25 < btilm305> His logging is a lot cleaner than mine 19:25 < Bibl> http://λ.pw/hcn 19:25 < btilm305> but that's about how it goes... it starts sending me packets and just stops 19:25 < btilm305> Uh, is that your client? 19:26 < Bibl> yeah drag0n0wnz09 is the bot 19:26 < Bibl> i got kicked after 19:26 < Bibl> cuz i dont have 0x25 implemented 19:26 < btilm305> okay! 19:26 < btilm305> huh 19:26 < Bibl> "Caused by: java.lang.IllegalArgumentException: Invalid packet id: 0x25 / 37" 19:26 < btilm305> Oh 19:26 < btilm305> I get kicked for no reason... 19:27 < Bibl> yeah i havent implemented 0x25 yet 19:27 < Bibl> " registerIncoming(0x23, PacketPS23BlockChange.class); 19:27 < Bibl> registerIncoming(0x24, PacketPS24BlockAction.class); 19:27 < Bibl> registerIncoming(0x26, PacketPS26MultiMapChunkData.class);" 19:27 < btilm305> you get kicked for a block break animation?? 19:27 < Bibl> yeah 19:27 < btilm305> :\ 19:27 < Bibl> ill implement it quickly 19:27 < btilm305> thx 19:28 < Bibl> have you got gravity implemented? 19:28 < Bibl> i just finished it. took longer than it should have 19:28 < btilm305> nope 19:29 < btilm305> I send only the necessary packets 19:29 < btilm305> most 1.8 servers work just fine 19:29 < btilm305> and all 1.7 servers 19:29 < gamingrobot> Bibl: https://github.com/nickelpro/spock 19:30 < Bibl> http://λ.pw/hco 19:30 < Bibl> working fine for me 19:30 < Bibl> thanks gaming 19:31 < gamingrobot> well I am trying to figure out why its hanging up the socket, maybe its not sending keep alive? 19:31 < btilm305> do you mind posting the packet flow on pastebin 19:31 < Bibl> k sec 19:31 < btilm305> server never sent keep alive! 19:31 < btilm305> and there's a grace period for that 19:31 < Bibl> got kicked for 0x0D 19:31 < Bibl> hasnt done that yet 19:31 < gamingrobot> btilm305: what client are you working on? 19:31 < btilm305> a heavily, heavily modified client based on a really really old version of mc-protocol-lib 19:32 < btilm305> basically the only thing recognizable is the class names 19:32 < btilm305> https://github.com/Steveice10/MCProtocolLib 19:33 < btilm305> so if yours works, but spock doesn't, then I think its safe to assume that it's just a packet issue 19:33 < btilm305> I imagine you are sending packets that spock isn't 19:34 < gamingrobot> its spock that is printing "Socket has hung up, stopping..." 19:35 < btilm305> my client does the same thing 19:35 < btilm305> says something different, but stops in pretty much the same place in the packet flow 19:35 < Bibl> http://hastebin.com/ibilomuxey.sm the log, really messy btilm305 19:35 < Bibl> gamingrobot print out all incoming and outgoing packets 19:36 < gamingrobot> *looks around for debug flag* 19:36 < Bibl> oh crap 19:37 < Bibl> i looked the my mc client 19:37 < Bibl> http://λ.pw/hcp 19:37 < Bibl> at my* 19:37 < Bibl> that server is broken 19:37 < btilm305> what 19:37 < btilm305> try this then 19:37 < btilm305> play.melonmc.com 19:37 < btilm305> actually 19:38 < btilm305> try this server without the packet 3 player update 19:38 < btilm305> does it still work 19:38 < Bibl> what do you mean 19:38 < Bibl> you need packet 3 19:38 < Bibl> you need to send 20 player update packets per second 19:38 < Bibl> if your pos + rot change send playerposrot update 19:38 < Bibl> if only your pos changes send only playerposupdate 19:39 < Bibl> if only rot changes send only playerotupdate 19:39 < Bibl> if nothing changes just send player update 0x03 19:39 < btilm305> o.O 19:39 < Bibl> http://hastebin.com/uwetocecuv.avrasm 19:39 < Bibl> here 19:40 < Bibl> you have to do that 19:40 < btilm305> lovely 19:40 < gamingrobot> ah hah it was keep alive [18:39:34] <<< (0x03, 0x00): Keep Alive {'keep_alive': -794972668} 19:43 < btilm305> what? 19:43 < btilm305> naw 19:44 < gamingrobot> im trying to figure out how spock works on top of trying to fix this 19:45 < gamingrobot> ohh I see there is a keepalive plugin 19:48 < btilm305> hm, Bibl do I need to inverse the z coordinate whenever I get it in packets 19:48 < btilm305> I'm doing that for some reason 19:48 < Bibl> no 19:48 < Bibl> you mean the position thing? 19:48 < Bibl> the packed position 19:49 < Bibl> public static BlockLocation decodePosition(ReadableInput in) throws IOException { 19:49 < Bibl> long val = in.readLong(); 19:49 < Bibl> int x = (int) (val >> 38); 19:49 < Bibl> int y = (int) ((val >> 26) & 0xFFF); 19:49 < Bibl> int z = (int) ((val << 38) >> 38); 19:49 < Bibl> return new BlockLocation(x, y, z); 19:49 < Bibl> } 19:49 < Bibl> 19:49 < Bibl> public static long encodePosition(BlockLocation loc) throws IOException { 19:49 < Bibl> return ((loc.getX() & 0x3FFFFFF) << 38) | ((loc.getY() & 0xFFF) << 26) | (loc.getZ() & 0x3FFFFFF); 19:49 < Bibl> } 19:49 < btilm305> na 19:49 < Bibl> what packet? 19:49 < gamingrobot> oops, I just printed chunk data, my term just kinda blew up 19:50 < Bibl> rip 19:54 < Bibl> what do you mean btilm305 19:54 < gamingrobot> https://gist.github.com/gamingrobot/a44352bf319adb04eda7 19:55 < gamingrobot> here we go 19:55 < gamingrobot> all the packets! 19:55 < btilm305> http://imgur.com/Tc25Mds 19:55 < btilm305> I have that and I have no idea why 19:56 < Bibl> gamingrobot the packets are doubling up>? wat 19:56 < btilm305> yaw as a byte to float is yaw/256*360 right? 19:56 < gamingrobot> yea I thought that was odd 19:56 < Bibl> why do you dont that? 19:56 < Bibl> do* 19:56 < gamingrobot> idk this is default spock 19:56 < Bibl> btilm305 is that a received packet? 19:56 < btilm305> PacketEntityLook 19:57 < btilm305> wait 19:57 < btilm305> what packet tells the client to change directions lol 19:57 < Bibl> @Override 19:57 < Bibl> public void read(ReadableInput in) throws IOException { 19:57 < Bibl> entityId = in.readVarInt(); 19:57 < Bibl> if (pos) { 19:57 < Bibl> moveX = in.readByte() / 32D; 19:57 < Bibl> moveY = in.readByte() / 32D; 19:57 < Bibl> moveZ = in.readByte() / 32D; 19:57 < Bibl> } 19:57 < Bibl> if (rot) { 19:57 < Bibl> yaw = (in.readByte() * 360) / 256F; 19:57 < Bibl> pitch = (in.readByte() * 360) / 256F; 19:57 < Bibl> } 19:57 < Bibl> onGround = in.readBoolean(); 19:57 < Bibl> } 19:57 < Bibl> 0x16 is rotation onluy 19:57 < Bibl> 0x16 is rotation only 19:58 < Bibl> 0x17 is move and rotate 19:58 < Bibl> the moves are relative moves 19:58 < Bibl> PacketPS17EntityLookMove pelm = (PacketPS17EntityLookMove) p; 19:58 < Bibl> Entity entity = client.getBotContext().getWorld().getEntityById(pelm.getEntityId()); 19:58 < Bibl> if (entity == null) 19:58 < Bibl> return; 19:58 < Bibl> entity.setLocation(entity.getX() + pelm.getMovementX(), entity.getY() + pelm.getMovementY(), entity.getZ() + pelm.getMovementZ()); 19:58 < Bibl> entity.setPitch(pelm.getPitch()); 19:58 < Bibl> entity.setYaw(pelm.getYaw()); 19:59 < btilm305> errr why is pitch *360 instead of *180 19:59 < btilm305> doesn't pitch go from -90 to 90 19:59 < Bibl> hmm 20:00 < Bibl> my bots head is often fucked up 20:00 < Bibl> sec 20:00 < btilm305> lol 20:01 < Bibl> btilm305 http://λ.pw/hcq 20:02 < btilm305> o.O 20:02 < btilm305> that's probably why 20:02 < gamingrobot> uhg I would love it if this socket would stop hanging up 20:03 < Bibl> btilm305 on the wiki http://λ.pw/hcr 20:04 < btilm305> the wiki might be wrong 20:04 < btilm305> I had it as 180 20:04 < btilm305> idk 20:04 < Bibl> head doesnt matter oh well 20:05 < btilm305> why can't I just send position and look 20:05 < btilm305> every tick 20:05 < Bibl> you can 20:05 < Bibl> btilm305 http://λ.pw/hct 20:05 < Bibl> after new years partyt 20:08 < btilm305> Bibl: try disabling the ontick() method... does it disconnect you? 20:08 < Bibl> server? 20:09 < btilm305> no, from your client 20:09 < btilm305> the one sending out look packets 20:09 < Bibl> no on which server 20:09 < btilm305> oh 20:09 < btilm305> test server 20:10 < btilm305> then play.melonmc.com 20:10 < btilm305> I enabled the look packets and its still disconnecting 20:11 < Bibl> replying to keep alives? 20:11 < Bibl> hmm i disabled ontick 20:11 < Bibl> and it doesnt disconnect 20:11 < Bibl> got teamviewer? 20:12 < btilm305> ya 20:12 < Bibl> pm me id and pass 20:30 < gamingrobot> [12:29:34] [Server thread/INFO]: gamingrobot lost connection: TranslatableComponent{key='disconnect.genericReason', args=[Internal Exception: io.netty.handler.codec.DecoderException: java.lang.IndexOutOfBoundsException: readerIndex(5) + length(1) exceeds writerIndex(5): UnpooledHeapByteBuf(ridx: 5, widx: 5, cap: 5)], siblings=[], style=Style{hasParent=false, 20:30 < gamingrobot> color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null, insertion=null}} 20:30 < gamingrobot> wops 20:30 < gamingrobot> thats a interesting error 20:33 < Bibl> sending or receiving a packet wrong 20:36 < gamingrobot> I think its the keep alive packet too 20:36 < gamingrobot> thats the odd part 20:40 < xehbit> Indeed, seems like a wrong packet 20:41 < Bibl> reading/writing wrong data type? 20:41 < xehbit> Guess so, had the same problem today, 1.8 changed the shorts to varints 20:42 < gamingrobot> 1.8 y u do dis 20:42 < gamingrobot> I feel like I am working on steamkit again 20:46 < gamingrobot> is keep alive still a varint 20:46 < gamingrobot> or did they end up changing that oo 20:46 < gamingrobot> too* 20:46 < xehbit> Dont know that 20:49 < xehbit> Is there some docs for using the sessionserver ? 20:58 < gamingrobot> https://www.irccloud.com/pastebin/fCbKXGbc 20:58 < gamingrobot> does that look correct? 21:08 < gamingrobot> nope its def a varint, now to figure out what keep alive value the server is really sending 21:12 < btilm305> anyone have the yggdrasil private key? 21:12 < btilm305> get it and we can all have capes :P 21:13 < Grum> i do 21:16 < Dinnerbone> Me too 21:17 < Grum> searge/jeb/umm: you're up! 21:17 < gamingrobot> lol that hostname 21:20 < btilm305> lol 21:34 < btilm305> finally figured it out 21:34 < btilm305> apparently if you send a client status with "ready to spawn" status, the server will hate you. 21:41 < Xor_Boole> the yggdrasil private key is obviously "mollstam" 21:43 < Xor_Boole> also, I'm pretty sure you don't need the key to give people capes, since signing isn't required yet 21:44 < Xor_Boole> which a certain someone has been promising is coming soon(tm) 21:47 < Grum> it used to be required and then servers failed -- we all know the story =) 21:47 < Xor_Boole> Grum noob 21:47 < Xor_Boole> so how was your new year? gold and with almost no daylight? 21:48 < Xor_Boole> s/gold/cold 21:48 < Grum> it actually had more light than the day before 21:49 < Xor_Boole> well, the solstice passed, now you get to feel less like a vampire 21:49 < Grum> or more 21:49 < Xor_Boole> depends on your perspective 21:50 < Grum> mmmm isometricmc mmmm :p 21:50 < Xor_Boole> so whose idea was making reeds tint per biome? 21:51 < Grum> they blend in a bit better now 21:51 < Xor_Boole> eh 21:52 < Xor_Boole> kinda liked the light low-saturation green 21:52 * Xor_Boole adds to list of things to revert in his pack 21:53 < Grum> totally banning your pack now! 21:53 < Grum> way to many pixels 21:53 < Xor_Boole> >banning 21:53 < Xor_Boole> lol 21:53 < Grum> =) 21:53 < Xor_Boole> made the front page of /r/mc last night 21:54 < Grum> yeah i saw! looked awesome, grats :) 21:54 < Xor_Boole> thanks man, that means a lot to me =) 21:54 < Grum> not my style, but its not as destructive to the mc-style as I expected 21:54 < Xor_Boole> Grum I could do much worse 21:55 < Xor_Boole> but hey, it's thanks to you I pushed myself to break the rules 21:55 < Xor_Boole> iirc you made a comment saying something about someone having a crappy imagination if your very limiting format restricted what they could do 21:56 < Xor_Boole> still annoyed I can't make the jukebox record rotate because jukeboxes count as solid. 21:59 < Grum> hehe 22:00 < Grum> you could do it actually 22:00 < Xor_Boole> not really 22:00 < Grum> yes really 22:00 < Xor_Boole> how do you propose I do it then? 22:00 < Grum> animated texture =) 22:01 < xehbit> !! :D 22:01 < Xor_Boole> tried that looks crap 22:01 < Xor_Boole> have you seen my clock/compass? 22:01 < Grum> well you did it wrong then! =D 22:01 < Xor_Boole> I want the record to physically spin 22:01 < xehbit> replace all textures as animated ones 22:01 < Grum> hehe 22:01 < Weloxux> mod your game to hell then! :D:D:D:D:D:D:D That always works 22:02 < Xor_Boole> which I sadly can't do if the block is solid because the alpha is discarded 22:03 < Grum> i'm confused 22:03 < Weloxux> HI CONFUSED 22:03 < Grum> HI Dadoloxux 22:03 < Xor_Boole> Grum load up my pack and look at the compass item. it's something you have to see. 22:03 < Weloxux> pun of the year 22:03 < Grum> goodpun! 22:04 < Xor_Boole> your mother was a pun, Trebeck! 22:04 < Weloxux> :o 22:04 < Grum> your face had a mother! 22:04 < Weloxux> face a your had mother! 22:05 < Xor_Boole> sorry, I was grown in a test tube 22:05 < Xor_Boole> I have no parents 22:05 < Xor_Boole> ONLY SCIENCE 22:05 < Weloxux> HI GROWN IN A TEST TUBE 22:05 * Xor_Boole slaps Weloxux 22:05 < Xor_Boole> really missing the irc.spi.gt cloudbot =p 22:07 < Grum> juck 22:10 < Xor_Boole> "juck"? I'm going to use that if you don't mind 22:10 < xehbit> JuckCraft :P ? 22:12 < Xor_Boole> Grum this is the kind of animation I mean https://imgflip.com/gif/fwz6u 22:13 < xehbit> Like multiple layers ? 22:13 < Xor_Boole> xehbit don't ask 22:13 < xehbit> k :| 22:13 < Xor_Boole> basically a ton of animations that are mostly transparent and one cuboid for each neddle position 22:13 < Xor_Boole> it's hacky, but it looks cool 22:17 < Grum> Xor_Boole: hehe hackssss 22:17 < Xor_Boole> Grum oh stfu 22:18 < Grum> Stand The French Up! ..ok! 22:18 < Xor_Boole> you and nathan need your own comedy show 22:19 < Xor_Boole> shame minecon is so inconvinent for me to go this year 22:19 < Xor_Boole> could use with another dinnerhub 22:19 < Xor_Boole> s/hub/hug 22:20 < Grum> only with a valid prestamped hugtoken! 22:21 < Xor_Boole> ha, I was lucky I even saw him 22:21 < Xor_Boole> caught him while he was jumping in the mojangmobile to go back to his hotel 22:22 < Xor_Boole> seems so long ago, last minecon 22:35 < roblabla> It seems that as of 1.8, simply sending the player a position is no longer enough for the client to go out of the "Logging In" screen. Anyone knows what else needs to be done ? 22:37 < gamingrobot> gah off by one errors 22:38 < gamingrobot> roblabla: http://wiki.vg/Protocol_FAQ#.E2.80.A6my_player_isn.27t_spawning.21 ? 22:40 < roblabla> gamingrobot: except this list was wrong back in 1.7.10. After switching to "PLAY" state, all you need for client to get out of the "Logging In" screen is to send the Join Game and Position packet. 22:41 < roblabla> :| 22:41 < gamingrobot> ah 22:41 < roblabla> Oh well, I'll implement all those 22:41 < gamingrobot> I finally fixed my stupid issue with the keep alive packets crashing stuff 22:41 < roblabla> And then remove them one by one until I have the minimal amount needed 22:56 < roblabla> hmm 22:56 < roblabla> For some reason, the client refuses to read my login packet... 23:00 < btilm305> make sure the packet flow is correct :P 23:01 < roblabla> Did the encryption system change in 1.8 ? 23:01 < roblabla> I mean, that's the only thing that I could see going wrong ._. 23:04 < btilm305> na 23:05 < roblabla> welp, indeed encryption is what's goofing up in my server. Looks like I borked it somehow. 23:05 < btilm305> gg 23:05 < btilm305> at least the client didn't disconnect you for sending a 1 byte packet that the wiki said you need to send 23:05 < roblabla> WP 23:26 < roblabla> Aaand it works. Stupid me doing stupid mistakes, and javascript not being strict enough to shout at me. 23:31 < Xor_Boole> > expecting javascript to catch your mistakes 23:31 < Xor_Boole> what is this, a well designed language? 23:35 < roblabla> At least javascript doesn't have a slew of features that simply don't work *whistle* 23:35 * roblabla is totally not looking at java's Cloneable or Serializeable interfaces 23:36 < Xor_Boole> when I first read that sentence I expected you to berate scala 23:36 < Xor_Boole> then I remembered you actually like scala 23:37 < roblabla> Haven't touched it for a while, but I do tend to like functional languages like scala :P 23:38 < Xor_Boole> oh, roblabla, did you see my resource pack? 23:38 < roblabla> nope ? 23:38 < Xor_Boole> I think it's still on the front page of /r/mc 23:39 < Xor_Boole> incredibly, grummy liked it even though it's not pixelated =o 23:41 < roblabla> oh, this is rather nice 23:42 < Xor_Boole> =3 23:45 < roblabla> alright, node-minecraft-protocol is now 1.8-compatible. Just a couple months late. --- Day changed ven. janv. 02 2015 00:10 < btilm305> guys 00:10 < btilm305> if you can't code in assembly you're doing it wrong 01:25 < xehbit> Well... 01:25 < xehbit> / This is a token for 1 free hug. Redeem at your nearest Mojangsta: [~~HUG~~] 01:25 < xehbit> :D 01:45 < roblabla> btilm305: I beg to differ. If you're not writing your program using a magnetic needle on your hard drive, then you're doing it wrong. 01:50 <+Amaranth> butterfly etc emacs 03:04 * Dinnerbone hugs xehbit 05:42 < nickelpro> roblabla: I thought andrew had ditch node-minecraft? 05:44 < btilm305> nickelpro: did you hear? I figured out the issue 05:45 < nickelpro> btilm305: Ya gamingrobot put in PRs to Spock to fix everything there too 05:45 < nickelpro> Good work guys 05:45 < btilm305> really? 05:45 < btilm305> link? 05:45 < nickelpro> It was an unrelated issue to yours 05:45 < nickelpro> Just presented the same 05:46 < nickelpro> https://github.com/nickelpro/spock/pull/28 05:58 < btilm305> wooooow 05:58 < btilm305> 2 different issues 06:01 < nickelpro> A varint had managed to sneak through my protocol update 06:02 < nickelpro> And I was forgetting to account for a byte in my uncompressed packet headers 06:03 < nickelpro> The varint actually shouldn't have been a problem, but I didn't notice the uncompressed packet headers because I tested 1.8 with a very low compression threshold 06:03 < nickelpro> Because I was having problems with my compression code 14:31 < nickelpro> Is there a packet or message that tells a client what dimension it's going to/is currently in? 15:16 < Weloxux> nickelpro: when a client joins a dimension is given, and you can respawn players to desired dimension with the Respawn package 0x07 15:30 < nickelpro> Weloxux: Thank you 16:04 < Bibl> https://www.youtube.com/watch?v=4NZdggNUvq0 16:05 < Weloxux> np 16:05 * Xor_Boole yawns 16:05 < Weloxux> http://youtu.be/Od91ESn96YM 16:06 < Xor_Boole> I'm tired 16:06 < Weloxux> HI TIRED 16:06 * Xor_Boole slaps Weloxux 16:06 < Xor_Boole> I want to make a reed model but I'm like mehhh 16:07 < Xor_Boole> said reed model won't be biome-dependent 16:07 * Xor_Boole glares at a certain someone 16:07 * Weloxux blushes 16:07 * Xor_Boole slaps Weloxux 16:07 < Xor_Boole> not you 16:07 < Weloxux> ;-; 16:07 < Weloxux> n- notice me 16:08 < Xor_Boole> I am not your senpai! 16:08 * Xor_Boole crosses his arms and stares into space 16:08 * Weloxux stares back from his in orbit flying spaceship 16:08 < Xor_Boole> I should write a spec for my model format 2.0 16:09 < Xor_Boole> maybe I should just do modified scala... 16:09 < Xor_Boole> yeah I think I'll do that 16:09 < Xor_Boole> or... meh 16:10 < Xor_Boole> scala would be easy because I don't have to write a compiler... except the scala compiler is slow as balls 16:15 < Bibl> so is scala runtime 16:15 < Bibl> didnt expect that bamboozling 16:16 < Xor_Boole> scala runtime is pretty fast if you don't do stupid shit 16:17 < Xor_Boole> kotlin's even faster but the syntax is ugly as balls 16:17 < Xor_Boole> also where the fuck do you set the default jdk in idea 16:24 < Scruff> Xor_Boole, somewhere 16:40 < Xor_Boole> well this is annoying 16:41 < Xor_Boole> scala doesn't compile "val `0`" to "public int $u0030()" 16:41 < Weloxux> Hi annoying, so nice to meet you! Xor_Boole told us so much about you! 16:41 < Xor_Boole> Weloxux I will grind your bones to make my code 16:50 < Weloxux> I´m a really shitty programmer though, probably not a smart idea 16:50 < gamingrobot> Why am I not receiving the Update Heath packet after being attacked? 16:51 < gamingrobot> This is currently what I receive when attacked https://www.irccloud.com/pastebin/iPxK3khV 17:12 < Bibl> you only get health updates if you're sending 20 position updates per second 17:13 < shoghicp> why depend on client updates for health >.< 17:13 < SinZ> Why send 20 position updates per second when the client isn't moving 17:13 < SinZ> waste of bandwidth 17:13 < xehbit> TCP is waste of bandwith :P 17:13 < SinZ> atleast its reliable 17:13 < xehbit> Still dont get it why MC isnt using UDP for movements 17:14 < xehbit> Thats true, for chat events etc.. TCP is nice, but for movements ? 17:14 < SinZ> why require two connections when you can use one 17:15 < shoghicp> MCPE is using UDP :) 17:15 < shoghicp> still, I just tick entities that need update each tick 17:16 < shoghicp> players always need to tick, so it doesn't depend on player sending updates