01:25 <+md_5> ah 01:25 <+md_5> I dont think I'm sending that get params 01:29 <+md_5> solved 01:39 < Drainedsoul_2> is asynchttpclient some kind of curl wrapper 01:41 <+md_5> Drainedsoul_2 ._. 01:41 <+md_5> I'm using java 01:41 <+md_5> in fact 01:41 <+md_5> why on earth would you use curl unless this is php 01:41 <+md_5> and possibly libcurl in another language 01:48 < Drainedsoul_2> why wouldn't you use libcurl is the better question 01:48 < Drainedsoul_2> I wasn't talking about using the command line tool, that's for sure 02:02 <+sadimusi> libcurl looks horrible 02:23 <+md_5> Drainedsoul yup, libcurl for java 02:23 <+md_5> stupidest thing Ive ever heard 02:23 <+md_5> Im DIY so I can fit it into the non blocking network engine I use 02:23 <+md_5> and have http requests in the same eventloop 02:50 < Drainedsoul> I'm pretty sure you could do that with libcurl multi handles, without the overhead of rolling your own HTTP implementation, but if that's what floats your boat, sure 03:19 <+md_5> yeah you dont have much idea what you are saying 03:21 < Drainedsoul> based on what? 07:19 < winny> is there a page that documents how to get status from a minecraft 1.6.1 server? 07:50 < Drainedsoul> what do you mean "status"? 07:59 < winny> server status provided by sending the 0xFE byte on a freshly created connection 08:00 < winny> is it just a null byte delimited set of fields? 08:03 < dx> winny: http://wiki.vg/Server_List_Ping 08:04 < winny> oh, thank you, I missed that page 08:42 < winny> huh, the lack of a wikitable template for protocol packets is a tad surprising 08:43 < dx> it's probably because nobody knows enough about mediawiki black magic to do it that way 08:44 < dx> (or nobody cares enough) 08:44 < dx> actually 08:45 < dx> winny: talking about the 'protocol' page, right? 08:45 < winny> yeah i'll fix it once i figure out how :) 08:45 < winny> templates are not easy stuff 08:45 < winny> (to write) 08:46 < dx> i guess it's okay, just make sure that other people will understand how to edit them later 08:46 < winny> yup of course 08:46 < winny> i'll probably just put something in the talk page 08:46 < winny> otherwise it'll just be annoying for all users trying to read it 08:54 <+md_5> hm 08:54 <+md_5> what happened to all the voices here 08:55 <+md_5> ./cs list access #mcdevs 08:55 <+md_5> ._. 08:55 <+md_5> its been blocked 08:55 <+md_5> ._. 08:55 <+md_5> ammar2 clonejo sadimusi they are coming for us :c 08:57 < winny> fresh blood. 09:14 < clonejo1> Yoshi2: I'll be in Cologne today and on the weekend btw. 09:17 < clonejo1> -> Sigint conference 09:18 < dx> md_5: it's "access #mcdevs list" 09:18 < dx> (and i can see it even if i'm not there) 09:26 < Yoshi2> clonejo1: ah, nice 09:27 < Yoshi2> the sigint conference seems to be fairly close 09:29 <+AndrewPH> md_5: a netsplit happened prolly 09:29 < Yoshi2> but whew, 30€ for a single day ticket or 60€ for a standard ticket, that's not a small price 09:47 < clonejo1> Luckily I don't need accommodation in Cologne as I can just commute from Aachen. 09:52 < Yoshi2> the Mediapark is a very nice place, it even has a movie theater 09:52 < jast> eh, Mediapark is boring 09:54 < Yoshi2> on the other hand, there's an ice cafe which I haven't made good experiences with 09:57 < Yoshi2> when me and some others sat down to eat our ice-cream, one of the people who worked there sent us away even though it was saturday evening and the whole place was empty 09:58 < Yoshi2> I don't know if that is common place in other ice cafes, but at least a little bit of "customer service" would've been nice 10:35 <+SpaceManiac> netsplits indeed 10:37 < Yoshi2> it just isn't irc without the daily netsplits 12:30 <+pdelvo> hey 12:33 <+SpaceManiac> yo 12:38 < winny> do you guys ever run any of the mediawiki maintenance scripts? (I have a small mediawiki instance and I can't figure this out on my own, ha ha.) 12:57 <+md_5> winny I ran one ... once. to reset a password 13:15 < winny> oh ok :). #mediawiki told me that I only should run them to fix problems 13:18 <+md_5> thats what they are there for 15:27 <+pdelvo> that is acutally very funny 15:49 < SinZ> sadimusi: 1.6.2 is available as a snapshot, can you put it through burger vitrine? 16:12 < iBotPeaches_> SinZ: looks like a hotfix is already coming for 1.6.2 16:32 < l4mRh4X0r> Hotfix was just released ;) 16:33 < SinZ> Dinnerbro has done two hotfixs 16:33 < l4mRh4X0r> Yup. 16:49 < dx> good morning #mcdevs. 16:50 < dx> i went to sleep after jeb mentioned they would release 1.6.2 and the json chat bug wasn't fixed (or even confirmed) 16:52 < dx> but yeah, i guess they kept closing bugs while planning the release 17:02 < iBotPeaches_> dx: the color/format one got marked as fixed, haven't tested yet to confirm 17:04 < dx> iBotPeaches_: i'll probably have to do some intensive testing of formatting in general using this, for some reason i suspect i'll find even more bugs. 17:05 < dx> § was broken in very stupid ways, wouldn't be surprised if those bugs were dragged along. 17:05 < iBotPeaches_> dx: yeah, I had only tested the text attribute of the new json, haven't even looked into the translate/using parts 17:07 < dx> iBotPeaches_: well.. i don't think i'm going to test that either, since translation isn't useful at all for third party devs. the chat.type.text one isn't even useful for most bukkit servers out there 17:13 < SinZ> translations only work for vannila 17:39 <+sadimusi> 0x2c looks really ugly 17:44 < iBotPeaches> that is a lot of protocol stuff for a .1 update, or burger just went overkill on the diff 17:44 <+sadimusi> that isn't the real diff, I'm fixing it 17:45 <+sadimusi> this one is correct though http://beta.ceilingcat.ch/1.6.1...1.6.2#packets 17:45 < iBotPeaches> o lol :) much better 17:45 <+sadimusi> now it should be correct on b.wiki.vg as well 17:46 <+sadimusi> were hay bales really removed? 17:48 < iBotPeaches> no clue, only bug touching hay was 15024, so unless it was accidental regression 17:50 < SinZ> sadimusi: burger must of just derped 17:51 <+sadimusi> most likely 17:51 < SinZ> 0x2c is indeed ugly 17:53 < SinZ> any idea what the additional info in 0x2c is? 17:53 < SinZ> or what 0x85 is for 17:54 <+sadimusi> I'll update mc4p and try to figure it out 17:54 < dx> oh, you renamed it already? :D 17:54 < iBotPeaches> what if its nested properties info for an entity 17:55 <+sadimusi> var5.a() appears to be a UUID instance 17:59 < SinZ> hmm, noone has updated the protocol for 1.6.1 17:59 < SinZ> oh wait, in its own article it does 18:00 < dx> "its own article"? 18:00 < dx> you mean the server list ping article? 18:00 < SinZ> yes 18:00 < dx> okay 18:09 < dx> in other news, has anyone heard of 'cube world'? 18:10 < dx> i heard it's fun, and i haven't even played it yet, but it seems they have a co-op multiplayer mode with a dedicated server that only runs on windows. 18:10 < dx> the client is windows only too, but windows only server software annoys me. 18:28 < TkTech> dx: Feel free to use the wiki for other games as long as it's namespaced 18:33 <+sadimusi> argh that control click thing is the horror 18:34 <+sadimusi> when I switch out of the minecraft application while the ctrl key is pressed it remembers the state and I can't click anything when I come back 18:34 <+sadimusi> pressing ctrl again fixes it, but it took me a while to figure that out 18:35 <+sadimusi> Grum: ^ 18:35 < winny> that happens with any input key mc uses 18:36 <+sadimusi> looks like there are already a ton of complaints on the issue tracker about it 18:37 < winny> i suspect it might be a limitation of the even processing stuff that minecraft uses 18:37 < winny> hopefully not 18:45 <+sadimusi> I have no idea what the changes to 0x2c are about 18:46 <+sadimusi> so far I only got a list with one entry on generic.movementSpeed 18:52 < iBotPeaches> so it added that short per entity, so now each entity, has a string, double, short, but var3 (the short) isn't the cause of the final loop, so that throws my idea of it being nested property info 18:53 <+sadimusi> the short is just the length of the nested list 18:53 <+sadimusi> and the outer loop doesn't iterate over entities but different properties 18:55 <+sadimusi> this is one of the packets I received: http://pastie.org/8113329 18:56 < iBotPeaches> does that packet control the speed of mobs as well 18:56 < iBotPeaches> because MC-16222, fixed the fact that baby zombies were the same speed as running adult zombies 18:57 <+sadimusi> does the client even need to know the speed of the mobs? 18:57 < iBotPeaches> so maybe that affects modifiers to the outer loop value 18:57 < dx> TkTech: gotcha! namespaces with : or /? 19:33 <+sadimusi> oh, it looks like there's a special kind of recipe for all those simple 9X <=> 1Y 19:35 < Grum> [18:35:21] <+sadimusi> Grum: ^ <-- yeah nothing that can be done about that; the horrible hacking means it will never give a 'key up' for ctrl 19:35 <+sadimusi> can we at least have an option to turn it off? 19:37 <+sadimusi> I'm sure I'm not the only one with a key shortcut containing ctrl to switch to a certain application 19:38 < dx> ctrl-alt-arrows is the default for gnome and xfce iirc. 19:39 < dx> no idea about kde and i've used super for a long time. 19:39 <+sadimusi> the ctrl-click thing might only be enabled on macs 19:40 <+sadimusi> at least that's what the changelog says 19:41 < dx> do macs have a ctrl key? 19:41 <+sadimusi> sure 19:41 < SinZ> its called something else 19:41 <+sadimusi> no 19:41 < dx> i thought they had only one mouse button, one key in the whole keyboard, and one feature in the whole OS 19:41 <+sadimusi> they have ctrl, alt and cmd 19:41 < dx> oh, okay 19:41 <+sadimusi> plus fn on the laptop keyboards 19:43 < SinZ> the alt key actually says option though (with alt in smaller text) 19:43 <+sadimusi> not on mine http://www.aebischers.com/wp-content/uploads/2010/03/keyboard.png 19:46 < Not-001> [netherrack] thinkofdeath pushed 2 commits to master [+0/-0/±6] http://git.io/0_sgsQ 19:46 < Not-001> [netherrack] thinkofdeath 8519be6 - 1.6.2 Update 19:46 < Not-001> [netherrack] thinkofdeath a7563c3 - Remove old server-side sprint handling 19:47 < SinZ> the US mac keyboard calls it option 19:48 < SinZ> http://fabbulous.files.wordpress.com/2013/03/keyboardcaption-100010086-orig.jpg 19:48 <+sadimusi> yeah, on the us keyboards even shift and caps lock have text on them 20:08 < Drainedsoul> there's no text at all on my keyboard :P 20:09 <+sadimusi> I broke the space bar on my blank one :/ 20:11 < Drainedsoul> the ENTER key was the key that went on the last keyboard I had :( 20:11 < Drainedsoul> this one is a survivor though, spilt a whole glass of water on it playing Skyward Sword and it's still going strong :D 20:12 <+sadimusi> I'm thinking about getting a "das keyboard" 20:12 <+sadimusi> my flatmate has one and it's pretty awesome 20:12 < Drainedsoul> yeah I have a daskeyboard ultimate :3 20:12 < Drainedsoul> worth it 20:12 <+sadimusi> but extremely loud 20:12 <+sadimusi> how can you stand the noise? 20:12 < Drainedsoul> yeah that's the point, but they do have the "S" models if you want something not quite so loud 20:13 < Drainedsoul> the keyboard I had before this one was a Model M...I like the noise. It gives you another form of feedback while typing. 20:13 < Drainedsoul> http://www.daskeyboard.com/model-s-ultimate-silent/ 20:16 <+sadimusi> the real reason why I didn't buy one already is the layout 20:16 <+sadimusi> I'm still not quite sure if I want to switch to the US layout 20:17 < Drainedsoul> wut 20:17 <+sadimusi> and if I do I'd definitely get the professional one, new layout and no labels isn't a good idea :D 20:17 < Drainedsoul> which layout? 20:17 <+sadimusi> key layout 20:17 < Drainedsoul> like do you mean which keys do which, or the actual placement of specific keys 20:18 < Drainedsoul> because your keyboard layout -- as in which physical keys do what -- is an operating system function 20:18 <+sadimusi> not if I have labels 20:18 < Drainedsoul> well, who wants labels :P 20:18 <+sadimusi> and us layouts have a key more 20:18 < Drainedsoul> oh? Which? 20:18 <+sadimusi> backslash 20:19 < Drainedsoul> like the backslash/pipe key? Where are those symbols on not-US keyboards? 20:19 <+sadimusi> all those symbols are hidden as alt+something 20:19 < Drainedsoul> oh that must be awful. 20:19 <+sadimusi> yes, but I'm used to it 20:20 < Drainedsoul> I thought you were talking about QWERTZ 20:21 <+sadimusi> also that 20:21 < Drainedsoul> because that would just be a simply operating system toggle to switch over to. 20:21 < Drainedsoul> the same way I switch over to Dvorak 20:25 < barneygale> hey all. next time the topic comes up, I was thinking of suggesting to the mojang folk that the MC server could obey a sort-of X-Forwarded-For plugin message. What with 0xFE sending host/port now, this would simplify virtual hosting 20:25 < barneygale> but I'm not sure whether a) it'd be a good idea (thoughts?) b) whether the implementation can be made simple/nice 20:26 < Drainedsoul> I don't understand what purpose it would serve 20:26 <+sadimusi> me neither 20:26 < barneygale> right 20:26 <+sadimusi> if you want to proxy you use 0xfe and if you don't you use DNS 20:27 < barneygale> For virtual hosting, the idea would that all my servers (s.foo.mc, c.foo.mc) point to the same IP address, and each connection goes through my proxy first 20:27 < barneygale> using hostname from 0xFE and 0x02 you can figure out where you want to route the connection 20:27 <+sadimusi> obviously 20:27 < barneygale> But the server itself doesn't see the client's IP 20:27 < barneygale> It see's the proxy's 20:28 < barneygale> the forwarded-for message would be recognised by the server, and any future api calls (say, in bukkit), would give the forwarded-for IP 20:29 < Drainedsoul> that makes sense, although depending on how getting the client's IP is implemented by Mojang, that could be complicated for them (in which case they'll refuse to do it) 20:30 < barneygale> Yeah I need to check that 20:30 <+sadimusi> if you want to use it for bukkit anyway you can just add such a plugin message yourself 20:30 < barneygale> I hope it doesn't just .getClientAddr() on the socket everywhere, or something 20:30 < Drainedsoul> >Mojang 20:30 < Drainedsoul> >I hope it doesn't 20:30 < Drainedsoul> it probably does 20:31 <+sadimusi> barneygale: what would be so bad about it? 20:31 < barneygale> Well, it'd be useful if it only took one route to getting the client's IP, because it makes the change I'm suggesting easier to implement 20:32 <+sadimusi> would there be any benefit besides logs that make a bit more sense? 20:33 < Drainedsoul> blacklisting on a per server basis? 20:33 < barneygale> Oh, I misunderstood what you were referring to 20:33 < Drainedsoul> so you're blacklisted from A but not B, even though they go through the same proxy, without weird proxy logic? 20:33 < barneygale> /ban-ip takes an actual IP as an argument iirc 20:33 < barneygale> but it would still be sort-of useful for that 20:34 < Drainedsoul> although, you'd have to figure out some way to limited the x-forwarded-for to only certain IPs 20:34 < Drainedsoul> otherwise everyone could impersonate anyone else 20:34 < barneygale> But what's the point of sending hostname/port to the vanilla server? It doesn't care. 20:34 < barneygale> Drainedsoul: aye, that's part (b) of my question 20:35 < Drainedsoul> the best ways I see if rectifying that are: A) Have a config flag that enables the behaviour, and then firewall that server so only the proxy can communicate with it. B) Have a config flag that enables the behaviour but only from certain source hosts. C) Have a config flag that enables the behaviour and then causes the server to reject all connections not from a specific host. 20:35 < barneygale> The simplest/dumbest way would be to have an on/off in server.properties. If you turn it on, its your responsibility to make sure your server is only accessible via the proxy. 20:36 < barneygale> Yeah 20:36 < barneygale> I think whitelisting/blacklisting IPs will be a step too fa 20:36 < barneygale> on/off would work 20:36 < Drainedsoul> but at any rate, in order to get a secure implementation, you're asking Mojang to implement something new in the protocol, AND something new in server.properties 20:36 < Drainedsoul> my prediction: Grum will shoot this down real fast. 20:36 * sadimusi agrees 20:37 < barneygale> OK, I won't bother 20:37 < barneygale> thanks for the opinions 20:37 < Drainedsoul> I mean in a sane world this would only be like 10-20 lines of code, but >Mojang 20:37 < barneygale> I wish mojang would make the source available, not necessarily under open source, and accept patch requests heh 20:38 < Drainedsoul> I don't really understand their motivation for not making the source available, given that everyone and their mother has access to the reverse engineered source 20:38 <+sadimusi> "make the source available" == open source 20:38 < Grum> what? 20:38 < barneygale> sadimusi: not true 20:38 < Drainedsoul> I guess that depends on who's definition of "open source" you're going on 20:38 < Drainedsoul> *whose 20:39 < Drainedsoul> RMS would argue that it's not open source unless it's free to use for everyone everywhere under every possible circumstance 20:39 < Drainedsoul> I'd argue that if you can look at the source, it's open. 20:39 <+sadimusi> it looks like wikipedia agrees with barneygale 20:39 < barneygale> Grum: I was suggesting adding a "X-Forwarded-For" plugin message, which would make vhosting much easier (server/bukkit/etc see the correct IP of a connected user, not the proxy's) 20:39 < barneygale> But I understand why you'd say no, so no need to elaborate hah 20:40 < Drainedsoul> yeah but that page was probably written by RMS! 20:40 < Grum> Drainedsoul: so in your opinion the decompiled source is enough 20:40 <+sadimusi> barneygale: again, if you want to use it with bukkit just build it yourself 20:40 < Drainedsoul> no in my opinion the decompiled source defeats the purpose of being closed source, and therefore I don't understand what is gained by not providing unobfuscated source. 20:40 <+sadimusi> barneygale: the communication is just between your proxy and your server, no need to bring vanilla in on this 20:40 < barneygale> I might look into it 20:42 < Grum> Drainedsoul: i dont see what mojang would gain from not having obfuscation 20:42 < barneygale> sadimusi: "Open-source software (OSS) is computer software with its source code made available and licensed with a license in which the copyright holder provides the rights to study, change and distribute the software at no cost to anyone and for any purpose" 20:42 < dx> hello #dejavu 20:42 < barneygale> 1) this is a simplification. many microsoft oss licenses have been rejected for things that don't exactly fall into these 20:42 < barneygale> 2) they'd probably not allow distribution 20:43 < Drainedsoul> I guess I see obfuscation as a burden, rather than a benefit. And if the source was available there's a possibility you'd get free patches. Although that'd probably be offset by the burden of wading through bullshit patches. 20:43 < Grum> Drainedsoul: patches we cannot accept 20:44 < barneygale> licensing issues? 20:44 < Grum> legal ones 20:44 < dx> licensing implies legal lol 20:44 < barneygale> can you be more specific? I've heard it's hard to legally take ownership of work someone's done for you without payment 20:44 < barneygale> is that it? 20:45 < Drainedsoul> I don't see how it should be hard. I mean if I build a chair and give it to someone, they're technically taking ownership of it, but aren't obligated to pay me. o_O; 20:45 < dx> Drainedsoul: ...that's not how it works for intellectual property 20:45 < barneygale> digital/creative work I should say 20:45 < Drainedsoul> oh right intellectual "property" 20:46 < barneygale> putting it in quotes doesn't magic away legal problems 20:46 < Drainedsoul> I wasn't trying to magic away legal problems, I can't call intellectual "property" actual property and take myself seriously 20:46 < dx> lrn2copyright bro 20:47 < dx> it actually makes sense 20:47 < Drainedsoul> it doesn't at all 20:47 < Drainedsoul> actual property is rivalrous, intellectual "property" isn't. 20:47 < dx> sigh 20:48 < Drainedsoul> you'd have an easier time convincing RMS of the merits of IP, so, this is a non-starter 20:49 < barneygale> As someone who founded a torrent site with 100,000 members, I find your attitude a little extreme. 20:49 < dx> sorry, what? IP != patents 20:50 < dx> the GNU GPL actually works with copyright to enforce itself, regardless of what 'copyleft' might seem to mean 20:50 < Drainedsoul> what kind of argument is that supposed to be? How extreme a position is, is not a statement on its merits 20:50 < Drainedsoul> yeah, so you'd have an easier time convincing RMS than me, just as I said 20:50 < Drainedsoul> lol 20:50 < dx> ..oh 20:50 < dx> okay 20:50 < barneygale> Don't believe in trademarks either? 20:50 < dx> yeah, that's because RMS actually understands copyright law 20:51 < Drainedsoul> which means nothing. Understanding a law that you think is fundamentally unjust and improper doesn't magically change your perception of it 20:51 < barneygale> Yeah. RMS, for all his craziness, actually took existing law and used it for good, rather than complaining that IP exists at all 20:51 < barneygale> Which is a totally pointless position. Do you think IP is going away any time soon/ 20:51 < Drainedsoul> that's meaningless 20:51 < Drainedsoul> do you think murder is going away anytime soon? Does that make you think that it's just and proper? 20:51 < dx> speaking of pointless 20:52 < dx> this discussion 20:52 < barneygale> Drainedsoul: No. So my position on murder is one of /doing what I can/, e.g. supporting treating the causes, rather than saying "lol murder sucks! I don't believe in murder!" 20:53 < Drainedsoul> who's to say they're mutually exclusive? I can't not buy into IP and yet simultaneously take actions that work towards freeing people from its constraints? 20:54 < barneygale> But you're not. We were having a discussion about /what we can do within our current legal framework/, and you rejected it, and started saying how IP doesn't exist 20:54 < Drainedsoul> you misunderstood me 20:54 < barneygale> which isn't useful. everyone in this channel has been reading tech sites for long enough to know about IP issues 20:54 < Drainedsoul> or maybe I miscommunicated 20:59 < dx> sadimusi: hey, in the mc4p code you're doing each new protocol version with tuple(map(list, protocol[55])) - aren't these shallow copies? 21:00 < dx> sadimusi: OH NEVERMIND i was doing my tests in a wrong way. not shallow. still, that's an interesting way to copy, took me a while to understand it. 21:01 <+sadimusi> dx: I didn't write that, but it copies one level deep 21:02 < dx> sadimusi: yeah, i thought the depth of the copy didn't reach the actual values of the lists 21:03 < dx> or, well, maybe it doesn't, but since you don't *modify* the values it's fine 21:04 < dx> sadimusi: these are completely shallow though https://github.com/sadimusi/mc4p/blob/698d43483837989f0f491074f8d4f99bbac9127f/mc4p/messages.py#L902-L910 21:05 <+sadimusi> yes 21:06 < dx> yes 21:06 <+sadimusi> I pushed the 1.6.2 protocol, even though the field names are still rather random 21:06 < dx> well, the only effect is to add packets to 13w05a... i guess nobody will care 21:06 < dx> woo! 21:07 <+sadimusi> oh there's a bug in there 21:07 < dx> sadimusi: you did another shallow copy 21:07 <+sadimusi> exactly 21:17 < dx> sadimusi: thanks for the update~ 21:18 < dx> i'll start messing with the json now to see if it still sucks 21:25 < TkTech> dx: : + / 21:25 < TkTech> dx: box:main box:/textures/blah 21:25 < TkTech> Ouch. My condo is getting two special assessments, one for asbestos removal which is $20000 and the new windows for $14000. 21:26 < dx> TkTech: you lost me 21:26 < TkTech> dx: Namespacing. 21:26 < dx> TkTech: yes, but, isn't one mediawiki-style namespace enough for everything? 21:26 < TkTech> dx: Your earlier question. You need to use :, but you can also use / to sub-section 21:26 < dx> oh ok, / is optional though 21:27 < TkTech> Correct, it's just if you want to flesh it out more. 21:27 < dx> okay 22:31 < dav1d> yay 22:34 < TkTech> nay 22:36 < SinZ> sadimusi: so did you figure out what the new packet is for? 22:39 < dx> it's a packet to negotiate whether to use utf-8 and packet length headers, or not 22:39 < dx> ha ha just kidding 22:39 < dx> of course that 'just kidding' should be completely redundant 22:40 < TRocket> hmm, notifico still doesn't seem to be working 22:40 < dx> TkTech: ^ 22:41 < TRocket> unless it is just punishing my for implementing the GUI first, before the program actually does anything. 22:41 < TRocket> *me 22:41 < dx> i'd punish you for that too, but notifico probably doesn't care. probably. 22:42 < TkTech> TRocket: You've of course copied the webhook link to your github project's admin page? 22:44 < TRocket> TkTech: where? 22:44 < TRocket> it says that 3 messages should have been sent from gh 22:44 < TkTech> Sure you didn't just click on the link a couple of times? 22:45 < TkTech> Go to your github project. 22:45 < TkTech> Click on settings in the right sidebar 22:45 < TkTech> Click on service hooks 22:45 < TkTech> Click WebHook URLs 22:45 < TkTech> Copy paste the URL from your hook on notifico and you're done. 22:46 < TkTech> (You could have let notifico do it for you if you imported from github) 22:46 < Not-001> [mcdevs/BenchCraft] TRocket pushed 1 commit to master [+0/-0/±1] http://git.io/ExKHkw 22:46 < Not-001> [mcdevs/BenchCraft] TRocket a9242d0 - Update .gitignore 22:46 < TRocket> it appears to be working now 22:46 < TRocket> hmm. 22:47 < TkTech> Yeah…it can't magically set itself up on your github account unless you let it... 22:47 < TRocket> i had done previously 22:47 < TRocket> it worked for my other repos 22:47 < dx> lol 22:47 < TRocket> maybe because this one is part of an org 22:48 < TkTech> Might have been a hiccup on my side. Sure you checked the "Set Hooks" button when you did your last import? 22:48 < TRocket> yep 22:49 < TkTech> The behaviour and UI are awful (the plan is to get rid of all the options, import everything and just provide an "on/off" button (ala Travis) 22:49 < TkTech> https://github.com/TkTech/notifico/blob/master/notifico/views/pimport/__init__.py#L170 22:49 < TRocket> that would be much nicer 22:50 < TRocket> i might submit a few pull requests if i get around to it 22:51 <+ammar2> speaking of pull requests 22:51 * ammar2 whistles 22:51 < TkTech> Go crazy, and don't forget to add yourself to the readme as a contributor 22:52 < TRocket> ok! now to remember python :P 22:55 <+sadimusi> SinZ: it gets sent when you place a sign 22:55 <+sadimusi> the last 3 fields are the coords 22:55 < dx> odd 22:55 <+sadimusi> iirc there was a bug with signs that got fixed 22:56 < dx> https://mojang.atlassian.net/browse/MC-5770 22:56 < dx> https://mojang.atlassian.net/browse/MC-19082 22:57 < dx> 5770 sounds more relevant 22:57 < dx> hm, actually, no idea why this would require a new packet 22:58 <+sadimusi> it is simpler than checking every chunk update for signs 22:58 <+sadimusi> and possibly faster 22:58 <+sadimusi> I'm not sure what the first byte is for, it's hardcoded to always be 0 23:00 < dx> but shouldn't sign placement be just a block placement, not a chunk update? 23:02 < dx> hm 23:02 < dx> a byte hardcoded to 0 sounds like a flag to implement something in the future 23:04 < dx> ...maybe they want to change how signs with § colors are parsed later? 23:50 < Grum> 5770 just sends the proper blockupdates now ... fail conversion pre 1.5 >.> 23:50 < Grum> 19082 was broken since someone added fence-interaction and moved the control of the sign-window to the server rather than client 23:51 < dx> "someone" :D 23:51 < dx> so i guess these are unrelated to the new packet --- Day changed sam. juil. 06 2013 00:03 < Grum> yup 00:04 < Grum> well hmm i think the sign might have gotten a 'S->C' packet 00:04 < Grum> not sure actually 00:13 <+ammar2> a dedicated one over tile entity update? 06:51 < dong> Yes hello 06:51 < dong> I am embarking on a journey of great importance 06:52 < dong> I am rewriting Minecraft in pure, unadulterated C++ 06:52 < dong> I know my OpenGL, so that isnt a problem 06:52 < dong> But the protocol is very odd. 06:53 < dong> There don't appear to be any specific 06:53 < dong> like 06:53 < dong> packet headers 06:53 < dong> or 06:53 < dong> anything 06:53 < dong> to determine 06:53 < dong> what is being sent / received 06:53 < dong> and how many byes 06:53 < dong> bytes 06:53 < dong> are being transferred 06:54 <+SpaceManiac> enter as punctuation much? 06:54 <+SpaceManiac> but you're correct 07:12 < dx> lolwat that guy 07:28 < Drainedsoul> if he knows C++ so well he's just write a few metaprograms and have the whole protocol implemented. 07:29 < Drainedsoul> *he'll 09:25 < Yoshi2> I wish that guy lots of luck in his holy quest of rewriting minecraft in c++ for whatever reason he has 09:28 < Drainedsoul> what reason does he need other than that C++ is oodles of fun! :D 09:36 < TRocket> that would be me! 11:59 < winny> I don't think the 1.6 proto for server ping works here… http://www.wiki.vg/Server_List_Ping 12:00 < winny> if i revert back to the 0xFE01 request message, i get a response, but with the method it says you need for 1.6 and later doesn't work on these 1.6.1 servers i'm trying to get ping info on 12:03 < winny> the python gistfile times out on servers i know are up 12:10 < winny> https://bytesadism.org/dev/mcstat/mcstat.php?hostname=yuppies.no-ip.biz&use_old_method= works (sends only 0xfe01) but https://bytesadism.org/dev/mcstat/mcstat.php?hostname=yuppies.no-ip.biz does not 12:11 < winny> source file: http://sprunge.us/JXOj 12:11 < winny> but like I said the gist files don't appear to work either 12:12 < winny> oh hm, 12:12 < winny> maybe it's just my local internet connection 12:12 < winny> now it's happy 12:14 < winny> disregard 12:14 < winny> i wish to smack an isp :) 16:06 < dav1d> lol 16:06 < dav1d> my BraLa/ folder has 537MiB 16:08 < dav1d> lol 16:08 < dav1d> 78M bin/bralad 16:08 < dav1d> that is huuge 16:16 <+pdelvo> what have you done? 16:17 < dav1d> pdelvo: nothing lol 16:17 < dav1d> pdelvo: isn't yours that big? 16:18 * pdelvo checks 16:19 < dav1d> well, after stripping → 27M 16:19 <+pdelvo> 4,7mb the bin folder. but my version is a little bit older 16:19 < dav1d> pdelvo: phew 16:20 < dav1d> well it used to have always +20M 16:20 < dav1d> maybe windows doesn't put so much debugging stuff into it 16:20 <+pdelvo> what do you have in it? :D a backup of your photo library? :D 16:20 < dav1d> ^^ 17:07 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+0/-0/±1] http://git.io/QB8MwQ 17:07 < Not-001> [BraLa] Dav1dde 236edca - workaround gdc bug? 17:24 < dav1d> WHY 17:24 < dav1d> 0x2C using fucking Key-Value shit 17:24 < dav1d> why don't they simply use nbt 17:24 < dav1d> I mean it exists, why not use it 17:25 < Yoshi2> it's a mystery 17:28 < dav1d> it's getting worse every day :( 17:28 <+pdelvo> consistency is for noobies 17:31 < SinZ> dav1d: Gru.m doesn't like NBT, thats why 17:31 < dav1d> SinZ: then he should replace it 17:31 < dav1d> SinZ: but not with such a shit 17:31 < SinZ> why do you think chat is in json 17:31 < dav1d> SinZ: lol 17:32 < dav1d> SinZ: bson pls 17:32 < dav1d> using json as nbt replacement, lol 17:33 <+pdelvo> its funny to see that in the protocol they are trying to not waste a single byte, but in chat they are using json 17:33 < dav1d> pdelvo: UCS2 json 17:33 <+pdelvo> :D 17:43 < iBotPeaches> at least its not xml 17:50 < dav1d> 1.6.2 is a snapshot? :( 17:50 < dav1d> updated to 1.6.2 dammit 17:51 < dav1d> lol 17:51 < dav1d> typo alert! 17:51 < dav1d> 2013-07-06 17:49:54 [SEVERE] Reached end of stream for /127.0.0.1 17:51 < clonejo2> dav1d: not bson, msgpack 17:51 < dav1d> clonejo2: doesn't fit into the current protocol 17:51 < dav1d> furthermore there is ProtocolBuffer 17:52 < dav1d> 2013-07-06 17:52:30 [INFO] zens1ert lost connection: disconnect.genericReason 17:52 < dav1d> -.- 17:52 < dav1d> so much information 17:55 < clonejo2> dav1d: How is bson different to msgpack? 17:56 < clonejo2> They seem pretty similar, though msgpack might be a little smaller. 17:56 < dav1d> oh right, I thought msgpack is something like prtocolbuffer 17:57 < dav1d> clonejo1: there exist libraries for bson 17:58 < dav1d> clonejo1: seems like messagepack is bson2.0 17:58 < clonejo1> "The official implementation is available in a variety of languages such as C, C++, C#, D, Erlang, Go, Haskell, Java, JavaScript, Lua, OCaml, Perl, PHP, Python, Ruby, Scala and Smalltalk." 17:58 < dav1d> clonejo1: but I'd use messagepack for the whole protocol then 17:59 < dav1d> [17:53:44.700] Game: DEBUG: Unhandled packet: server.EntityProperties(int entity_id : "305", double[string] properties : "["":2.36436e-308, "generic.movementSpeed":0.25]") 17:59 < dav1d> :D 17:59 < dav1d> this doesn't look correct 17:59 < dav1d> mojang pls 17:59 < Dinnerbone> dav1d pls 18:00 < dav1d> :D 18:00 < clonejo1> dav1d: That's not necessarily the best option, because the structure is resend every time for common packets. 18:00 < Dinnerbone> What's not correct? 18:00 < dav1d> Dinnerbone: na, I guess I implemented it too naive 18:00 < Dinnerbone> Probably 18:00 < dav1d> Dinnerbone: sorry if I highlighted you, not my intention 18:00 < Dinnerbone> You didn't 18:01 < dav1d> yeah, burger confirmed it, there is more to it 18:01 < dav1d> clonejo1: protocolbuffer? 18:02 < dav1d> clonejo1: https://developers.google.com/protocol-buffers/ 18:02 < dav1d> MG 18:02 < dav1d> *mh 18:03 < dav1d> anybody has 0x2c implemented? 18:03 < dav1d> int count = read!int(s); 18:03 < dav1d> foreach(_; 0..count) { 18:03 < dav1d> ret[read!Key(s)] = read!Value(s); 18:03 < dav1d> } 18:03 < dav1d> my naive attempt 18:03 < dav1d> but burger tells me that is wrong 18:05 < clonejo1> protocol buffers seem pretty okay, too 18:07 < dav1d> no one? :( 18:09 < dav1d> [18:08:25.483] Game: DEBUG: Unhandled packet: server.EntityProperties(int entity_id : "866", double[string] properties : "["":2.36436e-308, "generic.movementSpeed":0.25, 18:09 < dav1d> "ric.maxHealth䀴\x00\x00\x00\x00᠀\x03捁\x00\u18D7\x00Г\x00ẕᴀû㛽ਅ뼀\x10!Ĭ晀쀀G\x00\x00\u0800ऀ言\v\x7F⠀\x03挀\x10!Ĭ晀쀀G\x00\x00\u0800ऀ言\v\x7FⰀ\x03挀\x00Ȁᄀ最攀渀攀爀椀挀⸀洀愀砀䠀攀愀氀琀桀᠀\x00\x00\x00\x00ᔀ最攀渀æ 18:09 < dav1d> ”€çˆ€æ¤€æŒ€â¸€æ´€æ¼€ç˜€":3.32808e+178]") 18:09 < dav1d> :D 18:10 < iBotPeaches> LOL 18:11 < Yoshi2> looks like that is working as intended 18:11 < dav1d> dammit 18:11 < dav1d> I am reading correctly 18:11 < dav1d> according to 18:11 < dav1d> https://github.com/SirCmpwn/Craft.Net/blob/master/Craft.Net/Packets.cs#L1567 18:12 < Dinnerbone> That's wrong 18:13 < dav1d> Dinnerbone: thanks :) 18:13 < dav1d> mcp time 18:18 < iBotPeaches> is 0x85, the sign packet, with coords? first byte always being 0? 18:23 < dav1d> great! mcp is python2 18:27 < dav1d> (but wants to use python3) 18:32 < dav1d> wtf? 18:32 < dav1d> sadimusi: ping 18:33 < dav1d> sadimusi: nvm I am stuipid 18:36 < SinZ> I wonder how clean burger vitrines output would be with a pre-obfuscated copy of minecraft 18:40 < dav1d> !! Modified jar detected. Unpredictable results !! 18:40 < dav1d> <3 18:40 < dav1d> at least it didn't stop 18:42 < iBotPeaches> http://paste.ubuntu.com/5850262/ 18:43 < dav1d> iBotPeaches: how? :D 18:43 < dav1d> iBotPeaches: that list thing, that's what I am missing 18:43 < iBotPeaches> http://paste.ubuntu.com/5850264/ 18:43 < iBotPeaches> this is so messy 18:43 < iBotPeaches> i have no clue what it is 18:43 < dav1d> iBotPeaches: where did you get that from? 18:43 < iBotPeaches> mc4p 18:44 < dav1d> ok mcp couldn't compile that 18:44 < dav1d> iBotPeaches: mc4p = mc3p updated? 18:44 < iBotPeaches> https://github.com/sadimusi/mc4p 18:44 < iBotPeaches> I belive so 18:44 < dav1d> great thanks 18:45 < dav1d> I understand 19:02 < dav1d> got it 19:03 < iBotPeaches> :) 19:03 < Calinou> I accidentally this channel 19:03 < dav1d> Calinou: *forgot a verb 19:04 < Calinou> it's intentional :> 19:15 < Not-001> [BraLa] Dav1dde pushed 4 commits to master [+4/-0/±19] http://git.io/2cs6CQ 19:15 < Not-001> [BraLa] Dav1dde ab6971d - added loading support for models, gloom 19:15 < Not-001> [BraLa] Dav1dde a0024df - added lightvolumegeneration for torches etc. 19:15 < Not-001> [BraLa] Dav1dde 68bb73a - more events, more separation 19:15 < Not-001> [BraLa] Dav1dde 6d47184 - Implemented 1.6.2 (snapshot) 19:17 < dav1d> I think I am crazy 19:17 < dav1d> I opened a craft.net issue, but I can't find it now 19:20 < dx> censorship! 19:20 < dx> sircmpwn is literally hitler 19:22 < dav1d> no lol 19:22 < dav1d> I found it 19:22 < dav1d> funny is 19:23 < dav1d> the 0x2c code is a real mess... nbt would fit perfectly though 19:25 < dx> lol 19:26 < dx> i'm not surprised at all that they avoid using the 'ugly' nbt code at all costs 19:26 < dav1d> nbt isn't the best, but definitly better than this hacked-together code 19:31 < Drainedsoul> what's the problem with parsing 0x2C? 19:33 < dav1d> works now 19:33 < dav1d> I was looking at 1.6.1 but implementing 1.6.2 19:34 < Drainedsoul> writeLong(var5.a().getLeastSignificantBits()); what is it writing here? 128 bit integer? 19:35 < dav1d> no idea 19:35 < dav1d> but yeah only thing which makes sense 19:35 < Drainedsoul> looks like it's a UUID from googling that method 19:35 < dx> 128 bit? lol? 19:36 < Drainedsoul> what's funny about that? 19:36 < dav1d> uuid would make sense 19:52 < iBotPeaches> so in 0x2c, the list length has nothing to do with the property count number? 19:53 < iBotPeaches> I can't figure out why only some of the 0x2c packets have the list 19:53 < dav1d> iBotPeaches: all have it, but with a length of 0 19:54 < Drainedsoul> so that short is the length of the preceding data in terms of...what? 19:54 < dav1d> uuid, double, byte 19:54 < dav1d> uuid could be player related 19:54 < dav1d> (probably is) 19:54 < Drainedsoul> okay that's easy 19:55 < iBotPeaches> okay, I thought there was a list per property, no wonder mine is still borking 19:56 < Drainedsoul> there's a list per entry, right? 19:57 < Drainedsoul> so String/Double/ repeated the number of times given by the first int? 19:57 < dav1d> String(Double/(short)*List) 19:57 < dav1d> Drainedsoul: ^ 19:57 < dav1d> https://github.com/Dav1dde/BraLa/blob/master/brala/network/packets/types.d#L295 19:57 < dav1d> ^ one element 19:57 < dav1d> *value 19:58 < dav1d> "struct Value" 19:59 < Drainedsoul> yeah so 0x2C can include multiple kvps, each kvp can have an attached list? 20:00 < dav1d> yes 20:00 < Drainedsoul> cool, that's easy 20:00 < dav1d> yes 20:01 < Drainedsoul> I like how that single packet illustrates the ridiculousness of the protocol. We'll prefix these kvps with a 32-bit length...and this list with a 16-bit length 20:01 < Drainedsoul> consistency! 20:12 < iBotPeaches> yee everything is working again :) 20:13 < iBotPeaches> 0x2c was a -_- 20:13 < Drainedsoul> it doesn't seem that ridiculous to me. At least not compared to other things. 20:22 < iBotPeaches> just made my first edit on the wiki :) 20:23 < Drainedsoul> :O to what? 20:23 < dav1d> iBotPeaches: I hope in the pre release page? 20:23 < iBotPeaches> yer 20:23 < dav1d> that sounded wrong, sry 20:23 < clonejo1> Is the wiki bot gone? 20:25 < dav1d> clonejo1: Not-001 should do that 20:25 < dav1d> TkTech: ?^ 20:25 < dav1d> TkTech: Not-001 isn't triggered by wiki edits? 20:28 < Yoshi2> I've heard that the support for wiki edits is rather quriky, and the notifications might appear late or not at all 20:31 < SinZ> it most likely means the wikibot is off 20:32 < clonejo> hm, I lost +v by connecting from another host. 20:34 < clonejo> wait, I didn't auth with NickServ 20:37 <+clonejo> I'm bouncerless now 20:39 < dav1d> poor clonejo 20:40 < Yoshi2> a live without a bouncer is a difficult one 20:40 < Yoshi2> *life 20:40 <+clonejo> Yoshi2: I do not neet a bouncer, I'm using WeeChat through a remote shell. 20:41 <+clonejo> *need 20:42 <+clonejo> This has the advantage of having the same history on each device. 20:42 < Yoshi2> clonejo: ah, you've got an irc client running on a machine, and you remotely connect to this machine on other devices? 20:45 <+clonejo> yup 21:00 < Drainedsoul> template <> class PacketTypeMap<0x2C> : public PacketType<0x2C,PacketArray>>>> { }; <== 0x2C (1.6.2) \o/ 21:04 <+sadimusi> dav1d: I renamed it to mc4p to avoid confusion with mmcgill's repo 21:04 <+sadimusi> dav1d: I should probably add a note to my mc3p repo though 21:08 < dav1d> clonejo: you configured znc wrong then 21:08 < dav1d> there is an autoclear buffer option 21:08 < dav1d> disable it 21:21 <+clonejo> oh, thanks. 22:02 < dav1d> Dinnerbone: There is a typo somewhere in the latest snapshot, in case you guys didn't notice it yet: "[SEVERE] Reached end of stream for /127.0.0.1" 22:03 < dav1d> if you want I can open a bug-report, but that's just a fix of a splitsecond 22:13 < Dinnerbone> What's the typo dav1d? 22:13 < dav1d> Dinnerbone: SEVERE = SERVER I guess? 22:13 < SinZ> no, SEVERE, as in really bad 22:14 < Dinnerbone> ^ 22:14 < dav1d> oh :( dammit, sorry about that, I've read that as server and thought it's a typo, nvm then 22:14 < SinZ> sadimusi: what is the 4th p? 22:15 < SinZ> nvm 22:44 < Drainedsoul> I don't see how reaching the end of a stream is "SEVERE". It's pretty funny to me how my server spits out SEVERE everytime a client pings it. 23:24 < dx> dav1d: severe is one of the generic log levels of the java logging package :V 23:25 < dav1d> dx: I know, pssht 23:25 < dx> dav1d: complaining about that typo sounds like not touching anything java related in years :D 23:25 < dav1d> I was dumb :( 23:25 < dav1d> I should file a bugreport @oracle 23:25 < dx> do eet 23:26 < mh0> End of stream, that has something to do with sockets, amirite? 23:26 < mh0> If yes, then i dont see hwo it's severe 23:26 < mh0> how* 23:27 < dx> it's an unexpected end of stream 23:27 < mh0> i guess 23:27 < mh0> still, meh 23:27 < dx> considering that severe is just a middle point between warning an exception, it's perfectly appropriate 23:27 < dx> *and exception 23:41 < Drainedsoul> well the client ending the stream shouldn't really be noteworthy other than to note the fact they disconnected. Network connections can end anytime. --- Day changed dim. juil. 07 2013 01:22 < Drainedsoul> http://i.imgur.com/Mrsv65G.png <== this is a correct interpretation of 0x2C y/n? 01:23 <+sadimusi> that doesn't look rigjt 01:23 <+sadimusi> *right 01:24 <+sadimusi> the lowest level should have two doubles 01:25 <+sadimusi> SinZ: it stands for "portable" 01:26 <+sadimusi> SinZ: the suggestions included MineCraft Pretty Printing Prevailing Portable Protocol Parsing Python Proxy ;) 01:29 < Drainedsoul> Where should the second double be? 01:36 < Not-001> [BraLa] Dav1dde pushed 3 commits to master [+0/-0/±14] http://git.io/uyAM5w 01:36 < Not-001> [BraLa] Dav1dde d47d1c3 - workaround for older versions 01:36 < Not-001> [BraLa] Dav1dde 6996a0a - updated readme, 1.6.2 01:36 < Not-001> [BraLa] Dav1dde 1ccc645 - update glfw and all other submodules 01:40 < TkTech> dav1d: The small script that does the wiki is complete crap 01:40 < dav1d> TkTech: haha ok 01:40 < TkTech> I should probably change it to be a cron job 02:00 < dav1d> pdelvo: if you get around, would be great if you could do a "git pull origin master && git submodule update && dmd -run build_brala.d --no-cache" 02:01 < dav1d> my git in my vm is broken 02:01 < dav1d> -_- 02:02 <+pdelvo> I reinstalled my system recently and have not installed a lot of stuff. I try it tomorrow 02:03 < dav1d> ah ok 02:03 < dav1d> didn't expect you to be awake :D 02:04 < dav1d> Drainedsoul: for me it looks correct 02:04 <+pdelvo> its 2am. No time to sleep :D 02:13 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+0/-0/±13] http://git.io/Anmd_w 02:13 < Not-001> [BraLa] Dav1dde 1abd076 - update glfw and all other submodules 06:41 <+md_5> Grum loving the toString() in all the new classes - its like you want us to deobfuscate 11:40 < Grum> md_5: you should always have a sane to-string for debugging purposes =) 11:40 <+md_5> make the obfuscator strip them! 13:26 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+0/-0/±2] http://git.io/TN8mlw 13:26 < Not-001> [BraLa] Dav1dde ad2da89 - glfw c submodule points now to the official repository 13:28 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+0/-0/±2] http://git.io/FoGThw 13:28 < Not-001> [BraLa] Dav1dde 668155d - glfw c submodule points now to the official repository 14:24 < dav1d> lol ~/.minecraft has 512M 14:26 < Calinou> 485M here 14:26 < Calinou> quite a lot 14:26 < dav1d> yeah 14:26 < Calinou> erm, I have 251MB of texture packs 14:26 < dav1d> where does the new launchaur place the default texture pack? 14:26 < dav1d> it isn't anylonger in the jar? 14:28 < dav1d> ah it is 14:28 < dav1d> assets/minecraft/textures 15:32 < dav1d> so how do I login with only a minecraft session and username from the launcher_profiles.json? 15:32 < dav1d> I set accessToken as session it 15:32 < dav1d> *id 15:38 < dav1d> using accessToken:uuid doesn't work either 15:39 < dav1d> got it :D 15:39 < dav1d> token:accessToken:uuid 15:40 < Not-001> [BraLa] Dav1dde pushed 2 commits to master [+4/-1/±9] http://git.io/5nolbg 15:40 < Not-001> [BraLa] Dav1dde d1db806 - load textures from 1.6+ jars 15:40 < Not-001> [BraLa] Dav1dde be774e8 - added option to login with the new launcher_profiles.json 16:06 < dav1d> noooo 16:06 < dav1d> they renamed the textures 20:01 < superjoe> facepalm: https://github.com/superjoe30/node-minecraft-protocol/issues/58 20:02 < SinZ> wat 20:03 < SinZ> oh, I have a bunch of text, better take a screenshot of it rather than just send the text 20:04 < Yoshi2> because it is too much trouble to copy&paste the text into pastebin or something similar 20:14 <+pdelvo> but all the cool kids use pictures 20:37 < dx> hm, that reminds me i need to get some kind of window manager keybinding for pastebins 20:38 < dx> having a keybinding for screenshots is easy, just scrot -s, but i often need to edit text before uploading. FAR TOO COMPLEX. 21:57 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+1/-0/±3] http://git.io/f6G2Tw 21:57 < Not-001> [BraLa] Dav1dde ba7c860 - use textures from 1.6 jars/texturepacks 23:19 < Not-001> [netherrack] thinkofdeath pushed 2 commits to master [+0/-4/±2] http://git.io/BK6omA 23:19 < Not-001> [netherrack] thinkofdeath a7a6944 - Moved util to soulsand 23:20 < Not-001> [netherrack] thinkofdeath 8a00ff7 - Started using soulsand/chat's translate methods --- Day changed lun. juil. 08 2013 00:38 < winny> how did you guys come up with the name "Server List PIng" 00:38 < winny> a bunch of words concatenated together… meaningful only if you know we're talking about MC 00:39 <+pdelvo> because "Server List Ping Mincraft Network Protocol Packet" is a bit long 00:40 < winny> I mean the words, is that something Mojang wrote somewhere or is that something was thought up of here? 00:41 <+pdelvo> they are named by the first person who give it a name most of the time. I dont know who named it that way 00:41 < winny> alright, fair enough 00:42 < winny> Maybe it should be like: Server Status Request or something. . ., hm. 00:43 < winny> I mean ping 00:43 < winny> it's using ping in that sense unrelated to its technical word usage 00:43 < winny> like "i'm going to ping you tomorrow morning about xyz" 00:50 < dx> i'm pretty sure it's used for the latency approximation in the server list 00:51 <+pdelvo> it is 00:52 < dx> cool. 00:52 < dx> then that counts as ping 01:01 < winny> well the latency approximation isn't really a component of the communitcation 01:01 < winny> it's just some timing done unrelated to the data sent 01:02 < winny> I mean, you could start login and just close the connection after the first server reply 01:02 < winny> and that'd be a legit way to ping 01:03 < winny> "ping" (double quotes :) ) 01:04 < winny> if you guys are ok with a name change to something more meaningful like Server Status Request or something, I would do all the changes on the wiki (not today though, going to bed soon :] ) 01:04 <+pdelvo> ping is not only about time messurement but checkig if the other end point is running 01:04 < Not-001> [fCraft] fragmer * r2059 3 files : Two-color IRC codes (foreground/background) are now handled correctly in IRC chat. Minor cleanup in IRC/Chat/Color classes. 01:05 < winny> yes however it's ambiguious 01:07 <+pdelvo> it is used for _ping_ing the servers in the _server list_. I think the name is clear and renaming it would confuse people more then it would help 01:07 < winny> hm 01:08 < winny> What about Ping Server 01:08 < winny> consider it's a phrase, one isn't pinging the server list, I suppose... 01:09 <+pdelvo> your term is even more ambiguous because it doesnt contain the information that it is used in the server list and it is not something related to the query protocol minecraft supports 01:10 < winny> Ah I don't want to go at this forever, but let me ask about one more: Server List Ping 01:11 < winny> oh dear, nvm 01:11 <+pdelvo> Im okay with that name :D 01:11 < winny> dyslexia at its best, that was all for nothing :( 01:11 < winny> regards. Happy sunday :) 01:12 <+pdelvo> gn8 01:23 < SinZ> server list ping is a good name for it 01:23 <+clonejo> There are actually many packets which could be given better names. 01:25 <+clonejo> or maybe not :P 01:25 <+clonejo> at least the names of several packets have been changed in the past 01:25 < dx> yeah, there were a few that had terrible names 01:26 <+clonejo> And I never updated the internal names in my protocol implementation. 01:26 <+pdelvo> or the packets got changed so the names didnt fit any longer 01:27 < dx> well, "Player" is still there, the one that only has a field that says "on ground" 01:27 <+clonejo> When would one even need that packet? 01:28 <+pdelvo> proxy developers need them... :( 01:30 <+clonejo> In which situation? 01:31 < SinZ> "Player" is basically a dead packet 01:32 < SinZ> as the other two packets both send it too 01:32 < SinZ> and only really needs to be sent in position 01:34 <+pdelvo> I have to redirect it. I dont actually know if it is used today, but it was used 01:37 <+clonejo> Entity action is C->S only but always includes the players eid. 01:38 <+clonejo> Also the held item field in player block placement could be stripped. 01:41 <+pdelvo> they are using USC-2 for strings.... every second byte can be stripped in strings 01:42 <+clonejo> The time update packet always transmit two times which usually differ by a constant value. 01:43 < dx> "usually" 01:43 < dx> you're assuming minecraft servers don't lag 01:44 <+clonejo> You could add another packet to change the offset. 01:44 <+clonejo> How is that affected by lag? 01:44 < Not-001> [fCraft] fragmer * r2060 4 files : Hooked up all RealiticMapGenGUI input handlers. 01:44 < dx> the time is determined by ticks, not time, and ticks are execution cycles that run in the best case at 20 per second 01:44 < dx> if there's lag, it's less 01:46 <+clonejo> sure, but who cares if the sun moves a little bit slower, too? 01:47 < dx> well you gotta sync it in some way or the other. if a server dies for one minute during the minecraft dusk, the clients will continue advancing towards night, and when the server replies, they will sync back to daylight 01:48 < dx> that's an extreme example of course, but there are some awfully modded servers that actually have issues like that frequently :D 01:49 < dx> (i'm looking at you PEX and essentials) 01:51 < dx> sending some packet to change the 'offset' the client should use would only cover one use case, where the server has a fixed <20tps rate (which i can't imagine happening so consistently due to lag) 01:52 <+clonejo> Well, server admins tend to change the time of day manually. 01:54 < dx> and the current packet is perfect for that 01:56 < Not-001> [fCraft] fragmer * r2061 2 files : The status strip in AddWorldPopup now shows an informative message when a MapGen preset has been loaded/applied successfully. 02:00 <+clonejo> Is player list item still sent every tick for each player? 02:02 < dav1d> clonejo: your working on the server :O 02:02 < dav1d> "the server" 02:03 <+clonejo> yup, but my last question is unrelated to that. 02:03 <+clonejo> The exams are coming soon, so I'm perfectly motivated to code. 02:04 < dav1d> haha 02:04 < dav1d> I am done! 02:04 < dav1d> :D 02:04 < dav1d> vacation 02:04 <+clonejo> :-) 02:04 <+clonejo> Where are you going? 02:05 < dav1d> ah I mean, uni vacation 02:05 < dav1d> not sure if I travel somewhere 02:05 < dx> motivated to code because you don't want to study? :D 02:06 <+clonejo> It's not that I don't want to. 02:07 <+clonejo> But whenever something will be due soon, I am motivated for everything else. 02:07 < dav1d> but you suck at it :> 02:07 < dx> :D 02:07 <+clonejo> ? 02:07 < dav1d> :D 02:07 < dx> :D 02:07 < dav1d> +clonejo | It's not that I don't want to. 02:07 < dav1d> dav1d | but you suck at it :> 02:07 <+clonejo> yup 02:07 < dav1d> :D 02:08 < dx> :D 02:08 <+clonejo> That's how procrastination works. 02:08 < dx> i used to be like that 02:08 <+clonejo> dx: until when? 02:08 < dx> now i don't even have that kind of motivation and lurk irc all day 02:08 <+clonejo> dx: That's what I do when nothing is due. 02:11 < dav1d> :> 02:11 <+clonejo> So in my holidays I sadly can't work on mc-erl. 02:12 < dav1d> why :O 02:13 <+clonejo> Without deadlines, I lack motivation for most stuff. 02:14 < dav1d> ← 02:14 <+pdelvo> for me too. I finished school and have so much time, but Im doing nothing 02:15 <+clonejo> So in the next semester holidays I want to work, slacking for 6-8 weeks sucks. 02:16 <+clonejo> dav1d: I finally fixed my Arch Linux. 02:17 < dav1d> o/ 02:17 < dav1d> pdelvo: indeed 02:17 < dav1d> playing #wolfgame the whole day 02:17 <+pdelvo> Im playing feed the beast all day :D 02:17 <+clonejo> Using btrfs for the root partition turned out to be a bad idea. 02:18 <+pdelvo> Im acutally programming turtles, sometimes :D 02:19 <+clonejo> Hackerspaces can be pretty motivating, I think. 02:22 < dav1d> pdelvo: haha, that's what I am doing, too 02:22 < dav1d> when I am dead 02:22 < dav1d> -_- 02:23 < dav1d> pdelvo: https://github.com/Dav1dde/Playground/tree/master/turtles 02:23 < dav1d> xD 02:23 < dav1d> got two more, in my gists though 02:23 <+pdelvo> turtles are op if you can program :D 02:23 < SpaceManiac> I hate lua so I'm programming a CC alternative :P 02:23 < dav1d> CC sucks 02:24 < dav1d> api is just too limited, stuipiditly limited 02:24 < SinZ> thats when you just get addon mods, like OpenPeripheral, then you can do basically anything 02:25 <+pdelvo> it is already overpowered it is now :D 02:25 <+pdelvo> the cheapest rubber + rubberwood farm you can build 02:26 < dav1d> pdelvo: https://github.com/Dav1dde/Playground/blob/master/turtles/treefarm.lua <3 wood for years 02:27 <+pdelvo> do you use AE? 02:29 < dav1d> pdelvo: not yet 02:29 < dav1d> if AE = applied enegertics 02:29 < dav1d> I only started a few days ago 02:30 <+pdelvo> jeah. the best thing in the world :D 02:30 <+pdelvo> you can store millions of items in a single block 02:31 < dav1d> I built my own storage system 02:31 <+pdelvo> it can automaticly craft items 02:31 <+pdelvo> cock items 02:31 <+pdelvo> you can make it craft a ultimate hybrid solar panel by just having the basic materials :D 02:31 < dav1d> pdelvo: http://i.imgur.com/7Iln75U.jpg 02:31 < dav1d> pdelvo: gregtech? 02:32 < dav1d> this server is running direwolf 02:32 <+pdelvo> ah okay. Im running the ultimate pack 02:35 <+pdelvo> jeah i use gregtech. i think it is boring without 02:35 <+pdelvo> too easy to get end tier machines 02:35 < dav1d> ^ 02:36 < dav1d> I totally agree there 02:37 <+pdelvo> how many stacks go into a barrel with the upgrade on it? 02:39 < SinZ> 1024 stacks iirc 02:39 < dav1d> pdelvo: 64 02:39 < dav1d> with the extended-barrel, 1024 02:39 <+pdelvo> I think with applied energistics you can store more then 60.000 stacks in one block 04:15 <+md_5> http://wiki.vg/MinecraftCoalition:Current_events 05:39 < Not-001> [fCraft] fragmer * r2062 5 files : condensed a couple files in fCraft.GUI namespace 06:22 < Not-001> [fCraft] fragmer * r2063 9 files : Implemented FlatMapGenGui 14:12 < dav1d> you can't believe how much I hate stairs 14:13 <+pdelvo> :D 14:13 < Yoshi2> can you describe how much you hate stairs in words? 14:14 <+pdelvo> have you tried to turn them off and on again? 14:14 < dav1d> no I can't 14:15 < Yoshi2> well, can you describe why you hate stairs so much? 14:15 < dav1d> Yoshi2: http://i.imgur.com/HFQqB46.png 14:15 < dav1d> explanation enough? 14:16 <+pdelvo> call it a feature :D 14:16 < Yoshi2> there seems to be a lot of z-fighting going on in that screenshot 14:17 < dav1d> na not z fighting 14:17 < dav1d> coordinates are fucked up 14:17 < dav1d> edges share the same texture coordinate 14:17 < dav1d> but I had it working -.- 14:18 < Yoshi2> does the top of the stairs also look like this? 14:18 < dav1d> nope 14:18 < dav1d> all other sides are fine 14:18 < dav1d> and I din't touch stairs at all 14:18 < dav1d> no idea why the freak out like that 14:19 < dav1d> gotta investigate what commit introduced that 14:19 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+0/-0/±1] http://git.io/LihS4g 14:19 < Not-001> [BraLa] Dav1dde 0269d71 - added some more new textures 14:19 < dav1d> 160 commits left :< 14:20 < dav1d> I assume this one -.- https://github.com/Dav1dde/BraLa/commit/ba7c860dc19ac3574fe6a4de8ff28b0e297031fb 14:21 < dav1d> why always the big commits 14:25 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+1/-0/±0] http://git.io/786T5w 14:25 < Not-001> [BraLa] Dav1dde 6cef072 - derp didn't add gfx/util.d 14:28 < dav1d> lol 14:28 <+pdelvo> fixed it? 14:28 < dav1d> no 14:28 < dav1d> but I can't test it 14:28 < dav1d> lol 14:29 < dav1d> because I updated to 1.6.2 but older commits require 1.5.1 14:31 < dav1d> object.Exception@/usr/include/d/std/getopt.d(422): Unrecognized option -a 14:31 < dav1d> :( 14:31 < dav1d> which loads login data from the new launcher profiles json 14:34 < dav1d> lol 14:34 < dav1d> n = s = cbsd.normal == Normal.Y_POSITIVE ? 1 : 0; 14:34 < dav1d> x + vertex[index_1]*width*n 14:34 < dav1d> should be -1 14:34 < dav1d> I think 14:35 < dav1d> yes 14:35 < Yoshi2> that looks a bit like voodoo magic to me 14:35 < dav1d> Yoshi2: it is :> 14:35 < dav1d> took me a looong time to finally get that right 14:36 < dav1d> this code projects textures on vertices 14:36 <+pdelvo> put a "// I dont know why this works, so dont touch it" in it :D 14:36 < dav1d> I honestly can't remember what I did there 14:36 < dav1d> but it works 14:36 < dav1d> https://github.com/Dav1dde/BraLa/blob/master/brala/gfx/terrain.d#L151-L210 14:36 < dav1d> I documentated it but lol 14:36 < dav1d> no idea 14:37 < dav1d> line 174/175 14:37 < dav1d> xD 14:37 < Not-001> [BraLa] Dav1dde pushed 1 commit to master [+0/-0/±1] http://git.io/jP7LbQ 14:37 < Not-001> [BraLa] Dav1dde ad2ccb6 - fix fucking stairs 19:08 < ashka> hello there 19:08 <+pdelvo> hi! 19:08 < ashka> maybe I'm just blind but I can't find the event for the player tab list on the wiki 19:09 <+pdelvo> this packet is used for the list: http://wiki.vg/Protocol#Player_List_Item_.280xC9.29 19:10 <+pdelvo> and you may want to look into scoreboards if you want to display a number behin player names 19:10 < ashka> great, thanks 19:10 < ashka> no, I'm looking forward to modify their ping 19:10 <+pdelvo> okay thats easy 19:10 < ashka> is there somewhere I can find what are the ranges for the ping bars ? 19:11 <+pdelvo> I have the limits somewhere in my code. wait a second... 19:13 <+pdelvo> https://gist.github.com/pdelvo/2f176ae0832fb383ef57 19:14 <+pdelvo> the first method gives you the number of bars it shows for a specific ping. the second one gives you a ping you can send to show a specific number of bars 19:15 < ashka> thanks a lot 19:15 <+pdelvo> np :) 19:15 < ashka> btw, -1 is when the bar is crossed ? 19:15 <+pdelvo> jeah 19:23 < Drainedsoul> does the server really send that packet once per tick for every player? 19:23 < shoghicp> I think bukkit limits that 19:24 < shoghicp> I tried measuring that on bukkit, and the ping seems to be sent once 19:24 < Drainedsoul> "bukkit" isn't "the server" though 19:24 <+pdelvo> I hope not. Vanilla doesnt change the ping for a player as far as I know. each player get a value at spawn and it never changes if they havent changed that since I last looked into it 19:24 < shoghicp> yes, I only give the info I have ;) 19:24 < shoghicp> then as bukkit does right now 19:25 < Drainedsoul> wtf, why even bother having a ping if you don't update it 19:25 < shoghicp> the ping changes in the server, but it is not sent back (as far as I know) 19:25 < shoghicp> reconnecting reloads a new ping 19:26 <+pdelvo> I dont understand why they dont do that. I implemented that in a proxy of mine some months ago and it was very usefull to have a good view on the pings 19:27 < Drainedsoul> well is there even a vanilla way to retrieve the ping in the client? I've never figured it out. Can just see the green bars but that's pretty meaningless 19:28 <+pdelvo> the server is sending a value for the ping to the client for each player 19:28 <+pdelvo> but as I said it doesnt update it 19:28 < Yoshi2> the value is there, but I don't think there is a way to actually see it 19:29 <+pdelvo> not with an vanilla client 19:30 < Yoshi2> my bot had a command for viewing the ping of each player on the server, but I don't remember if the ping ever changed again 19:31 <+pdelvo> nope. if you press tab in minecraft you can see bars for the ping. they never change so the server doesnt send updated values. with my proxy I could just send a new packet with updated values and the client display them fine 19:35 < SinZ> AFAIK Vannila will update it, but pretty much every server mod removes the updater 20:07 < Valdiralita> is there a packet for light update? i cant find one 20:08 <+pdelvo> after the server initially send a chunk to the client both sides calculate light indipendently 20:08 < Valdiralita> oh, ok thanks 20:12 < Valdiralita> hm, thats not cool 21:03 < dreadiscool> Does anyone know how I can get rid of the Just another BungeeCord - Forced Host - motd? 21:04 < dreadiscool> I can't seem to find out how o_o --- Day changed mar. juil. 09 2013 02:05 < frostyfrog> O_O 02:05 < frostyfrog> Thank you pdelvo for the link to wiki.vg! =D 02:07 < dx> wat? 03:25 < btilm305> Is there a helper method that converts 1.6.1 json chat messages to legacy 1.5.2 chat messages? 03:36 < dav1d> oh right chat, need to implement that 03:38 < btilm305> ?? 03:45 < frostyfrog> You could... write one yourself if there isn't one. 03:46 < btilm305> :O 03:46 < btilm305> insanity! 03:49 < dx> yeah, the worst you'll have to do is to manage a stack of applied colors, and every time you need to pop add a reset and re-add the others 03:50 < btilm305> :O 03:50 < dx> but that's for complex use cases, which you can clearly see that don't exist in vanilla since it was pretty broken before 1.6.2 03:50 < btilm305> and translations 03:50 < dx> translations are basic string formatting lol 03:52 < dx> well, actually 03:52 < btilm305> Wait what happened to this 03:52 < btilm305> https://gist.github.com/Dinnerbone/5631634 03:52 < dx> don't even bother doing the stack thing 03:52 < btilm305> This looks nothing like what the protocol actually is 03:53 < dx> er.. 03:53 < dx> remove the pretty printing 03:53 < dx> and yes it's like that 03:56 < btilm305> There's no translate on chat messages 03:56 < btilm305> the heck? 03:56 < btilm305> not even join messages 03:56 < btilm305> did we get trolled or something 03:57 < mbaxter> btilm305: I hope you're not reading CraftBukkit packets for that... 03:57 < btilm305> I am 03:57 < btilm305> lol 03:57 < btilm305> does craftbukkit not conform to regularity? 03:57 * mbaxter places failhat upon btilm305 03:57 < dx> loling 03:57 < btilm305> :\ 03:58 < btilm305> Let me try a regular server 03:58 < btilm305> one sec 03:58 < mbaxter> Hell, we're not even sending proper json messages yet 03:58 < mbaxter> (Might not until strikethrough's added at least to the client, hint hint mojangstas) 03:58 < dx> mbaxter: you mean CBO or did you guys butcher NMS too?