03:19 <+XorBoole> it runs through the nine worlds of norse mythology 03:19 <+XorBoole> our yggdrasil connects all of minecraft 03:19 <+XorBoole> or atleast that's what I think 03:19 < nickelpro> XorBoole: I know what it is, I guess that's not a connection I make 03:19 <+XorBoole> also they're swedish so you can't blame them 03:19 < nickelpro> Ah, that makes more sense 03:19 <+XorBoole> plus it sounds badass as fuck 03:20 < nickelpro> ^^^^ 03:20 < nickelpro> I think that's it 03:20 <+XorBoole> I still think they need some shit named nidhogg 03:20 <+XorBoole> (the dragon that nibbles yggdrasil's roots) 03:43 < barneygale> name of the treeship in hyperion I think 07:16 < MCorgano> nickelpro: Thanks! I'm working with node minecraft protocol, but i'm sure it could be useful. Any actual documentation for yggdrasil's mood swings? 07:26 < nickelpro> MCorgano: It's a mood swing, by definition no 08:04 < Not-9afb> [SpockBot] gamingrobot pushed 2 commits to master [+0/-0/±10] http://git.io/v3dff 08:04 < Not-9afb> [SpockBot] barneygale 4442170 - Switch from PyCrypto to cryptography 08:04 < Not-9afb> [SpockBot] gamingrobot d40bbf6 - Merge pull request #81 from barneygale/pycrypto-to-cryptography 09:21 < MCorgano> so if I made a script that logged on and off, how long should I leave between attempts to make sure yddrisldfaljlf doesn't get mad? 11:52 < rooisnoek> hi everyone, when a block changes (e.g. the block gets mined and removed from the world) does the server send a new Chunk Data packet or a Block Change packet? 11:52 < nick____> idk 11:54 < ScruffyRules> I'd assume block change packet 11:55 < ScruffyRules> since it's only one block 12:01 < rooisnoek> just tested it, it does send block change packets 12:02 < rooisnoek> so that means a client has to locally keep track of changes in loaded chunks. m 12:06 < ScruffyRules> Yup 12:08 < rooisnoek> does anyone know how to determine a block´s chunk given only its x and z coordinants? Do you just integer divide them by 16? 12:12 < gurun> rooisnoek, usually something like that yes. 12:17 < rooisnoek> jip, just checked the interwebz, X-chunk = floor(X-coord/16) and same for Z 13:08 <+ammar2> there's a faster way of doing it by bitshifting 4 right 13:08 <+ammar2> because yay base 2 13:25 < rooisnoek> good point, but only if youre working with integers! 14:05 < yawkat> isnt there a behavioral difference there 14:05 < yawkat> for negative coordinates 14:06 < yawkat> http://ideone.com/w2ifOR 14:06 < yawkat> i think you need to do the shifting if you want the right coords 16:56 < morfin> bitshifting is very fast =) 17:22 < morfin> when i need kick user i just push kick in send queue and do not read anything only send 18:05 < morfin> i remember somebody said about transferring H.264 video stream over plugin message 18:06 < morfin> was that smooth and not lagging? 18:06 < nick____> i think yes 18:08 < rubyrandom> guys, are servers that have no mojang (bukkit, spigot etc) code, and which are fully custom, still subject to Mojang EULA? 18:09 < rubyrandom> I mean this - https://mojang.com/2014/06/lets-talk-server-monetisation/ - and consequences 18:10 < johni0702> I'm by no means a lawyer but afaik as long as they speak the same protocol as the minecraft client, yes 18:12 < nick____> no mojang? ** isn't the official minecraft servers sourcecode in it, is legal, but the bukkit spigot cauldron is not 18:13 < morfin> spigot is extended vanilla? 18:13 < rubyrandom> afaik it's fork of craftbukkit 18:13 < rubyrandom> so, yes 18:14 < morfin> oh 18:14 < morfin> but what if whole codebase is different? 18:15 < rubyrandom> nick____: so, as long as server is completely free of any mojang-affiliated code (e.g. it's written in C, say), I can sell items for hard currency, provide "premiums" and do other "unfair" things Mojang said "no" to? 18:15 < nick____> i know, rubyrandom 18:15 < morfin> lol 18:15 < rubyrandom> no, that's question 18:15 < rubyrandom> :D 18:15 < rubyrandom> mind trailing question mark 18:16 < morfin> i remember played server where donators could fly(but not in PvP) and had some "unfair" features 18:17 < rubyrandom> was that before aug 1, 2014? 18:17 < angal> Eula still affect users who plays from vanilla client... Can they bay it? 18:17 < morfin> but it was not pay-to-win 18:17 < morfin> i think it was before 18:17 < morfin> but that server still exists 18:17 < nick____> i have bought vanilla minecraft(.net) 18:17 < morfin> because servers need money too keep up 18:18 < morfin> *to keep up 18:30 < Not-9afb> [SpockBot] gamingrobot pushed 1 commit to master [+0/-0/±1] http://git.io/v3FdL 18:30 < Not-9afb> [SpockBot] gamingrobot 02fe904 - Update .travis.yml 18:33 < gamingrobot> morfin: I have seen someone do DH encryption over chat 18:33 < gamingrobot> that was funny 18:33 < morfin> what? 18:34 < gamingrobot> they did this https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange over minecraft chat 18:34 < morfin> but why 18:34 < gamingrobot> I have no idea 18:34 < morfin> protocol is encrypted anyway(for non-offline servers) 18:35 < morfin> hmm Minecraft for PC uses TCP soo it's stream 18:36 < morfin> so streamed video/audio should work fine 18:38 < morfin> maybe even better than with HTTP(S)(?) 18:59 < nickelpro> rubyrandom: Bukkit/Spigot and all the rest of the NMS derivatives technically can't even be distributed 19:00 < morfin> lol 19:00 < nickelpro> A fully reimplemented MC server would be free of Mojang restrictions, but I'm unclear on how that would work with using Mojang's auth servers 19:01 < rubyrandom> nickelpro: yup, because they bundle code for what mojang owns. They can, however, later switch to patch-based distribution, where any mojang-provided vanilla code has to be supplied by server owner, so it can be later patched by bukkit/spigot 19:01 < rubyrandom> nickelpro: and what can go wrong with auth servers? 19:02 < nickelpro> rubyrandom: I'm unclear on if Mojang would allow completely third-party servers to use their auth servers 19:02 < nickelpro> Or if using that service requires some agreement inherent in the EULA 19:03 < morfin> i guess there is nothing about that 19:03 <+Amaranth> rubyrandom: The patch based solution is more or a legal grey area, not outright legal 19:04 < rubyrandom> if they won't, it's not mandatory to use them in the first place, afaik. And as to the best of my knowledge, EULA has nothing to state about auth servers explicitly. and if server is not conforming to EULA, it may not use auth servers directly, but use opensource free proxy that makes use of those auth servers. 19:04 < morfin> that sounds like hackaround 19:04 < rubyrandom> so, proprietary server talks to proxy via public API, proxy is free and opensourced for everybody to use, proxy talks to auth servers. Much like with GPL. 19:05 < nickelpro> It would be impossible to differentiate a sufficiently motivated third-party server from vanilla MC servers so the point is moot 19:05 <+Amaranth> Sticking in a shim does not allow you to bypass whatever rule you don't like 19:05 < nickelpro> ^^ 19:05 < rubyrandom> it may sound so, but in this way dependency on auth servers is removed, and they are no longer requirement, so you can't say you "make use of Mojang auth servers". You might, but you are not required. 19:05 < rubyrandom> Amaranth: okay, what governs use of mojang auth servers then? 19:05 < nickelpro> rubyrandom: You're still using the auth servers 19:05 < nickelpro> Nothing atm 19:05 <+Amaranth> *shrug* 19:06 < nickelpro> This is just intellectual masturbation 19:06 < morfin> don't forget they can't forbid use own auth servers for servers) 19:06 < rubyrandom> rude :/ 19:06 <+Amaranth> But sticking in a shim and then using them anyway does nothing to change whatever rules might exist 19:06 <+XorBoole> "intellectual masturbation" 19:06 <+XorBoole> I will have to use this in the future 19:06 < morfin> because that means only offline-mode servers will be allowed 19:07 < morfin> because own auth servers are not legit at all) 19:07 <+XorBoole> so, as far as the api is concerned, they haven't put out any ToS for it, iirc 19:08 < nickelpro> I've been implementing a Separating Axis Theorem algorithm to do physics in SpockBot, I have nearly no formal math education so it's been fun. Anyone know how vanilla client does physics? 19:08 <+XorBoole> nickelpro witchcraft 19:08 <+XorBoole> utter witchcraft 19:08 <+XorBoole> people have tried to understand it 19:08 < nickelpro> I knew that was the answer but it still makes me sad 19:08 < morfin> i have no idea what your implementation of physics is doing 19:08 <+XorBoole> they either go insane or end up working for mojang 19:08 <+XorBoole> whether or not those are equivalent is an excerise for the reader 19:08 * XorBoole runs 19:09 <+XorBoole> put it this way 19:09 <+XorBoole> G, as in GmM/r^2, is not the same for all entities 19:10 <+XorBoole> also air resistance 19:10 < morfin> hmmm? 19:10 < morfin> air resistance in Minecraft? 19:10 <+XorBoole> yes minecraft has air resistance 19:10 < morfin> holy crap 19:10 <+XorBoole> if you throw a snowball the parabola gets squashed over time 19:10 < morfin> hmm 19:11 <+Amaranth> I don't think you need the Separating Axis Theorem for MC physics, isn't that only for poly-poly collisions? 19:11 <+XorBoole> dx/dt is nontrivial in minecraft 19:11 <+Amaranth> Everything in Minecraft is AABB-AABB collisions 19:11 < nickelpro> XorBoole: Gravity and air resistance are entity dependent? I'm not surprised 19:11 <+XorBoole> pulling the values out is also nontrivial 19:11 < morfin> one question: why bot needs that? 19:11 < nickelpro> Amaranth: I did AABB-AABB and AABB-Plane collisions but kept running into edge cases I couldn't solve 19:11 < nickelpro> Probably I'm a bad programmer 19:12 * XorBoole is an algebraist so he doesn't know shit about this collisions nonsense 19:12 < morfin> i understand if you implement server and have that physics etc 19:12 <+Amaranth> The physics is implemented throughout a number of methods on Entity that use various fields on Entity and all of the subclasses seem to change at least one of these methods or fields 19:12 <+XorBoole> nickelpro I'm a mathematician-in-training and I could't be able to it 19:12 <+Amaranth> So they're all fucked 19:12 < nickelpro> morfin: All physics are done client side 19:12 < nickelpro> Well, many physics 19:12 < nickelpro> for the clienr 19:12 <+XorBoole> nickelpro wrong 19:12 <+XorBoole> the client only simulates 19:13 <+XorBoole> the server does all the real physics 19:13 < morfin> that's a point ) 19:13 <+Amaranth> Nah, the client does its own physics 19:13 < morfin> i will have to f**k with that 19:13 <+XorBoole> only for the player 19:13 < nickelpro> XorBoole: My bot is a player 19:13 <+XorBoole> 99% of physics is server-side 19:13 <+XorBoole> and even then a lot of the player physics is server-corrected 19:13 <+Amaranth> It's "simulating" everything else but for itself it is authoritative so if you want to move correctly you need a physics implementation 19:13 < nickelpro> XorBoole: That's why I corrected myself "all physics done client side for the client" 19:13 <+XorBoole> ah, ok 19:14 < morfin> so you mean server implement physics(real) but client have own physics to render that 19:14 <+XorBoole> the players talk about mincraft physics as though it's this bizarre thing that doesn't make sense 19:14 <+XorBoole> they're right about that 19:14 <+XorBoole> morfin correct 19:14 <+XorBoole> the client does physics for everything to keep things seamless 19:14 <+XorBoole> but ultimately the server does all non-player physics 19:15 <+Amaranth> morfin: This is why you get items that fall then teleport back up 19:15 < nickelpro> Amaranth: I thought that was because entities have velocity but the position updates are seperate from that velocity 19:16 < nickelpro> The velocity is just for client-side projection 19:16 <+XorBoole> (personally I think client prediction is annoying and should be toggleable in vanilla) 19:16 < nickelpro> Agree with XorBoole 19:16 < morfin> well i see now 19:16 < morfin> parabola is really squashed 19:16 <+Amaranth> nickelpro: It's because the client and server disagree about the physics, whatever the detail 19:16 <+XorBoole> clientside physics are not required to comply with the spec anyways 19:16 <+XorBoole> only player physics 19:16 <+Amaranth> Without client side prediction MC would look awful 19:17 <+XorBoole> Amaranth depends on server latency 19:17 <+XorBoole> a useful thing would be an entity flag to tell the client not to predict physics 19:17 <+Amaranth> TCP RTT are bad enough already, throw in a dropped packet (they do happen) and that shit balloons up to over 1 second sometimes 19:17 <+XorBoole> sort of how players are treated 19:17 <+Amaranth> And without client side prediction you'd see everything stop when that happened 19:18 < gamingrobot> when I was messing around with the physics the bot ended up walking on water and the server didnt care, that was interesting 19:18 <+Amaranth> I'm still not 100% sure players don't have some prediction although it was the only reasoning I could think of for their behavior 19:18 < morfin> JesusBot 19:18 <+XorBoole> notchian servers are idiotic when it comes to cheat detection 19:18 <+Amaranth> gamingrobot: Yeah, the server basically doesn't care where the client is 19:18 <+XorBoole> since it's so old 19:18 < morfin> fuck the physics 19:18 <+XorBoole> and mostly notchcode still irrc 19:18 <+Amaranth> It has a simple speed check and a simple flying check 19:18 <+Amaranth> The flying check is usually turned off because it's buggy 19:18 <+XorBoole> you should go talk to the nocheat people 19:18 <+XorBoole> they're insane 19:19 <+Amaranth> And the speed check can be bypassed by sending packets faster 19:19 < gamingrobot> is no cheat plus the most popular anti cheat plugin? 19:19 <+XorBoole> Amaranth did you ever see Thinkofdeath's speed client? 19:19 < morfin> speed check and fly check are simple 19:19 <+Amaranth> Speed check is not that simple, otherwise it'd be in CraftBukkit :P 19:19 <+XorBoole> he brought it to my server once, scared the shit out of my players 19:19 < morfin> hmm why? 19:20 <+XorBoole> Amaranth thinky proved it's impossible without a client fix 19:20 <+Amaranth> I tried to come up with a no false positives speed check over and over and over 19:20 < morfin> oh 19:20 <+XorBoole> we tried to fix it in CB and failed horribly 19:20 <+Amaranth> And then Thinkofdeath tried some too with some input from me along the way 19:20 < morfin> is that even possible? 19:20 <+XorBoole> no 19:20 <+Amaranth> Mostly saying "nope, that didn't work" :P 19:20 <+Amaranth> I got really close once 19:20 <+XorBoole> multiple mostly-sane people have confirmed that a client bug prevents a true fix 19:20 < morfin> i thought if you send packets faster nothing good happen 19:21 <+XorBoole> the bug is still open =p 19:21 <+Amaranth> But the client and network are just too unpredictable 19:21 < morfin> 'nothing good" i mean you get kicked back 19:21 <+Amaranth> morfin: Can't limit incoming packets though because they might be legit 19:21 <+XorBoole> Amaranth I like the part where you collide with an entity a million times in a tick and it goes flying 19:21 <+Amaranth> Maybe the client dropped the last 10 seconds of movement packets 19:21 < morfin> no idea 19:21 <+Amaranth> Maybe some other dropped packet caused a couple seconds of delay 19:21 <+Amaranth> These are cases that should be allowed 19:22 <+Amaranth> But you also need to block spamming the packet to get an advantage 19:22 <+XorBoole> player movement is definitely one of the most insane parts of the protocol 19:22 <+Amaranth> Yeah the engine kind of falls over if you send enough packets 19:22 <+XorBoole> given, it's some pretty bad notchprotocol 19:22 <+XorBoole> it's pretty bad too 19:22 <+XorBoole> since players aren't ticked in the main loop, they're ticked when the client asks for it 19:23 <+XorBoole> via movement packet 19:23 <+Amaranth> I fixed like half of that 19:23 <+XorBoole> insta-eat, insta-heal, fun stuff 19:23 < morfin> lol 19:23 <+XorBoole> I helped thinky test it at some point 19:23 <+Amaranth> iirc you can't insta-heal anymore 19:23 <+Amaranth> And you drown now even if you don't send packets 19:23 < morfin> so you instantly drink potions? 19:23 <+XorBoole> too bad 19:23 <+Amaranth> I didn't fix potions though, I remember that 19:24 <+XorBoole> is that in master CB or is it vanilla? 19:24 <+Amaranth> So if you get a debuff you can just spam packets to make it go away instantly 19:24 <+XorBoole> hmm, did LOHM ever make it to 1.8 CB? 19:24 <+Amaranth> I think every fix I made here also went in to vanilla 19:24 <+Amaranth> Nope, dropped the hashmap stuff because instead I made the server use the hashmap like 1% of the time 19:24 <+Amaranth> So that the hashmap was no long important 19:25 <+XorBoole> oh did I tell you about my trade api PR? 19:25 <+Amaranth> You can just stick java's HashMap back in there and forget about that whole diff now, it won't make a difference 19:25 <+XorBoole> after all these years bukkit will support villagers! 19:25 <+Amaranth> ha 19:25 <+XorBoole> (or would if md wasn't burried under a few meters of stuff) 19:26 <+Amaranth> We sat on a PR like that for a while and then villagers don't a complete rework so it didn't make sense 19:26 <+Amaranth> Hope that doesn't happen to you :P 19:26 <+XorBoole> Amaranth he has a pr in himself for careers 19:26 < morfin> i have no idea what you're talking about yet) 19:27 <+XorBoole> mostly hasn't pulled because he wants to make sure the API is sane 19:27 <+Amaranth> Controlling villager trading 19:27 < morfin> i mean all that haax tec 19:27 <+XorBoole> actually 19:27 < morfin> *etc 19:27 <+XorBoole> have you heard of the plugin loader rewrite? 19:27 <+Amaranth> Nope, don't really care :P 19:27 < morfin> i will just try to make my test implementation work 19:27 <+XorBoole> lol 19:27 <+Amaranth> Bukkit/API was never interesting then, it certainly isn't now :D 19:27 <+XorBoole> I'm watching the author slowly go insane trying to untangle it 19:27 <+XorBoole> oh did you hear shulkers are golems 19:28 <+Amaranth> The last thing wolv was working on was a plugin loader rewrite 19:28 <+XorBoole> heh 19:28 <+Amaranth> For like a year off and on 19:28 <+XorBoole> I tried writting a loader especially for scala plugins, didn't get anywhere because the current system is such a mess 19:29 <+Amaranth> He was going to turn it in to something like a simpler to use OSGI 19:29 <+XorBoole> I haven't looked to close at this PR 19:30 <+XorBoole> waiting until it's in beta before writting tests for it 19:30 <+Amaranth> https://code.google.com/p/jspf/ 19:31 <+XorBoole> "usually type safe." 19:31 <+XorBoole> "usually" 19:31 <+XorBoole> 11/10 19:32 <+Amaranth> This is Java, that's probably the best you're going to get 19:33 <+Dinnerbone> Typesafe generics in java relies on you being nice. 19:33 <+XorBoole> Dinnerbone > typesafe 19:33 <+Dinnerbone> And yes, shulkers are golems, this is intentional. 19:33 <+XorBoole> > generics 19:33 <+XorBoole> > java 19:33 <+Dinnerbone> Yes XorBoole, that is what I said. 19:33 <+XorBoole> I'm not very nice to java 19:33 <+Dinnerbone> It is what you quoted from the page, in fact. 19:33 <+Dinnerbone> Me neither, thus my response and Amaranth's too. 19:34 <+XorBoole> why golems though? I can only assume they're either craftable or it's for the persistance 19:34 <+Dinnerbone> They are not yet complete, you can speculate as you wish ;) 19:35 <+XorBoole> better question: why is WitherBoss not Golem? 19:35 <+XorBoole> reasons? 19:35 <+Amaranth> Because boss 19:35 <+Dinnerbone> Because he's not a golem. 19:35 <+XorBoole> bah 19:35 <+Dinnerbone> The original working-name of the shulker was "End Golem". 19:36 <+Dinnerbone> Golem is a gameplay thing, not a technical implementation thing. 19:36 <+XorBoole> until jens had his name-brainwave? 19:36 <+Amaranth> A golem is a constructed entity, a wither is supposed to be a summoned one even if you summon him by constructing a facsimile 19:36 <+XorBoole> so, the wither is "summoned" while snow/villager golems are "constructed"? 19:37 <+Amaranth> That's a lore reason 19:37 <+Dinnerbone> That's pretty much it. There's another big rule though, but I'll wait until it's implemented fully before discussing that! 19:37 <+XorBoole> inb4 purpur block + pumpkin = shulker 19:37 <+XorBoole> pumpkins = mystical keystones of animating power 19:37 <+Amaranth> The other big rule is if you build it it works for you 19:37 <+XorBoole> hehe 19:37 <+XorBoole> if shulkers aren't constructible I'm still adding it to my server 19:38 <+XorBoole> right after off-hand breaks all the things 19:38 <+Amaranth> minigames are going to need a huge overhaul I think 19:38 <+Amaranth> Balance and mechanic changes 19:39 <+XorBoole> well, if you're sane and use PlayerInteractEvent#getItem you're ok 19:39 <+XorBoole> but I'm an idiot 19:39 <+XorBoole> event.getPlayer().getItemInHand() everywhere 19:39 <+Dinnerbone> You're going to spend more time rebalancing things than updating code. 19:39 <+Dinnerbone> But yes, doing stuff like that doesn't help :D 19:40 <+XorBoole> meanwhile md wants to use an enum for the hand 19:40 <+XorBoole> still think it's crazy 19:40 <+Dinnerbone> Why's that crazy? 19:40 <+Dinnerbone> What else would you use? Boolean? 19:40 <+XorBoole> well, it's marginally cheaper 19:40 <+XorBoole> I just hate two-element booleans =p 19:41 <+XorBoole> I've yet to look to closely at the snapshot internals, because obfuscation 19:42 <+Dinnerbone> It uses an enum. 19:42 <+XorBoole> leg-wielding confirmed 19:44 < gamingrobot> maybe we get a third arm next patch 19:44 <+XorBoole> no, definitely leg wielding 19:44 * XorBoole stabs gamingrobot with a sword held by his foot 19:55 < gamingrobot> XorBoole: boot knifes confirmed 19:56 < angal> :) 19:57 <+XorBoole> kind of sad no one has tried to make a conversion script for 1.8 models to 1.9 19:58 < gamingrobot> 1.8 models? 19:58 < Not-9afb> [1.8-Models] drXor created branch 1.8 http://git.io/v3b3a 19:59 < Not-9afb> [1.8-Models] drXor created branch 1.9 http://git.io/v3b3a 20:03 < Not-9afb> [1.8-Models] drXor deleted branch master 20:03 <+XorBoole> now let's see if jenkins broke 20:19 < Not-9afb> [1.8-Models] drXor pushed 2 commits to 1.8 [+1/-0/±19] http://git.io/v3bcd 20:19 < Not-9afb> [1.8-Models] drXor 88c1b5c - Add de-commenter. 20:19 < Not-9afb> [1.8-Models] drXor bf0a2cc - Remove all comments. 20:21 < morfin> what most problematic things you can call out in Minecraft server? 20:21 < gamingrobot> call out? 20:22 < morfin> oops 20:22 < morfin> *call 20:23 < morfin> physics? protocol? AI? something else? 20:52 < nickelpro> As a practical matter, licensing, and how it conflicts with GPL'd projects 20:52 < nickelpro> That is what has caused the most grief for the community 21:10 < morfin> for now i do not care about that) 21:12 <+SinZ> protocol is ez, none of the physics is that fancy 21:13 <+SinZ> terrain generation and AI are two big areas 21:22 < morfin> oh i think about terrain yes) 21:23 < morfin> what do you mean it conflict with GPL'd projects? 21:26 < MCorgano> Bukkit was created under GPL, and people sw it and were like "This is awesome" and started helping with the project and contributing code 21:27 < MCorgano> Mojang then bought bukkit, but didn't tell anyone 21:28 < MCorgano> People contributed to bukit for TWO YEARS with GPL code. The GPL license says basically "If you use this code in your project, your project must be open sourced GPL as well" 21:29 < MCorgano> About a year ago, the devs of bukkit got tired of mojang's shit and decided to stop making bukkit. Mojang then went "You can't close it down, we own bukkit! Here's our reciept!" 21:29 < morfin> yes i know GPL 21:30 < MCorgano> Because bukkit is MOD of vanilla minecraft, it contains some vanillia minecraft RE'd code, and a lot of GPL code 21:30 < morfin> yes i know 21:31 < morfin> it's written over vanilla 21:31 <+XorBoole> every single time I try to write a 1.8 -> 1.9 model converter script I go insane 21:31 < MCorgano> When mojang claimed ownership of it, the GPL demanded that the project either be completely open sourced, or that the project not use any GPL code 21:31 <+XorBoole> for the love of god someone else do it 21:32 < MCorgano> so a few of the major contributors DMCA'd it because of liscense infringement 21:32 < MCorgano> Honestly I don't know how spigot doesn't get it too, but it's a different project. Maybe different liscensing? 21:32 < morfin> not sure 21:32 < barneygale> MCorgano, spigot project doesn't contain any mojang code. they use a patcher iirc 21:32 < morfin> oO 21:33 < morfin> so they went other wqay 21:33 < morfin> *way 21:33 < barneygale> yeah 21:33 < morfin> but how it patches? 21:33 <+XorBoole> barneygale so that really depends on how you think of it 21:33 < morfin> does not that require classes modifications anyway> 21:33 < barneygale> XorBoole, yeah, it's just copyright law shittiness 21:33 < MCorgano> And his lead to a LOT of beanchine ideas how to do servers with plugins - you can't distribute code owned by mojang, so some people are releasing patching tools that "patch" the bukit-y bits onto a servr 21:33 <+XorBoole> barneygale it's enough of a gray area that most courts would throw it out 21:34 < barneygale> XorBoole, if you patch before you distribute, that violates the license. If you give your users the tool to do the patching themselves, everything is OK 21:34 < MCorgano> Others are trying to re-write minecraft server from scratch so they don't need mojang code or servers at all 21:34 < barneygale> supposedly 21:34 < barneygale> as bukkit is GPL not AGPL 21:34 <+XorBoole> what I'm saying is whether you consider the patches mojang code =p 21:34 < barneygale> oh, yeah 21:34 <+XorBoole> of course, copyright laws are not designed to handle software 21:34 <+XorBoole> so really, it's the grayest of gray areas 21:35 < MCorgano> This could have ALL been avoided if when mojang bought bukkit it ACTUALLY TOLD PEOPLE and then a discussion of liscensing would have happened 21:36 < MCorgano> Instead of them "oh by the way, we own you" and then getting DMCA'd 21:36 <+XorBoole> nah it would have just blown up sooner 21:36 <+XorBoole> whether or not they had done that, the moment someone felt like blowing up the project they could 21:36 < MCorgano> what mojang SHOULD have done, when that happened 21:36 <+XorBoole> so really, a patch-based system is the ground state of that mess 21:36 < MCorgano> IS release the official moddng API 21:37 <+XorBoole> mojang should have done a lot of things 21:37 <+XorBoole> however I am neither their management nor their lawyers, so I can't speculate as to why 21:37 <+XorBoole> speculation will only lead to madness 21:37 < MCorgano> The downfall of the largest most sucessful pluinable server would have left a wonderful vaccuum an official api could fill 21:37 < MCorgano> pluginable* 21:38 <+XorBoole> > implying they could have pulled the api out of their ass when es decided to quick bukkit 21:38 <+XorBoole> the api would not have that fast turn around 21:38 <+XorBoole> they're /still/ ripping out notchode to make way for sane systems that they can build an API on 21:38 < MCorgano> How long have they been working on the plugin API now? 21:38 < barneygale> bukkit should have been the plugin api. Mojang could have made parts of it official while working on the bits they didn't like 21:38 <+XorBoole> I don't know, you ask them 21:38 <+XorBoole> barneygale not really, due to licensing 21:39 < MCorgano> I mean ender dragon fights and purpur blocks are nice, but monty python chours shouts GET ON WITH IT 21:39 <+XorBoole> > implying they aren't 21:39 <+XorBoole> have you peeked at snapshot internals? 21:39 < MCorgano> barneygale: , to make it official, they would be required to open source all of minecraft due to GPL 21:39 < MCorgano> not recently 21:39 < barneygale> To make the craftbukkit releases at all, they should have made minecraft open source, but they didn't 21:40 < barneygale> they've just traded one license incompliance for another 21:40 < MCorgano> I know they have done a lot of work, jsut getting everything formatted to the point where it's easy to add things 21:40 <+XorBoole> they're not going to give us a half-assed API 21:40 <+XorBoole> whether or not they actually give us an API is an excersise for the reader 21:41 < MCorgano> If you take a look at starbound they are at that point already, almost nothing in the game is hard coded and you can generate whatever you want through config files, baring some things 21:41 <+XorBoole> except starbound was developed with that in mind 21:41 < MCorgano> It's just a bit annoying how slowly things move sometimes. 21:41 <+XorBoole> minecraft wasn't 21:41 <+Thinkofdeath> last I checked with starbound it was still missing the 'game' part 21:41 < MCorgano> Yeah, minecraft was most certantly not lol 21:42 < MCorgano> Starbound lacks progression 21:42 <+XorBoole> > impying minecraft has actual progression 21:42 < MCorgano> Although minecraft also lacks progression when you think of it.. 21:42 <+XorBoole> starbound has more progression by virtue of more items =p 21:42 < MCorgano> Terreria has pretty good progresson and a lot of monsters 21:42 <+Thinkofdeath> minecraft was always focused on the building side of things anyway 21:42 <+XorBoole> terraria is basically finished though 21:42 < MCorgano> Iw ant minecraft world with terreria progression and starbound pluginability 21:43 <+Thinkofdeath> XorBoole: and they keep adding more anyway 21:43 <+Thinkofdeath> not that i'm complaining 21:43 <+XorBoole> when you fix your internet we really should play terraria together 21:43 <+XorBoole> mac/linux is stable now! \o/ 21:44 <+XorBoole> at least, terraria's definition of 'stable' 21:44 < MCorgano> When was terreria made anwats? Did it come after minecraft? 21:44 <+XorBoole> minecraft predates terraria 21:44 < MCorgano> Stable is always subjective lol 21:44 <+XorBoole> a lot of people thought terraria was going to be a 2d minecraft clone but it ended up being a completely different game 21:44 <+XorBoole> it's more of a combat game than a building game 21:44 < morfin> yes it's different 21:45 <+XorBoole> the reason minecraft isn't open source is to prevent clones, actually. they're already rampant, allowing people easy access to the deobfuscated source would only make things worse 21:45 < morfin> hmm 21:45 < MCorgano> IT's like a 2d minecraft clone that they finnished making before they finnished making minecraft 21:45 <+XorBoole> (and other reasons of course) 21:46 <+XorBoole> mostly because the primary drm for minecraft is joining online servers 21:46 < MCorgano> I've seen a lot of basic clones, none that are good. Totally understand closed source 21:46 < rubyrandom> ...but what can prevent one from reimplementing their own clone from scratch? 21:46 <+XorBoole> but that's not a topic for this channel 21:46 <+XorBoole> rubyrandom nothing, but it's orders of magnitude harder 21:46 * XorBoole stares at steven 21:46 < rubyrandom> reason for clones not being successful is the momentum behind minecraft already 21:46 < rubyrandom> so I doubt any of them could make it 21:47 < rubyrandom> even having full source 21:47 < MCorgano> Find me one clone that is genuinely better than minecraft 21:47 <+XorBoole> better is subjective 21:47 <+XorBoole> successful is not 21:47 <+XorBoole> no one will top minecraft any time soon 21:47 < morfin> who needs doing that? 21:47 <+XorBoole> but I can't speak for mojang. they have delicious data that I can't use to base my arguments on 21:47 < rubyrandom> at least without bringing some substantially new mechanics 21:48 < morfin> can't Minecraft be extended etc? 21:48 <+XorBoole> yeah but people want to /sell/ clones 21:48 < morfin> if reimplementing whole thing 21:48 <+XorBoole> they do it for the money 21:48 < morfin> aah 21:48 <+XorBoole> unlike Thinkofdeath, who's just either insane or really wants to make a complete client 21:48 < MCorgano> I mean to distance the idea of "better" from "popular". Maybe clones don't have the community of minecraft, but I'd assume there are no good clones because getting a blocky world to the same level of development as minecraft is hard 21:48 <+Thinkofdeath> The way I see it Minecraft is like WoW, no one is ever going to be able to top it 21:48 < rubyrandom> I hope doing games "inspired" by minecraft (regardless of whether successful or not) is okay from mojang's view? 21:49 < morfin> i am insane enought to try reimplement server) 21:49 < morfin> at least try 21:49 < rubyrandom> morfin: for free or for commercial purpose? 21:49 <+XorBoole> rubyrandom ultimately it's what they can sue you for 21:49 <+XorBoole> and mojang has a track record of avoiding litigation 21:49 < MCorgano> Thinkofdeath: Totally. Nothing will ever pass minecraft in numbers 21:50 < rubyrandom> XorBoole: ahem? so, any voxel-based commercial game, even not mentioning minecraft nor any art from it, can be cease'n'desisted by mojang? 21:50 <+XorBoole> no 21:50 < rubyrandom> that's something cool and new to learn 21:50 <+XorBoole> I didn't say that 21:50 < rubyrandom> "I hope doing games "inspired" by minecraft" - I meant exactly that 21:50 < rubyrandom> inspired, not cloned from 21:50 <+XorBoole> by "what they can sue you for", I mean "those things that violate their copyright" 21:51 < MCorgano> "track record of avoiding litigation" Understatement of the year. "What's that? Everyone is breaking our EULA? Well here's a new more lenient EULA for everyone to break" 21:51 <+XorBoole> which that certainly is not 21:51 < nick____> from here someone else tryed the minecraft survival test? 21:51 <+XorBoole> MCorgano > implying the eula is feasibly enforceable 21:52 <+XorBoole> it's not enforcable, but you're a dick if you willingly take money from kids 21:52 <+XorBoole> that's my stance on it at any rate 21:52 < MCorgano> They hold the login servers. Skip the courts, blacklist servers from validating sessions 21:52 <+XorBoole> and doing that manually? 21:52 <+XorBoole> it's infeasible 21:52 < MCorgano> What do you mean? 21:52 <+XorBoole> they could try but it would be a waste of resources 21:53 <+XorBoole> they would have to go server by server and do a nontrivial verification that they are compliant 21:53 <+XorBoole> auditing every minecraft server out there would be near impossible 21:53 < MCorgano> they could take down the top 10 servers who are all breaking it, they would change, the rest would follow 21:53 < MCorgano> Don't need to black list ALL the servers that break rules 21:53 < rubyrandom> "take money from kids" - what kids would suffer from alternative implementations of minecraft, except mojang itself? 21:53 <+XorBoole> they could, but they don't for reasons 21:53 < MCorgano> just enough that people know you're actually enforcing it. 21:53 <+XorBoole> reasons which I do not know 21:53 < MCorgano> I kind of wish they would 21:54 < MCorgano> just to see hat happens 21:54 <+Thinkofdeath> I thought most of the larger servers changed anyway 21:54 <+XorBoole> and which I do not care to speculate much further 21:54 <+Thinkofdeath> its just the large number of smaller ones with the issues 21:54 <+XorBoole> ^^ 21:54 < nick____> ░░░░░░░░ 21:54 <+XorBoole> the whole eula debacle is a slippery slope 21:54 < nick____> ░▓▓░░▓▓░ 21:54 <+XorBoole> that's some lovely unicode art. but please don't put it in the channel 21:55 < MCorgano> I just wish they would actually enforce it 21:55 < nick____> ok 21:55 < MCorgano> Why make rules at all otherwise. Maybe now that they are owned by microsoft.... 21:55 <+XorBoole> the eula is not our quarrel. follow their rules and let them deal with it 21:55 <+XorBoole> it's their problem, not ours 21:56 < MCorgano> I guess so. 21:56 <+XorBoole> our problem is taking minecraft and tinkering which it. 21:56 < MCorgano> Would you happen to know specifics of the login server (ygddrisl or something like that) 21:56 <+XorBoole> all this political nonsense is silly 21:56 <+XorBoole> yes, it's well documented on wiki.vg 21:56 < MCorgano> IF I log into too many accounts at once, or into a lot of accounts one after each other, it gets mad at me and doesnt let me connect for a time 21:57 <+XorBoole> MCorgano this is docs for the known Yggdrasil APIs http://wiki.vg/Authentication 21:57 < MCorgano> The wiki doesn't say how many requests in what time I can make, or how long it is mad at me 21:57 <+XorBoole> are you making sure to ask yggdrasil to log you out properly first? 21:57 < MCorgano> XorBoole: I already checked that, but does not have the info I need 21:57 <+XorBoole> yggdrasil likes throwing fits over spilt milk but that could be your issue 21:58 < MCorgano> hmm 21:58 <+XorBoole> I suggest looking at mojang authlib otherwise 21:58 <+XorBoole> Thinkofdeath what's the url of authlib's sourcejar? 21:58 < MCorgano> If my script crashes... how would I log out first when I restart it next... 21:58 <+XorBoole> well, that's for you to decide 21:59 <+Thinkofdeath> XorBoole: https://libraries.minecraft.net/com/mojang/authlib/1.5.21/authlib-1.5.21-sources.jar 22:00 <+XorBoole> MCorgano check that out ^ 22:00 <+XorBoole> is there a link to that on the wiki? I think that might be useful 22:27 < morfin> anyway i have a question: how legit are custom clients/servers? 22:27 < morfin> you seems to be analyzing protocol that's barely legit 22:51 < morfin> ok, everybody died again :( 22:51 < angal> Things that might be problem: 1) mojang authservers - usage of them 'oficially controlled' by mojang. They can publish license for it at any point.. 22:53 < morfin> i remember one guy said they did not let him in 22:54 <+SinZ> morfin: nothing really that mojang can do against custom client/servers 22:55 < angal> 2) if you connect to vanilla(-based) client/server hat user/server-admin still should follow mojang EULA and your interactions are partly too. 22:55 < MCorgano> Mark the callendar I had a thought! 22:55 < MCorgano> How long does it take the yagdrissillin sessions to timeout if I don't logout properly? 22:56 < MCorgano> Maybe that's how long I'll have to wait to try logging back in 22:57 < angal> And of couse you can't clone any designed by mojang content/code/ideas (including vanilla gameplay). 22:58 < morfin> what do you mean vanilla gameplay? 22:58 < morfin> as example if guy write full copy of server with same features that's clone 22:59 < angal> Some unique for minecraft staff. Like summonable wither boss. 22:59 < morfin> or you mean another commercial project? 22:59 < angal> If you do this - you take staff they created - you should follow they eula. 23:00 < morfin> if i will have donating for stuff when using custom server(which is not limiting features etc) that should be fine 23:00 < morfin> otherwise it's not possible any server to exist 23:03 < angal> leggit != possible. Mojang often close eyse for small breakes of rules, ie for mods/bukkit. 23:08 < angal> And if your server are catched this conditions, it's still allowed to exist. At least for personal use. Also if it not contains any mojang stuff - it can be even distributed. But it should always fit license (current and feature versions). 23:12 < angal> Donating for staff that not break balance allowed even for vanilla. So shouldn't be a problem. Until mojang change eula. :) 23:17 < angal> donating for stafff... hate this words... It's selling. 23:17 < angal> but nvm. 23:23 < MCorgano> "donating for stafff" What horrible servers do you play on? 23:24 < MCorgano> I think I found my issue. Yagdrizzel seems to have a limit of 10 active session per IP 23:25 < MCorgano> This number was derived from my personal pulling of hair and much gnashing of teeth, so don't take my word on it, 23:29 < yawkat> could someone confirm http://wiki.vg/NBT#bigtest.nbt ? I think the tag order is wrong 23:29 < yawkat> longTest is first for me 23:35 < angal> tag compound is not ordered... maybe it was reordered by saving tool used. (but i do not check that file) 23:35 < yawkat> i dont think it's defined whether it's ordered. 23:36 < yawkat> but the tool output does not represent the file order. 23:36 < yawkat> looking at hexdump, it's definitely a different order http://s.yawk.at/56Iu 23:38 < angal> Does that matter? Compound is unordered. Better if you find this on test file, rather than on regular one. 23:40 < yawkat> it just bothered me because my lexer unit tests were failing. --- Day changed lun. août 17 2015 00:13 <+XorBoole> compound is unordered, because the reference implementation is unordered 00:31 < shoghicp> I can confirm it's implemented using a std::unordered_map in MCPE 00:31 < shoghicp> I had the same issue trying to verify the NBT tag 00:33 <+XorBoole> does the original NBT spect still even exist 00:35 < angal> i think it's lost... maybe mojangsta have a copy of it. 00:35 < shoghicp> there is this copy from minecraft.net https://github.com/acfoltzer/nbt/blob/master/NBT-spec.txt 00:36 < shoghicp> http://web.archive.org/web/20110723210920/http://www.minecraft.net/docs/NBT.txt 00:36 < shoghicp> that also works :) 00:37 <+XorBoole> yey 00:37 <+XorBoole> of course both are inclomplete because TAG_INT_ARRAY isn't there =D 00:39 <+XorBoole> it does say compound is unordered... \o/ 01:08 < yawkat> Ah okay. 01:09 < yawkat> Still annoying :P 01:10 * XorBoole reads yawkat in an arbitrary order 19:00 < morfin> unordered_map? 19:02 < morfin> i am interested how you parse that NBT 19:16 < nick____> . 19:17 < morfin> that sounds like supercomplicated because some tags could exist or not 19:24 < rom15041> something like that https://github.com/PrismarineJS/prismarine-nbt/blob/master/nbt.js#L147 19:26 < morfin> aah i love JS with all that closures 19:26 < morfin> and insane "this" :D 19:28 < morfin> language of spaghetti 19:32 < rom15041> that code is not that bad. And you can do bad code in any language 19:32 < SuperstarGamer> Um hi? 19:32 < SuperstarGamer> Anyone on? 19:33 < morfin> i know 19:33 < rom15041> well I got to admit that 'this' in this code is pretty weird 19:33 < morfin> but JS and Lua are very weird things) 19:34 < rom15041> try perl 19:34 < morfin> because they can do same thing like returning anonymous functions where this is some place where from it was returned 19:35 < morfin> etc etc 19:36 < rom15041> yeah 'this' is not always what you'd think it would be coming from a OO language 19:38 < morfin> i should admit i do not know JS so well 19:40 <+Amaranth> So I guess nick____ does more than type "." after all 19:40 < morfin> this code is magic 19:40 < SuperstarGamer> morfin 19:40 < SuperstarGamer> Helo 19:40 < SuperstarGamer> And hello Amaranth 19:40 < morfin> hello 20:11 < morfin> ok i see now 20:13 < morfin> there is type of tag, name(prefixed by 2 bytes) and payload 20:14 < SuperstarGamer> Are you guys trying to figure out the game protocol? 20:14 < SuperstarGamer> Because I know it :D 20:14 < SuperstarGamer> Well, not all of it. But the base of it 20:14 < angal> lol 20:15 < angal> They (http://wiki.vg/Protocol) know it too. 20:16 < morfin> at lest parsing of NBT should not be veeery hard 20:17 < angal> Especialy, when you use 1 of tons free libraries for that. 20:17 < angal> :) 20:18 < morfin> i guess i can write own one for C++ ) 20:19 < angal> Yes, you can :) 20:20 < morfin> too bad i can't store different types in unordered map :( 20:28 < SuperstarGamer> Do you guys know about RedstoneLamp? 20:28 < SuperstarGamer> It's really cool :D 20:29 < benbaptist> What does it do? 20:29 < SuperstarGamer> It's supposed to let people on MCPE and MCPC play together without Mods 20:29 < SuperstarGamer> They already have MCPE players spawning 20:29 < SuperstarGamer> And I'm one of the developers 20:29 < SuperstarGamer> If you want to help, go here: http://github.com/RedstoneLamp 20:29 < benbaptist> Oh man, I had that idea for Wrapper.py. 20:30 < benbaptist> that's awesome! 20:30 < SuperstarGamer> I know right? 20:30 < SuperstarGamer> Two of my friends started it after I created DiamondCore which had the same goal 20:30 < benbaptist> so it just translates player spawning packets right now? 20:30 < SuperstarGamer> No no 20:30 < benbaptist> or more packifications work? 20:30 < SuperstarGamer> We're building from the ground up. No wrapping around 20:30 < benbaptist> wait, so like a whole server implementation? 20:31 < SuperstarGamer> Yes 20:31 < benbaptist> Ah, interesting. 20:31 < SuperstarGamer> It's cool, right now we're working on PC mostly 20:31 < SuperstarGamer> Then we'll focus on getting everything else added :D 20:31 < benbaptist> Nice. 20:31 < SuperstarGamer> Well I have to go read, I'm homeschooled 20:31 < SuperstarGamer> bai :) 20:32 < benbaptist> see ya 20:44 < angal> one more from scratch server... 20:45 < morfin> ? 20:47 < angal> Who wil be first... Intersting. 20:49 < morfin> what do you mean 20:51 < angal> There are lots of incomplete servers... And all new devs start they own projects, instead of contributing to old ones. 21:08 < morfin> well i write own one for learning 21:09 < morfin> and i use libs of course to avoid writing some abstractions 21:14 * Thinkofdeath smacks mojang about multipart models 21:16 <+Thinkofdeath> fire uses "north":true and fences use "north":"true" .-. 21:19 < morfin> i mean of course socket libraries etc 21:22 < Fenhl> Thinkofdeath: wow that's worse than the new potion effect tags 21:25 <+Thinkofdeath> haven't looked at those yet 21:25 <+Thinkofdeath> oh and for people playing with the snapshot: entity metadata got a rewrite 23:02 < nickelpro> Thinkofdeath: elaborate? What happened to my least favorite data format? 23:05 <+Thinkofdeath> nickelpro: i've been looking into it (still need to the do the docs), its basically index is a single byte now and if its 0xFF then its the end otherwise there is a type byte 23:05 <+Thinkofdeath> some types removed and a lot added 23:05 <+Thinkofdeath> internally its a register system for types meaning the order the types are registered in decides the id (like packets) 23:07 <+Thinkofdeath> same for the index 23:16 <+Thinkofdeath> nickelpro: http://wiki.vg/Pre-release_protocol#Entity_Metadata 23:17 < nickelpro> Bool, if true then followed by... 23:17 < nickelpro> "Yes, but why?" 23:18 < nickelpro> Clearly you knew before hand if that data needed an extra field, why not just send 0xFF if it doesn't? 23:19 <+Thinkofdeath> its for nullable types 23:20 <+Thinkofdeath> as for what a null Position is used for (or a null uuid) I don't know 23:21 < nickelpro> Boss Bar. Another ugly-ass packet. Yay 23:22 < gamingrobot> Thinkofdeath: aww I just fixed the metadata parser 23:23 <+Thinkofdeath> :D 23:54 <+Dinnerbone> Those boolean-then-x types are Optional 23:56 <+Dinnerbone> For example, shulkers have Optional of where they are, or some mobs have Optional of who their owner is --- Day changed mar. août 18 2015 00:01 < yawkat> Man, I never got why people prefer optional over nullable. 00:15 <+Dinnerbone> Because you can't put optional in generics. It's only really useful for coorcing into a generic system. 00:15 * Dinnerbone waddles off to bed 00:15 <+Dinnerbone> (*put nullable in generics.) 00:16 < yawkat> True 00:37 <+XorBoole> Dinnerbone > optional 00:37 <+XorBoole> optional is java 8 no? 00:38 <+XorBoole> or, wait, guava has one doesn't it 00:42 <+Thinkofdeath> yep 00:43 <+XorBoole> did they (mojang) use optional before? 00:43 <+XorBoole> or is this a new thing 00:43 <+XorBoole> (also @Nullable is crap if it's not language enforced like in kotlin) 00:44 <+Thinkofdeath> XorBoole: new thing 00:45 <+Thinkofdeath> only the datawatcher (at least I can see server side) uses it 00:45 <+XorBoole> can't wait for them to bump to java 8 00:45 <+Thinkofdeath> I assume more will start using though 00:45 <+XorBoole> and watch fernflower choke on invokedynamics 00:46 <+Thinkofdeath> intellij's fork started adding support for them 00:46 <+XorBoole> the only fork* 00:47 <+Thinkofdeath> ok, its master :P 00:47 <+Thinkofdeath> we have a fork and so does forge I think 05:48 < Not-9afb> [SpockBot] nickelpro pushed 2 commits to master [+0/-0/±4] http://git.io/vsvhF 05:48 < Not-9afb> [SpockBot] Gjum 1425811 - Fix various vector issues 05:48 < Not-9afb> [SpockBot] nickelpro 8a9d6b7 - Merge pull request #86 from Gjum/vector-fixes 11:04 < nick____> - 11:07 < Frigolit> _ 11:27 < angal> --- 12:17 < Not-9afb> [SpockBot] gamingrobot pushed 1 commit to master [+0/-0/±1] http://git.io/vsJ84 12:17 < Not-9afb> [SpockBot] gamingrobot aef4855 - Fix issue #83 14:39 < rom15041> ---- 15:20 < nick____> , 16:00 <+XorBoole> things I want for christmas: a switch for whether a model causes culling, and a switch for whether a model will use alpha 16:00 <+XorBoole> (both are hardcoded and it's annoying) 18:54 < nick____> Ծ-Ծ? 19:36 < Not-1ae1> [SpockBot] nickelpro pushed 2 commits to master [+0/-0/±2] http://git.io/vsk4m 19:36 < Not-1ae1> [SpockBot] Gjum b985250 - Fix vector comparisons 19:36 < Not-1ae1> [SpockBot] nickelpro 2ba8766 - Merge pull request #87 from Gjum/vector-comparisons --- Day changed mer. août 19 2015 15:34 < redstonehelper> XorBoole: too slow 15:34 < redstonehelper> hah, blinkenlights - I remember that :D 15:35 <+XorBoole> redstonehelper fuck off 15:35 <+XorBoole> also jar/exe are wrong 15:35 < redstonehelper> ok you got a point there 15:36 < redstonehelper> I'm still surprised people click those links 15:36 <+XorBoole> I hovered them to be pedantic 15:36 < redstonehelper> usually people download the snapshot, look for the first change to take a screenshot of and shit all over /new with "look what I found" 15:36 <+XorBoole> I too browse /r/minecraft 15:36 * redstonehelper downvotes XorBoole 15:37 * XorBoole reports redstonehelper for downvoting based on opinion 15:37 < redstonehelper> can't prove it! 15:37 <+XorBoole> who cares 15:38 * redstonehelper downvotes some more 15:38 * XorBoole downvotes all of redstonehelper's changelogs ever 15:39 < redstonehelper> some are archived :D 15:39 <+XorBoole> even on /r/edstonehelper? 15:39 <+XorBoole> but teh history! 15:40 <+XorBoole> it also appears they 'fixed' spam-clicking 15:40 <+XorBoole> can't wait to see how someone breaks that 15:40 <+Thinkofdeath> ? 15:41 <+XorBoole> Thinkofdeath spam-clicking a weapon causes less damage 15:41 <+XorBoole> holding does more 15:41 <+XorBoole> also command block stuff I marginally care about 15:41 <+XorBoole> das blinkenlights though! 16:03 < yawkat> fun fact: mods cant see who reports stuff 16:04 < yawkat> it's super easy to annoy mods with reports 16:04 < yawkat> (dont do this) 16:21 <+XorBoole> yawkat because they'll assume it's you? 16:21 < yawkat> :D 16:35 <+SinZ> redstonehelper: I've seen people be shadowbanned based on only IRC logs 16:35 < redstonehelper> SinZ: more info? 16:35 <+SinZ> was a drama in the dota modding community ages ago 16:35 < redstonehelper> XorBoole: it's actually not holding that does more damage, it's just a cooldown sort of thing - my bad. 16:36 <+SinZ> to the state we have a bot say "Posting reddit links will get you shadowbanned" on ever non np reddit link 16:36 <+SinZ> every* 16:37 <+SinZ> 6 or so months later, the shadowban appeals started working 16:56 <+XorBoole> ah yes, the reddit thought police 17:11 < barneygale> internet forum moderation is exactly what orwell was thinking of when he wrote 1984 17:55 <+XorBoole> barneygale that's because it's the most efficient way to do things! 18:35 < Aikar> can any mojangsta explain why the Async Saving thread waits 10ms between every chunk to be written to disk? slows it down so badly. I'm having issue where when tons of chunks are unloaded, it takes forever to empty that queue... resulting in higher/less effecient memory usage. Removing that 10ms stabablized memory usage for chunk unloads greatly 18:36 < Aikar> (FileIOThread in CB naming) 18:38 <+XorBoole> wait, asynch saving is vanilla? 18:38 < Aikar> ... yes 18:39 < Aikar> you thought vanilla wrote to disk sync too? lol 18:39 < Aikar> just loading :P 18:39 <+XorBoole> I am pleb 18:39 <+ammar2> async chunk loading master race 18:40 < Aikar> ammar2, dont forget whos idea it was ;) 18:40 <+ammar2> muhammad? 18:40 < Aikar> well, thats what you call me, so i guess 18:40 <+XorBoole> Aikar 4 second comming confirmed 18:41 < Aikar> im trying to figure out what you just said 18:42 <+XorBoole> never mind 18:53 < Aikar> um, i was just told Giant is being removed in 1.9 :/ ? Please say this isn't true 18:54 < redstonehelper> they are invisible currently 18:54 < Aikar> will it be fixed? 18:54 < Aikar> some of us have put them to a proper use :( 18:55 < redstonehelper> we don't know 18:55 < redstonehelper> but they are officially unsupported 18:57 < Aikar> would really hate to lose that as a custom boss mob :( naming a normal zombie "Momentus" just doesn't fit. 18:57 < Aikar> unless I like stack 30 zombies into a cluster >_> 18:59 < Aikar> though would totally love a way to set on all entities to scale its size like slimes, and then it wouldnt be such a big deal to upscale a zombie and be able to do it for more mobs 19:05 <+XorBoole> Aikar actually I asked one of the mojangstas that at the minecon we met, I can't remember the xplanation they game me 19:06 <+XorBoole> something about the protocol 20:53 < Aikar> XorBoole, protocol for what? it can work same way as slimes. pass a size int that adjusts a scale. 21:52 <+Amaranth> I wonder if this sword charge thing is somewhat server checked like mining or if you can mod your client to spam full charge hits 21:53 <+XorBoole> Amaranth well the server can check it 21:53 <+XorBoole> and it seems wasteful to send it to the server every time 21:56 <+Amaranth> Just send the start and stop packets instead of a single attack packet with the power and let the server calculate the power based on the time between those two packets 21:56 <+Amaranth> And make sure to clear the start time on item in hand change so people can't hold one full power swing in reserve 21:58 <+Amaranth> I wonder if that's how it works 21:59 <+Amaranth> Oh I see it's not really a charge it's more or a stamina thing 22:37 < Not-2be> [mc-autodocs] thinkofdeath pushed 1 commit to master [+0/-0/±52] http://git.io/vssRf 22:37 < Not-2be> [mc-autodocs] thinkofdeath 4bee1bc - 15w34a 23:33 < Not-1ae1> [SpockBot] Gjum pushed 2 commits to master [+0/-0/±4] http://git.io/vssHc 23:33 < Not-1ae1> [SpockBot] barneygale 83ea6a8 - Simplify and improve BoundBuffer internals. 23:33 < Not-1ae1> [SpockBot] Gjum 62d473c - Merge pull request #89 from barneygale/bound-buffer-improvements 23:34 < Not-1ae1> [SpockBot] Gjum pushed 2 commits to master [+0/-0/±2] http://git.io/vssHV 23:34 < Not-1ae1> [SpockBot] barneygale 20471f7 - Simplify packet header decoding 23:34 < Not-1ae1> [SpockBot] Gjum 65460b7 - Merge pull request #90 from barneygale/simplify-packet-header-decode 23:44 < Not-1ae1> [SpockBot] gamingrobot pushed 23 commits to master [+53/-2/±76] http://git.io/vss5d 23:44 < Not-1ae1> [SpockBot] Gjum 4e94683 - Add interact plugin 23:44 < Not-1ae1> [SpockBot] Gjum f83f2f7 - Improve _entity_action and look_at 23:44 < Not-1ae1> [SpockBot] Gjum 107bacc - Fix interact, improve usability 23:44 < Not-1ae1> [SpockBot] ... and 20 more commits. 23:44 < nickelpro> Sorry for the channel spam, busy day 23:44 < gamingrobot> "... and 20 more commits." yup 23:46 < Gjum> haha yeah sorry :D 5 of them are just merges --- Day changed jeu. août 20 2015 00:24 <+Thinkofdeath> At least it does the 'and X more commits' now, I remember the days when it didn't. Merge commits were fun 01:03 < Not-1ae1> [SpockBot] nickelpro pushed 2 commits to master [+0/-0/±2] http://git.io/vsGZF 01:03 < Not-1ae1> [SpockBot] nickelpro fd29b2f - Fix lack of session error handling in auth 01:03 < Not-1ae1> [SpockBot] nickelpro d62684e - Merge pull request #91 from nickelpro/master --- Day changed ven. août 21 2015 00:47 < Sol_69007> hi 01:01 < nickelpro> Sol_69007: hello 01:17 <+XorBoole> Test 01:17 <+XorBoole> Ignore that 01:29 < Sol_69007> hi 01:29 < Lime> hello 03:12 < Lemon> hello 03:53 < Lemon> hello 03:54 < Lemon> Ich habe keine ahnung uber das server 03:54 < Lemon> Ich das server guFunden 03:55 < Lemon> geFunden* 04:09 <+XorBoole> english please =/ 05:12 < nickelpro> This channel gets weird sometimes 05:13 <+ammar2> ur weird 07:38 < Lime> hello 07:39 < Lime> How is everyone? 09:58 < Not-1ae1> [minecraft-data] rom1504 pushed 2 commits to 1.8 [+0/-0/±4] http://git.io/vsBoW 09:58 < Not-1ae1> [minecraft-data] roblabla 7cced95 - Use countType where possible 09:58 < Not-1ae1> [minecraft-data] rom1504 3afad17 - Merge pull request #32 from roblabla/feature-countType Use countType where possible 11:32 < rom1504> barneygale: now we don't need to even put the counting field in the protocol.json, even better that what you suggested (https://github.com/PrismarineJS/minecraft-data/blob/1.8/enums/protocol.json#L93) 11:32 < rom1504> (just need to specify the type of the counting field in the container) 12:06 < rom1504> Thinkofdeath: what does "Tracking Position" mean ? (the new fields in maps packet) 12:06 <+Thinkofdeath> don't know, I didn't name that one 12:07 < rom1504> oh yeah right 13:30 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.9 [+0/-0/±2] http://git.io/vsRDW 13:30 < Not-1ae1> [minecraft-data] roblabla e949f58 - Use countType where possible 13:48 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.9 [+0/-0/±1] http://git.io/vsRd1 13:48 < Not-1ae1> [minecraft-data] rom1504 93855ef - add field to maps packet (see http://wiki.vg/index.php?title=Pre-release_protocol&diff=6809&oldid=6808 ) 13:53 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.9 [+0/-0/±1] http://git.io/vsRb3 13:53 < Not-1ae1> [minecraft-data] rom1504 fc8ec33 - fix trackingPosition type : bool not boolean, fix is why the schema needs to be more precise about the field types (#29) 14:56 < Not-1ae1> [minecraft-data] rom1504 pushed 6 commits to 1.8 [+23/-24/±6] http://git.io/vs0s7 15:11 < Not-1ae1> [minecraft-data] rom1504 pushed 8 commits to 1.9 [+23/-24/±9] http://git.io/vs0lZ 15:11 < Not-1ae1> [minecraft-data] rom1504 127bd33 - separate protocol parsing and names transformation. Add better transformation to use node-minecraft-protocol old names 15:11 < Not-1ae1> [minecraft-data] rom1504 fc2175b - fix payload transformation in wiki protocol extractor 15:11 < Not-1ae1> [minecraft-data] rom1504 074b742 - in wiki protocol extractor : fix |- on first line, fix >9 rowspan, start implementing colspan 15:11 < Not-1ae1> [minecraft-data] ... and 5 more commits. 15:15 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.9 [+0/-1/±1] http://git.io/vs08o 15:15 < Not-1ae1> [minecraft-data] rom1504 a5f7533 - remove api.md which now doesn't make sense, remove npm link 15:16 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.8 [+0/-1/±1] http://git.io/vs08j 15:16 < Not-1ae1> [minecraft-data] rom1504 066f4e8 - remove api.md which now doesn't make sense, remove npm link 15:18 < rom1504> err sorry for the spam 15:20 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.8 [+0/-0/±1] http://git.io/vs0BN 15:20 < Not-1ae1> [minecraft-data] rom1504 b1ca8ad - fix circle ci badge : 1.8 branch 15:21 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.9 [+0/-0/±1] http://git.io/vs0RG 15:21 < Not-1ae1> [minecraft-data] rom1504 9395672 - fix circle ci badge : 1.9 branch 15:24 < Not-1ae1> [minecraft-data] rom1504 tagged 9395672 as 1.9-0.1.0 http://git.io/vs0Rx 15:24 < Not-1ae1> [minecraft-data] rom1504 tagged b1ca8ad as 1.8-0.1.0 http://git.io/vs0Rp 16:48 < Not-2be> [mineflayer] rom1504 pushed 1 commit to master [+1/-0/±9] http://git.io/vs0hB 16:48 < Not-2be> [mineflayer] rom1504 deleted branch mcDataMultipleVersion 16:52 < Not-2be> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±2] http://git.io/vs0jA 16:52 < Not-2be> [mineflayer] rom1504 47ff78d - Release 1.4.0 16:52 < Not-2be> [mineflayer] rom1504 tagged 47ff78d as 1.4.0 http://git.io/vs0jN 16:56 < Not-1ae1> [minecraft-data] rom1504 deleted branch unjs_mcData 18:25 < gamingrobot> weeee https://gfycat.com/NiftyDenseBudgie best spockbot bug 18:27 <+SinZ> s/bug/feature/ 18:27 < angal> Em... 18:49 <+AndrewPH> rip 18:59 < nickelpro> Russian judge gives 6/10 20:22 < morfin> wtf is that? 20:23 < morfin> that's just rendering glitch? 20:24 < nickelpro> morfin: It's my most recent project Minecraft Space Program. Only significantly less accurate than KSP 20:24 < morfin> ) 20:24 < morfin> in KSP many spaceships even do not fly 20:24 < nickelpro> MCSP great success 20:25 < nickelpro> SpockBot first bot to reach Mun, much better than Mineflayer 22:23 < Not-2be> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±2] http://git.io/vszTO 22:23 < Not-2be> [mineflayer] rom1504 2a8652e - remove digging interruption vanilla server never actually interrupt digging, but some server send block update when you start digging so ignore block update if not air --- Day changed sam. août 22 2015 01:26 < Gjum> ^ 01:53 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.9 [+0/-0/±1] http://git.io/vsgL7 01:53 < Not-1ae1> [minecraft-data] rom1504 97606ca - fix link to documentation (add version parameter) 01:53 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.8 [+0/-0/±1] http://git.io/vsgte 01:53 < Not-1ae1> [minecraft-data] rom1504 1454bb0 - fix link to documentation (add version parameter) 01:58 < morfin> hahah guys when you said about space program i remembered one funny plugin bug 01:59 < morfin> there was thing to ride any player using saddle but if player you ride on use saddle on you... 02:00 < morfin> you can leave Solar system --- Day changed dim. août 23 2015 02:37 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.8 [+0/-0/±1] http://git.io/vsw4m 02:37 < Not-1ae1> [minecraft-data] rom1504 5e0629a - add python minecraft data in readme 02:38 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.9 [+0/-0/±1] http://git.io/vsw48 02:38 < Not-1ae1> [minecraft-data] rom1504 0195ac9 - add python minecraft data in readme 06:42 < Lemon> hello :3 06:43 < Lemon> lol beggining syntax: "Hello, World!" Ending sintax: "Goodbye, World" 06:46 < dx> Lemon: hello, what brings you here? 06:52 <+ammar2> Hello World! 06:54 < Lemon> oh sorry was AFK 06:54 < Lemon> Im just around exploring servers 06:55 < Lemon> and I noticed this is a MC devvelopers server so why not chat in here 06:55 < Lemon> developers* 06:56 < Lemon> are there any hacked client developers here at the moment? 07:03 < dx> no 07:04 < dx> if you're not a programmer working on a client or server project, this channel is probably of no use for you 07:06 <+ammar2> dx: are you a programmer working on a client or a server project? 07:06 < ScruffyRules> Indirectly I am. :P 07:07 < dx> ammar2: i wrote a bot/proxy for minecraft beta 1.3 07:07 < dx> or 1.4 07:07 < dx> or 1.6? whatever 07:07 <+ammar2> dx: sounds like you are a TrueCrafter 07:07 <+ammar2> damn what a dank reference 07:07 < dx> nice meme 07:43 < Lemon> it is 07:43 < Lemon> and to mention I am not going to mention most bypasses here 07:44 < Lemon> I do have a question about one thing....why in the fuck do ghost clients exist? 07:44 <+ammar2> ghost clients? bypasses? what are you on about 07:45 < Lemon> never mind the bypass stuff, I really dont like ghost clients. They are just skidded 07:45 < Lemon> I was answering his question, I am here to talk about clients 07:47 < Lemon> I'm mostly just discussing about new clients, old clients, and etc. 07:47 < Lemon> so what are we gonna talk about today? 07:47 * ScruffyRules dies 07:48 <+ammar2> well usually discussions start when a few people start talking about a topic 07:48 < Lemon> cool 07:48 <+ammar2> asking about what we're gonna talk about definetly doesn't start discussions though 07:48 <+ammar2> if you've got somehting more specific in mind to talk about, shoot. 07:48 < Lemon> I am kinda new to this stuff, a friend just recommended hexchat and mentioned a few servers and this popped up 07:48 < Lemon> coolio 07:49 < Lemon> hmmmm, anyone know who WiZARDHAX is? 07:51 < dx> ammar2: what are we gonna do on the dev? 07:51 <+ammar2> dx: we need to add some synergy to consolidate a vertical slice of meta programming 07:51 < Lemon> .... 07:52 < Lemon> nice 07:52 <+ammar2> thanks! 07:52 < Lemon> welcome 07:52 < dx> ammar2: i kinda want to buy synergy 07:52 < dx> i don't actually need to buy it yet 07:52 < dx> i mean i can just compile it 07:52 < dx> but it's so nice 07:53 <+ammar2> I mean I guess, but compiling it yourself is an oxymoron 07:53 < Lemon> lol 07:53 <+ammar2> synergy needs to come with your team 07:53 < dx> yeah i think i'll just buy it 07:53 <+ammar2> sorry, synergy needs to be organzied with groupsharing 07:54 <+ammar2> no one uses the term team these days 07:54 < dx> there's no tea in team 07:54 <+ammar2> there's no meat in team 07:54 < Lemon> group or team both work 07:55 < Lemon> btw what is this synergy (sorry to sound odd I just need a small explanation) 07:56 < dx> sorry Lemon but that sounds a bit suspicious, i'm going to have to ask you to show me your programmer credentials 07:56 < Lemon> *COUGH* 07:56 < Lemon> wtf u talking about 07:56 < Lemon> Im asking what synergy is 07:57 < dx> any form of ID card that proves that you're a programmer is enough 07:57 < ScruffyRules> Google it 07:57 < ScruffyRules> That's why google exists. 07:57 < Lemon> uh who needs an id to program? 07:57 <+ammar2> everyone 07:57 <+ammar2> didn't you get the memo 07:58 < ScruffyRules> r/outoftheloop 07:58 < Lemon> not reall 07:58 < Lemon> really* 07:59 < Lemon> I have never been asked this before 07:59 < Lemon> and no one has ever mentioned this 07:59 < Lemon> unless u mean ownership of some IDE but that is not a id 07:59 < dx> well maybe you've never hung out in exclusive programmer communities such at this one 07:59 <+ammar2> who is your supervisor? 07:59 <+ammar2> this is a problem 08:00 < dx> the entry-level ones usually don't care 08:00 < Lemon> why would I tell you about my supervisor? 08:00 < Lemon> and plus as I said 08:00 <+ammar2> so I can talk to him about this ID problem 08:00 < Lemon> I am quite new to this 08:01 < Lemon> then may I have an explanation of what an id is then? 08:01 <+ammar2> ok now we really need to talk to your supervisor 08:02 < Lemon> why should you? 08:02 < Lemon> cause if it is needed for such a small server it wouldnt matter 08:02 <+ammar2> you seem blisfully unaware of standard operating policy 08:02 <+ammar2> small server? 08:02 < Lemon> seems like it 08:02 <+ammar2> well that's not very nice 08:03 < Lemon> I dont mean to be ignorant/rude 08:03 < Lemon> but you really don't need to talk to a supervisor for such a small problem 08:03 < Lemon> and plus, you havent explained about the "programmer credentials" yet 08:05 < Lemon> btw as another question why are u bringing up the SOP? 08:07 < Lemon> ...ugh this is a boring chat I'm just gonna go chat about compilers being made in Java 08:07 < Lemon> or other stuff bye 08:08 <+ammar2> compilers in java? why I never 09:39 < nickelpro> Is this real life? 09:40 < nickelpro> I nominate the 09:41 < nickelpro> I nominate dx for best leading actor and ammar for best supporting actor, the Academy will definitely give you the oscar for those performances 12:26 < gamingrobot> what the? 15:54 < rom15041> Lol 17:38 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.8 [+1/-0/±1] http://git.io/vso0g 17:38 < Not-1ae1> [minecraft-data] rom1504 90ac9d7 - instructions to create a new wrapper 17:42 < Gjum> omg lol 17:43 <+SinZ> dx, ammar2: that was amazing! 17:48 < Not-1ae1> [minecraft-data] rom1504 pushed 1 commit to 1.8 [+0/-0/±2] http://git.io/vsouP 17:48 < Not-1ae1> [minecraft-data] rom1504 f5e890c - add ProtocolGen in the README 19:44 < Not-2be> [Glowstone] gdude2002 pushed 1 commit [+0/-0/±1] http://git.io/vsoAJ 19:44 < Not-2be> [Glowstone] gdude2002 df4c870 - Update README.md 20:22 < gurun> So .. what are we going to discuss about today ammar2 and dx? 20:22 < dx> lol 20:31 <+SinZ> Ethics in the workplace 21:35 <+AndrewPH> sexual harassment in irc 21:36 <+AndrewPH> & other related such topics 21:36 < Gjum> how to handle new users that know nothing about IRC but can code 21:37 < humerusj> A simple "your mom" would do too. 22:22 <+AndrewPH> evidemtly not 22:27 < HansiHE> what's irc 22:28 < Gjum> you arent new :P 22:29 < gamingrobot> how do I cri? 23:17 <+ammar2> u cri evrytim --- Day changed lun. août 24 2015 14:38 < Not-1ae1> [minecraft-data] rom1504 pushed 5 commits to 1.8 [+0/-0/±6] http://git.io/vsPM4 14:38 < Not-1ae1> [minecraft-data] roblabla 3c6e446 - Add new type syntax [typeName, typeArgs] 14:38 < Not-1ae1> [minecraft-data] rom1504 1c1efbb - adapted and improved protocol schema 14:38 < Not-1ae1> [minecraft-data] rom1504 1c346aa - improve the schema some more : actually check types are coherent