03:04 < tehme> now i'll try flat array version 03:05 < Drainedsoul> I don't know how the boost multiarray is implemented under the hood. At the very least it has to have a pointer to some block of memory to hold everything 03:06 < Drainedsoul> it may be an array-of-arrays, which would be very slow indeed, lots of calls to the heap manager, lots of indirections 03:09 < tehme> you are a fujjen genius 03:09 < tehme> fukken* 03:09 < tehme> ~0,01 s per column 03:10 < tehme> i lied 03:10 < tehme> 0.008 03:10 < tehme> thank you very much man 03:10 < Drainedsoul> ah yes, all hail locality and vectorization 03:10 < Drainedsoul> netime 03:12 < tehme> good night 03:12 < tehme> what time is it at your location? 03:13 < Drainedsoul> 18:13 03:13 < Drainedsoul> Pacific Standard Time 03:13 < Drainedsoul> Victoria, British Columbia, Canada 22:27 < tehme> yo su 22:27 < tehme> p 22:27 < tehme> hey Drainedsoul, are you here? 22:29 < tehme> how should i use flat array 256*16*16 as 3d array? 22:29 < tehme> const BlockData& getBlockByRelCoords(int _relX, int _relY, int _relZ) const{return m_columnData[_relY * 256 + _relZ * 16 + _relX];} 22:33 < Not-002> [mc4p] sadimusi pushed 2 commits to master [+0/-0/±2] http://git.io/x4J8lQ 22:33 < Not-002> [mc4p] Simon Marti ede086f - Reverted license of authentication.py to WTFPL 22:33 < Not-002> [mc4p] Simon Marti 7d92a9d - Protocol version 75 (13w36a) 22:35 <+sadimusi> I don't seem to be able to figure out the new byte in 0x3E 22:36 <+sadimusi> it's usually 5 or 6 and when I set it to 1 the sound won't get played 22:36 <+sadimusi> all other values don't appear to have any effect 22:40 <+sadimusi> the source suggests sound category 22:43 < tehme> ask Grum? 22:44 <+sadimusi> where's the fun in that? 22:44 < tehme> lol 22:45 < tehme> i'm having fun with wrong coordinates 22:47 < Not-002> [mc4p] sadimusi pushed 1 commit to master [+0/-0/±1] http://git.io/1FtaMg 22:47 < Not-002> [mc4p] Simon Marti 66a8216 - New field in 0x3E is sound category 22:49 < tehme> omfg x is y 22:49 < tehme> shit 23:03 < Thinkofdeath> sadimusi: Added to the pre-release page http://wiki.vg/Pre-release_protocol 23:15 <+sadimusi> Thinkofdeath: looks good, but could you add 0xc8 as well? 23:18 <+ammar2> oh fyi guys 23:19 <+ammar2> what I did last time for changed packets is 23:19 <+ammar2> I bolded the change 23:19 <+ammar2> its better for readability and easier for when it needs to be moved back to the main Protocol page 23:21 <+sadimusi> ammar2: a few people asked about those fields and nobody here had any idea why they were bold ;) 23:21 <+sadimusi> ammar2: somebody figured it out eventually though 23:30 <+sadimusi> Thinkofdeath: where did you get the categories from btw? 23:31 < Thinkofdeath> sadimusi: adk.class from 13w36b 23:33 <+sadimusi> Thinkofdeath: somehow JD-GUI completely omitted the values() method 23:34 < Thinkofdeath> Yeah it doesn't like enums much 23:38 <+SpaceManiac> Doesn't values() come from enum anyways --- Day changed sam. sept. 07 2013 01:59 < shoghicp> The Creeper uses the index 16 in its metadata for the fuse 01:59 < shoghicp> is the TNT entity using the same index too? 03:59 < BigBlackBoris> Hey guys, is there a regex to remove everything from the "text" value in the JSON array from the packet 0x03? To get like username: message and not §fusername§f: §fmessage for example? 03:59 <+md_5> hm? 03:59 <+md_5> not sure what you mean 04:00 < BigBlackBoris> This Bukkit server that I'm testing on likes to send §fusername§f: §fmessage in the text value from packet 0x03 04:00 < BigBlackBoris> I need to parse it to get just "username: message" 04:01 <+md_5> like without the colour codes? 04:02 < BigBlackBoris> Without anything alphanumeric. I think Minecraft would really benefit from sending separate values in the JSON array for sender and message 04:02 <+md_5> so.. without colour codes? 04:03 < BigBlackBoris> Basically. 04:03 <+md_5> BigBlackBoris : (?i)§[0-9A-FK-OR] 04:04 <+md_5> if your regex engine supports (?i) for case insensitivity 04:04 < BigBlackBoris> Is that not the same as what I'm doing here? /\\xA7[0-9A-FK-OR]/i 04:04 < BigBlackBoris> When I print the result of that I get "cConsolef Place all items in chests before logging off", though. 04:04 <+md_5> what language is this? 04:04 <+md_5> \\xA7 might not be escaped correctly 04:04 < BigBlackBoris> Java using replaceAll 04:05 <+md_5> msg.replaceAll("(?i)§[0-9A-FK-OR]", ""); 04:05 <+md_5> works fine for me 04:05 <+md_5> in java 04:05 < BigBlackBoris> let me try that 04:05 <+md_5> you should be using \u00A7 04:05 <+md_5> not \\xA7 04:06 <+md_5> msg.replaceAll("(?i)\u00A7[0-9A-FK-OR]", ""); <-- works for me 04:06 < BigBlackBoris> Oh, okay. Eclipse told me that wasn't valid. I had to escape the backslash to beable to even run my code 04:06 < BigBlackBoris> Yeah, that works, thanks. 04:07 < Kyle> md_5: another happy customer 04:07 < Kyle> he joined #mindcrack for some reason lol 04:07 <+md_5> Kyle can I get a raise now 04:07 < BigBlackBoris> I joined #mindcrack because I didn't know where else to go xD 04:08 < Kyle> BigBlackBoris: definitely not there, only a few devs in there, 04:08 < BigBlackBoris> I was going to ask on SO but I figured I would ask on IRC first, tried #minecraft and it said I couldn't send the message or something and the only other minecraft-related IRC I knew off the top of my head was Mindcrack 04:11 < BigBlackBoris> Eugh, I don't think this is going to work. I'm trying to make a bot know when somebody chats and there is ranks for each user. If I use .contains anybody could easily send "John: !help" for example 04:12 < BigBlackBoris> there are* 04:12 <+md_5> I dont understand your issue 04:13 <+md_5> also something tells me a plugin would be better for what you want 04:15 < BigBlackBoris> md_5: I'm making a bot that uses the Minecraft protocol to connect to a server and idle, if someone sends a message prefixed with '!' the bot will parse the message, Each user has a role and will only be allowed to use certain commands. The way I plan on doing this is using 'contains' to check if the message contains "name: !help" for example. Maybe it'll be best to make a regex to capture both parts of the ':' like (\w*): (\w*) 04:16 < BigBlackBoris> third-party servers, I can't install plugins on them 04:16 <+md_5> why not 04:16 <+md_5> just split it 04:16 < BigBlackBoris> by the delimiter ':'? 04:16 <+md_5> String[] split = message.split(":",1); String username = split[0]; String message = split[1]; 04:18 < BigBlackBoris> ok, thanks. I'll try that. Just out of curiosity, if servers have some sort of plugin like ChatManager to change the format of the message such as [Rank] [Name]: Message does that modify the text value in the JSON? 04:18 < BigBlackBoris> if yes, i'm going to have to rethink all my logic 04:18 <+md_5> of course 04:18 <+md_5> think about what your client sees 04:19 <+md_5> thats what you bot sees 04:19 < Kyle> md_5: this is what we told him lol 04:19 <+md_5> have you actually coded a bot yet 04:19 <+md_5> because the minecraft protocol 04:19 <+md_5> is pretty damn complicated 04:19 <+md_5> and if you can figure it out 04:20 <+md_5> I really think youshould be able to figure these trifles out 04:20 < Kyle> complicated? not for just parsing chat 04:20 < BigBlackBoris> I have the protocol all down and sorted. It connects to the server, can send messages, walk around 04:21 <+md_5> then how can you not figure this out 04:21 <+md_5> o.O 04:21 < BigBlackBoris> What I don't understand is, why use a JSON array for one value -_-. Would it not be easy for Mojang just to implement some extra values like Bukkit does? Like a message value and a sender value? 04:22 < BigBlackBoris> I can't figure this out because there's an infinite number of combinations that the format can be. I need to get the author and the message. What if the format was like [Admin] [John] Message, or John [Admin]: Message 04:23 <+md_5> dude 04:23 <+md_5> thats up to the server to decide 04:23 <+md_5> the server can send whatever it likes 04:23 <+md_5> eg I can make my server be 04:23 < Kyle> my question 04:23 <+md_5> %%%% OVERLORD %%% *** md_5 *** ::: This is My test message ::: 04:23 < Kyle> why not just calibrate it per server? 04:23 < Kyle> have a regex configurable for each server it can connect to. 04:25 < BigBlackBoris> I'm trying to make it be as user friendly as possible without using any hacky solutions 04:25 <+md_5> dude 04:25 <+md_5> its a fact of life 04:25 < Kyle> it's minecraft 04:25 < BigBlackBoris> Like just running ./run 127.0.0.1 25565 04:25 <+md_5> that servers have diffferent chat styles 04:25 < Kyle> there *are no* hacky solutions 04:25 <+md_5> you cannot expect every server to be vanilla 04:25 < Kyle> ;) 04:25 <+md_5> plugins exist FOR customizing chat 04:27 < BigBlackBoris> I know, but it would be easy as shit for Mojang to just send the message and author as values in the JSON. It wont break any existing code and it will actually make use of the JSON. Dinnerbone's "new" chat system uses JSON for one value. Why not just send it plaintext? What's the point in using JSON for one value? It makes no sense to me 04:28 < BigBlackBoris> All the code is right there and ready for them to use. They just need to implement it 04:28 <+md_5> BigBlackBoris VANILlA DOES 04:28 <+md_5> BUKKIT DOES NOT 04:29 <+md_5> / this server does not 04:29 < BigBlackBoris> sooo, why doesn't bukkit? 04:29 <+md_5> becaus 04:29 <+md_5> e 04:29 <+md_5> that 04:29 <+md_5> would 04:29 <+md_5> break 04:29 <+md_5> every 04:29 <+md_5> single 04:29 <+md_5> plugin 04:29 <+md_5> in 04:29 <+md_5> existance 04:29 <+md_5> and 04:29 <+md_5> they would need to all be updated / patched/ rewritten 04:29 < BigBlackBoris> no 04:29 < BigBlackBoris> it 04:29 < BigBlackBoris> would 04:29 < BigBlackBoris> not 04:30 <+md_5> dude 04:30 < BigBlackBoris> explain how it would break every plugin? 04:30 <+md_5> because not EVERY message sent has a username 04:30 <+md_5> tell me how 04:30 <+md_5> you can make sendMessage(String) 04:30 < BigBlackBoris> send a blank author 04:30 <+md_5> suddenly include an arbitrary set of key value params 04:30 <+md_5> *head desk* 04:30 <+md_5> that defeats the entire purpose 04:31 <+md_5> you clearly do not think in the big scheme of things 04:31 < BigBlackBoris> I'm thinking as hard as I can 04:31 <+md_5> then every message becomes 04:31 <+md_5> <> test message 04:31 <+md_5> with blank author 04:31 <+md_5> do what we told you 04:31 <+md_5> and use a regex 04:31 < BigBlackBoris> Sending two extra values in a JSON array would break fuck all. 04:31 <+md_5> the vanilla translation files only contain <%s> for usernames anyway 04:31 <+md_5> so you would STILL need custom text 04:31 <+md_5> to get custom formatting 04:32 < BigBlackBoris> Exactly my point 04:32 < BigBlackBoris> Keep the text value 04:32 < BigBlackBoris> just send message and author along with it 04:32 <+md_5> that makes 0 sense 04:32 <+md_5> please leave now 04:32 < BigBlackBoris> No it fucking doesn't 04:32 < BigBlackBoris> 0x03 is a JSON array 04:33 < BigBlackBoris> with one value 04:33 < BigBlackBoris> "text" 04:33 < BigBlackBoris> send values "author" and "message" 04:33 < BigBlackBoris> explain how that would break anything 04:33 < BigBlackBoris> please, i'd love to know 04:38 < BigBlackBoris> md_5 http://wiki.vg/Protocol#Chat_Message_.280x03.29 04:42 < iBotPeaches> It would break everything 04:42 < iBotPeaches> and with that, im going to bed. 04:44 <+Amaranth> BigBlackBoris: See how the example has all of that other fancy stuff for translations and sending the text in parts? 04:44 <+Amaranth> That doesn't really work when the interface given to plugins is "this is the chat message going to the player" 04:45 <+Amaranth> And changing that interface means breaking the plugins 04:45 < BigBlackBoris> no, i mean, only send the author value when it's a player message 04:46 <+Amaranth> So send the whole raw text _and_ send the author? 04:46 < BigBlackBoris> yes but as different values in the array 04:46 <+Amaranth> Because the plugin interface it a literal "this is the raw text going to the client" not "here is the part the player wrote and we'll fill in the rest" 04:46 <+Amaranth> That is a breaking change 04:47 < BigBlackBoris> so what you're saying is it will only break chat modifying plugins 04:48 < BigBlackBoris> not every single plugin like md_5 said 04:48 <+md_5> dude 04:48 <+md_5> explain 04:48 <+md_5> how 04:48 <+md_5> you can alter the chat sending system 04:48 <+md_5> to use the new style 04:48 <+md_5> without breaking everything 04:48 <+md_5> you CANNOT 04:48 <+md_5> the new system doesnt even have colour codes 04:48 < BigBlackBoris> you managed to fucking do it when dinnerbone came along and changed everything to fucking JSON 04:48 <+md_5> rendering the ChatColor enum useless 04:49 * md_5 hits sadimusi and TkTech with a block 04:49 < iBotPeaches> The new JSON change took about 1.5 months for me, not something I want to do again 04:49 < iBotPeaches> not to mention it was borked and didn't have support for nested colors until a month later 04:49 <+Amaranth> BigBlackBoris: We managed it by pretending the new system is the old system and only using the text value in the JSON instead of the full capabilities :P 04:49 < iBotPeaches> Amaranth: I hope they never remove that :p 04:49 <+Amaranth> Well that's not quite true but close enough 04:49 < iBotPeaches> I just send all the stuff to old text field, formatted in old way :) 04:50 <+Amaranth> But the interface plugins are given is "here is the message the player is sending" and "here is the format string <%s> %s" 04:50 <+Amaranth> And the plugin is allowed to modify both in any way it wants and the server then combines them (if still applicable) and sends them off 04:51 <+Amaranth> Sending author and message separately and relying on the client to do the <%s> %s part doesn't let plugins put in prefixes and such 04:52 <+Amaranth> So yeah, changing to what you want would not only be a breaking API change for any plugin that is looking at chat it would also remove the ability to customize chat 04:55 < BigBlackBoris> well this is annoying 05:28 < ackpacket> So, if i'm understanding this correctly, a man in the middle attack will not work for a minecraft session stealer because a mitm involves intercepting keys and replacing with the attacker's keys to remain part of the conversation, but the mc client and server authenticate with mohjang using a hash from the keys they receive, and a mitm will cause them to have different keys 05:29 < ackpacket> so they will contact mohjang with diferent hashes 05:42 <+md_5> ackpacket yup 05:43 < ackpacket> Well, that's good to know 05:43 < ackpacket> it would have been fun to make a session stealer, but i suppose the world is better off without one 05:56 <+md_5> ackpacket thats why encryption was implemented :p 06:09 < Drainedsoul> couldn't you alter a chat sending system without breaking anything by just implementing a parser? Parse the old style to some intermediate representation, and then transform that into JSON 06:11 < Drainedsoul> having code just send string literals with the formatting codes in them though just smacks of a poorly-designed abstraction. Code consuming an API shouldn't have to understand the way that API represents or transmits the data, that's the point of an API 11:30 < winny> http://jsfiddle.net/42EDX/10/ 11:30 < winny> ^ to find a stronghold 13:36 < Morrolan> winny: Heh, nice. 13:36 < Morrolan> (Though I have to admit that I prefer just using the seed to calculate the positions :P) 13:36 < winny> where can I read about deriving stronghold positions from the seed? 13:40 < winny> are you referring to Skidoodle's work? 13:58 < Morrolan> I do not actually know how it's done. I've just stumbled upon a tool which calculated stronghol's position based on the seed, a while ago. 13:58 < Morrolan> AMIDST, yea, Skidoodle it is. 14:14 < shoghicp> Got explosions working on PocketMine-MP :D http://imgur.com/a/szAz5 14:22 <+sadimusi> shoghicp: that doesn't look right 14:25 < shoghicp> sadimusi: big explosions 14:25 < shoghicp> with power 80 14:25 <+sadimusi> cubic explosion? 14:25 < shoghicp> same as big PC Minecraft explosions 14:26 < shoghicp> let me find an image 14:26 < shoghicp> Sethbling had one in his videos 14:26 <+sadimusi> and what's up with those stripes? 14:26 < shoghicp> sadimusi: it is a single explosion, not multiple TNT blocks 14:27 < shoghicp> sadimusi: rays 14:27 <+sadimusi> I assumed as much 14:27 < shoghicp> http://img404.imageshack.us/img404/2990/20121103230905.png 14:28 < shoghicp> I'm using the same algorithm bukkit / mc uses 14:28 < shoghicp> http://www.youtube.com/watch?v=8ow5GzfM_dI 14:28 < shoghicp> just at the start 14:28 <+sadimusi> I guess that works for smaller explosion radii 14:29 < shoghicp> yep 14:29 < shoghicp> they look like vanilla 14:29 < shoghicp> TNT power 4, this was a power 80 explosion 14:35 < shoghicp> sadimusi: normal TNT http://i.imgur.com/wnRxBqa.png 14:35 <+sadimusi> that look more like it 14:39 < shoghicp> force 20: http://i.imgur.com/amSJqWd.png 14:39 < shoghicp> power* 20:33 < BigBlackBoris> Has anyone got any experience with https://github.com/Steveice10/mc-protocol-lib ? 20:33 < BigBlackBoris> I've decided to use that instead of using the one I made 20:35 < BigBlackBoris> I can't seem to send movement packets 20:36 <+pdelvo> if you show us some code we might be able to help 20:37 < BigBlackBoris> I have no code to show. I can't get it to work. I'm checking if the packet is 0x0D in my Listener in onPacketRecieve, if it is run onPositionLook((PacketPlayerPositionLook) packet); 20:37 < BigBlackBoris> in there I'm trying to change x and z and then using client.send to send the packet but it doesn't seem to send to the server 20:41 <+pdelvo> have you tried a proxy to check if it sends it? 20:42 < BigBlackBoris> how would I go about proxying requests? 20:45 < iBotPeaches> https://github.com/sadimusi/mc4p 20:45 <+pdelvo> you can use mc4p: https://github.com/sadimusi/mc4p 20:45 <+pdelvo> lol :D 20:45 < iBotPeaches> :p 21:04 < BigBlackBoris> error: Setup script exited with error: Unable to find vcvarsall.bat 23:22 < TkTech> BigBlackBoris: You'll need to follow a python + windows guide. 23:22 < TkTech> BigBlackBoris: You're either missing VC++ or haven't finished setting everything up. 23:26 < BigBlackBoris> I've done it, I had to install it on Ubuntu though. I wouldn't get any packets sending apart from chat so I gave up 23:31 < Drainedsoul> Ugh, VC++, pls more MinGW :( 23:42 < dav1d> :( 23:42 < dav1d> I wonder why I needed a BIOS reset :( 23:43 < dav1d> luckily I guessed, that it's a BIOS issue. still damn windows 8, I blame YOU 23:47 < Drainedsoul> why are you using Windows 8, I think that's the more notable thing here ._. --- Day changed dim. sept. 08 2013 00:21 < dav1d> Drainedsoul: got it cheap and yay CS:GO works like a charm 00:22 < dav1d> since the last steam update steam was unusable with my XP 00:22 < dav1d> also, everyone said it's bad, but I never really used it 00:22 < dav1d> now I can officially confirm, it sucks 00:22 < dav1d> I really like how you shutdown windows 8, you go into deksotp mode, press windowskey+r, open cmd 00:22 < dav1d> shutdown -s -t 00 00:28 < Drainedsoul> why didn't you just go to win7 ._. 00:55 < Drainedsoul> anyone have an idea of how long it takes the vanilla server to save a chunk or column to disk? Or how I could go about benchmarking this myself? 07:25 < ahabs_ghost> sorta n00b question... what's [???] Invalid argument 07:26 < ahabs_ghost> i know python, i've read some of the mark2 code... 07:26 < winny> happens in socket programming, I don't recall exactly why 07:27 < ahabs_ghost> it fires about every 5 secs. not on my laptop, but on a "server" 07:27 < ahabs_ghost> is it something i can suppress via python logging config? 07:28 < winny> usually invalid argument is something worth investigating further 07:28 < winny> can represent a bug 07:30 < ahabs_ghost> it could easily be a permission thing with the setup... pip install of mark2 as root, but running as regular user? 07:33 < ahabs_ghost> oh, it looks like the previous one i had going under tmux hadn't acually stopped 07:39 < ahabs_ghost> that wasn't it... there isn't a lot of memory on this critter. could be lots o problems 07:39 < Drainedsoul> does the client actually do anything with the first field in 0x04? 07:39 < TkTech> ahabs_ghost: Is there a stack trace with that message? 09:21 < Drainedsoul> how does the client derive the phase of the moon 16:51 < ahabs_ghost> TKTech: no, no stack trace. 17:10 < ahabs_ghost> interesting, the service ping interval is 5 seconds, .. "grep -r 5 *" is a crude approach, but... 17:29 < ahabs_ghost> looking like maybe configuration/permissions error... i set up a new user to run the server, but a virtualenv as my own user 17:33 < ahabs_ghost> nope, i had been using MARK2_CONFIG set to a local dir 17:34 < ahabs_ghost> but changing the ping interval to 6 seconds shows that is the source of the Invalid Argument 17:53 < ahabs_ghost> hmm. server.log appears to have this: [SEVERE] Reached end of stream for /127.0.0.1 17:56 < ahabs_ghost> and on shutdown i do have a java trace... [???] java.net.SocketException: Socket closed 17:59 < ahabs_ghost> feels like a jdk related problem, but hitting a bug in the logging... 18:00 < ahabs_ghost> well, thats all for now, it's a great looking system, ill just have to get back to it another day 20:27 < Not-002> [mineflayer] zuazo pushed 4 commits to master [+0/-0/±4] http://git.io/qUJsUA 20:27 < Not-002> [mineflayer] pratham2003 03c57bf - Update entities.js Added swing boolean parameter. function attack(target, swing) 20:27 < Not-002> [mineflayer] pratham2003 1875f8d - Update entities.js Added swing parameter to attack function. 20:27 < Not-002> [mineflayer] pratham2003 cb72781 - Fixed indentation. 20:27 < Not-002> [mineflayer] zuazo 43dd5a3 - Merge pull request #160 from pratham2003/master Added boolean swing arm parameter to attack 21:15 < Not-002> [fCraft] fragmer * r2203 4 files : Every log message now contains a 2-letter code identifying the log type (e.g. RC for RankChat, EE for error, IC for IrcChat, etc). Changed capitalization of IrcChat and IrcStatus logtypes (should not affect anything - config has case-insensitive parsing for this stuff). 21:31 < Not-002> [fCraft] fragmer * r2204 6 files : Separated BuildingCommands from DrawCommands, since that class was getting way too huge. 23:06 < tehme> yoyoyo i finally made world representation that works 23:06 < tehme> http://imgur.com/6xls0Yy 23:06 < tehme> column height map 23:08 < tehme> http://imgur.com/Okx77EV 23:08 < tehme> og this place 23:08 < tehme> of* 23:19 < shoghicp> tehme: my client, early development stage: http://imgur.com/a/G32k7 23:38 < tehme> shoghicp: wow 23:38 < tehme> how early? 23:42 < Kassick> hey guys 23:43 < Kassick> has anyone ever tried netcatting into an MC server? I can't seem to figure this stuff out myself 23:45 < Kassick> My only goal here is to send a player list query to the server and get back the number of players online 23:46 < shoghicp> tehme: one year ago 23:46 < Thinkofdeath> Kassick: http://wiki.vg/Server_List_Ping might help 23:46 < tehme> i have a question 23:47 < Kassick> Thinkofdeath: I've been looking at that page but I feel like I may be doing something else wrong 23:47 < tehme> 0x38 is sent when player is teleported to admin 23:47 < tehme> wiki says: you send this packet to update area surrounding player in the middle of the game, entities within the updated area may become unattackable 23:47 < tehme> oh 23:48 < tehme> i got it 23:48 < Kassick> Thinkofdeath: It's hex, so I'm assuming I need to escape it or format it in someway for NC to accept it 23:48 < Kassick> I get no response back and the server kills the connection whenever I try it 23:49 < tehme> shoghicp: do you plan 3d? 23:50 < shoghicp> tehme: It was a PHP client, but it is outdated since 1.5 23:50 < shoghicp> You can add anything to it 23:50 < tehme> why don't you update it? 23:51 < shoghicp> We used it on a server here in SPain to manage users, catch X-Rayers, FAQ bot, Player vs Bot, etc 23:51 < shoghicp> but I lacked the time, and somewhere it is failing on 1.5 23:51 < shoghicp> even after updating it 23:52 < tehme> shoghicp: how did you catch x-rayers? 23:54 < shoghicp> the bot ran commands to get block break stats, and created a list of the most ovbious ones. Then, when it was in the "mining" world, teleported to it being invisible and followed him analyzing the path followed (straight line, or putting fake blocks and logging what he did) 23:54 < shoghicp> then, it made a table with all the data, and humans reviewed it 23:55 < shoghicp> we catched ~5 per day, and the bot warned us when someone was in the action 23:55 < shoghicp> so we teleported too there 23:56 < shoghicp> it was really nice :D 23:56 < tehme> wow 23:56 < tehme> yep, some of them are easy to catch --- Day changed lun. sept. 09 2013 00:19 < tehme> it is time-consuming, but if you want it, you can break anything having < 15 distance from wall to private end 00:20 < Kassick> Thinkofdeath: nevermind, I got it working, thanks 00:24 < woder> quick question on the way to auth for a client, what is "profile id" in token:: 00:30 < tehme> yo i have a question. server sends Block Change when vine grows. it seems to replace block type with type of vine 00:31 < tehme> is block being replaced, or just attached somehow? 00:31 < tehme> how do server and client know what block vine is on? 00:32 < tehme> and i saw replacement of air with air 00:32 < tehme> what the hell is this? 02:07 <+sadimusi> Kassick: you have to wait 5 seconds before connecting again 02:12 < Kassick> sadimusi: netcat wasn't staying open long enough to receive a response back 02:12 <+sadimusi> oh, ok then 08:09 < Shagrat> Hello 08:11 < Shagrat> Please http://wiki.vg/Pre-release_protocol 0xC8 explain format. Bad description 08:20 < Shagrat> Sorry understood 08:20 < Shagrat> 0xC8 = 0 - is reset statistic? 08:23 < Drainedsoul> what's your question? 10:45 <+Amaranth> clonejo: I thought I recognized that nick :D 10:46 <+clonejo> Amaranth: same here, I just wasn't quick enough to be the first to answer (mobile connection) 10:52 <+md_5> I feel I'm missing some context 10:52 <+clonejo> md_5: Amaranth discovered me in #rust@irc.mozilla.com 10:53 <+md_5> bloody rust 10:53 <+md_5> stupid language 10:53 < eddyb> lol 10:54 < eddyb> my biggest complaint is the Ruby-like block lambdas 10:54 <+md_5> lets just not talk about go 10:55 <+md_5> all these new fangled languages make me sad 10:55 < eddyb> Rust > Go. it just needs more love 10:57 < eddyb> it's typed, yet you don't see any explicit types in the example here http://www.rust-lang.org/ 10:57 < eddyb> apart from the damn lambdas, it's pleasant to me, like ES6 10:57 < eddyb> and it doesn't go to the crazy end of the rainbow, like Haskell 10:58 <+md_5> I should really really learn another language proficiently 10:58 < t92> python 10:58 <+md_5> nothnks 10:58 < t92> lolwhy 10:58 <+md_5> realistically probably C++ 10:59 < eddyb> lol python 10:59 <+md_5> since I can tie it in nicely with java 11:00 < eddyb> md_5: I hope you don't end up hating C++, like all the people who don't understand it 11:01 <+md_5> I wish there was a language which had ides as good as java :p 11:01 < t92> c#? 11:01 <+md_5> also dynamically typed languages are poopy 11:01 <+md_5> count them all out 11:02 < eddyb> kdevelop with C++, if you want to give it a try 11:02 <+md_5> netbeans with c++ m8 11:02 <+md_5> its actually really good 11:02 < eddyb> it has C++11 support now and it's almost as good as a Java IDE (which are good because Java is crap) 11:03 < t92> learn c/c++ md_5 11:04 < eddyb> C/C++ is a bad thing to say 11:04 < SinZ> learn brainfuck md_5 11:04 < jast> can't wait to see Rust go stable 11:05 < t92> learn both though 11:05 <+md_5> it sucks that I dont know enough C that I have to get someone else to write this native code for me: https://gist.github.com/md-5/16d0bc3cdf2a8c1cbf95 11:05 <+md_5> thats mainly cause JNI is confusing though 11:05 < eddyb> C is pretty much useless these days 11:05 < t92> not true 11:05 <+md_5> C(++)[11] 11:05 < jast> nah 11:05 < eddyb> the only reason to use C is because bindings, and that's some fucked up thing 11:06 < t92> c++ abi's are not consistent so c is used 11:06 < jast> I have to admit that C++ is slowly becoming usable 11:06 < jast> as long as I don't have to use the STL 11:06 < SinZ> md_5: purebasic 11:07 < eddyb> jast: I've worked in a hobby OS project with a C++ kernel :D 11:07 < jast> good for you 11:08 < eddyb> apart from the lack of a simple C++ FFI, it's strictly superior 13:06 < tehme> oh, i see discussion about c++ *slowpoke.jpg* 13:48 < piracetam> **:00:55 eddyb | C is pretty much useless these days 13:48 < piracetam> air is pretty much useless these days 13:50 < piracetam> md_5: java is emulation of language, not language 13:50 < piracetam> you don't actually code program, you just describe jit how to code the program 13:50 < piracetam> unnecessary abstraction layer 13:51 <+sadimusi> piracetam: please don't start another senseless language debate 13:52 < dx> air is useless since adobe dropped linux support 13:52 < SinZ> ^ 13:52 < eddyb> dx <3 13:53 < t92> i breathe air 13:53 < t92> .-. 13:53 < piracetam> sadimusi: ok, but he started it - "**:57:08 +md_5 | I wish there was a language which had ides as good as java :p" 13:53 < piracetam> t92 ++ 13:55 * Fador is coding HEVC encoder in C89 and Assembly at work 13:55 < dx> Fador: fun! 13:55 <+Fador> dx: sure ;) 13:56 < dx> Fador: so you're in charge of making it suck less than the reference implementation? 13:56 < dx> i know very little about it, but mostly heard that it's slooooow 13:56 <+Fador> dx: well there's also that x265 project ;D 13:57 <+Fador> we are mostly doing research on HEVC.. 13:57 < dx> also fun! 13:58 <+Fador> https://bitbucket.org/multicoreware/x265/wiki/Home <- they also use the reference implementation as the base of their encoder 16:10 < Drainedsoul> Why would you use C++ and not use the STL 16:32 < tehme> great c++ adept is here! 17:31 < TkTech> Drainedsoul: Because internally most STL implementations are a mess, some have obscure bugs (looking at you VC++), often don't perform optimally, platform inconsistencies, and debugging them is a total bitch. 17:38 < eddyb> "VC++" it's not like you're supposed to use it :P 17:41 < tehme> oh lol resease is turbomode 22:22 < Drainedsoul> why are you debugging the STL unless you're an STL developer? 23:08 <+clonejo> That moment when you read man pages and you know the people in the author's section 23:18 <+clonejo> s/author's/authors/ 23:19 < brainiac94> greetings 23:42 < tehme> yoyoyo 23:45 < brainiac94> have you heard of the authentication glitch in CB? --- Day changed mar. sept. 10 2013 00:04 < tehme> tell us 00:44 < brainiac94> I cannot tell you much about how it works, but it abuses 0x02 packets and allows the attacker to login with any user name. 00:44 < brainiac94> It works on a CB without plugins and the only evidence it leaves is this line in the server log: 00:44 < brainiac94> class net.minecraft.server.v1_6_R2.PlayerConnection wasn't prepared to deal with a class net.minecraft.server.v1_6_R2.Packet2Handshake 05:36 < Drainedsoul> can anyone give me some details on time? 05:36 < Drainedsoul> i.e. at what tick is midnight? 08:34 < benbaptist> Drainedsoul, I believe 12000 is the precise midnight time, if that's what you mean. 10:14 <+md_5> hm 10:15 <+md_5> has anyone here ever used any 'other' protocols, for networking, ie not udp/tcp 10:15 <+md_5> or some framework ontop of udp with support for ack'ing + connections 11:50 <+md_5> jast yeah, or UDT 11:50 <+md_5> SCTP too 14:31 < amadornes> Hello. Is there any way to deactivate "java.cli.D.jline.terminal=jline.UnsupportedTerminal" and activate "--nojline" from Bukkit/Spigot? It makes my server use 40% CPU vs the 2% with the Bukkit "--nojline" 14:52 < amadornes> Any ideas? 18:58 < tehme> http://www.youtube.com/watch?v=Fqx7zQJvLVU 19:12 < Kaspars_Raoulfr> Hello everyone, Kaspars_Raoulfrhere and i'm here and ready to DDoS. 19:19 < tehme> sup 19:31 -!- Kaspars_Raoulfr was kicked from #mcdevs by TkTech [Your behavior is not conducive to the desired environment.] --- Day changed mer. sept. 11 2013 04:05 < Serin_> Hi 04:06 < Serin_> What's the point of transactions for the UI? 04:06 < Serin_> They seem to be completely meaningless 04:06 < Serin_> Nothing responds to a success/failure on transactions, the server just follows up with 0x68 SetSlot to sync the inventory state 04:07 <+sadimusi> doesn't 0x6A get sent anymore? 04:08 < Serin_> It's sent, but nothing actually uses it 04:08 < Serin_> Nothing happens regardless of what data is in that packet 04:08 < Serin_> Afaik 04:08 <+sadimusi> iirc the server doesn't send any 0x68 for most transactions 04:08 <+sadimusi> it was originally meant to handle conflicts when multiple players access the same container 04:08 <+sadimusi> but it might not be used anymore 04:09 < Serin_> >X might not be used anymore 04:09 < Serin_> >minecraft protocol in a nutshell 04:09 <+sadimusi> pretty much 04:12 <+sadimusi> yeah, it really looks like it just sends back a packet in some cases 04:12 <+sadimusi> and does nothing else 04:13 < Serin_> There's this on the server side, but I'm not really sure what the point is 04:13 < Serin_> this.playerEntity.openContainer.setPlayerIsPresent(this.playerEntity, true); 04:13 < Serin_> You would think it would be inferred which players are there by which ones you let open the inventory in the first place... 04:15 <+sadimusi> playerEntity.openContainer is always a container the player has opened, so I'm not sure either what it does 04:17 < Serin_> Oh well, my implementation was already working, I just wanted to double check that doesn't do anything 04:17 < Serin_> Thanks for your help 04:17 < Serin_> I have one other question 04:17 < Serin_> What actually produces the beacon beam effect? 04:17 < Serin_> Is that a BlockAction? 04:17 <+sadimusi> isn't it just the block itself? 04:18 < Serin_> No 04:18 < Serin_> You have to make a stack of iron/gold/diamond blocks and set it up first 04:18 < Serin_> Otherwise there's no beam 04:18 < Serin_> Block action would be my shot in the dark, but if it is it's not listed on wiki.vg 04:18 < Serin_> Just thought I'd ask while I happen to be here 04:18 <+sadimusi> well it's certainly easy to find out if you're right 04:20 < Serin_> Doesn't look like a block action, I'll look into it real quick 04:22 <+sadimusi> definitely not block action 04:25 <+sadimusi> might be 0x84 04:26 <+sadimusi> yes, with action set to 3 04:26 <+sadimusi> I assume the effects are listed as NBT in the data field 04:27 < Serin_> Yep, that's it 04:28 < Serin_> Do you know of a decent program to view Minecraft traffic in human readable form? 04:28 < Serin_> I've been dumping it with an MCP mod and reading the dump with a Python parser on shell 04:30 <+sadimusi> there are a few proxies 04:30 <+sadimusi> I use and maintain mc4p, but its log plugin is still not that great 04:30 <+sadimusi> there's also SMProxy 04:30 <+sadimusi> not sure if that's up to date though 04:31 < Serin_> I think it isn't 04:31 < Serin_> Seems to be 1.6.1 04:31 < Serin_> Shouldn't be hard to update though 04:31 <+sadimusi> what os are you using? 04:31 < Serin_> Windows on my dev machine 04:32 < Serin_> With Cygwin 04:32 <+sadimusi> then smproxy might be a bit easier to install 04:32 < Serin_> What's mc4p written in? 04:32 <+sadimusi> python 04:32 < Serin_> Python is my main language, so that's preferable 04:32 <+sadimusi> https://github.com/sadimusi/mc4p 04:32 < Serin_> I was under the impression that was designed for servers 04:33 < Serin_> Neat 04:33 < Serin_> Thanks 04:33 <+sadimusi> I'm not sure what the original author designed it for 04:33 <+sadimusi> but I think it would be too slow for a decent server 04:34 < SinZ> SMProxy can work for servers iirc 04:34 < SinZ> I doubt mc4p can though 04:35 <+sadimusi> SMProxy's scripting capabilities are probably not rich enough for a server 04:36 < SinZ> yoshis work on making mc4p work for connecting to classic servers via smp client is nice though 04:36 < SinZ> shame the conversion of maps take time 05:02 < Serin_> for that matter 05:02 < Serin_> is there any reason to have window IDs besides the separation of player inventory from everything else? 05:02 < Serin_> from open/close window packets server knows what window object is open, that seems unnecessary 06:29 < benbaptist> My string packing implementation seems to be really flakey, it seems it crashes the game sometimes at random when sending 0x03 packets 06:30 < benbaptist> Are the actual sizes of strings always double the "length" value (the short you receive before a string), or is it not consistent? 06:32 < Serin_> it uses two bytes for each character 06:32 < Serin_> so length will always be the number of characters * 2 06:32 < benbaptist> yeah 06:32 < benbaptist> I wasn't sure if maybe some characters were only one byte at times or not 06:33 < benbaptist> I noticed that occasionally the client crashes with a JSON error while sending the 0x03 packet despite my JSON being completely fine, and while I receive the chat messages just fine, sometimes various strings from the client such as the 'plugin message' packet are cut off. 06:34 < benbaptist> e.g. when the client sends the packet for polling the MOTD and stuff, the channel name is "MC|PingHos" with the t cut off 06:34 < benbaptist> I'm in python using the struct module, not sure if .unpack('>h') is enough or not to receive the short or if something else is broken 06:51 < libminecraft> [libminecraft] yuri-sevatz pushed 1 new commit to master: https://github.com/yuri-sevatz/libminecraft/commit/6a2b02fb42e666a5b5b785adcf6151adba870098 06:51 < libminecraft> libminecraft/master 6a2b02f Yuri Sevatz: Add gitignores for KDevelop projects 07:05 < SinZ> wow, a github bot, rather than notifico 07:10 < dx> what's so "wow" about it? 07:11 < SinZ> suprising, for this channel atleast 07:11 < dx> oh 07:11 < dx> it's just someone who didn't read the channel rules, that's not surprising to me :D 14:06 < Yoshi2> SinZ: I think the conversion of classic maps into SMP format is slow because of my pure python code 14:35 < barneygale> Looking for advice on a problem I've never tackled before. I want to add incremental backups of minecraft worlds to a new server wrapper I'm writing. Any advice on a scheme? Simplest would be per-region, but per-chunk might also be possible if I used the first n bytes of the compressed data as a checksum, maybe? 14:36 < barneygale> wondering about file format, options/capabilities/config 14:37 < dx> http://rdiff-backup.nongnu.org/ ? 14:39 < barneygale> uses hardlinks iirc, which would limit it to per-region 14:39 < barneygale> that might not be so bad though 14:40 < barneygale> ah maybe I'm getting mixed up, nvm that ^ 14:40 < dx> yeah, not sure what you were thinking :D although it is sort of limited per-region 14:40 < dx> per-file, rather 14:45 < dx> (i haven't actually used this by itself, instead i regularly overwrite my remote backups with rsync, which is the same thing for network transfer but without saving incremental backups) 15:38 < Blagun_Cibran> Hello everyone, Blagun_Cibranhere and i'm here and ready to DDoS. 15:39 -!- Blagun_Cibran was kicked from #mcdevs by sadimusi [Your behavior is not conducive to the desired environment.] 16:08 < shoghicp> Who was that? 16:09 < shoghicp> let me guess, LOIC? 16:09 <+sadimusi> another one of those bots 16:09 <+sadimusi> possibly 16:10 < shoghicp> :s 16:14 <+sadimusi> shoghicp: weren't you around when this happend? http://d.pr/n/jbfS 16:14 < shoghicp> lol, no 16:15 < shoghicp> Litespeed was the manager? 16:15 <+sadimusi> yes 16:15 <+sadimusi> and Sonjay 16:17 < shoghicp> :s 16:18 < shoghicp> That reminds me of people evading a ban on #mcpedevs to request the lif of their ban 16:18 < shoghicp> lift* 23:45 < ZenovaCreations> you should check out my new animation 23:45 < ZenovaCreations> http://www.youtube.com/watch?v=Zx5Mngfsezo --- Day changed jeu. sept. 12 2013 00:15 <+Prf_Jakob> TomyLobo: http://i.imgur.com/px6Z1za.gif 00:15 <+Prf_Jakob> err 00:15 <+Prf_Jakob> ops 00:15 <+Prf_Jakob> TkTech: ^ 00:26 < SinZ> wow 11:59 < tehme> yo 11:59 < tehme> help me please 11:59 < tehme> what is the general word for widht and height? bounds? 11:59 < tehme> width* 11:59 < jast> it's the word I'd use, at least 12:02 < zutto> dimensions? 12:03 < zutto> bounds, boundaries, dimensions.. someone can probably toss in few others 12:05 < tehme> well, let it be "bounds" for now 12:06 < tehme> programming is not building, change is easier:) 12:06 < zutto> i'm more used to "dimensions" word, but bounds is fine if you feel comfortable with it 12:08 < eddyb> "bounds" make sense in a context such as AABB (axis-aligned bounding box) 12:54 < winny> 10 DIM ARY(10) 16:08 < tehme> http://imgur.com/kN8MpUj 16:09 < tehme> first attempts to make interface 16:09 < tehme> with lua api 16:10 < eddyb> lol, lua 16:17 < tehme> yep 16:18 < tehme> do you like it?:) 21:53 < breezeyboy> Hi 21:54 < breezeyboy> How do I change the minecraft version? 21:59 <+pdelvo> of what? 21:59 < breezeyboy> the server 22:01 < dx> use a hex editor and replace all entries of 1.6.2 with 1.7 22:01 < dx> (that was a dumb joke don't take it seriously) 22:02 < dx> also, hi #mcdevs, i was away because my internet connection sucks today. did i miss any discussion on the new json chat extensions? 22:03 < dx> i sure wish the 'public logs' were actually public 22:07 < breezeyboy> No help? 22:08 <+AndrewPH> dx: I don't think you missed anything at all 22:08 < dx> cool, thanks. --- Day changed ven. sept. 13 2013 02:16 < mbaxter> sadimusi: ammar2 tells me you're the one to poke about b.wiki.vg not having latest snapshot. So uh, poke. :) 02:17 <+sadimusi> mbaxter: gr.um refactored quite a lot of the codebase, it'll take some time before burger works again 02:18 <+sadimusi> but if you're just interested in the protocol, that part still works fine 02:19 <+sadimusi> the protocol didn't change in the snapshot today 02:20 <+sadimusi> however, the version is now 76 02:22 < tehme> omg changes changes 02:22 < tehme> my client will never be finished 02:23 < Kyle> tehme: the reality of minecraft eh 02:23 < tehme> i hope they will add message size field 06:37 < SinZ> I quite like the new stuff we can do in the chat json now ^.^ 06:48 <+fragmer> Happy programmers' day 06:48 <+fragmer> https://en.wikipedia.org/wiki/Programmers%27_Day :D 06:49 < SinZ> yay, an excuse for why I didn't go to school today 11:31 < dx> so #mcdevs 11:31 < dx> my minecraft server is getting even more dead than before 11:33 < dx> a few people still play, but it's idling most of the time, and since it relies entirely on donations, i won't be able to keep it up for much longer 11:34 < dx> so i had this GENIUS AND COMPLETELY ORIGINAL IDEA. pay for the server by hour, and use a proxy server (in my other cheaper VPS) to get players to turn the server on when they want to play. 11:36 < winny> maybe you could hook it into inetd haha 11:37 < dx> it's more about nuking the instance and re-starting it from a snapshot, then having 'something' so the players can wait for it to start 11:37 < dx> but i can't help but think that this has been done before. has it? 11:48 < SomeoneWeird> what was the website that showed differences between protocol versions? 11:49 < dav1d> b.wiki.vg 11:49 < dx> but it's not updated for the snapshot due to refactoring of the minecraft code 11:51 < dx> but i think you could run burger yourself to get only protocol changes 11:52 < Yoshi2> dx: I do think that your idea is not entirely original, I've heard of at least one instance where somebody made something like that 11:52 < Yoshi2> but it was very long ago, sooo 11:52 < Yoshi2> go for it! :D 11:53 < dx> :D 11:55 < SomeoneWeird> dav1d, cheers! 11:59 <+md_5> dx 11:59 < dx> md_5 11:59 <+md_5> a) servers charge when they are off 11:59 <+md_5> b) generally in 1 hour slices 12:00 < dx> 06:37 < dx> it's more about nuking the instance and re-starting it from a snapshot, then having 'something' so the players can wait for it to start 12:00 <+md_5> c) even the fastest servers take 60 seconds to provision (DO) 12:01 < dx> DO = digitalocean? 12:01 <+md_5> yah 12:02 < dx> well that doesn't sound too bad 12:02 < winny> it should be easy to write a simply inetd style service that shuts down servers that are inactive for say 5 minutes 12:02 < winny> simple* 12:02 < dx> why inetd 12:02 <+md_5> he means the entire vps 12:02 < winny> style 12:02 < dx> and ^md_5 12:03 < zutto> md_5: clouds dont charge per hour ;l 12:03 < dx> not java, but removing the entire instance and the allocated disk 12:03 < winny> clouds charge for actual usage :P 12:03 < zutto> ^ 12:04 < zutto> so if your server is active for lets say 2 hours per day 12:04 < zutto> you could keep it up for quite cheap 12:04 < dx> >Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Relational Database Service (Amazon RDS) instances accrue hourly charges as soon as you launch the instance, and continue accruing until you explicitly terminate the instance. If you launch an instance and then sign out of your account without terminating the instance, it will continue running and accruing charges 12:05 < zutto> wait, they moved away from the execution cycles? 12:05 < dx> digitalocean: >Your diskspace, CPU, RAM, and IP address are all reserved while your Droplet is powered off. If you want to save a Droplet for future use take a snapshot of it and then destroy it 12:06 < dx> rackspace: >If I am not using my server or do not have traffic to it, do I still have to pay for it? Yes. Currently the server would either be running or you would have to delete it altogether 12:07 < dx> aaand that's all the 'cloud' hosting services i know 12:08 < zutto> i could guess that lw also offers some sort of cloud, and ovh does too 12:13 < dx> md_5: so yeah, it's probably going to be ugly, but i can't afford anything else (and sounds like a fun project, too) 12:20 <+md_5> dx if you have people on your server at least once an hour 12:20 <+md_5> you wont save any money 12:21 <+md_5> if you are short of csah 12:21 < dx> md_5: i have a total of 2 active players, only one of them logs in regularly 12:21 <+md_5> I highyl suggest digital ocean 12:21 <+md_5> I run Minecraft instances for 6 hours or so on them 12:21 <+md_5> works out great 12:21 < dx> neat. 12:21 <+md_5> $10/month if you want to go full time 12:21 <+md_5> 1gb ram is more than enough for 2 players 12:22 < dx> thing is, i had peaks of 6 players... during summer. 12:23 <+md_5> can you afford 3 cups of coffee a month? 12:23 < dx> everything pretty much died after classes started 12:23 < dx> lol 12:23 < dx> actually, personally i can't! 12:24 <+md_5> :( 12:24 < dx> i have no reliable way to pay for it myself 12:24 < zutto> md_5: how much are you paying for that 6 hours or so for the servers on DO? 12:24 <+md_5> zutto let me grab you my bill 12:25 < dx> but i got $40 left in the server donations box, so i'm trying to spread the butter reaaally thin 12:25 <+md_5> (s) 12:25 <+md_5> I dont use it much 12:25 <+md_5> zutto I have spent 16c in total 12:25 < zutto> 16c? 12:25 <+md_5> sorry + 29 12:25 < zutto> 0.29$? 12:25 <+md_5> 45 cents 12:25 <+md_5> yeah 12:25 <+md_5> 0.45$ 12:25 < dx> what period of time? 12:26 < dx> just one day, 6 hours? 12:26 <+md_5> http://files.md-5.net/s/yd8Gb.png 12:26 <+md_5> http://files.md-5.net/s/ZBsGV.png 12:26 <+md_5> http://files.md-5.net/s/JZ38U.png 12:26 <+md_5> http://files.md-5.net/s/Mjrie.png 12:27 < dx> oh, so, basically, 45 cents on all your servers ever 12:27 < dx> lol. 12:27 < zutto> thats pretty cheap, i gotta admit 12:27 <+md_5> I use it when I want to test stuff 12:27 < dx> noticed 12:27 < zutto> gotta remember that site, i have times when i need to rent computing power from people ;l 12:28 <+md_5> or on the odd occasion portscan a host or two 12:28 <+md_5> :s 12:28 <+md_5> dont tell them that 12:28 < zutto> why not? :P 12:28 < zutto> they're servers ment to compute stuff 12:28 < dx> speaking of which, RIP http://instantserver.io/ 12:28 <+md_5> > portscan 12:28 <+md_5> > legal 12:28 < dx> portscans aren't legal? 12:28 < zutto> oh right 12:28 < dx> that's news to me 12:29 <+md_5> well 12:29 <+md_5> > portscan 12:29 < zutto> i dont think thats illegal 12:29 <+md_5> > AUP / TOS 12:29 < dx> heh, okay then 12:30 <+md_5> http://imc.io/ 12:30 <+md_5> :o 12:30 <+md_5> they use spigot 12:31 < dx> the price to extend for 6 hours is "f" 12:32 < dx> is that 15 or a "fuck you"? 12:32 <+md_5> dx looking at the src 12:32 <+md_5> its meant to be a fcebook like 12:33 < dx> oh 12:33 < dx> so the latter 12:33 < dx> md_5: also, wait, can you really do 24 players on 512mb ram? 12:33 <+md_5> not quite 12:33 < dx> okay, cool. there was no way spigot would be that good 12:33 <+md_5> you could get very close 12:33 < zutto> dx: you can if you have no plugins ;l 12:33 <+md_5> maybe 18 12:33 < dx> md_5: ...lol 12:34 <+md_5> but 24 is a stretch 12:34 <+md_5> sure if they were all at spawn 12:34 <+md_5> or view distance was 3 12:34 <+md_5> but with a view distance of 10, and all spread out, no 12:35 < dx> sadly my 'most active' server is FTB, and it's pretty bad at resource usage 12:39 < zutto> damn you md_5 12:40 < zutto> i got all excited for these hourly servers now 12:40 < zutto> just thinking about all the stuff i could do with just few cents 12:42 < dx> :D 12:44 < zutto> i'm in process of building load balanced c# framework, these servers would be perfect for testing ;l 12:44 < dividuum> hi. I wrote a minecraft client (based on mc4p) and use Yggdrasil authentication. Now each time this client logs in, my normal minecraft clients ask for credentials when starting up. why? 12:45 < dividuum> according to the Authentication page on the wiki, logging in should only invalidate other accesstokens, when i'm not providing a client token myself (which i do) 12:45 < dividuum> any hints? 12:47 <+md_5> are you using the same client token each time? 12:47 < dividuum> not yet (i'm not keeping state at the moment) 12:48 <+md_5> you might have to 12:48 <+md_5> not sure 12:48 < dividuum> but even if i log in only once with my client, the normal minecraft client cannot log back in. 12:49 < dividuum> for me that looks like access tokens are invalidated every time i use the yggdrasil /authenicate url 12:53 < dividuum> just tested: using the same client token didn't help. the normal minecraft client still says "You're already logged in as xxxx in another profile" 12:56 < dividuum> hm. in authentication.py, there is an api endpoint /signout (no documentation on this on the wiki). maybe i have to signout one client before using the other. i'll test that 13:05 < tehme> how can i determine which blocks do i need to render? 13:05 < tehme> is there any algorithm better that brute force? 13:08 <+md_5> tehme http://en.wikipedia.org/wiki/Viewing_frustum 13:08 <+md_5> you should have a good understanding of opengl and stuff like culling before attempting to re create a game such as minecraft 13:09 <+md_5> http://zeuxcg.org/2009/01/31/view-frustum-culling-optimization-introduction/ 13:09 <+md_5> http://fgiesen.wordpress.com/2010/10/17/view-frustum-culling/ 13:09 <+md_5> alternatively for now, you can just let it do it for you: http://r3dux.org/2011/02/how-to-perform-manual-frustum-culling/ 13:09 <+md_5> but it will be slow 13:18 <+Amaranth> Eh, a chunk based system makes such things simple 13:20 <+Amaranth> Sending a little extra data isn't a big deal so just check if any part of the chunk is in bounds instead of trying to do something more fine grained 13:24 <+sadimusi> dividuum: do you refresh your access token? 13:25 < dividuum> no 13:25 < dividuum> i didn't do that yet, since the normal minecraft client already fails to login after my client once 13:25 <+sadimusi> there must be something wrong with your code 13:25 < dividuum> *after my client logged in once 13:26 < dividuum> probably :-} 13:26 <+sadimusi> I use mc4p with the -a flag all the time and mc logs in fine afterwards 13:27 < dividuum> i guess that uses the credentials stored by the normal client 13:27 <+sadimusi> yes 13:27 < dividuum> without having looked what happens exactly, i guess that reuses the clienttoken and accesstoken generated by the normal minecraft client 13:28 <+sadimusi> yes 13:28 < dividuum> unfortunatelly this is not possible for my project 13:28 <+sadimusi> right 13:28 < dividuum> i'm trying to login to minecraft on behave of a user 13:28 <+sadimusi> so you generate a client token yourself? 13:28 < dividuum> yes 13:29 <+sadimusi> is your code available anywhere? 13:29 < dividuum> no. but i can put a minimal version of it 13:29 < dividuum> you're the author of mc4p, right? 13:29 < dx> *cough* gpl *cough* 13:30 <+sadimusi> the original author is mmcgill, but I've been maintaining it for some time now 13:30 < dividuum> thanks for that :-) 13:32 < dx> oh hey, pre-release of 1.6.3, i wasn't expecting that 13:32 < SinZ> the pre-release is just as a world conversion basically for 1.7, right? 13:33 < dx> seems to be, but i wonder if it has other interesting bugfixes 13:34 < dx> well nevermind 13:34 < dx> the tracker says it's just one ticket https://mojang.atlassian.net/browse/MC-15547 13:35 <+sadimusi> burger doesn't detect any changes either 13:35 <+sadimusi> expect for the protocol version which is now 77 13:36 < dx> supicious! 13:36 < dx> *suspicious 13:37 < SinZ> huh, why would the protocol jump 13:37 < SinZ> you would think they would try to keep it compatible 13:38 < dx> sadimusi: what is burger checking? protocol packets only? 13:38 < dx> or are there other functional toppings? 13:39 < zutto> md_5: how does this DO actually charge you? 13:39 < zutto> i made account and transfered 10$ to it, started new droplet for 3 minutes and shut it down -> made snapshot and destroyed it 13:39 < zutto> i cant see that it would have charged me anything 13:39 < zutto> yet 13:40 <+sadimusi> dx: all toppings are working 13:40 <+sadimusi> dx: just a few strings in the language files changed 13:40 < dx> sadimusi: i thought stuff was broken due to a refactoring, or did you fix everything already? 13:40 <+sadimusi> there's a new "/setidletimeout " commad 13:40 <+sadimusi> *command 13:40 <+sadimusi> dx: it's broken in the snapshots, but 1.6.3 still uses the old codebase 13:40 < dx> ..oh, right 13:41 < dx> cool, then 13:43 < dividuum> sadimusi, https://gist.github.com/anonymous/6078924aae090d0ba4c8 13:50 <+sadimusi> dividuum: can't see anything wrong with it 13:51 < dividuum> try login in with it. then open your minecraft launcher. it will ask you for your password 13:55 <+sadimusi> I can reproduce it 13:58 < dividuum> your minecraft launcher doesn't ask you for credentials after logging in with the python program? 14:09 <+md_5> zutto it takes an hour or two before it goes through 14:10 <+sadimusi> dividuum: I think it's just a stupid mistake on my side 14:12 < zutto> ah i see 14:13 < dividuum> so the laucher asks for credentials? 14:13 <+sadimusi> [13:55:21] +sadimusi: I can reproduce it 14:13 <+sadimusi> yes 14:14 < dividuum> oops. ok. misread that. sorry 14:14 <+sadimusi> my fix doesn't seem to help much :/ 14:14 <+sadimusi> did you already fix the _random_token method yourself? it didn't return anything 14:14 < dividuum> yeah. sent you a pull request 4 minutes ago :-) 14:14 <+sadimusi> but for some reason my token is still getting invalidated 14:15 < dividuum> maybe only one client token can every be used? so every time /authenticate is called, all other tokens/access tokens get invalidated? 14:16 <+sadimusi> no, at least that's not how it used to work 14:16 < dividuum> ok. strange 14:16 <+sadimusi> Dinnerbone: any idea why access tokens are getting invalidated when logging in with a new client token? 14:17 <+sadimusi> dividuum: I'll try loggin in with multiple instances of the vanilla client 14:18 < dividuum> ok. this is wierd. my launcher on my laptop works. my launcher on the desktop got invalidated. now i'm confused :) 14:19 < SinZ> iirc, can only run on one client token at a time 14:19 < SinZ> a new client token invalidates all existing stuff 14:19 < dividuum> sorry: had my girlfriends account on the laptop. that explains that :-} 14:19 < dividuum> SinZ, looks like it 14:20 <+sadimusi> indeed 14:20 <+sadimusi> but that was definitely not the case before and according to Dinnerbone's earlier statements isn't intended behaviour 14:20 <+sadimusi> time for another bug report 14:31 <+sadimusi> https://mojang.atlassian.net/browse/MCL-1513 14:33 < dividuum> sadimusi, thanks 14:36 < dividuum> btw, if you havn't seen it already: http://www.youtube.com/watch?v=a_RbDDVhYJA (my ugly ugly hack for long view distances) 14:37 <+sadimusi> interesting 14:39 < dividuum> it's a voxel renderer that uses a generated low-res 3d texture 14:40 < dividuum> and using mcp, a tiny c lib (called by JNI) that includes a python interpreter i run shader code in. ugly as hell :-) 14:42 < Not-002> [mc4p] sadimusi pushed 4 commits to master [+0/-0/±4] http://git.io/bkjApA 14:42 < Not-002> [mc4p] Florian Wesch 120d283 - actually create a client token 14:42 < Not-002> [mc4p] Florian Wesch 52f4374 - added metadata field to 0x14 14:42 < Not-002> [mc4p] Florian Wesch 226e7e5 - added particle effect paket (0x3f) 14:42 < Not-002> [mc4p] Florian Wesch 56a579e - make old authentication service available (without using lastlogin) 14:43 < dividuum> hey, i didn't even make a pull request for the last one :-) 14:43 <+sadimusi> I know, but I liked it 14:44 < dividuum> looks like i'll use the old authentication server, until this yggdrasil thing is somehow changed 14:44 <+sadimusi> you might want to hard reset your repo, I had to edit your commits a bit 14:45 < dividuum> yeah. noticed that. will do 14:45 <+sadimusi> had to get rid of that merge commit somehow :D 14:46 <+sadimusi> and you violated pep8 a bit with your first commit 14:47 < dividuum> d'oh :} 14:47 <+sadimusi> most of the original code written by mmcgill violates pep8 pretty heavily, but I'm trying to at least keep the new and completely rewritten files clean :) 14:48 < dividuum> i can confirm: i looks better now 14:55 <+sadimusi> dividuum: I've just looked over your website a bit, you might like https://github.com/sadimusi/jinja2compact/ 14:56 < dx> sadimusi: nice! 14:56 < dividuum> interesting. bookmarked for the future 14:57 < dx> really simple too 16:01 < tehme> yo people 16:01 < tehme> can you do a good thing for me? 16:02 < tehme> i can't register on a server because of ip limit, can you do it? 17:41 <+clonejo> tehme: what server? 23:18 < Brandon15811> dx, http://aws.amazon.com/big-data/powerof60/ 23:19 < Brandon15811> $100 in aws credit for ec2 and emr 23:22 < tehme> lol 23:23 < tehme> dat evil kvirc set some aphorism on my channel exit 23:23 < tehme> well, better than ads --- Day changed sam. sept. 14 2013 02:45 < tehme> yo 02:45 < tehme> what packet is used to move item from inventory to hotbar? 02:57 <+clonejo> tehme: it's just a regular inventory move 02:58 <+clonejo> the hotbar is part of the inventory 02:59 < tehme> clonejo: i can't find packet 02:59 < tehme> 0x66? 03:01 <+clonejo> are you doing a client or a server? 13:43 < tehme> yo sup 13:43 < tehme> do bow enchants work on sword? --- Day changed dim. sept. 15 2013 01:52 < Not-002> [Miners] Astelyn pushed 1 commit to master [+0/-0/±7] http://git.io/17bjog 01:52 < Not-002> [Miners] astelyn 442b558 - mc: Added ClassiCube support 09:33 < winny> so is oracle java really faster? 09:35 <+md_5> not in my experience 16:49 < tehme> yo 16:49 < tehme> i've just hacked some noob's account and stole sword with enchants of 1000 lvl 16:49 < tehme> how is it done? 16:50 < winny> lol 16:50 < winny> poor password? 16:50 < tehme> "tututu" 16:50 < tehme> same as region name:D 16:51 < winny> roflmao. 17:05 < tehme> so how is this shit done? is it admin magic or cheats? 17:13 < dx> "hacked some noob's account" 17:13 < dx> so classy 17:18 <+Prf_Jakob> tehme: this channel is not the forum for bragging about exploits and hacking, this is your final warning. 17:19 < tehme> Prf_Jakob: ok 19:11 < eddyb> he could've said "I found lvl 1000 enchants, how is this possible?" 19:13 < eddyb> tehme: not sure if /enchant worked with unobtainable enchants/levels before, /give sure works now, any kind of external editors, and there was a way to put any enchants on a book, when signing it (the server didn't check what NBT fields the client sent) 19:14 < tehme> eddyb: was a way?:) 19:14 < tehme> or is? 19:15 < eddyb> if nobody removed the books created back then, they would still be usable (not sure if that exploit was fixed before you could use anvils to apply enchanted books, but I think so) 21:19 < tehme> HELL YEAH i reworked my buffer for protocol 21:19 < tehme> and it does not crash 21:19 < jast> yay! :) --- Day changed lun. sept. 16 2013 00:04 < tehme> time to try opengl 00:09 < tehme> omg 00:10 < tehme> sdl2 opengl header is 11k lines long and full of macros 00:10 < dexter0> have you never used OpenGL? 00:10 < tehme> nope 00:10 < dexter0> b/c yes, there are a lot of macros 00:10 < tehme> i didn't 00:12 < tehme> where should i get dev libs for windows? 00:16 < tehme> is glut ok? 00:16 < tehme> and are there any alternatives? 00:17 < dexter0> glut is a helper library for GL, all you need is something that will give you a GL context you can issue commands to. 00:17 < dexter0> No idea how it works under Windows. 00:21 < tehme> found it 00:22 < tehme> headers are built into vs 00:22 < tehme> and libs too 00:22 < tehme> mb i should update them... 00:26 < tehme> my exampledoesn't work:( 00:47 <+md_5> anyone here got JNI experience :c 00:54 <+sadimusi> burger's block topping is almost working again :) 00:54 <+sadimusi> only one block still isn't quite right 00:55 <+sadimusi> "2 files changed, 267 insertions(+), 88 deletions(-)" :/ 01:00 < tehme> almost 01:01 <+sadimusi> well, then I still have to fix items, recipes and biomes 01:03 < tehme> will they add message size?:) 01:03 <+sadimusi> of course not 01:03 < tehme> this is so sad 01:04 < tehme> sadimusi: do you know about lvl 1000 enchantments? 01:04 <+sadimusi> iirc you can't go over 10 in vanilla minecraft 01:04 <+sadimusi> even with editors and stuff 01:05 < tehme> i don't know if that server is vanilla 01:05 < tehme> but i sto... got a sword with full lvl 1000 enchantments 01:05 < tehme> one shots diamond-armored player 01:06 <+sadimusi> can the client even display that? 01:06 < tehme> i want to be able to make swords like this one 01:06 < tehme> yep 01:06 < tehme> wait a minute 01:07 < tehme> http://i.imgur.com/TBIjz5r.png 01:07 < tehme> like this 01:08 <+sadimusi> so it can't really display it 01:08 < tehme> heh 01:09 <+sadimusi> anyway, I'm sure there are dozens of plugins out there to build those 01:09 < tehme> so this is admin's work 01:09 < Drainedsoul> writing token pasting macros, how bad should I feel about myself? 01:10 < tehme> Drainedsoul: wut? 01:10 < Drainedsoul> #define GET(x,y) x( get_ ## y ( x ## _key , x ## _default )) 01:10 <+sadimusi> tehme: obviously 01:10 < Drainedsoul> #define GET_INT(x) GET(x,int) 01:10 < tehme> wow 01:11 < tehme> now you are a sinner too:D 01:11 < Drainedsoul> there was really no other way to accomplish this that didn't involve all sorts of typing. :\ 01:11 < tehme> do you want to see my code? you will feel better 01:12 < Drainedsoul> lol 01:12 < Drainedsoul> do you use macros instead of templates/inline functions or something 01:13 < tehme> nope 01:13 < tehme> i use generated code 01:13 < tehme> and until today i used flat vector as message buffer 01:13 < tehme> offsets everywhere 01:14 < Drainedsoul> I use a flat vector as a message buffer, but I use clever templating tricks so you don't see it 01:14 < tehme> but when i look at those tricks my eyes bleed 01:14 < tehme> right?:D 01:15 < Drainedsoul> they're not especially difficult to understand 01:15 < tehme> link? 01:16 < tehme> and whu not deque? 01:16 < tehme> why* 01:17 < tehme> https://github.com/meandmark/SDLOpenGLIntro/tree/sdl2 01:17 < tehme> what do you rhink about this code style> 01:17 < tehme> ? 01:17 < tehme> think* 01:17 < tehme> fuck 01:18 < Drainedsoul> https://github.com/RobertLeahy/MCPP/blob/master/include/packet.hpp#L84 01:19 < Drainedsoul> allman gtfo 01:20 < tehme> wut?