17:01 <+XorBoole> at my school, cs is kind of the equivalent of medicine or law in other places 17:01 < Aikar> I made some note to him that he should study more outside of curriculum in his personal time and hes like "when i leave this room I'm not touching this stuff" 17:01 <+XorBoole> a lot of people seem to be in it for da money 17:02 <+XorBoole> of course, they're all very passionate 17:02 < zml> just about money 17:02 <+XorBoole> you'd be surprised 17:02 <+XorBoole> the IT department has to go to lengths to not get hacked by the students 17:02 < Aikar> my passion for development is what got me my first job :P I told my first boss how I'm working on OSS projects instead of partying on Friday nights. I think that sold him 17:03 < zml> hah, that is fun 17:03 <+XorBoole> of course most people I know are web phreaks 17:03 <+XorBoole> well... not really 17:03 <+XorBoole> one of my friends is a rust freak 17:03 < Aikar> well its a good choice considering how much stuff is moving to the web :P 17:03 <+XorBoole> a bunch of people are into python 17:03 < Aikar> web is my primary career 17:03 <+XorBoole> I've never been able to stand the web 17:04 < Aikar> but im in general the "all around ninja" 17:04 < zml> yes the web is wrong 17:04 <+XorBoole> the only part of cs I'm really passionate about is language design 17:04 < Aikar> its sad that I seem to know more about sys admin than my hosts support engineers 17:04 <+XorBoole> (hence why I have at least 3 or four half-finished language specs sitting around at any given time) 17:04 < zml> lol 17:04 <+XorBoole> Aikar the industry is full of idiots. 17:05 <+XorBoole> i.e. people that do the minimum effort for teh moni 17:08 < Aikar> XorBoole: what part of web dev dont you understand lol, you take code and run it : 17:08 < Aikar> :P 17:08 <+XorBoole> meh, I just don't like it too much 17:08 < Aikar> write more php! 17:09 * XorBoole pushes Aikar into a ditch 17:09 * zml gets out a shovel and starts burying Aikar 17:09 <+XorBoole> I mean, js has the potential to be a good language 17:09 <+XorBoole> the object system is actually good 17:09 < zml> with ES6 JS seems like it'll be pretty ok 17:09 <+XorBoole> it's like water-ed down smalltalk but it's still cool 17:10 < Aikar> I get to use ES6 now <3 17:10 <+XorBoole> I'm not an OO fan tbh 17:10 <+XorBoole> I'm a haskell guy 17:10 <+XorBoole> but I'm a mathematician so you shouldn't be surprised 17:10 < Aikar> one of my fav features of 6 is template strings I think 17:10 < zml> typical mathematician 17:10 < Aikar> hated having to split strings up in ES5 17:10 <+XorBoole> oh did I tell you about my latest language idea? 17:10 <+XorBoole> picture this 17:11 <+XorBoole> java assembly as a lisp, with macros 17:11 <+XorBoole> (macro this () (load-obj (0))) 17:12 < zml> everybody likes lisp 17:12 < Aikar> i love JS, i'm a big node.js fan, but after doing java so much I really hate losing the crispness of java's static analysis potential and the features of the IDE it provides. 17:12 <+XorBoole> except ammar2 because he smells 17:12 < Aikar> theres just no sane way to guarantee the behavior of JS code with how loose it is ._. 17:12 < Aikar> but to run it 17:12 <+XorBoole> Aikar java has a ton of static analysis issues 17:12 < Aikar> right, but compared to Js... lol 17:12 <+XorBoole> mostly because of patchy generics and weak built-in code generation 17:12 <+XorBoole> have you seen my scala nbt lib? 17:12 < Aikar> nope 17:13 < zml> yeah, that is my issue with any language without an actual type system -- python too :/ 17:13 < Aikar> but even LOOKING at JS code you cant be sure of how a simple code block is going to run 17:13 <+XorBoole> the tag classes are all very tightly typechecked 17:13 < zml> where a type is essentially a dict of methods 17:13 <+XorBoole> zml that's acutally the beauty of it 17:13 <+XorBoole> you can modify types at runtime 17:13 <+XorBoole> but, there's no type signatures 17:14 < zml> it's awesome for doing crazy runtime manipulation (I've done it in python too), but it's annoying for producing working code quickly 17:14 <+XorBoole> what js needs is a way to typecheck types sent into functions 17:14 < zml> I think python was getting type decorations in 3.5 17:15 <+XorBoole> like, to verify that it has an object with a certain function 17:15 <+XorBoole> python is a mess 17:15 <+XorBoole> too many bad design choices to be usable imo 17:15 < Aikar> id love to play with Hack but no way I can justify re-engineering our tech stack now 17:15 <+XorBoole> hack is beautiful 17:15 <+XorBoole> it's taking the small number of things PHP does right, and inserting them into a sane language 17:15 < Aikar> i wish PHP7 would drop backwards compat 17:15 <+XorBoole> also it uses `var: type` syntax, which I lurve 17:16 <+XorBoole> Aikar ever been to /r/lolphp? 17:16 < Aikar> if they just drop backwards compat they can finally fix the issues 17:16 < Aikar> once or twice im sure 17:16 <+XorBoole> thwy won't do that 17:16 < Aikar> you gave some link to /r/programminghorror, my mind has been scarred 17:16 <+XorBoole> their devs are too fucking dense to understand that's needed 17:16 < Aikar> I learned how bad other companies are 17:17 <+XorBoole> I ran into shoghi at minecon actually 17:17 < Aikar> read one story on how they dont use any VCS, and live server edit files in production, and constantly have issues with changes being reverted due to 2 people working on same file 17:17 < jast> anyone of you play with rust yet, on something semi-practical? 17:17 < Aikar> and then they found some method that was used in 14 other files that drops the database labeled "Deprecated - dont use!" 17:17 <+XorBoole> we spent the good part of maybe ten minutes giggling like little girls about php and the nonsense he has to do to make php sane enough to run a minecraft server 17:17 < zml> he's the one who came in here wanting to write a MC server in PHP 17:18 < zml> so that's all on him 17:18 <+XorBoole> well, it landed him a job at mojang 17:18 < Aikar> ive done some insane things in php.... http://aikar.co/serverload.png - but this was so many years ago before all the nice goodies / changes to the PHP Ecosystem 17:18 <+XorBoole> he's utterlly batshit crazy, which is why I really enjoyed talking to him 17:18 < Aikar> ReactPHP would of been a blessing to develop that code back then, i was writing my own framework :/ 17:18 < jast> there was some guy who wanted to write some kind of server in something and was really convinced of his ideas 17:18 < jast> eventually he got banned 17:18 < jast> that was much more interesting 17:19 <+XorBoole> Aikar https://github.com/PocketMine/PocketMine-MP/blob/master/src/pocketmine/PocketMine.php 17:19 <+XorBoole> that's the startup for pocketmine 17:19 < Aikar> yeah i maware they use php 17:19 < Aikar> they use my timings v1 system :P 17:20 <+XorBoole> imagine me and shoghi, sanding next to the spigot booth, looking at github on a phone, giggling like little girls, in spanish, at that file 17:20 < zml> I'm surprised shoghi actually got that to work, but I think it got sorta popular at some point 17:20 <+XorBoole> zml he's brilliant, and crazy 17:20 < Aikar> interesting they use the thread module 17:21 < Aikar> php can do good stuff if you put in the work 17:21 < Aikar> just... you gotta deal with all the broken crap about the lang 17:21 <+XorBoole> well, that startup rips out all the broken crap it can 17:21 <+XorBoole> which results in a very nice, almost bukkit-like API 17:21 <+XorBoole> I've nver used pocketmine, but it seems quite sane 17:22 < Aikar> the main thing that plagues php is 99% of code on the net is wrote by juniors/less than juniors, where people at my level dont do a lot of public release. though that is changing now all these nice frameworks and libs are coming out 17:22 < Aikar> lot of that code is to setup the env to have consistentcy 17:22 <+XorBoole> Aikar that and the fact that a lot of the core developers code like plebs 17:23 < Aikar> hmm they dont run xdebug as a prod requirement do they? 17:23 < Aikar> cause xdebug in prod is really bad idea 17:23 < Aikar> it actually changes behavior 17:23 < Aikar> it enforces stricter stack depth limits when loaded 17:24 < Aikar> i had code blowing up in dev but not prod and was so confused heh 17:24 < Aikar> (as it was working then code was added that increased stack depth, but didnt affect prod) 17:25 < Aikar> and xor this code doesn't fix anything, it just checks that you have all the deps and runtime properties setup right 17:25 < Aikar> ie: not trying to run it through a browser 17:25 < zml> lol some bits of pocketmine look like they were pretty much copied verbatim from bukkit 17:26 <+XorBoole> zml yeah, it's bukkit, ported to PHP, with a PE protocol 17:26 < zml> ok... 17:26 <+XorBoole> with some variations to fit with PE, ofc 17:27 <+XorBoole> this is, of course, from someone that has only read pocketmine's source 17:27 < zml> well it is a custom server too iirc 17:28 < Aikar> I wrote a ghetto game code base back in the days, I wrote an async io communications system that let me do IPC with spawning child processes and communicating over STDIO - So I had ghetto threads in a sense 17:28 < Aikar> downside is the parent process had to be the router for any communication between 2 children 17:29 < Aikar> and this was all php 17:29 < Aikar> (http://aikar.co/serverload.png) 17:29 * zml runs 17:31 < Aikar> I dropped that code to rewrite it in node.js, but just never happened 17:32 < Aikar> I think thats near where I went to MC 21:31 <+XorBoole> what's the criteria for banners to animate in the vanilla client? 21:31 <+XorBoole> sometimes I seem them waving, sometimes I don't 21:49 < SupaHam_> Anyone know if there's like a recommended radius for relative teleports? 21:56 <+XorBoole> "i.like.butts" 21:56 <+XorBoole> welp, that beats my hostname 21:56 <+ammar2> my hostname on esper is very very good 21:57 * Aikar tickles ammar2 21:58 <+XorBoole> I'm not on esper, what is it? 21:58 <+ammar2> i.diddled.with.the.esper.ops.so.they.klined.m 21:58 <+ammar2> me* 21:58 <+XorBoole> oh boy 21:59 <+XorBoole> is that a cloak or do you own klined.me? 21:59 <+ammar2> rdns :^) 21:59 <+XorBoole> lelkek 22:00 <+ammar2> my friend has the email d@nkmem.es 22:00 <+ammar2> I am extremely jealous 22:03 <+XorBoole> I just scrolled by someone whose host name is in fact nkmem.es 22:03 <+XorBoole> I believe I know this person 22:03 <+ammar2> vemacs, yeah 22:03 <+ammar2> oh he has a good host in this channel too 22:04 <+XorBoole> yep 22:04 <+XorBoole> he's a real pro 22:04 <+XorBoole> I think db's still stops it though 22:04 <+XorBoole> wait, why was db klined? lol 22:04 <+ammar2> it would but the actual tld and domain aren't taht good 22:05 <+XorBoole> tru. but 'i.like.butts' 22:05 <+ammar2> XorBoole: maybe that's his quit message 22:05 <+XorBoole> that's a pretty kek quit message 22:05 <+ammar2> otherwise common temporary k-lines are usually for exceeding connection limits 22:47 < Fenhl> jast: I use Rust, yes. There's actually a couple people at Piston working on a Minecraft client 22:47 < Fenhl> and I started the server half of the project 22:48 < Fenhl> http://hematite.piston.rs/ 22:49 < Fenhl> oh and right now I'm scribbling notes for a plugin infrastructure for programs written in Rust 22:51 < Fenhl> which I think will be a compiler extension that just throws all the plugins into the source directory and gives them to the main program as a list or something 22:52 < Fenhl> this is mainly for Hematite, but I'm also going to write slackminebot in Rust and it will use that plugin infrastructure for compatibility with different servers and other stuff 22:53 < Fenhl> slackminebot will be a Minecraft/Slack chat sync bot, and the spiritual successor to https://github.com/wurstmineberg/wurstminebot which syncs Minecraft and IRC --- Day changed sam. juil. 18 2015 06:56 < Aikar> Fenhl: hve fun, i have mine integrated and I get my mc bot kicked constantly lol 06:57 < Aikar> from the slack messages 06:57 < Fenhl> Aikar: kicked? wat? 06:58 < Aikar> sending chars mc doesnt allow 07:19 <+ammar2> mc doesn't allow characters? 07:19 <+ammar2> which ones 10:00 < Fenhl> § 10:00 < Fenhl> and some invisibles iirc 10:03 <+ammar2> so you just get kicked for putting those characters in chat? that's a bit harsh isn't it 11:53 < Fenhl> no, Notchian clients can't type them 11:58 < morfin> yep i tried that 11:58 < morfin> they just does not work 11:59 < morfin> so server should kick user sending such symbols? 12:17 <+ammar2> well they can't type them but what happens when you actually send them to a server --- Day changed dim. juil. 19 2015 02:31 < Fenhl> ammar2: like I said, you get kicked 02:31 < Fenhl> same if you send a message over 100 chars 02:31 <+ammar2> sorry I must have missed that between the disconnects 17:27 < morfin> so you say that better keep 3 worlds on same host 17:27 < morfin> overworld/netherworld/enderworld to keep them synchronized 17:40 < ashka> hi, I have a protocol question. consider this data: http://puu.sh/j4Vyc/ee3c06ad8e.png first byte is 0x64=100, and then 100 bytes follow, packet id is 0x02 which is chat message, that's alright. however what is the second byte (0x00) about ? is it because it is a VarInt ? I don't understand why it is there as the first byte is less than 0xFF 17:45 < jonathanperret> ashka: could it be a compressed packet ? http://wiki.vg/Protocol#With_compression 17:45 < jonathanperret> ashka: I mean an uncompressed packet, but in compression mode… 17:46 < ashka> jonathanperret: ooh, overlooked that part. yup that's it, thanks 18:03 < morfin> is not that incorrect? 18:04 < jonathanperret> morfin: what ? 18:05 < morfin> sending uncompressed packet when compression is turned on 18:06 < jonathanperret> morfin: the protocol appears to allow it. see http://wiki.vg/Protocol#Set_Compression : « Packets of this size or higher *may* be compressed » 18:06 <+ammar2> also if you try to send a packet larger than the threshold from set compress to the vanilla server it will kick you 18:07 < jonathanperret> good to know! 18:07 < morfin> lol 18:07 < morfin> so i 18:08 < morfin> so if i set compression there is size X and i should compress packets greater than that size 18:09 < jonathanperret> morfin: that’s how i understand it, yes 18:10 <+ammar2> yup that's pretty much the gist of it --- Day changed lun. juil. 20 2015 00:42 <+XorBoole> can the server set the name of an item in an anvil via MC|ItemName? 00:43 <+XorBoole> this is for notchian clients of course 06:46 < morfin> what is that MC|... stuff? 06:48 < morfin> oh that's Plugin Message 15:40 < morfin> guys is there any specification how plugin messages are sent? 15:40 < morfin> it can contain any data having any type allowed in Minecraft? 15:45 <+ammar2> it can contain any data, at all. The MC| channels use the normal types tho iirc --- Log closed lun. juil. 20 16:39:46 2015 --- Log opened lun. juil. 20 16:39:55 2015 16:39 -!- Irssi: #mcdevs: Total of 148 nicks [1 ops, 0 halfops, 15 voices, 132 normal] 16:44 -!- Irssi: Join to #mcdevs was synced in 255 secs 18:32 < Techcable> morfin: Yes wiki.vg plugin message packet 18:42 < morfin> anybody use not plain types? 20:32 <+Amaranth> morfin: I'm sure someone uses it to send protobuf messages or raw H.264 data or something 21:45 < morfin> LOL? 21:45 < morfin> H.264 is video :O 23:00 <+Thinkofdeath> Theres mods that allow you to play videos in minecraft so that wouldn't surprise me 23:38 < barneygale_> Whoever was asking about getting logins throttled, I've had the same thing happen 23:38 < barneygale_> Fails with "Invalid credentials", which makes sense if they're trying to prevent brute-forcing 23:38 * Thinkofdeath puts up hand 23:39 <+Thinkofdeath> wasn't brute-forcing :( just kept breaking the login screen and having to relog 23:45 <+Thinkofdeath> Oh and different note: steven has basic support for the player inventory now https://i.imgur.com/mi7q5eQ.png 23:46 < barneygale_> what am I looking at? 23:46 <+Thinkofdeath> thats a screenshot from steven 23:46 <+Thinkofdeath> just showing it working --- Day changed mar. juil. 21 2015 01:28 <+ammar2> Thinkofdeath: I think stating its your client would make more sense to give context since it looks pretty much like vanilla 01:30 <+Thinkofdeath> ammar2: brightside its reaching its goal then :P 01:31 < Owexz> Looking good Thinkofdeath. :) 01:31 <+Thinkofdeath> thanks :) 01:32 < Owexz> How's the performance relative to vanilla? 01:32 <+XorBoole> it runs faster than I do most of the time 01:32 * XorBoole runs 01:33 <+Thinkofdeath> Vanilla still wins in a lot of cases 01:33 * Owexz throws a boomerang at XorBoole 01:33 * Thinkofdeath still thinks steven looks better though 01:33 <+Thinkofdeath> https://i.imgur.com/dr8a9zz.png 01:33 <+XorBoole> but it's writen in go =D 01:34 <+Thinkofdeath> but it has "poorly implemented clouds"(tm) 01:34 <+XorBoole> how the hell did you get 'Think' 01:34 <+XorBoole> you got think and some dweeb got xor 01:34 <+Thinkofdeath> by buying an account the moment the old nicks got cleared 01:35 <+XorBoole> I was hours late to get xor 01:35 <+XorBoole> hours 01:35 <+XorBoole> at least it's not as bad as you stealing build 1337 from me 01:37 <+Thinkofdeath> Owexz: if you feel like comparing it to vanilla there are builds available :) 01:37 <+Thinkofdeath> although if you have an amd gpu good luck, they seem to hate me 01:37 < Owexz> GTX 770, all good. 01:38 <+Thinkofdeath> https://github.com/thinkofdeath/steven#builds 01:38 < Owexz> I'll give it a go after my last exam. 01:40 <+ammar2> Thinkofdeath: so many files in the / * 01:40 <+ammar2> ;_; 01:41 <+Thinkofdeath> go's packages aren't like java packages. Its more like java modules 01:41 <+Thinkofdeath> so no import cycles :) 01:42 <+Thinkofdeath> Makes splitting things into packages harder 01:45 <+XorBoole> Thinkofdeath showed that screenshot to my staff. they weren't able to realize it wasn't vanilla 01:45 <+Thinkofdeath> \o/ 01:45 <+XorBoole> congratulations, you've passed the turing-test equivalent for minecraft clients 02:04 <+XorBoole> Thinkofdeath that screenshot also fooled about 150 players on a server trying to figure out what it was 03:12 < mniip> XorBoole, hold on a sec I'll implement minecraft in blender xD 03:30 <+AndrewPH> Thinkofdeath: that shiz runs pretty well! 03:30 <+AndrewPH> glad to see golang's gc has improved from the early days 04:10 <+SinZ> Thinkofdeath: quick question, how isolated is the networking on your client 06:28 < Not-17f9> [mineflayer] rom1504 pushed 26 commits to master [+0/-0/±67] http://git.io/vmxHw 06:28 < Not-17f9> [mineflayer] Pietro210 2b64aa5 - Minor examples cleanup 06:28 < Not-17f9> [mineflayer] Pietro210 1f5eac2 - Merge branch 'master' into better-examples 06:28 < Not-17f9> [mineflayer] Pietro210 f08f7f6 - Improve chatAddPattern.js 06:28 < Not-17f9> [mineflayer] ... and 23 more commits. 06:46 < Not-17f9> [mineflayer] rom1504 pushed 3 commits to master [+0/-0/±3] http://git.io/vmx5Y 06:46 < Not-17f9> [mineflayer] gipsy-king e1a8b5d - arm swing on placing block, and look at center of block on activate nocheat is offended by the missing arm swing and often does not allow for opening chest if looking at the corner of it. 06:46 < Not-17f9> [mineflayer] rom1504 1d90e45 - use offset instead of clone().translate 06:46 < Not-17f9> [mineflayer] rom1504 582adb8 - Merge #308 : nocheat fixes 06:56 < Not-17f9> [mineflayer] rom1504 pushed 3 commits to master [+0/-0/±3] http://git.io/vmxdb 06:56 < Not-17f9> [mineflayer] Gnomesley 922b413 - Add clickWindow support to ContainerWindow 06:56 < Not-17f9> [mineflayer] rom1504 86612e2 - override transactionRequiresConfirmation for ContainerWindow instead of having a special case in the general method. 06:56 < Not-17f9> [mineflayer] rom1504 873f4a0 - Merge #311 : Add clickWindow support to ContainerWindow 07:21 < rom1504> ha ! I like the "... and 23 more commits." :d 07:22 <+ammar2> there was a time where that wasn't a thing 07:22 <+ammar2> and it would show every single commit 07:22 <+ammar2> it was fun when SirCpmwn did a massive merge or something 10:22 <+Thinkofdeath> SinZ: Pretty well the protocol decoding/encoding is its own package. The handling is part of the client though 10:41 < SopaXT> Hello! 12:42 < morfin> wait a second video stream over TCP? 12:42 < morfin> that sounds bad.. 18:25 < Aikar> test 23:54 < morfin> Amaranth, i understand streaming video over HTTP is not much better because TCP resend lost frames 23:54 < morfin> but stream video in Minecraft) --- Day changed mer. juil. 22 2015 00:00 < Aragas> hm, interesing idea 00:35 < gurun> guys, we are trying to break records at InPVP, bring your mobiles and help 00:38 < Aragas> ? info where to connect or what to do 00:38 < Aragas> just connected, can't see history 00:46 < gurun> history? 00:46 < gurun> you can see the live stats at http://inpvp.net/status 00:46 < gurun> otherwise connect to play.inpvp.net 00:46 < gurun> you can't see it when you are online. 00:47 < Aragas> maybe you have provided any info back then, i mean 00:47 < gurun> or, hmm can try the command ".stats" 00:47 < gurun> nope, no back info 04:39 < Aikar> who knows a lot about the profile properties re skin property and signature 04:40 < Aikar> or i guess i could ask first - can mojang make the dang API timestamp return when the skin was changed, and not when it was generated? 04:40 < Aikar> that timestamp changing breaks head stacking 04:46 <+XorBoole> Aikar you know skulls can be unsigned, right? 04:46 <+XorBoole> just edit the props yourself 04:46 < Aikar> XorBoole: i want to take legit player responses and spoof the timestamp 04:46 <+XorBoole> or better yet just merge the items yourself in EMC-CB 04:46 < Aikar> to fix the issue with stacking 04:47 <+XorBoole> you can totally do that. skulls don't give a shit about valid sigs 04:47 <+XorBoole> and probably never will due to legacy heads 04:47 < Aikar> i guess i could hook GameProfileSerializer to modify timestamp there? 04:48 <+XorBoole> idk, I just ate a shitload of sushi. can't think 05:12 < Aikar> https://bitbucket.org/starlis/empirecraft/commits/6c57922419c7374b49f284a7936c33e5b12b9513#Lpatches/craftbukkit/0106-Profile-Serialization-Events.patchT97 this should give me abil to fix it 05:13 < Aikar> XorBoole: merging does hashcode/equals on the nbt tag, too much work to ignore it there 07:25 < Aikar> XorBoole: https://gist.github.com/aikar/85f983fa174f4b981ecb :) 22:30 <+Thinkofdeath> On one hand I don't want to support offline mode, on the other the session servers are down and I want to code cool clouds :( 22:37 < morfin> guys let's imagine i shutdown server and have N Session instances for N players(every Session instance have own queue) so 22:39 < morfin> if am shutting down server should i just stop sending new packets to sessions(and reading from them) and kick everybody(push kick packet to the end of queue) and do not send anything else? 22:40 <+Thinkofdeath> that would be fine 22:41 <+Thinkofdeath> its not like they need the other packets anyway :) 22:41 < morfin> there is shitloads of syncronization is required 22:41 < morfin> *synchronization 22:42 < morfin> but if i stopped networking part i can do any shit theoretically --- Day changed jeu. juil. 23 2015 01:01 < Not-17f9> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/vYm3C 01:01 < Not-17f9> [mineflayer] rom1504 5e7cff9 - Fix #306 : chunks have a different size in the nether http://wiki.vg/Protocol#Chunk_Data "The server does not send skylight information for nether-chunks, it's up to the client to know if the player is currently in the nether." 01:27 < Not-17f9> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/vYmCO 01:27 < Not-17f9> [mineflayer] rom1504 4d8acf9 - comment out mob position in chatterbox so the bot doesn't get kicked, add a console.log to get all information about the block for the block command 01:35 < rom1504> we have a proxy in node-minecraft-protocol and somehow noclip is not possible (with the vanilla client) in gamemode3 01:35 < rom1504> anyone had this problem before with a proxy / any clue what it could be about ? 01:35 <+Thinkofdeath> I've had the reverse 01:35 <+Thinkofdeath> all no clip in any gamemode 01:35 < rom1504> the proxy is not even parsing packets so we don't understand 01:35 < rom1504> ah 01:35 <+Thinkofdeath> I think its an entity metadata flag 01:36 <+Thinkofdeath> where the cape one used to be 01:38 < rom1504> this packet maybe http://wiki.vg/Protocol#Client_Settings ? 01:39 < rom1504> it mentions a cape 01:39 <+Thinkofdeath> that was related 01:39 <+Thinkofdeath> I think the server in 1.7 copied the flag setting from the client to a metadata field 01:39 <+Thinkofdeath> in 1.8 that changed and the field moved 01:40 <+Thinkofdeath> so when I modified a 1.7 server to support 1.8 toggling my cape toggled no-clip 01:40 <+Thinkofdeath> (thats how I remember it, it was a year ago now) 01:43 < rom1504> hmm 01:43 < rom1504> this http://wiki.vg/Protocol#Spawn_Player mentions a cape too 01:44 < rom1504> and it has that annoying "Metadata" field type 01:44 < MrWebington> Hello there, I'm not sure if this question has been previously asked, but does anyone know what's the packet that makes players able to go through blocks? 01:44 < rom1504> MrWebington: are you Egoscio :d ? 01:44 < rom1504> I just asked about it 01:45 < MrWebington> Yep :P 01:45 * Thinkofdeath goes and digs 01:45 < rom1504> so apparently it's somehow linked to a cap flag 01:45 < rom1504> *cape 01:47 < MrWebington> But... but... if node-mc-protocol isn't modifying any packets (just sending raw stuff) how the heck can we solve it? 01:47 < MrWebington> Resend the required packet? 01:48 < rom1504> I think if nmp guess the packet size wrong it might break stuff 01:48 < rom1504> well 01:48 < rom1504> possibly 01:49 < MrWebington> What if we make a dumb version of nmp that doesn't think, just brainlessly forwards stuff. 01:49 < rom1504> then you wouldn't be able to change packets ;) 01:50 < MrWebington> But I'm just trying to figure out if it's nmp that's making this happen... 01:50 < rom1504> well you can always make a silly proxy using ssh for example 01:51 < MrWebington> I wanna make something silly with the net module. guess it can do what's needed 01:51 < MrWebington> gotta stick with node in this case 01:51 < MrWebington> Just tracing the issue from the simple's building blocks 01:52 < rom1504> well it's pretty clear there's something going on in nmp that's not correct honestly ;) 01:56 <+Thinkofdeath> hmm can't cause it the way I thought, maybe it changed between snapshots and I never noticed 02:15 <+Thinkofdeath> looking through the code it seems only attached to gamemode :| 02:32 < rom1504> I wonder 02:33 < rom1504> is gamemode really a varint in 0x38 ? 02:33 < rom1504> it's a ubyte everywhere else 02:33 < rom1504> doesn't seem to make sense 02:33 < rom1504> http://wiki.vg/Protocol#Player_List_Item 02:40 <+Thinkofdeath> its a varint 02:40 <+Thinkofdeath> and its a float in 0x2B :) 02:41 < MrWebington> I can't believe minecraft's authentication servers have been down for like 3 hours now. 02:44 < rom1504> oh yeah, but we've got that right in our protocol.json so I don't get it 02:45 < rom1504> everything in PLAY state we're just forwarding 15:20 < SopaXT> Check out: https://github.com/SopaXorzTaker/gamecheck 16:25 <+Thinkofdeath> Hasn't SopaXT linked that repo everytime he has joined now? 16:29 <+ammar2> he sometimes talks too 16:29 <+ammar2> I think 16:33 <+Thinkofdeath> hmm 16:34 < shoghicp> sometimes he talks about I should stop using PHP 16:34 < shoghicp> or to be unbanned as well 16:35 <+Thinkofdeath> hehe 16:35 <+Thinkofdeath> lazy grep: http://hastebin.com/epinoturoy.md 16:36 < shoghicp> haha 16:36 <+XorBoole> needs more == 16:36 * XorBoole runs 16:37 < shoghicp> XorBoole: ===* 16:38 <+XorBoole> shoghicp you mean ======= 16:38 < shoghicp> what about !===! 16:38 <+ammar2> he killed UUID0 16:39 * XorBoole sends in the spaceships <=> 16:39 < shoghicp> I think it now has <> and <=> 16:39 <+XorBoole> so is <> strict less than or strict greater than? 16:39 * XorBoole runs 16:40 < shoghicp> I think it's just != 16:40 < shoghicp> never used that, looks horrible 16:40 <+XorBoole> pff. =/= masterrace 16:40 <+XorBoole> thigns I wish: that scala used === and !== instead of eq and ne (for ref equality) 16:41 <+XorBoole> a eq b || c -> a eq (b || c) =( 16:42 <+ammar2> things I wish: no more scala 16:42 * XorBoole force feeds ammar2 some kotlin 16:42 <+XorBoole> Kotlin, also known as russian scala 16:42 * XorBoole hides 16:42 <+ammar2> all jvm languages except java arebad 16:42 <+ammar2> tru facts 16:42 <+ammar2> all hail oracle 16:42 <+XorBoole> praise the sun! 16:43 * XorBoole shows himself out 17:24 <+Thinkofdeath> http://gfycat.com/TatteredDeepEskimodog How clouds look in steven now :) (slightly faster than they should be) 17:25 <+Thinkofdeath> based them off this 5 year old gif http://i.imgur.com/Dqit8.gif 17:31 <+ammar2> now make them pile up 17:32 <+ammar2> also I remember seeing that gif on reddit 17:34 <+Thinkofdeath> pile up? o.O 17:35 <+ammar2> pile up and move around objects instead of just passing through them, see the last panel of the gif 17:35 <+Thinkofdeath> they do that (somewhat) 17:36 <+Thinkofdeath> https://i.imgur.com/ckL3o6v.png 17:38 <+ammar2> Thinkofdeath: I was thinking more like this https://i.imgur.com/c38jVp6.png 17:38 <+ammar2> or this https://c2.staticflickr.com/6/5308/5579510272_088ae6059e_z.jpg 17:39 <+Thinkofdeath> slightly harder to do :P 17:39 <+ammar2> are you making a depth map like the guy does in the gif? 17:39 <+Thinkofdeath> yes 17:40 <+ammar2> cast a "light" in the direction of the wind? 17:40 <+Thinkofdeath> its pretty basic currently 17:40 <+Thinkofdeath> (and completely shader based to make things harder) 17:44 <+Thinkofdeath> ammar2: if you know glsl you are welcome to give it a shot :) https://github.com/thinkofdeath/steven/blob/master/render/clouds.go#L233 17:45 <+ammar2> hah, I was gonna say if you can push your code I'd like to try out messing with it 17:47 <+ammar2> Thinkofdeath: do you use an IDE for go? 17:47 <+Thinkofdeath> liteide but I think intellij has been working on one 17:51 <+Thinkofdeath> slightly better gfy of the clouds http://gfycat.com/EvergreenHelplessCatfish 17:53 <+ammar2> go is a terrible name btw 17:53 <+Thinkofdeath> makes it easy to google 17:53 <+Thinkofdeath> hence I picked steven for my client's name, also easy to google 17:54 <+ammar2> all bout that SEO 18:05 < rom1504> https://www.google.com/?gws_rd=ssl#q=steven+github actually gives steven as first result 18:06 <+Thinkofdeath> \o/ 18:07 < dav1d> 3rd for me :o 18:07 <+Thinkofdeath> damn it, google is optimizing :| 18:07 < Aikar> https://www.google.com/?gws_rd=ssl#q=steven+minecraft+client 18:07 <+ammar2> first here 18:07 < Aikar> is a more proper term 18:07 <+ammar2> first for "steven github" that is 18:08 < Aikar> noone would ever search for steven github unless they already knew where to find it and are being lazy 18:08 < dav1d> geometry shader :o 18:08 <+ammar2> Thinkofdeath: I'm trying out the intellij plugin bu its not comptabile with <14.1x so now I get to download the latest intellij ;_; 18:08 <+ammar2> #poorinternetlife 18:08 < Aikar> why do you not have 14 anyways 18:09 <+Thinkofdeath> psh you are only editing glsl code 18:09 <+Thinkofdeath> do it from the cmd line 18:09 <+ammar2> but I wanna set it up properly in case I need to ever do go again 18:09 < rom1504> Aikar: if you type steven minecraft client, you're already looking for a minecraft client, if you type github, you're interested about any project named steven, surely many people like projects named steven :p 18:09 < Aikar> what kind of warped brain person would do that 18:09 <+ammar2> Aikar: sorry, 14.1 18:09 <+ammar2> I had 14.0someting 18:09 < rom1504> (yeah I was going for a better conclusion, but it didn't happen :D) 18:10 < Aikar> common folk would be "I heard about this alternative minecraft client named steve, let me go look up what its about" 18:10 < Aikar> steven* 18:10 < rom1504> maybe they're are looking for somebody named steven on github :p 18:10 < rom1504> and they'll end up liking go and minecraft 18:10 < Aikar> https://github.com/drduh/pwd.sh/blob/master/pwd.sh wat 18:12 < Aikar> there is some weird stuff here https://www.reddit.com/r/coolgithubprojects/ 18:14 < rom1504> https://www.google.com/trends/explore#q=minecraft%20client%20steven%2C%20github%20steven&cmpt=q&tz=Etc%2FGMT-2 see ? I win 18:14 * Thinkofdeath points out that steven didn't exist in 2014 18:16 < rom1504> shhh, that's irrelevant :d 20:04 <+ammar2> Thinkofdeath: do you mind if I make a change that make steven go1.4+ only? I kinda wanna move the glsl shaders out into proper files and go generate makes that super convenient 20:37 <+Thinkofdeath> ammar2: sure, 1.5 is not far off anyway 21:01 < SomeoneWhoWantsS> hi 21:34 * Thinkofdeath stabs creative --- Day changed ven. juil. 24 2015 05:31 < MrWebington> Hi there, is there any way I can change the minecraft server working directory to something other than where the script was executed? 05:32 < MrWebington> I've been having this issue for quite some time now and I haven't found any possible solutions. Does it read the Working directory variable in the shell environment? (Running on Ubuntu Linux) 06:26 < gurun> Good day for PE today .. right now around 340 players, one server, pretty much lag-free and 30% CPU. Who ever said Windows couldn't get the job done. 09:31 < gurun> hmmm, you know you slept too little when; going to sleep take full screenshot to stave state; wake up look at the screen for current status; realize that the status is identical to when you went to bed without realizing that you left the screenshot on the sreen. Duh. 09:32 * gurun go back to be - now! (God, where to i had back the kids?) 10:40 < pbunny> h1 10:42 <+ammar2> holy shit 10:42 <+ammar2> its pbunny 10:42 <+ammar2> long time no see 10:43 <+ammar2> dx: poke 10:57 < pbunny> any decent non-voxel minecraft yet? 10:58 < pbunny> e.g. trimesh-based 11:01 < jast> not that I know 11:01 < jast> presumably no one cared to make one 11:04 < pbunny> good 11:10 <+ammar2> are you going to set off on another amibitious adventure pbunny? 11:13 < pbunny> ammar2: why not 11:13 <+ammar2> just wondering 11:13 <+ammar2> are you going to do it in C? 11:16 < rom1504> what about assembly 11:16 < rom1504> any minecraft implementation in assembly ? 11:17 <+Thinkofdeath> pretty sure i've seen a client 11:17 <+ammar2> in asm? 11:17 <+ammar2> as in hand coded asm 11:17 <+Thinkofdeath> https://github.com/Overv/MineAssemble 11:18 <+ammar2> oh right I remember this 11:18 <+Thinkofdeath> not a full client but still neat 11:18 <+ammar2> works on ray tracing iirc 11:21 < pbunny> ammar2: C++ 11:22 < morfin> Holy f**k 11:22 < morfin> assembly 11:24 <+ammar2> its also bootable :^) 11:25 < rom1504> lol 11:38 < morfin> wait what a fuck 11:39 < morfin> boot minecraft client from Grub really? 11:39 <+ammar2> or run it in a vm 11:40 < morfin> looool 11:41 < morfin> i don't see one thing - does it use protected mode 11:51 < pbunny> driver support must suck there 11:55 <+ammar2> morfin: doesn't look like it https://github.com/Overv/MineAssemble/search?utf8=%E2%9C%93&q=cr0 11:55 <+ammar2> but looks like grub switches into protected mode 11:56 <+ammar2> https://www.gnu.org/software/grub/manual/multiboot/multiboot.html#Machine-state 12:29 < morfin> so i can theoretically boot any shit if i will have proper "image" 12:30 < morfin> hahaha MinecraftOS 12:35 <+ammar2> morfin: well that's how boot loaders usually work 14:09 < morfin> i did not know it turn protected mode 14:09 < morfin> *turn on --- Day changed sam. juil. 25 2015 01:08 < Voltasalt> I'm doing some very nasty tile entity work with bukkit/nms, and my chests can't be opened for some reason 01:08 < Voltasalt> If I break them they drop the items 01:08 < Voltasalt> How do I fix this? 01:09 < Voltasalt> (the nasty tile entity work was applying nbt data directly with TileEntity.readFromNBT()) 01:15 <+Amaranth> Voltasalt: Sounds like you're looking for #mcp-modding or #spigot on esper, this is for discussing the protocol and developing your own servers and clients 01:15 < Voltasalt> ah, sorry 01:18 <+XorBoole> Voltasalt if possible, I suggest going on spigot's irc.spi.gt network instead, since we may point you to other channels in that network for further help 01:18 <+XorBoole> (the esper channel is there for historical reasons) 17:28 < dapper> Hello all! 17:29 < dapper> I have a question, is the minecraft protocol documentation on the wiki up to date? 17:29 < dx> yes 17:31 < dapper> Ok, because i was having some issues server ping from the documentation located their. 17:31 < dapper> with* 17:32 <+ammar2> what kinda issue 17:33 < dapper> I couldn't figure out how to send the json object correctly. 17:34 <+ammar2> show your code? 17:36 < dapper> I don't have it atm, im on a different computer. 17:36 < dapper> I could get beta 1.8 to 1.3 working if i send a struct starting with 0xFF 17:40 < dx> the protocol changed completely with the not-beta 1.7 17:40 < dx> throw away your old implementation and forget everything you thought you knew 17:43 < dapper> Im trying to implement a minecraft server in python, and i need help with the new ping protocol. I just can't figure it out. :( 17:43 < dx> also fuck i somehow interpreted "server ping" as if you meant "keepalive", not the server list query thing. don't mind me i just woke up 17:44 <+ammar2> holy shit dx 17:44 <+ammar2> that is extremely special 17:44 <+ammar2> incredibly special. 17:44 < dx> ammar2: thanks ammar2 17:45 <+ammar2> here's an example of a ping response in python dapper https://gist.github.com/barneygale/71ff293efc8658717bdd 17:45 < dx> my specialness aside, i'd like to point out that dapper wants to implement a server from scratch 17:46 < dx> ⚠ 17:46 <+ammar2> well its ambitious 17:46 <+ammar2> but I don't see why not 17:46 <+ammar2> after all, pbunny did it 17:46 < dx> HEH 17:46 < dx> oh man pbunny is here 17:46 < dx> crazy 17:47 <+ammar2> how did you miss it, I pinged you like thrice on two different networks yesterday 17:47 < shoghicp> hmm, server from scratch? 17:47 < dx> yeah i saw the pings, but they were at 5am 17:47 <+ammar2> that sounds like a personal problem to me 17:47 < dx> i have huge packet loss when i just wake up 17:48 < dx> first thing i do in the morning is reading irc pings and i dismiss 80% of them because i'm so sleepy i don't care 17:48 < dx> maybe i should stop doing that 17:48 < dapper> I will be putting my code up on github if anyone wants to take a look at the code every now and then... 17:49 <+ammar2> we will be watching it with high expectations 17:49 < dapper> :) 17:55 < dx> oh man 17:55 < dx> minecraft 1.7 was 20 years ago 17:56 < dx> i feel old 17:56 <+ammar2> only truecraft kids will realize 18:15 < dav1d> lol 18:20 <+XorBoole> the best server from scratch is Thinkofdeath's prismarine 18:21 * XorBoole runs 18:21 <+XorBoole> it supports bungeecord! 18:21 * XorBoole runs even faster 19:02 < yoyo_> How does that login protocol work? 19:09 < dav1d> ^ lolwut 19:20 <+XorBoole> ~~magic~~ 19:33 < dx> ~~magnets~~ 19:35 <+XorBoole> how do they work?! 19:38 <+ammar2> magic. 19:47 < pbunny> dat fscking time 19:47 < pbunny> there's never enough of it 23:35 * Thinkofdeath stabs creative --- Day changed dim. juil. 26 2015 13:45 < ScruffyRules> How long can a lore be? 21:38 < speak> Hi! Any ideas where to start with making mods? I've been trying to find up to date tutorials, but it's been tricky, everything seems to be somewhat outdated. 23:06 <+Amaranth> speak: Check out #mcp-modding or #minecraftforge on esper 23:17 < speak> Thanks! --- Day changed lun. juil. 27 2015 00:29 < HansiHE> when ground-up continuous is false in 0x21 clientbound, are the chunk sections counted as updates to an excisting loaded chunk? 00:29 < HansiHE> or have i got it wrong? 11:24 < rooisnoek> hi everyone, Im working on a client emulator and I managed to get my client to login and move. The problem Im experiencing is that my clients movement looks choppy when viewed from a notchian client while standing still. If I am moving my clients movement seems smooth. I am using spigot server 1.8 11:26 < rooisnoek> I assume that while I am standing still the server is sending me less entity update packets. Is there anything my client emulator can do to force the server to send update packets to other clients? 11:50 < morfin> i do not understand one thing 11:50 < morfin> how my Y position was like 20000 when it is 12 bits integer? 11:52 < morfin> also y position is signed(i can fly under world) 18:51 < Not-17f9> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/vY62T 18:51 < Not-17f9> [mineflayer] rom1504 21c350e - bump node-mojangson 21:27 < Not-17f9> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±2] http://git.io/vYiie 21:27 < Not-17f9> [mineflayer] rom1504 2a61026 - Release 1.3.0 21:27 < Not-17f9> [mineflayer] rom1504 tagged 2a61026 as 1.3.0 http://git.io/vYi6j --- Day changed mar. juil. 28 2015 00:26 <+SpaceManiac> morfin: y position is stored in different forms depending on the situation 00:27 <+SpaceManiac> for entities (like players) it's a float 00:28 <+SpaceManiac> or, rather, the fixed-point 00:28 <+SpaceManiac> the 12-bit integer is used only to refer to whole blocks 16:41 < rom1504> any clue whether that revision is correct http://wiki.vg/index.php?title=Protocol&diff=6641&oldid=6640 ? we have byte in our code and it seems to work so.. 16:48 <+ammar2> its unsigned 16:51 <+ammar2> obviously a normal byte works fine in your case since sign/unsigned is just a matter of how you interpret the number 17:00 < rom1504> hmm ok 18:17 <+Amaranth> Unless Minecraft has inventories higher than 127 you wouldn't even notice the difference, would you? 18:29 <+XorBoole> Amaranth muh chests-that-are-too-big-for-the-screen 18:29 <+Amaranth> XorBoole: It's not the inventory size, it's the inventory id 18:29 <+XorBoole> iirc bukkit doesn't do bounds checks on inventory sizes when asking on the be created 18:29 <+XorBoole> oh, never mind 18:31 <+Amaranth> There are only 12 right now, 127 doesn't seem likely any time soon :D 18:37 <+XorBoole> Amaranth psh, mojang loves adding UIs 18:37 * XorBoole runs 18:39 <+ammar2> Amaranth: well if its just meant to be a unique idenitifer it wouldn't matter anyway 18:39 <+Amaranth> That too --- Day changed mer. juil. 29 2015 07:11 < gurun> is 1.9 coming out? 07:13 < gurun> says snapshot wednesday... that's like today 07:32 < redstonehelper> yes 07:32 < redstonehelper> sweden time today 07:33 < zml> it's like 6am sweden time 07:35 < redstonehelper> 7:33 07:35 < zml> oh yeah daylights savings time is a thing 07:35 * zml has a localtime and utc clock up 07:36 < zml> (by up I mean in my bar) 15:22 < Voltasalt> If Mojang's authentication servers return 204 No Content, does that mean authentication successful or not? 15:23 < Voltasalt> authentication as in https://sessionserver.mojang.com/session/minecraft/hasJoined 15:23 < Voltasalt> server side 15:40 < Voltasalt> Also how would one REMOVE a tab list header/footer 15:41 < Voltasalt> Sending an empty chat in packet 0x47 gives you a blank header/footer, sending null crashes the client with an NPE 15:49 < Fenhl> snapshot time 15:52 * Thinkofdeath stabs windows 10 15:52 <+Thinkofdeath> I decided the worst time to try it 15:52 <+Thinkofdeath> Can't boot and now there is a snapshot 15:52 <+Thinkofdeath> :( --- Log closed mer. juil. 29 16:05:43 2015 --- Log opened mer. juil. 29 16:24:04 2015 16:24 -!- Irssi: #mcdevs: Total of 146 nicks [1 ops, 0 halfops, 16 voices, 129 normal] 16:24 !hobana.freenode.net [freenode-info] if you're at a conference and other people are having trouble connecting, please mention it to staff: http://freenode.net/faq.shtml#gettinghelp 16:24 <+XorBoole> all my packs are "not compatible" 16:25 <+XorBoole> Aikar, you may be a good among men, but your server sucks because it uses too much bold test 16:25 * XorBoole runs 16:25 * XorBoole huggles gunny 16:26 <+XorBoole> in any case, I'd like to ask what changed that makes my resource pack incompatible 16:26 <+XorBoole> I'm guessing it's a pack descriptor change? 16:26 < Not-c389> [mc-autodocs] thinkofdeath pushed 1 commit to master [+1/-2/±131] http://git.io/vYF4R 16:26 < Not-c389> [mc-autodocs] thinkofdeath 5872a2d - 15w31a (Early) 16:28 -!- Irssi: Join to #mcdevs was synced in 257 secs 16:28 <+XorBoole> looks like rotation system changed 16:28 <+XorBoole> I'll have to write a script to correct it 16:30 <+XorBoole> among other things, gson is now non-lenient 16:30 <+XorBoole> great 16:30 * XorBoole runs his verifier 16:31 <+Thinkofdeath> \o/ 16:31 * Thinkofdeath hugs mojang 16:42 <+XorBoole> now, looks like Item positioning changed 16:42 <+XorBoole> and tbh there's no good way of knowing 16:42 <+XorBoole> also there's some new APIs that got added, that I need some old gists off 16:43 <+XorBoole> Thinkofdeath should I poke the G? 16:43 * Thinkofdeath stares blankly 16:43 <+XorBoole> also, this looks hilarious, if I don't say so myself http://puu.sh/jhtJP/a72fd2093b.png 16:45 < Fenhl> XorBoole: so it only accepts real JSON now? 16:46 <+XorBoole> yo Grum, can I get those gists you made for multipart, etc? 16:46 < Not-c389> [mc-autodocs] thinkofdeath pushed 1 commit to master [+1/-2/±120] http://git.io/vYFwI 16:46 < Not-c389> [mc-autodocs] thinkofdeath d02fbc5 - 15w31a (Early) 16:46 <+XorBoole> reading the existing models isn't very helpful 16:47 * Thinkofdeath sees new particles 16:47 <+XorBoole> also, it appars that scale/rotation/translate have changed in display 16:47 <+XorBoole> Fenhl yep 16:50 <+XorBoole> I'll probably end up writting a conversion script anyways 16:51 <+Thinkofdeath> I'm just happy I can finally remove json-shitty from steven 16:53 <+XorBoole> not until 1.9 =) 16:53 <+XorBoole> 1.8 is still lenient 16:53 * Thinkofdeath updates steven to 1.9 16:53 <+XorBoole> topkek 17:12 < Not-390> [1.8-Models] drXor pushed 1 commit to 1.9 [+1/-0/±23] http://git.io/vYFQE 17:12 < Not-390> [1.8-Models] drXor b759091 - Begin moving to 1.9 format. 17:14 <+XorBoole> this is going to be a nightmare 17:14 * ScruffyRules sues XorBoole 17:14 <+XorBoole> I will give a cookie to someone who can give me a way to turn displays from 1.8 to 1.9 17:15 <+XorBoole> but for now, I need to go burn other things 17:18 < gurun> i thought this would be the Minecraft W10 day .. but it seems that the Mojang team decided to make it 1.9 and 0.12 day instead :-P 17:22 < Fenhl> do we have a protocol version number for the snapshot yet? 17:30 <+XorBoole> Fenhl current+1 I assume? 17:31 < Fenhl> XorBoole: according to Protocol Version History they occasionally skipped a version or two 17:31 * XorBoole shrugs 17:32 <+XorBoole> what I want right now is the new models spec 17:32 <+XorBoole> now I get to obcess over this... gr8 17:35 <+XorBoole> jabs redstonehelper 17:35 < redstonehelper> you what 17:35 <+XorBoole> the above might be relevant to your changelogs 17:35 < redstonehelper> oh 17:35 * redstonehelper reads up 17:36 <+XorBoole> models can now include multiparts and predicates (waiting on Grum for gists), and the "display" tag's defaults changed 17:36 < johni0702> Fenhl, seems to be 49 17:36 < redstonehelper> XorBoole: I got all but the display tag stuff, what's new with the display tags? 17:36 < Fenhl> johni0702: thanks 17:37 <+XorBoole> also, json models are now strict json, so no comments and mojangson-like quote-less names 17:37 <+XorBoole> redstonehelper the defauls are different. if you make a block and don't provide a "gui" display tag, it won't be the default isometric 17:37 <+XorBoole> defaults are found in models/block/block.json 17:38 <+XorBoole> working on a script to update my models atm 17:38 < redstonehelper> can I ping you about this later? 17:38 <+XorBoole> assuming I see it, yes 17:38 < redstonehelper> maybe you can write me up a few bullet points I can just paste so I don't have to understand it :D 17:38 <+XorBoole> like I said, I'm waiting on a certain mojang employee to show up and shout at me for pinging him 17:39 < angal> Wow. They changed id orderring. Cool. 17:39 < johni0702> out of curiosity: how is the data in mc-autodocs/protocol being generated? 17:39 <+XorBoole> johni0702 Thinkofdeath magic 17:39 <+XorBoole> thinkmagic, if you will 17:41 < ScruffyRules> Or Magicofdeath 17:41 < ScruffyRules> which I like a lot better. xD 17:42 <+XorBoole> no, when you talk about something thinky made, it's think 17:42 <+XorBoole> steven is the thinkclient 17:42 <+XorBoole> written in thinkcode 17:44 <+XorBoole> redstonehelper https://gist.github.com/drXor/a8b97506376597292ba7 17:44 <+Amaranth> angal: Block ids? 17:44 < redstonehelper> XorBoole: time of day predicate is only for clocks right? 17:45 < ScruffyRules> XorBoole, item damage, could I have an iron block look different? :P 17:45 < angal> Items. Bloccks seemed to be as they were 17:45 < redstonehelper> ScruffyRules: only stuff with damage bar. 17:45 <+XorBoole> redstonehelper no, also item damage, and compass 17:45 < ScruffyRules> Awh :( 17:45 < redstonehelper> XorBoole: yeah I knew that already, but I'll add the rest - thanks! 17:45 <+XorBoole> I believe anything can use any predicate 17:45 < redstonehelper> reddit /u/ is xor_boole? 17:45 <+XorBoole> correct 17:45 <+XorBoole> Xor_Boole 17:45 < redstonehelper> can you see if time predicate works on for example diamonds? 17:46 <+XorBoole> one second 17:46 < ScruffyRules> Only night time diamond mining. 17:46 < ScruffyRules> Sounds awesome. 17:46 <+Amaranth> angal: Oh, but item ids have different values now vs 1.8? 17:47 < angal> Let me check, to be shure. 17:47 < redstonehelper> they should be the same I hope 17:47 <+Amaranth> I think if they changed it'd require a map conversion 17:48 <+XorBoole> redstonehelper it does not 17:48 <+XorBoole> clock-only 17:48 <+XorBoole> that's annoying 17:48 * XorBoole adds to list of griviences 17:48 < redstonehelper> hehe just like grüm tweeted :D 17:49 <+XorBoole> I bet that still pings him 17:49 <+XorBoole> gr-m pings him, I'm pretty sure 17:49 < redstonehelper> I'm only going so far as to not ping him 17:49 < redstonehelper> heck, I bet anything matching g.*m pings him 17:50 < angal> Sorry. Falss warning. Ids keept old. 17:50 < Aikar> pff, stop trying to not ping people :P if your talking about them, just say their name :P 17:50 <+XorBoole> blame the "don't ping mojangstas rule" 17:50 < redstonehelper> is there such a rule here? 17:50 <+XorBoole> if you don't have something important to talk to them, yes 17:50 < redstonehelper> we have one in #minecraft and it makes sense here because they'd get pinged too often otherwise 17:51 < redstonehelper> with them working and being one of the main focuses (focii?) here 17:51 <+XorBoole> yeah we keep fanboys out of here mostly though, so it's rarely needed 17:51 < Aikar> wait, why are mojang people in #minecraft? that channels never been about minecraft 17:51 <+XorBoole> I usually rain fury on people who ping me in #spigot 17:51 < redstonehelper> Aikar: probably why they are there :DD 17:51 * jast writes autoping script 17:51 < Aikar> i doubt mojang cares to know the latest 4chan ramblings 17:52 <+XorBoole> banhammer in 3, 2, 1... 17:52 <+XorBoole> Aikar clearly you don't know db then 17:52 < Aikar> lol 17:52 * XorBoole hides 17:53 <+XorBoole> I mean, you can understand why they don't want to be pinged 17:53 <+XorBoole> it's like those wierd kids that asked me for autographs at minecon. 17:53 <+XorBoole> "wat" "go away" 17:53 < redstonehelper> pinging in general isn't bad I guess, but when you're very related to the main focus of a channel I understand how it can get annoying real fast 17:55 <+XorBoole> > very related 17:55 <+XorBoole> > non-minecraft posts about the devs get removed from /r/minecraft 17:55 * XorBoole runs 17:55 <+Amaranth> redstonehelper: Can you make a map in 1.8, brew a potion, then load the world in 1.9? 17:55 < redstonehelper> Amaranth: sure, any specific pot or 1.8 version? 17:55 <+Amaranth> Apparently potions only use NBT now and I've been told the damage values don't work at all 17:55 < redstonehelper> also, look at this unicorn http://i.imgur.com/0GxCwkM.jpg 17:56 <+XorBoole> Amaranth really? what color do potions with multiple effects take? 17:56 <+Amaranth> redstonehelper: 1.8.8 is fine, I think even a mundane potion would be enough 17:56 <+Amaranth> XorBoole: The NBT for potions has the concept of a primary 17:56 <+XorBoole> what about, say, a potion of haste? 17:56 <+XorBoole> is it yellow? 17:56 <+Amaranth> You've been able to do NBT for potions for a long time now 17:56 <+Amaranth> XorBoole: No idea 17:56 <+XorBoole> well yeah I know this 17:56 <+Amaranth> wtf unicorn 17:56 <+XorBoole> but it's a list of effects iirc 17:56 <+XorBoole> redstonehelper needs more rainbows 17:57 <+Amaranth> Oh maybe that was bukkit API that added a concept of a primary then and wrote it to the damage values? 17:57 <+Amaranth> I didn't think so though, thought the NBT had a primary 17:57 <+XorBoole> I don't think so 17:57 <+XorBoole> I haven't used the bukkit API in a while 17:58 <+Amaranth> If this is right people probably want to hold off on updating their worlds to the snapshots if they care about their potions 17:58 <+XorBoole> Amaranth I think it'll do conversions I think 17:58 <+XorBoole> if it's smart 17:58 <+XorBoole> but this is a snapshot sooo 17:58 <+Amaranth> XorBoole: It doesn't with /give at least 17:59 <+Amaranth> That's why I wanted redstonehelper to check by starting with a potion in 1.8 17:59 <+Amaranth> I think you'd have to brew it though since creative might give you one using NBT already 17:59 < redstonehelper> brewing manually 18:00 < redstonehelper> Amaranth: they're fucked 18:00 < redstonehelper> missing model, "water bottle" 18:00 <+Amaranth> woo 18:00 <+Amaranth> Yep, that's what the other guy got too 18:00 <+Amaranth> Guess someone should file a bug report about that 18:00 < redstonehelper> I can do it later 18:00 <+Amaranth> And list it in their fancy changelog :P 18:00 <+XorBoole> something vanilla needs: a way to print an item's NBT in mojangson form 18:00 < redstonehelper> I have a list of bugs I want reported and gonna work through the bugs reported since release later 18:01 < redstonehelper> XorBoole: throw it on the ground, /entitydata @e[r=3,type=Item] {} 18:02 < redstonehelper> they fixed the additional trailing commas on entitdydata :DD 18:02 <+XorBoole> ok, who's the shithead that made it so when you search something in minecraftwiki it asks you to sign up for curse? 18:02 < redstonehelper> Amaranth: should I report it in case it's not done yet? 18:02 <+XorBoole> I really don't want to sign up 18:02 < redstonehelper> XorBoole: notchler, clearly 18:02 * XorBoole writes tampermonkey script 18:02 < redstonehelper> I fucking hate the mwiki now 18:02 < redstonehelper> autoplaying ads, annoying shitty popups 18:03 <+XorBoole> > ads 18:03 <+XorBoole> > not adblocking everything 18:03 <+XorBoole> adds are a crime against the internet 18:03 <+XorBoole> s/dd/d 18:03 <+Amaranth> redstonehelper: Apparently the other guy is too busy playing with the end to report it and I'm too lazy to open MC and confirm it :) 18:04 < redstonehelper> ok I'll do it in a bit 18:04 <+XorBoole> Amaranth it has the right color =o 18:05 * XorBoole disables enchanted glint 18:05 <+Amaranth> It probably uses the first entry 18:05 <+Amaranth> I'm having a memory of shuffling NBT entries for Bukkit's API 18:06 <+XorBoole> Amaranth it blends them =o 18:07 <+Amaranth> Ooh I guess that changed too 18:10 <+XorBoole> the colos blend. impressive, mojang 18:11 <+XorBoole> I will be abusing this 18:11 <+XorBoole> Amaranth http://puu.sh/jhzfi/cf86a9faf5.png 18:11 <+XorBoole> last one is speed + haste 18:11 <+XorBoole> haste is yellow 18:11 < redstonehelper> ohhhh neat 18:11 < Voltasalt> Any documentation on GameProfile's properties and how they're used for, say, skin sending in the player list? 18:12 < Voltasalt> Can't find any on wiki.vg other than "properties contain skins" 18:12 <+Amaranth> Voltasalt: You're just supposed to forward what you get from Mojang 18:12 <+Amaranth> They're even signed to prevent forging or tampering 18:13 <+Amaranth> Although I think they're still not enforcing that 18:13 <+Amaranth> Anyway iirc it's some json that has a field that is base64'd json 18:13 <+XorBoole> let me make a picture of all the potion colors for some reddit karma, brb 18:14 < Voltasalt> ah ok thanks 18:16 < redstonehelper> XorBoole: rainbow! 18:17 <+XorBoole> redstonehelper http://imgur.com/EfHWgqx 18:18 < redstonehelper> sweet 18:18 <+XorBoole> all of those are single-color 18:18 <+XorBoole> you can mix them together too =D 18:23 <+XorBoole> redstonehelper http://imgur.com/F9aEcnU 18:24 < redstonehelper> neat 18:25 <+XorBoole> bender_neat.gif.gz 18:25 < Voltasalt> but yeah, does 204 No Content from /hasJoined mean auth is successful and it's being cached? 18:27 < barneygale> Voltasalt, 204 is an auth failure 18:27 < Voltasalt> ok 18:27 < Voltasalt> I seem to be getting it a lot though 18:27 < Voltasalt> 4/5 requests give 204 18:42 < Voltasalt> the fuck could I be doing wrong 19:31 < Voltasalt> After 1.9 releases, how long will it take wiki.vg to update fully? Days? Weeks? Months? 19:36 < angal> Years? 19:39 <+XorBoole> minutes 19:39 * XorBoole stares at Thinkofdeath 19:45 < rom1504> Voltasalt: millennia 20:35 < rom1504> it seems serverbound 0x16 and 0x18 have changed 21:07 < Dapper> Does anyone have an example on minecrafts login protocol? 21:07 <+ammar2> any particular language? 21:07 < Dapper> No 21:08 < Dapper> Any will work. 21:09 <+XorBoole> inb4 pycraft 21:09 * XorBoole runs 21:10 < Dapper> What? 21:11 <+ammar2> also by login do you mean logging in to minecraft or trying to connect to a server 21:11 < Dapper> Logging in... 21:11 < Dapper> The login protocol 21:11 <+ammar2> https://github.com/ammaraskar/pyCraft/blob/master/minecraft/authentication.py 21:12 < Dapper> http://wiki.vg/Protocol#Login 21:12 <+ammar2> don't be scared by the length of the file 21:12 <+ammar2> its mostly just docstrings 21:13 <+XorBoole> called it 21:14 <+ammar2> there's also steven but I can't be arsed to find the relevant file 21:14 <+ammar2> (steven is in go) 21:14 <+ammar2> but I figure python is more well known than go 21:15 < Dapper> Ok, thanks ammar2 21:15 < rom1504> that too https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/src/yggdrasil.js 21:16 < rom1504> (or https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/src/createClient.js ) 21:16 < johni0702> for steven that'd be https://github.com/thinkofdeath/steven/blob/master/protocol/mojang/login.go 21:19 < rom1504> hmm I'm getting json error with that snapshot 21:20 <+ammar2> json is json 21:21 <+Amaranth> Except when you're not writing valid json 21:24 < rom1504> well I'm pretty sure JSON.stringify produce valid json 21:24 <+XorBoole> except that's still json 21:24 <+XorBoole> acording to new Gson() 21:24 * XorBoole runs 21:32 < Fenhl> the wiki bot is down 21:32 <+XorBoole> I think we should poke the relevant person 21:34 <+ammar2> Tk? he's been dead for a while 21:35 <+ammar2> idle 676 hours 21:35 <+ammar2> good luck 21:35 <+XorBoole> hmm 21:35 * XorBoole smashes an OVH box over TkTech's head 21:35 <+XorBoole> let's see if that wakes him up 21:40 < rom1504> http://download.rom1504.fr/stuff/json_error.png 21:41 < rom1504> such an useful error 21:41 < rom1504> "there is a json error in the world !!! I give up" 21:42 < rom1504> :) 21:46 <+ammar2> stop sending malformed json :^) 21:53 < rom1504> I'm just proxying though... 21:54 <+ammar2> stop proxying malformed json? 21:55 < rom1504> yeah but I don't know where that malformed json is 21:56 <+ammar2> https://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/com/google/gson/stream/JsonReader.html#setLenient(boolean) 21:56 <+ammar2> well here's a list of stuff you shouldn't be fucking up 22:03 < rom1504> hmm a simple explanation is some packet changed in status/login/handshake state (which aren't "proxied") and some field went from text to json 22:03 < rom1504> so the vanilla client is expecting json and I'm giving him something else 22:04 < rom1504> hard to say without knowing what changed in the protocol though 22:04 <+ammar2> well you know what packet you're sending just as the client gets the error 22:07 < rom1504> hmm yeah 22:07 < rom1504> client<-server: play.0x20 : {"id":32,"state":"play","entityId":78,"count":2,"properties":[{"key":"generic.maxHealth","value":10,"listLength":0,"modifiers":[]},{"key":"generic.movementSpeed","value":0.25,"listLength":0,"modifiers":[]}]} 22:11 < rom1504> doesn't seem to be the pb though 22:29 < redstonehelper> Amaranth: someone reported it before me https://bugs.mojang.com/browse/MC-82925 22:30 <+Amaranth> Lots of dupes too :D 22:50 <+XorBoole> dupes? 22:50 * XorBoole dupes all of the diamonds and sells them on the black market 23:07 < HansiHE> rom1504, when does it happen? 23:07 < HansiHE> before or after spawining? 23:18 < HansiHE> right i'm getting MC|Brand vanilla on 0x18 23:19 < HansiHE> so i guess that means the plugin channel packet is 0x18 now? --- Day changed jeu. juil. 30 2015 00:20 <+Thinkofdeath> https://twitter.com/SeargeDP/status/626445233765658624 please don't say he is reverting the strict json change :3 00:23 <+XorBoole> oh, mojang 00:23 <+Thinkofdeath> I've already got microsoft on my hit list today hopefully I wont have to add another :| 00:24 <+XorBoole> well, my resource pack is 100% compliant now 00:24 <+Thinkofdeath> finally 00:24 <+XorBoole> except for some fixes to display 00:26 < redstonehelper> lol at crushedpixel giving searge attitude 00:26 <+Thinkofdeath> hehe 00:27 <+Thinkofdeath> To be fair its bloody gson's fault for stupid defaults 00:38 < rom1504> HansiHE: after spawning 00:38 < rom1504> I can see the world for like 1 second maybe 00:39 < rom1504> HansiHE: 0x18 is missing a byte field 00:40 < rom1504> oh you think they switched packets ? do they do that ? 00:40 < HansiHE> the data i'm getting on 0x18 is ascii 00:40 < HansiHE> looks like the plugin channel packet 00:41 < rom1504> well 0x18 used to be "spectate" 00:41 < HansiHE> yeah 00:41 < HansiHE> 0x17 was plugin channel 00:41 < rom1504> what is 0x17 now ? 00:41 < HansiHE> no clue 00:42 < rom1504> no json in the plugin channel packet though so I don't think that explain my issue 00:42 < rom1504> oh or maybe there is json there ? 00:42 < HansiHE> plugin channel is used for some stuff 00:43 < HansiHE> they might have shifted some packets upwards to make room for a new one 00:43 < HansiHE> maybe someone has ocd and wants related packet ids in order? 00:43 < HansiHE> idk 00:44 < rom1504> let's see if putting plugin message in 0x18 helps 00:46 < HansiHE> in what case does the spectate packet get sent? 00:46 < rom1504> hmm putting plugin message in 0x18 doesn't fix it 00:47 < rom1504> HansiHE: I think at some point when you are in gamemode 3 00:47 < rom1504> well I don't know actually 00:48 < HansiHE> hmm 00:49 < rom1504> 0x16 changed too, 10 bit too much 00:49 < rom1504> I just added a double and a short to it but that's silly 00:49 < rom1504> I'm getting that kind of value for 0x18 : client->server: play.0x18 : {"id":24,"state":"play","channel":"MC|Brand","data":[7,118,97,110,105,108,108,97]} 00:49 < HansiHE> i would bet they shifted some of the packets up one 00:50 < rom1504> so it seems you're right for 0x18 00:50 < HansiHE> what are the new features in the snapshot? 00:50 < HansiHE> what would need a new packet 00:51 < Aikar> I want to say thanks that you guys put in the effort to figure all that crap out to make me focusing on gameplay content doable. Dont know what I would do if I had to do all that work too lol 00:51 < rom1504> HansiHE: http://minecraft.gamepedia.com/15w31a lot of stuff, not sure what would change the protocol 00:52 < HansiHE> well, there is dual wielding 00:52 < HansiHE> that's the only thing i can think of 00:55 < rom1504> so I'm getting 10 additional byte on that packet https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/protocol/protocol.json#L2775 00:55 < HansiHE> rom1504, the length fits for packet 0x15 00:56 < HansiHE> i think 00:56 < rom1504> almost 00:56 < rom1504> missing one byte 00:58 < rom1504> client->server: play.0x16 : {"id":22,"state":"play","locale":"en_US","viewDistance":12,"chatFlags":0,"chatColors":true,"skinParts":127,"test":1} 00:58 < rom1504> seems to work 00:58 < rom1504> (except I don't know what is that "test" field I added) 00:59 < rom1504> still doesn't fix that json error though 00:59 < HansiHE> okey, do the data seems to fit 00:59 < HansiHE> there is just an extra boolean or something 01:02 < HansiHE> the json error is on the client though, right? 01:02 < rom1504> on the vanilla client yes 01:02 < HansiHE> right, that means its in a clientbound packet 01:05 < HansiHE> it does look like they mostly fucked around with packet ids on the serverbound packets, i bet they did the same thing the other direction as well 01:06 < rom1504> it seems to give me that error every time after that packet 01:06 < rom1504> client<-server: play.0x20 : {"id":32,"state":"play","entityId":77,"count":2,"properties":[{"key":"generic.maxHealth","value":10,"listLength":0,"modifiers":[]},{"key":"generic.movementSpeed","value":0.25,"listLength":0,"modifiers":[]}]} 01:07 < rom1504> but I don't see anything wrong with it so I don't understand 01:07 < HansiHE> that probably means its the packet after that 01:07 < HansiHE> oh, wait, my mistake 01:07 < rom1504> it's possible 01:08 < rom1504> well it should print the sent packet before quitting 01:08 < HansiHE> yeah 01:08 < HansiHE> what packets are sent before that? 01:09 < HansiHE> the server could be sending multiple packets in succession before the connection closes 01:09 < rom1504> http://pastebin.com/pyXCWrTa 01:11 < rom1504> hmm that metadata field