22:25 < TkTech> If you're a developer, the 3rd party apps and APIs are extremely extensive, which is what keeps me interested in it long term. 22:26 < gamingrobot> I have only been playing for 2 months but I have already started digging though apis 22:30 < TkTech> gamingrobot: Focusing on anything in particular? Trading, industry, PvE, PVP, FW, etc...? 22:31 < gamingrobot> PvE with daytripping in wormholes and lowsec 22:31 < TkTech> Now's a great time to start playing with the APIs, since single-sign-on and CREST market pricing are finally public. 22:31 < gamingrobot> Was just in a dragon slayer fleet yesterday with 114 people 22:32 < TkTech> Ohhhh, you in EVE-Uni? 22:32 < gamingrobot> yea 22:34 < TkTech> Good place to be for newbros, the stats from Fanfest show that the vast majority of players who start with EVE-Uni end up sticking with it vs. going alone. 22:34 < TkTech> Are you Eastern? We'll probably go kill another carrier or two tonight if you feel like joining our NPSI fleet. 22:35 < gamingrobot> Mountain, and I would if I didnt have so much stuff to do tonight 22:40 < TkTech> Silly you, EVE is Life, EVE is Good. 22:41 < TkTech> Let it consume you, let the pizza delivery man know you by name. 22:41 < dx> scary --- Day changed mar. avril 21 2015 22:33 < rom1504> any clue how does stair placement can be done ? is it related to the cursors in http://wiki.vg/Protocol#Player_Block_Placement ? 22:36 <+Thinkofdeath> its a combination of your position relative to the block and the cursor position (if I remember right) 22:36 < shoghicp> it is :S 22:38 <+Dinnerbone> It should be the "cursor position" (we call it sub block position), it's the position on the face of the block you clicked. 22:54 < Aragas> If I remember right someone wanted to sort all those tools by version 22:55 < rom1504> ok it's what I thought, kind of complicated 22:55 < Aragas> ah, they didn't touched library part 23:04 <+Thinkofdeath> rom1504: https://gist.github.com/thinkofdeath/cdd2b4181bc3a4c20d7c f,f1,f2 = cursor x,y,z 23:07 < rom1504> oh thanks ! 23:33 < kevinsan> I have 1.8.4 working in Eclipse, but I notice that some method parameters still have obfuscated values (e.g. BlockPos p_180676_2_) 23:34 < kevinsan> is this normal, or should I use an earlier version with the current MCP? --- Day changed mer. avril 22 2015 00:32 <+XorBoole> why does making the barrier item a non-preset blockmodel breaks the barrier particle? well I know why, but it's hacky behavior =p 19:06 < ispillmydrink> Hey all :) 19:07 < Aragas> okay, i wanna point out some details on encryption on client side. We get public and verification keys, generate random shared key. Then, with rsa and public as key, we encrypt shared and token. Correct? 19:10 < ispillmydrink> I’ve got a quick question. I’m finding that most of the time when I call GET /worlds/$ID/join on the Realms API, the response is a 503, but very consistently, (honoring the retryafter header, of course), it works on the fourth (or fifth?) try. 19:11 < ispillmydrink> I would just expect it to be random, so I’m wondering if I’m doing anything wrong with my requests. 19:13 < ispillmydrink> Also, it seems like there’s a window of time, where after the first successful call, it’ll start working fine for a while. 19:19 < ispillmydrink> (To be fair, I guess that wasn’t a very quick question. Heh heh.) 19:19 < ispillmydrink> (It was fairly longwinded.) 19:28 <+ammar2> Aragas: yup that's right 19:29 <+ammar2> you generate a random shared secret and encrypt it using with rsa using the pubkey from the server 19:29 <+ammar2> along with the token 19:30 < Aragas> thx. Using not in-build encryption and can't figure out what's the problem is. At least some fun 19:34 < Aragas> BadPadding exeption. Seems like it is a problem with rsa 19:38 <+ammar2> you need to be using pkcs padding 19:41 < Aragas> i am using it, that's why it's funny 19:44 <+ammar2> you wanna show your code? 19:45 < Aragas> I can, but i think it's a problem with the library i use, because my old worked well 19:49 < Aragas> https://gist.github.com/Aragas/cf42c07c31fd0fdec344 If u wanna 19:49 < Aragas> I don't think we should use IV here, right? 20:00 < Aragas> Just noted. Can public key be 162 bytes? 20:01 <+ammar2> Aragas: it's pkcs1 v1.5 20:01 <+ammar2> not sure if your library supports that 20:04 <+XorBoole> TkTech what are the rules insofar as what projects are allowed to have the commit bot spit out in here? 20:04 <+XorBoole> I was debating adding my experimental resource pack. 20:08 <+SinZ> the bot itself is pretty loose on rules, this channel might be different 20:08 <+XorBoole> ostensibly yes, I'm just no sure where the rules are kepty 20:08 <+SinZ> haven't paid close attention to notifico here 20:08 <+XorBoole> if I knew wouldn't ask =p 20:09 <+SinZ> depends how often you commit I guess 20:20 < Aragas> ammar2: thx, worked now. Should have focused on pkcs1 v1.5 20:41 < Aragas> Does 1.8 servers still send MC|RPack messge? 20:43 <+Thinkofdeath> no 20:44 <+AndrewPH> XorBoole: IIRC if it's minecraft-related you can point it towards here 20:45 <+AndrewPH> But to know for sure I'd have to grep my logs, and I'm on windows. 20:45 <+XorBoole> meh, hopefully this will make me want to push more 20:45 <+XorBoole> I added it and I'll wait until I get shouted at. 20:45 <+XorBoole> it's half rp, half learning resource 22:01 < Not-3656> [1.8-Models] drXor pushed 1 commit to master [+0/-1/±0] http://git.io/vfCAq 22:01 < Not-3656> [1.8-Models] drXor 417098a - delete random file that shouldn't be here 22:01 <+XorBoole> oh dear, I think I broke something 22:02 <+XorBoole> or... wait.. never mind 22:02 * XorBoole waits to get shouted at 23:01 < dx> XorBoole: AAAAAAAAAAA 23:02 <+jnoah> BBBBBBBBBB 23:03 < zml> CCCCCCCCCCCCC 23:07 < gamingrobot> C++C++C++ ? 23:08 < dx> incorrect 23:08 < dx> RUSTRUSTRUSTRUSTRUST 23:09 <+jnoah> ^ 23:56 <+Amaranth> OCAMLOCAMLOCAMLOCAML 23:56 <+Amaranth> Am I doing this right? --- Day changed jeu. avril 23 2015 00:13 <+jnoah> AGDAAGDAAGDAAGDAAGDAAGDA 00:13 <+jnoah> i think that's how it's done 00:38 <+XorBoole> pls. SCALASCALASCALASCALA 01:01 <+AndrewPH> GOGOGOGOGOGOGO 01:03 < kahrl> RUBYRUBYRUBYRUBY 01:03 < kahrl> could it be, could it be that you're joking with me? 01:04 <+AndrewPH> PHPPHPPHPPHP *falls dead* 06:12 < gamingrobot> oops someone crashed 06:24 <+jnoah> 1 11:44 < Aster> Hi, I'm trying to parse .mca files, I was wondering if http://wiki.vg/NBT and http://wiki.vg/Region_Files were up-to-date 11:59 <+md_5> Aster should be but the minecraft wiki is a better resource for map format 11:59 < gurun> Aster, i just did an implementation some days ago following that, so yeah. 11:59 <+md_5> http://minecraft.gamepedia.com/Anvil_file_format 11:59 < gurun> or hmm, yeah i followed the minecraft wiki. 12:00 < Aster> Okay. 12:00 < gurun> didn't even notice that wiki.vg had that info. 12:01 < Aster> Did the NBT format change at all? 12:02 < gurun> change since when? It has changed since it was first seen, yes. 12:02 <+md_5> hasnt changed in like 3 years 12:02 < gurun> did a quick comparison between the sites. The information at least seems correct also in wiki.vg. 12:02 < gurun> there is some code linked to the viki.vg that can be useful. 12:02 < Aster> bah 12:03 < Aster> I can parse all the .dat files but my NBT parser breaks on chunks 12:03 <+md_5> chunks arent straight nbt 12:03 <+md_5> well regions arent rather 12:03 <+md_5> read http://minecraft.gamepedia.com/Anvil_file_format for how to get the NBT chunks 12:03 < Aster> Region parsing is working fine, it seems 12:04 < Aster> I'm getting the locations, reading the chunks, uncompressing them, all that works fine 12:04 < Aster> It's parsing the chunk NBT data that breaks stuff 12:04 < Aster> So I guess I have to go for a long debugging session 13:04 < Aster> Oh , hah 13:05 < Aster> My parser was working perfectly, I just wasn't allocating enough data for libz to decompress to. 13:10 < Aster> zlib, rather 16:46 < TkTech> http://wiki.vg/Talk:NBT 16:46 < TkTech> "Just remember, Wikipedia is not the place to voice personal opinions, ...." 16:46 < TkTech> "Good thing we're not wikipedia, then Barneygale (talk) 23:58, 30 October 2012 (MST) " 16:46 < TkTech> Love it. 16:46 < TkTech> XorBoole: If it's minecraft related, and you don't spam 30000000 commits a second, you're more than welcome to push your commits here. People who dislike the commit bot can simply mute it. 16:47 * XorBoole cracks his knuckles 16:47 <+XorBoole> brb commiting one byte at a time 16:47 < barneygale> TkTech, ahaha, can't remember making that comment 16:47 < dx> just keep it under 30000000 commits a second 16:47 < dx> up to 29999999 is fine 16:47 -!- barneygale was kicked from #mcdevs by TkTech [-_-] 16:48 <+XorBoole> #rekt 16:48 < dx> ...misfire? 16:48 < TkTech> Whooooops, that was the wrong person. 16:48 < TkTech> OP ABUSE 16:48 < dx> :D 16:48 < barneygale> who stole my freeze peach 16:48 <+XorBoole> loooooool 16:48 < TkTech> My first coffee of the day is still brewing, okay? 16:48 < dx> how does that even happen, you type /kick and then tab and kick the first person that gets completed? 16:49 <+XorBoole> > first coffee of the day 16:49 <+XorBoole> > not having coffee piped via IV 24/7 16:49 <+XorBoole> fucking casual 16:49 < barneygale> a dev I used to vaguely know buys powder caffeine and snorts it 16:50 < barneygale> v.v 16:50 < barneygale> i'll just stick to energy drinks 16:50 <+XorBoole> I have a friend who snorted curry powder one night 16:50 < barneygale> christ that sounds painful 16:50 * dx doesn't drink coffee or anything like that 16:50 <+XorBoole> I have strange friends 16:50 <+XorBoole> most of us should be in an asylum anyways 16:51 <+XorBoole> all the worse for you normal people, having nuts like me and my friends on the loose 16:52 < dx> it's okay, as long as you don't go nuts with the notifico commits 16:53 <+XorBoole> mrw some kid reddit-messages me asking for my skype so he can ask me modelformat questions... 17:01 <+SinZ> wow TkTech, way to kick an innocent man 17:02 -!- SinZ was kicked from #mcdevs by TkTech [There shall be no dissent!] 17:02 < TkTech> <3 17:08 <+SinZ> <3 17:23 < TkTech> Hm, just noticed the comment on the NBT talk page from rom1504. The /nbt/ folder is missing now. 17:24 < TkTech> Can probably just take the examples linked to at the bottom currently hosted on dav1d's repo and upload them directly, then get rid of that sentence? 17:24 < dav1d> :o ? 17:24 < TkTech> dav1d: http://wiki.vg/NBT#Download 17:25 < TkTech> Down at the bottom there 17:25 < dav1d> ah 17:26 * XorBoole scrolls up 17:26 < TkTech> Ideally when a source is freely licensed we host a copy on the wiki and reference the original 17:27 <+XorBoole> op aboooose! down with the tyrants! 17:27 * XorBoole runs 17:27 < TkTech> Reduces the chance for something an article references to disappear completely 17:27 < TkTech> On a positive note, wiki spam is at an all time low! 17:28 <+XorBoole> hmm, I just realized there isn't a scala NBT library 17:28 * XorBoole writes 17:32 < TkTech> https://github.com/anti344/ScalaNBT 17:34 <+XorBoole> wait really 17:34 <+XorBoole> fuck 17:34 <+XorBoole> > gradle 17:34 <+XorBoole> pedestrian 17:34 <+XorBoole> mine will be better --- Day changed ven. avril 24 2015 04:01 <+XorBoole> is mojangson documented on the wiki? 04:04 < dx> son of mojang 04:13 < wtfaremyinitials> isn't mojangson just json without the quotes? 04:40 <+XorBoole> behold my vastly superior scalanbt libary! https://github.com/drXor/ScalaNBT 04:40 <+XorBoole> wtfaremyinitials, no there's a few other nuances, such as trailing quotes and typed numbers 04:40 <+XorBoole> and no booleans 05:06 < rom1504> wtfaremyinitials: https://github.com/andrewrk/mineflayer/blob/master/lib/chat_message.js#L119 11:48 < gurun> nothing like your own syntax 12:17 < barneygale> mojangson? 12:17 < barneygale> really? 12:19 < shoghicp> NBT 12:19 < rom1504> NBT != mojangson 12:19 < rom1504> the more weird syntax invented by mojand, the better 12:20 < rom1504> mojang 12:28 < Fenhl> TIL it's called mojangson 12:28 < Fenhl> fitting name 12:28 < Fenhl> http://i.imgur.com/97gd4dG.jpg 12:56 < gurun> that guy is an idiot.. but well paid idiot. 12:56 < gurun> with that hair, he should be allowed on tv. 16:48 <+XorBoole> what is the "best way" to detect which kind of compression and NBT stream has? 16:59 < Gjum> XorBoole: what are the possible compression methods in your case? 16:59 <+XorBoole> uncompressed, gzip, zlib 16:59 < Gjum> are there headers? 16:59 < Gjum> disclaimer: i'm not really into comprssion ^^ 17:00 < ScruffyRules> Gjum, Of course there are headers. xD 17:01 < Gjum> so... read them? 17:01 < rom1504> something like that I guess https://github.com/PrismarineJS/prismarine-nbt/blob/master/nbt.js#L251 17:02 < Gjum> well, that's a buffer, not a stream. should work similarly with streams though 17:04 < rom1504> oh right 18:10 < Gjum> exactly 18:10 < Gjum> settings is enforced atm 18:10 < Gjum> and unflexible 18:11 < Gjum> and not even used by many plugins :) 18:14 < Gjum> nah 18:14 < Gjum> entities? 18:17 < nickelpro> Gjum: Wrong channel? 18:18 < Gjum> dang :P 18:43 <+XorBoole> in the grand scheme of things, is nbt a /good/ format? 18:43 <+XorBoole> on the level of json good? 18:44 <+XorBoole> I have a lot of respect for NBT's compactness and simplicity, but is there anything bout it that makes it a Bad Thing? 21:42 < Aster> XorBoole: endianness, unaligned types, signed lengths 21:43 < Aster> Does Minecraft not load some partial chunks, or is something wrong with my region parsing? 21:43 < Aster> http://f.cxx.ninja/img/Voxelator_08.png 21:44 < Aster> I'm getting either missing sub-chunks (the 16x16x16 things) or completely corrupt ones 21:44 < Aster> I only generated the map by walking around in it a tiny bit, so partially generated chunks are entirely possible if Minecraft does that 21:45 <+ammar2> not a thing, they are generated all the way up and down 21:45 < Aster> hmm 21:46 < Aster> I wonder why this would happen with a few sub-chunks and not others? 21:46 < Aster> It's not like the whole chunk isn't parsed or something 21:47 < morfin> you got some strange bugs 21:48 < Aster> Yeah, it's weird because I zero-initialize all the data before setting it 21:48 < morfin> oh ) 21:49 < Aster> So something is wrong with my NBT parsing or something, I guess 21:49 < morfin> so those black and gray/colored constructions does not exist? 21:50 < Aster> nope 21:50 < Aster> Since it's a vanilla map that I didn't build in 21:50 < morfin> oh 21:50 < morfin> lol i see hole in the world :D 21:50 < Aster> Yeah, it's an artifact of deferred shading 21:51 < morfin> no i mean not loaded chunk hmm 21:51 < Aster> oh 21:51 < morfin> i had same question 21:51 < Aster> yeah those are especially qeird 21:51 < Aster> weird* 21:51 < morfin> is NBT really that good 21:52 < morfin> i checked out how it stores data and found nothing special about that hmm 21:54 < Aster> oh man 21:54 < Aster> I fixed it 21:54 < morfin> seems like it's set of tags where each tag can store subtags 21:54 < morfin> or some values 21:54 < Aster> Once again I'm screwed by the fact that MC region files don't store the size of *decompressed* data, only the size of the compressed data. 21:55 < morfin> hm 21:55 < morfin> but how you know how many memory you need when decompressing? 21:55 <+ammar2> Aster: why would the decompressed size be useful? 21:56 < Aster> ammar2: ..so that you can allocate that much data and so that zlib doesn't truncate it if it's too small, and you don't waste memory if it's too big? 21:56 <+ammar2> that sounds like zlib's problem to me :P 21:57 < morfin> wait what: zlib can trunate? 21:57 < Aster> of course 21:57 < morfin> hm ok 21:57 < morfin> but you need to waste memory to decompress safely 21:58 < Aster> yeah 21:58 < Aster> I guess I need to use zlib's more advanced functions if I want to decompress without wasting memory 21:59 <+ammar2> yeah I was looking that up, they have a fun page for it http://www.zlib.net/zlib_how.html 22:00 < morfin> what do you use to render such image? 22:01 < morfin> 3d view 22:01 < Aster> OpenGL 22:01 < morfin> pure OpenGL? oO 22:01 < Aster> yes 22:01 < morfin> i thought it's way harder 22:01 < Aster> It's pretty easy 22:01 < Aster> It's a lot more work though 22:02 < morfin> i don't like that GL.Vector3F and such stuff 22:02 < Aster> But it lets you write much faster code, and do a lot of neat things 22:02 < Aster> ammar2: I wouldn't call that page fun, but sure 22:02 < morfin> yes but rendering more compilcated stuff could be a challeng 22:02 < Aster> morfin: not really 22:02 < morfin> like animation, particles etc 22:02 < Aster> nah 22:05 < morfin> i am doing other thing 22:11 < Aster> http://f.cxx.ninja/img/Voxelator_09.png 22:11 < Aster> Much better. 22:15 <+Amaranth> Pure OpenGL these days means not using Vector3F :P 22:17 < Aster> ? 22:18 < Aster> Pure OpenGL means the same thing it's always meant. Not using an OpenGL wrapper. 22:47 <+AndrewPH> Aster: that looks sick --- Day changed sam. avril 25 2015 00:50 < Aster> Thanks AndrewPH --- Log closed sam. avril 25 08:20:23 2015 --- Log opened sam. avril 25 08:20:32 2015 08:20 -!- Irssi: #mcdevs: Total of 157 nicks [1 ops, 0 halfops, 15 voices, 141 normal] 08:20 !sendak.freenode.net [freenode-info] why register and identify? your IRC nick is how people know you. http://freenode.net/faq.shtml#nicksetup 08:25 -!- Irssi: Join to #mcdevs was synced in 280 secs 12:16 < Aster> http://f.cxx.ninja/img/Voxelator_12.png 23:09 < barneygale_> hi all, i'm developing a stupid minecraft bot that stands still and responds to chat commands. I'm finding that my messages to the server are taking longer to appear in chat than my notchian client's messages from the same box. I'm wondering if perhaps the server is only acknowledges my packets if I send enough movement packets or something? Right now the only packet I'm repeatedly sending to the server after spawning is 0x03 "Player", every 50ms. D 23:09 < barneygale_> oes that seem right? 23:11 < barneygale_> seems to get more and more lagged as time goes on 23:11 < gurun> hehe, i've heard rumours about the vanilla server only ticking on player movements, but i thought that was just ..rumours :-P 23:19 < Aster> http://f.cxx.ninja/img/Voxelator_17.png 23:42 < Gjum> Aster: where did you get the block->color map? 23:43 < Aster> Gjum: It's a texture map, but I suck at texturing, so I just manually picked colors that looked like the MC texture 23:43 < Gjum> ok 23:43 < Gjum> because I have averaged all block-top textures of the 1.7 default texpack 23:44 < Aster> ah, neat 23:44 < Aster> Do you have that available for download somewhere? 23:44 < Gjum> if you want: https://github.com/Gjum/NBT-Cpp/blob/master/src/MapColors.txt 23:44 < Aster> Oh, colors. 23:45 < Gjum> ? 23:45 < Aster> I expected one big texture for some reason. 23:45 < Gjum> heh 23:45 < Gjum> good idea actually 23:46 < Gjum> well, I kinda do that, but at runtime :D 23:54 < Gjum> so, can you use that? 23:54 < Aster> Not really 23:54 < Gjum> :/ and if I make a png/bmp out of it? 23:54 < Aster> Not sure. --- Day changed dim. avril 26 2015 00:03 < barneygale_> gurun, looks like the vanilla client sends a 0x04 player position every ~20 ticks 00:03 < barneygale_> i think that should fix it 00:04 < barneygale_> also apparently I forgot about keep-alives o.O. Surprised it worked at all. 00:38 <+Amaranth> iirc the block models shipped with MC include a color too 00:40 <+Thinkofdeath> Amaranth: not that i've seen? 00:40 <+Amaranth> *shrug* hematite started rendering without textures, had colors, and eddyb said that was from the block models that ship with MC 00:40 <+Amaranth> Made it look like cube world :P 00:41 <+Thinkofdeath> lol, he most likely extracted it from the jar like he did with the id|data -> model map 00:42 <+Thinkofdeath> i've done quite a bit with parsing block models recently, don't remember colors anywhere 00:43 <+Amaranth> Maybe, I know MC does specify colors when rendering 00:44 <+Thinkofdeath> I /think/ thats only for biome colors 00:48 <+Amaranth> Nah, the biome color stuff is multitexturing 00:51 <+Thinkofdeath> o.O seems like a weird way of doing it 00:54 <+Amaranth> Thinkofdeath: Makes it easy for a texture pack to change it 00:54 <+Thinkofdeath> I guess 00:55 <+Thinkofdeath> I just use vertex colors to do that, lookup the colors from the biome colormap ahead of time 00:55 <+Thinkofdeath> works pretty well 00:56 <+Thinkofdeath> http://i.imgur.com/VVnmbkV.png 01:45 < voltagex> anyone want to work with me on resurrecting an old mod called Modbridge? It allowed writing mods from any language. Basically I've glued a very small webserver on to a Forge mod and I'll see where it goes from there 03:05 < dav1d> Thinkofdeath: I did the same in BraLa btw 03:05 < dav1d> jfyi 04:04 < Not-3656> [1.8-Models] drXor pushed 1 commit to master [+63/-0/±0] http://git.io/vfXfT 04:04 < Not-3656> [1.8-Models] drXor 583cfe7 - Polished blocks! 04:50 < voltagex> what's the best way of handling exceptions in a mod, without it crashing the game OR continuing silently? I'd like the user to know it hasn't loaded correctly 05:24 <+XorBoole> voltagex last I remember it's "traditional" for mods to crash the gam when they fail 05:25 <+XorBoole> because forge seems to have a lot of bad practices floating around 05:25 < voltagex> XorBoole: what if I don't program like I'm 12, instead? 05:25 <+XorBoole> voltagex well, I'd hope forge had some sort of quiet shutdown system 05:26 < voltagex> yeah, I don't think it does 05:26 <+XorBoole> though from my limited knowledge thereof I think there isn 05:26 <+XorBoole> forge is a poorly implemented good idea 05:26 < voltagex> :( I'd rather not code to bare MCP 05:27 <+XorBoole> taht's worse tbh =p 05:27 < voltagex> looks like it's abandoned 05:27 <+XorBoole> doens't help fml is the most gigantic clusterfuck of instrumentation ever 05:27 < voltagex> le sigh 05:27 <+XorBoole> I work on spigot, I cannot help you 05:27 <+XorBoole> only give you advice and snide comments. =< 05:27 < voltagex> why did I decide to write a mod? 05:28 < voltagex> hahaha 05:28 < voltagex> thanks for your work on Spigot, anyway. 05:28 < voltagex> hopefully this mod wil eventually integrate with that 05:29 <+XorBoole> to my knowledge the only sane way to do a lot of things in forge is to a) instrument it or b) reflect into things 05:29 < voltagex> any hints on speeding up the compile/test cycle if I can abstract my mod logic away from MC? 05:29 <+XorBoole> I don't do mods, so no clue 05:29 < voltagex> so I could run a version of this without minecraft loaded at all and just mock the objects 05:29 < voltagex> hrm 05:30 < voltagex> buy a faster PC it is then! 05:30 <+XorBoole> you *probably* could. 05:30 <+XorBoole> hopefully it's in java 05:30 <+XorBoole> if it's scala you're in for a ride 05:30 <+XorBoole> as in slow compile times 05:30 <+XorBoole> I may love scala but it's got one bitch of a compiler 05:30 < voltagex> it's java, hosting a mini webserver :P 05:30 <+XorBoole> sounds like it'll end well 05:31 < voltagex> yeah, decent way to learn some java at any rate 05:31 <+XorBoole> jus tto give oyu an idea of how slow scala is to compile: the smallest jvm ever is written in scala, yet it has the longest build time 05:31 < voltagex> it took me longer to understand gradle/MCP/intellij than it did to write this 05:32 <+XorBoole> #sbtmasterrace 05:32 <+XorBoole> MCP is a clusterfuck 05:32 <+XorBoole> for multiple reasons 15:12 < Aragas> I wonder. If we placed a light source, server will send just block change with this light source coordinates? How will be the light recalculated? Client side? 15:18 < Paprikachu> yup 15:23 < Aragas> Meh, hoped for full server handle :D 15:26 < Paprikachu> that would be way too slow 15:26 < Paprikachu> network latency is a bitch 15:29 < Aragas> depends. Sending multi block whange with light? 15:45 < barneygale> voltagex, a dev I know did some work on doing bukkit mods in python: https://github.com/hansihe/Python-Plugin-Loader 17:28 < Wuppie> hmm 17:28 < Wuppie> you can play with other players, but i can't change peoples inventory 17:29 < Wuppie> no error on client 17:29 < Wuppie> but nothing happens... :( 17:29 < Wuppie> i can just use SetSlot right? 22:40 < ispillmydrink> Hey hey 23:22 < angal> Aloha. 23:22 < ispillmydrink> Has anyone done much with the Realms API? 23:23 < ispillmydrink> What is everyone working on? --- Day changed lun. avril 27 2015 05:29 < voltagex> is there a way I can stop Minecraft pausing on losing focus? 06:46 <+Amaranth> voltagex: F3+P 13:54 < morfin> writing own socket wrapper is more painful than i expected.. 13:59 < gurun> sounds painful .. and a bit uneccesary? 15:55 < gurun> Paprikachu, long time no flame war :-( 15:56 < gurun> Guess you don't have time for that when you keep doing that sucky C++ 15:58 * gurun just a tiny tiny bit boored 17:48 < Paprikachu> gurun: hah 17:48 < Paprikachu> gurun: as a matter of fact, the language you are using - whatever it might be - is trash! 17:51 < Xor_Boole> Paprikachu c++ sux 17:51 * Xor_Boole runs 17:51 * Xor_Boole notices his name 17:51 < Xor_Boole> shit 17:52 < Paprikachu> dayum 17:52 < Paprikachu> http://www.orgoglionerd.it/assets/thumbs/media-4997-w400-c0x0x29x102-q100.jpg 17:52 * XorBoole kicks md_5's bouncer in the face 17:52 <+XorBoole> stupid spigot znc 17:53 <+XorBoole> well that's fucked up 17:53 <+XorBoole> I blame my client then 17:54 * XorBoole subjects irssi to ten thousand lashes 17:54 < Paprikachu> to me md_5 looks away 17:54 < Paprikachu> +like 17:54 <+XorBoole> I'm on his bouncer. *shrug* 17:54 < Paprikachu> :D 17:55 <+XorBoole> md and I are many friend 17:55 <+XorBoole> I'm going to find him and hug him at minecon 17:55 < Paprikachu> but do you even bool bro 17:55 <+XorBoole> Paprikachu apparently not, because the jvm doesn't have 'em 17:56 < Paprikachu> wut 17:56 <+XorBoole> in fact... at what level does the boolean fairytail end? 17:56 <+XorBoole> Paprikachu bools in the jvm are bytes 17:56 < Paprikachu> hmm, interesting 17:56 <+XorBoole> or are they ints? I'd hope they're bytes 17:56 < Paprikachu> did not know 17:56 < Paprikachu> i'd hope they are ints. 17:56 <+XorBoole> what makes you say that? 17:56 < Paprikachu> faster to check ints than single bytes :) 17:57 <+XorBoole> I mean there's no point having bools, it would just add a ton more opcodes 17:57 < Paprikachu> well, there would be 17:57 <+XorBoole> the jvm's architecture doesn't need them 17:57 <+XorBoole> ifs revolve around == and == null anyways 17:57 < Paprikachu> if you have the restrictions of bool, it'd be easier to have platform specific optimizations 17:58 <+XorBoole> > platform specific 17:58 <+XorBoole> > java 17:58 <+XorBoole> loooool 17:58 <+XorBoole> if you want embeded systems use C 17:58 <+XorBoole> #hotspotonetruejvm 17:58 < Paprikachu> you don't understand what i'm saying. 17:58 <+XorBoole> no, I get it 17:58 <+XorBoole> some platforms could handle bools more efficiently 17:58 <+XorBoole> and their jvm impl should take advantage of that 17:58 < Paprikachu> the jvm could choose different representations depending on the platform. 17:59 < Paprikachu> with byte you can't, because that information is pretty much gone. 17:59 <+XorBoole> well, I'm not 100% sure 17:59 < Paprikachu> but then again, who the fuck cares. 17:59 <+XorBoole> the fact that it "is" a bool is preserved 17:59 <+XorBoole> but it's just an int 17:59 <+XorBoole> agreed, java sucks =D 18:00 <+XorBoole> some day, we will have a scala vm and we can all be happy 18:00 < Paprikachu> some day, my c++ vm will take over. oh, and i will win the lottery. 18:00 <+XorBoole> the lottery is easy if you know how to cheat => 18:00 < Paprikachu> sv_cheats 1 18:00 < Paprikachu> lottery_win 18:00 <+XorBoole> there is winning by skill, and there is winning by cleverness. I prefer the latter 18:01 <+XorBoole> of course if in the process you fuck people over that's not nice 18:01 < rom1504> you mean robbing the bank :p ? 18:01 <+XorBoole> no, that's not clever 18:01 < Paprikachu> he means stealing the bank. 18:01 <+XorBoole> clever is making the bank give you the money thinking they're doing it willingly 18:01 < Paprikachu> as in, the building. 18:26 < gurun> it's almost too easy. Feels almost like playing GTA on IRC :-) 19:33 <+XorBoole> gurun > GTA on IRC 19:33 <+XorBoole> Grand Theft Code? 19:34 * XorBoole runs 20:32 < Aragas> bool as int? dafuq? I understand about faster operations, but it consumes too much memory! 20:35 < Paprikachu> how about a compiler flag 20:35 < Paprikachu> :> 20:35 < Aragas> what about BitSet? 20:36 < Aragas> >:D compiler flag 21:02 < rom1504> is there some kind of spec for mojangson somewhere ? 21:02 <+XorBoole> no 21:03 <+XorBoole> but I can give you one 21:03 <+XorBoole> it's json with the following exceptions: 21:04 <+XorBoole> trailing commas are allowed in arrays and objects; numbers followed by b, s, L, f, d are bytes, shorts, longs, floats, and doubles, respectively; arrays can contain only one type; key names don't require quotes 21:04 <+XorBoole> it's also a superset of json 21:04 <+SinZ> wat 21:05 <+XorBoole> SinZ 35 wat 21:05 <+SinZ> why would you take the pretty much universal way of showing an array/dictionary/hashtable and decide "Lets un-standardize it" 21:05 <+SinZ> thats going to make it useful for everyone 21:06 <+XorBoole> wat 21:06 * XorBoole whacks SinZ 21:06 <+XorBoole> we're talking about mojangson 21:07 <+SinZ> oh is that the psuedostuff thats used for command blocks 21:07 <+XorBoole> yes 21:07 <+SinZ> oh thats less horrible then 21:07 <+XorBoole> and also the output of .toString() on nbt objects 21:07 <+SinZ> for a sec I thought they were switching all the protocols to use that rather than json 21:07 * XorBoole slaps SinZ 21:07 <+XorBoole> are you nuts? 21:08 <+SinZ> they have done worse in the past 21:08 <+XorBoole> even db isn't that crazy 21:08 <+XorBoole> and he's got more screws loose than I do 21:08 <+SinZ> and they have expressed their deep hatred for nbt several times 21:08 <+XorBoole> I still don't get why you'd hate NBT 21:08 <+XorBoole> it's not /that/ bad of a format 21:09 <+SinZ> iirc its because the notchian implementation was bad 21:09 <+XorBoole> meh 21:10 <+SinZ> but I'm pretty much talking out of my ass on that topic, been *ages* since I've last seen their opinions on it 21:10 <+XorBoole> my scala implm is better 21:10 <+XorBoole> #scalamasterrace 21:10 <+XorBoole> SinZ https://github.com/drXor/ScalaNBT/blob/master/example/scala/com/xorinc/scalanbt/example/NBTExample.scala 21:48 < rom1504> XorBoole: oh ok thanks 21:49 < rom1504> hmm, I see you are converting NBT to mojangson, is it by any chance possible to do the opposite thing ? 22:04 <+XorBoole> rom1504 yes, minecraft has a parser you could replicate 22:05 <+XorBoole> however I believe TagByteArray and TagIntArray are not really part of mojangson 22:22 < rom1504> hmm ok 22:30 < rom1504> well we have a parser for mojangson now anyway https://github.com/andrewrk/mineflayer/blob/master/lib/mojangson.js 22:30 < rom1504> it was needed for hoverEvent value 22:38 <+XorBoole> rom1504 numbers can start with a negative 22:38 <+XorBoole> also you're not parsing lists 22:38 <+XorBoole> wait nvm 22:40 <+XorBoole> numbers can also be suffixed with their type 22:40 < rom1504> yeah that's the [a-z] 22:40 < rom1504> not perfect 22:40 < rom1504> hmm yeah negative 22:42 <+XorBoole> rom1504 the suffic can be capital too =p 22:42 < rom1504> well does it happen ? is there any case of negative number in mojangson ? 22:42 < rom1504> oh right 22:42 < rom1504> well let's put b, s, L, f, d instead 22:43 <+XorBoole> negatives are legal so I don't see why not 22:43 <+XorBoole> I think [BSFLFDbsflfd] might be better 22:43 <+XorBoole> *shrug* 22:44 < rom1504> oh ok 22:44 < rom1504> what about decimal numbers ? 22:44 <+XorBoole> also legal 22:44 <+XorBoole> same syntax as java, including trailing/leading d or f 22:46 < rom1504> well if it really is a superset of json then there's 5e-6 too 22:47 < rom1504> but at that point we should drop that manual parser (I didn't write this parser) --- Day changed mar. avril 28 2015 08:32 < Aikar> what is proper format to send a simple command? https://gist.github.com/aikar/8f069f681f2587445611 trying to use node-minecraft-protocol 08:52 < Aikar> oh i just needed to give it a delay first 13:22 < voltagex> if I have an item from an ItemStack, how do I get that item's id? 13:45 < rom1504> XorBoole: so I ended up doing it right https://github.com/rom1504/node-mojangson/blob/master/grammar.jison 13:48 < rom1504> voltagex: something like that https://github.com/andrewrk/mineflayer/blob/master/examples/chatterbox.js#L145 13:50 < rom1504> I think that info comes from the metadata of some entity 13:52 < voltagex> more like registry.getIDForObject(item); where registry is from net.minecraftforge.fml.common.registry.GameData.getItemRegistry() 13:53 < voltagex> blerk. this api is a mess. 13:55 < voltagex> nope, no getID for me 13:57 < voltagex> Item.getIdFromItem(item.getItem()) -_- 14:03 <+Dinnerbone> ID is not a concept in our code. That one pool of items to IDs has it, yes, but nowhere else in our code does that exist. That's why it's there. 14:17 < voltagex> oh. 14:17 < voltagex> Hi Dinnerbone 14:17 < voltagex> Am I OK to redistribute the list of names of items/blocks in my mod? saves calls to those functions 14:25 < voltagex> hrm, probably better to interrogate the registry on startup 16:21 < Jckf> Does Mojang's API have a method to look up what name a given UUID had at a given time, or will I have to parse the name history for that? 16:22 <+XorBoole> I think you can do that 16:23 <+XorBoole> actually no 16:23 <+XorBoole> you can get UUID at time 16:23 <+XorBoole> you'll have to parse name history 16:23 < Jckf> That's what I thought. I might go about this differently than initially planned. 16:24 < Jckf> I have a huge database of name based bans, and that won't do anymore 16:24 < Jckf> Was thinking I could be lazy and check the history for banned names, to leave the database as-is 16:25 < Jckf> But adding a UUID field is probably best 16:25 <+XorBoole> if you have time-of-ban you can use name -> UUID at time 16:25 < Jckf> Yup 16:26 < Jckf> How does the API's rate limit work? Can I do 600 requests in 10 seconds, then wait 10 minutes? 16:27 < Jckf> (probably not) 16:29 <+XorBoole> I think that is the case yes 18:58 < rom1504> are block states going to replace metadata values ? 18:58 < rom1504> in the protocol 19:42 < Aikar> https://gist.github.com/aikar/8e6e641eadf617ebbd4e - anyone used the node minecraft protocol, is this a bug in their code? 19:42 < Aikar> or am i not doing something I should be 19:45 <+ammar2> when is the end event called 19:45 < Aikar> on disconnect 19:46 < Aikar> that parts working, it sent me notification of the DC 19:46 <+ammar2> oh, can you reconnect a client like that 19:46 <+ammar2> I would think you'd need to make a new instance 19:46 < Aikar> in an ideal world you should be able to, the access token should still be good 19:47 < Aikar> its the last line of the getSession callback 19:47 <+ammar2> yeah but does is there an example that does it like that? because it might not be programmed that way 19:47 < Aikar> it sets the session variables, then calls .connect 19:48 < Aikar> oh it has client.once() for some stuff 19:48 < Aikar> thats going to be the issue 19:51 < Aikar> but rebinding those on connect still didnt fix it 19:52 < Aikar> recreating a client sucks... then it would have to be reinitialized through everything that might want to listen 19:57 <+ammar2> probably want to bring it up with the node mc protocol guys 19:57 < rom1504> Aikar: come in our gitter https://gitter.im/PrismarineJS/node-minecraft-protocol?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge 19:59 < rom1504> Aikar: what are you trying to do exactly ? 19:59 <+ammar2> auto reconnect I would assume 19:59 <+ammar2> plus a message when the bot dies 20:54 < DemiPixel> You know when you're on a minigame and you click on an item in your inventory and it pops back because they want to treat it like a "button"? 20:55 < DemiPixel> Is the server just rejecting the transaction so therefore the client drops it back where it was? 20:55 < DemiPixel> Or is there another packet removing from the hand and setting it in the inventory? 20:55 < DemiPixel> *hand as in cursor 20:56 <+XorBoole> from now on I'm going to justify every bad design choice I make with "it's webscale" 22:10 < Jckf> My brain is on vacation. How do I check, given the name history, if the player had a given name at a given time? I can't seem to wrap my head around the logic. --- Day changed mer. avril 29 2015 00:48 < Jckf> Mojang's API keeps returning 204 No Content. What gives? 00:51 < ispillmydrink> I get some weird responses myself. 00:51 < ispillmydrink> Like, when I hit the world join endpoint on the Realms API, I get a 503 response and when I retry, it always works on the 5th try. :| 00:52 < ispillmydrink> What API call are you making? 00:53 < Jckf> Fetching name history for a UUID 00:53 < ispillmydrink> Hm, what’s the endpoint? I can try it out on my end. 00:54 < Jckf> Think I found the problem. It doesn't want dashes in the UUIDs 00:54 < ispillmydrink> Oh yep. 00:56 < ispillmydrink> That’d do it. 01:00 < Jckf> Yep. Now it works \o/ 01:04 < Jckf> Cool. Does anyone here have an account with name changes in the history, and 2 minutes to help me test something? 06:43 < Aikar> is this 119 chat thing done on the client? I cant find it in server code 06:43 < Aikar> it actually appears server truncates to 100 chars 06:43 < Aikar> but cant see what causes disconnect 10:29 <+Thinkofdeath> Aikar: https://github.com/thinkofdeath/mc-autodocs/blob/master/protocol/play/PacketChatMessage.java#L24 14:50 < Gjum> Thinkofdeath: how do you extract/generate that data? 14:52 <+Thinkofdeath> wrote a tool that looks for patterns to find classes 14:52 <+Thinkofdeath> then uses fernflower to decompile them --- Day changed jeu. avril 30 2015 02:06 < ispillmydrink> Ergh, there are a few things about the Realms API that are a little bit flaky. 10:52 < gurun> i don't understand the development cycle of Mojang PE team. I would expect every build-release to contain bug-fixes. Less and less for every release. But instead i keep seein more and more featers. That doesn't sound good to me. Is it deliberately or just "acceidents"? 11:10 < shoghicp> gurun: it's mostly bugfixes 11:10 < shoghicp> but some fixes are features as well 11:11 < gurun> well shogi. It's these things with Ghasts and Lava cubest that really worry me. 11:11 < shoghicp> like, 5km render distance :D 11:11 < shoghicp> nah, it was an ifdef 11:11 < shoghicp> we removed the ifdef 11:11 < shoghicp> they were around since build 1, as people found out 11:12 < gurun> yeah, but the second you enable them, you know the next twitter is "there are no eggs", etc etc. 11:12 < shoghicp> there are eggs 11:12 < shoghicp> that's what we added 11:12 < gurun> I haven't checked it myself, just read the tweets 11:12 < shoghicp> but ghasts were left out because of them being still glitchy 11:12 < shoghicp> anyway, we did not announce them on build 1 11:13 < shoghicp> people found them 11:13 < gurun> what do we need Ghasts for? 11:13 < gurun> or lava cubes? 11:13 < shoghicp> check twitter as well 11:13 < shoghicp> nether :o 11:13 < gurun> well, i know you are working on nether 11:13 < gurun> but 11:13 < gurun> in 0.11 ? 11:13 < shoghicp> some guys at Microsoft are helping us 11:14 < shoghicp> no 11:14 < gurun> so .. why Ghasts? 11:14 < shoghicp> because they implemented them before? 11:14 < shoghicp> anyway 11:14 <+SinZ> shoghicp: when are we getting a universal windows app for minecraft, and which codebase will take control <3 11:14 < shoghicp> we are doing mostly bugfixes 11:15 < shoghicp> SinZ: :P 11:15 <+SinZ> PC, xbox, phone or Pi, who will take over 11:16 < gurun> shoghicp, one of the hard lessons on larger scale software development you learn eventually is that .. code is only 10% of the feature. 11:16 < gurun> and that's what i'm getting at. 11:18 < shoghicp> gurun: also, those small features added (hotbar swapping, etc) are put there so people continue testing the betas 11:18 < shoghicp> otherwise they lose interest after the 4th one and just say "just release it now" 11:21 < gurun> yes, and i understand that problem. So usually today, that is countered with smaller more frequent releases. 11:23 < shoghicp> but this is not ready for release in any way due to the amount of bugs, and we need testers as well 11:24 < shoghicp> at least we rewrote/refactored some parts and they won't break as easier 11:24 < shoghicp> like, change how levels are rendered and suddenly you can't change your skin 11:30 < gurun> the teams i've worked with .. usually for a team 5-7 people (per "module") we would have 2-3 QA engeneers full time, and then during release more + developers. 11:32 < gurun> in medical we would release quaterly because the enourmous amount of QA work going into it (4-6w release work). 11:32 < gurun> and that is what i consider very slow today. 11:33 < gurun> For critical bug-fixes (serious health hazards) we could get code that was fixed in 10 minutes out within 3 days if we had full attention from all parts of the organization. 11:34 < gurun> And a system like that would be similar (or smaller) in size of Minecraft. 11:36 < gurun> But never in my entire career have i've been in a team that uses end-users anywhere in the QA lifecycle. 11:38 < shoghicp> we have QA as well, but players will find way more issues 11:38 < shoghicp> also, this opens more the development process tot he community 11:38 < shoghicp> and it's opt-in, so they choose to test :) 12:13 < gurun> had a look at the bug-list. It's not so bad when you look at it. 12:13 < gurun> at least not the ones in public. 12:29 < shoghicp> gurun: it only grows on our side D: 12:58 <+Amaranth> SinZ: Well, tomcc said the PC game would be moving to the PE rendering engine at some point 14:29 < EpicApple> hey 15:15 < gurun> shoghicp, i think JIRA could be groomed a bit too. Some of the public bugs seems they could be closed after a bit of investigation. 15:22 <+Thinkofdeath> In case anyone is interested, http://gfycat.com/EnlightenedHandmadeBoutu progress on my client :) 15:22 <+Thinkofdeath> I guess I should point notifico to the repo as well 15:25 <+SinZ> Thinkofdeath: nice 15:26 <+SinZ> whats the framerate difference between mojangs and yours 15:29 <+Thinkofdeath> vanilla wins currently 15:30 <+Thinkofdeath> https://i.imgur.com/gBox6qg.png vs https://i.imgur.com/nGIzROx.png 15:31 <+SinZ> how well can your client adjust to different protocol versions? 15:32 <+Thinkofdeath> it wont support multiple versions if thats what you mean, editing the packet definitions is easy though 15:34 <+Thinkofdeath> https://github.com/thinkofdeath/steven/blob/master/protocol/play_clientbound.go 16:41 < barneygale> Thinkofdeath, that's amazing :D 16:56 < TkTech> Thinkofdeath: "Sexy" is the most adequate word I can come up with. 17:05 <+Thinkofdeath> :D 19:43 < morfin> wtf WarningBlocks VarInt `if:".Action == 3 .Action == 5"` 19:44 < morfin> those is some GO feature? 19:45 < Wuppie> this is weird...... i do a SetSlot packet, use item id 16, and the client sees it as a stone block? when i use block id 1, it sees it as a crash... ? wtf 19:56 < Wuppie> anyone knows this problem? 19:56 < Wuppie> i do a SetSlot packet, use item id 16, and the client sees it as a stone block? when i use block id 1, it sees it as a crash... ? wtf 19:57 < Wuppie> it is weird right? 20:11 < Wuppie> ok 20:11 < Wuppie> got that fixed 20:11 < Wuppie> however, for some reason 1 = Coal ore (16) 20:11 < Wuppie> all block id's are off 20:11 < Wuppie> :/ 20:12 < Wuppie> 16 = Iron Shovel (256) 20:12 <+ammar2> sounds like your code is off 20:12 < Wuppie> all is off :( 20:12 < Wuppie> i don't know how it could be off tho 20:12 < Wuppie> :/ 20:13 < Wuppie> and i've read something about this before 20:13 < Wuppie> but i can't seem to find it anymore 20:13 < Wuppie> how would you explain that 16 = 256 20:13 < Wuppie> and 1 = 16 20:13 < Wuppie> xD 20:22 < Wuppie> okay.... 20:22 < Wuppie> found the problem 20:22 < Wuppie> seems it does NOT want you to send metadata? 20:25 < angal> Items use old id and damage value instead of new id (whish cintains metadata value) 20:40 < Wuppie> Owh! now i understand 20:40 < Wuppie> thanks! 20:49 < Wuppie> what packet is used to add floating items, like the ones that are dropped 22:21 < Wuppie> why is my food regenerating client side? 22:23 < rom1504> Wuppie: https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/src/protocol.js#L156 22:24 < Wuppie> Spawn Entity is used for spawning the block entity's? :D 22:24 < rom1504> (http://wiki.vg/Protocol#Spawn_Object) 22:25 < Wuppie> oh hehe 22:25 < Wuppie> i guess i looked over that 22:25 < Wuppie> xd 22:25 < Wuppie> thank you sir 22:26 < rom1504> id 1 22:27 < rom1504> (https://github.com/PrismarineJS/minecraft-data/blob/master/enums/entities.json#L2) --- Day changed ven. mai 01 2015 00:51 < Wuppie> :( 00:51 < Wuppie> Item Entity has no item?! 00:51 < Wuppie> minecraft console spam 00:51 < Wuppie> xD 00:59 < Wuppie> how would i specify the item? 00:59 < Wuppie> add Slot data? 01:00 < Wuppie> owh, Entity Metadata 01:00 < Wuppie> i guess 14:14 < barneygale> Hadn't seen this before http://truecraft.io/ 14:14 < barneygale> Beta 1.7.3 is still my favourite version :] 14:43 <+Grum> barneygale: then go play that and revel in the utter pain it causes to play that :/ 14:43 < barneygale> I didn't ask your permission to play it Grum 14:44 < barneygale> (from HN: https://news.ycombinator.com/item?id=9469175) 14:45 <+Grum> In no way is beta1.7.3 better than what exists now 14:46 < barneygale> It's a lot buggier, of course 14:47 <+Grum> buggier, less userfriendly in soooo many ways 14:47 <+Grum> so how can it be a 'favorite version' ? a warm nostalgic feeling of some sort? 14:51 < barneygale> I'm simply not a fan of many of the features brought out from about 1.8 onwards 14:52 < barneygale> They broke quite a lot of what I liked about the game 14:52 < barneygale> And for the record I'm not claiming my views are in any way representative of most minecraft players, it's just a personal thing. 14:58 < barneygale> Some examples: flying in creative meant that players were no longer forced to look at other players builds or build in the same style. The result was that city-building and general map cohesion was totally ruined. New players joined, ignored everything around them, and slapped down builds wherever there was space 14:58 < barneygale> In survival mode, enchantments *dramatically* increased the benefit of grinding. Clans with lots of time to spare were significantly better than casuals, whereas previously there wasn't much difference between spending 10 hours getting kit and 100 hours. 15:01 < barneygale> Sprinting and horses made effective transportations systems (canals, rails) pointless on PVP servers, which removed an amazing dynamic of hidden railways 15:02 <+ammar2> whatever happened to SirCmpwn anyway, does he not hang around here anymore? 15:03 < barneygale> He's online 15:04 < barneygale> Isn't he a bit of a dick or something? I remember someone with the prefix "Sir" being banned from this channel 15:07 <+ammar2> yeah I remember him being banned around a year, year and a half ago 15:07 <+ammar2> but he came back iirc 15:12 < barneygale> !seen SirCmpwn 15:12 < barneygale> .seen SirCmpwn 15:12 < barneygale> hm. 16:01 <+XorBoole> apparently this is a " 16:01 <+XorBoole> apparently this https://gist.github.com/grum/4dd7744035fffceee2bd a "thing" 16:03 <+XorBoole> would also be nice to have the ability to declare texture variables from the blockstate files 16:03 <+XorBoole> *shrug* 16:03 <+XorBoole> but I also want mixins and I don't see those happening, so whatever 16:28 <+XorBoole> actually, why isn't multiparts part of the format yet? it could be extremely useful for variants 16:51 < TkTech> ammar2: He was given several chances, banned, unbanned, several more chances, and out he goes again. 16:52 < TkTech> Smart guy. Also a total asshole. 16:54 <+XorBoole> TkTech sort of tends to go hand-in-hand eh? 16:54 <+XorBoole> I know a lot of smart people irl who are somewhat assholey 16:54 <+XorBoole> such a shame 17:28 < rom1504> XorBoole: where do these blockstate files go ? 17:29 <+Grum> assets/namespace/blockstates/ 17:29 <+Grum> XorBoole: why its not part of anything yet? because I haven't coded it 17:30 <+Grum> I started on it actually, loading code needs a major change for it to work, which is not nice at all 17:31 <+Grum> I also didn't realize one problem, the stacking of multiple of those files in new and old format 17:32 <+Grum> Not sure how to solve that one yet 17:34 <+Thinkofdeath> changes to the model format? But I just got my loader finally in a state that 'works' :3 17:38 <+Thinkofdeath> side note, why does it seem like minecraft's gson instance is set to lenient everywhere? 17:39 <+Thinkofdeath> people started using javascript style comments in resource packs which no sane parser parses :| 17:40 <+Grum> No idea, default of GSON 17:40 <+Grum> probably lenient? 17:41 <+Thinkofdeath> I thought strict was default? 17:41 <+Thinkofdeath> ' By default, this parser is strict and only accepts JSON as specified by RFC 4627. Setting the parser to lenient causes it to ignore the following syntax errors:' 17:41 <+Grum> how do you set it to lenient? 17:43 <+Thinkofdeath> https://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/com/google/gson/stream/JsonReader.html#setLenient(boolean) although i'm not seeing it for gson builder 17:43 <+Grum> We couldn't find any code matching 'setLenient' 17:43 <+Thinkofdeath> hmm 17:43 <+Grum> maybe modded and someone turned it on? 17:43 <+Thinkofdeath> nope, vanilla and comments work 17:46 <+Grum> Not because of something i remember setting 17:46 <+Thinkofdeath> odd 17:46 <+Grum> https://gist.github.com/grum/dd1077c346228e1aa98a 17:46 <+Grum> that is how we init it 17:47 <+Dinnerbone> https://code.google.com/p/google-gson/source/browse/trunk/gson/src/main/java/com/google/gson/Gson.java#801 looks like gson.fromJson forces lenient 17:47 <+Grum> that is so not useful >.> 17:47 <+Thinkofdeath> .-. 17:48 < TkTech> I've had to dig through GSON when I was decompiling APKs...it's not pretty. 17:48 <+Thinkofdeath> that also was the cause (well part of) of [private] signs being treated as json arrays. Why is that the default? 17:48 <+Grum> GSON looks better when not decompiled hehe 17:49 < TkTech> Didn't know it was GSON at the time, obfuscated. Eventually found some strings that pointed me towards it. 17:51 <+Thinkofdeath> https://code.google.com/p/google-gson/issues/detail?id=422 if you feel like working around it :| 17:55 <+Grum> I dont quite get why they have to overwrite the leniency :( 17:55 <+Grum> But in all honesty, copying that method into our JsonHelper without the leniency changes should be trivial 17:55 <+Grum> maybe i'll go do that :( 17:55 <+Thinkofdeath> :D 17:56 < TkTech> They claim it's for backward compatibility, but that's an absurd excuse for a JSON library... 17:56 <+Grum> So in order to be backwards compatible they are forward retarded, i love that solution haha 17:56 < TkTech> What state do you even end up with when it parses invalid JSON into an object? 17:56 < roblabla> That's generally what backward compatibility means though 17:56 < TkTech> Just returns nothing? 17:57 < TkTech> roblabla: That's *one* thing I like about Apple's approach to iOS/OS X. 17:57 < TkTech> Screw you, and you, and you. DEPRECATE EVERYTHING. 17:57 < roblabla> I agree :P 17:57 <+Thinkofdeath> TkTech: it has a list of rules for lenient mode, so not everything will parse 17:57 <+Grum> they do nice rollover windows @ osx 17:57 <+Grum> they tell when stuff will be deprecated and they just hold on to those windows 17:58 <+Grum> might be a year, might be two, but it is going if its crap 17:58 < TkTech> They do, Carbon was available for eons. It's actually still possible to compile OS 8 and below apps with some tweaks, QuickDraw and family are still buried in there. 17:58 < roblabla> Isn't lienient mode pretty much "JS-style objects", instead of JSON ? 17:58 <+Grum> yeah 17:58 < roblabla> like, unquoted keys, etc... 17:58 < TkTech> But the fact that they do it at all distinguishes them from Windows, which is compatibility at all costs. 17:58 <+Grum> well depending on what sort of leniency 17:58 <+Thinkofdeath> roblabla: bit of everything really 17:58 <+Grum> TkTech: yes and that slows down everything 17:59 <+Thinkofdeath> C style comments, => or = instead of :, ; instead of , in arrays etc 17:59 < roblabla> Java has compatibility at all costs too, and sometimes it shows :( 17:59 <+Grum> yeah and java has to stop doing that 17:59 < roblabla> Thinkofdeath: ._. 17:59 <+Grum> who cares to be compatible to java 1.1 code now ... seriously >.> 17:59 < roblabla> that's not even JSON anymore XD 17:59 < Aragas> imma the new C# king, lol. Forget about SirCmpwn 17:59 < TkTech> Grum: Probably some massive enterprise that never invested in their code base. 17:59 < TkTech> Like every bank, ever. 18:00 <+Grum> yes, so why would they need to upgrade javas? 18:00 < roblabla> Y'know, the funny thing about compat with java is that they actually broke some stuff. Like Java Applets. Those never work anymore 18:00 < TkTech> Because the directors cousin's friend's father needed some money, so he got a juicy 5000% markup contract to install some new towers. 18:00 <+Thinkofdeath> They most like pay oracle for security updates anyway, kinda in oracles favor to not keep it backwards compat 18:00 < TkTech> (LOOKING AT YOU RBC) 18:00 < roblabla> In java8, you don't even have the choice to run unsigned applets anymore 18:01 < TkTech> roblabla: Which is exceptionally annoying, since most hosting providers still use a crappy Java applet for virtual KVM access to misbehaving machines. 18:01 < TkTech> roblabla: Like AWS EC2. 18:01 < roblabla> Java7, you could whitelist some domains so they can run applets. Java8 removed that. Java8 requires applets to be signed (from CA, mind you) in order to run :( 18:01 * XorBoole scrolls 18:01 * XorBoole cackles 18:02 < roblabla> yeah 18:02 <+XorBoole> this is great 18:02 < TkTech> This is the best kind of language war, where everything is negative. 18:02 * XorBoole throws php in 18:02 < roblabla> I love the fact PHP versioning took the same approach to JS and windows versioning 18:02 < roblabla> "yeaah, let's skip that version, just cuz" 18:03 <+Grum> nono, when you throw php in you start with: php.net/quickref 18:03 < roblabla> php5 -> php 7. Windows 8 -> windows 10. Es3 -> Es5. Seriously guys ? 18:03 <+Grum> O M G ... they removed that page!!! 18:03 <+XorBoole> Grum /r/lolphp* 18:03 <+XorBoole> best. subreddit. ever. 18:03 < TkTech> roblabla: The reasoning behind that is actually solid. 18:03 <+Grum> that page was hilarious 18:03 <+XorBoole> Grum it's gotta be archived somewhere 18:03 <+Grum> it had ~5 columns wide, 20 a4 sheets long of just method names last i saw it 18:04 < TkTech> roblabla: Developers are stupid. They wrote checks in their code to see if the version of windows starts with a 9 (for 98, 95). 18:04 < TkTech> roblabla: What happens when they release a modern Windows 9? 18:04 <+XorBoole> TkTech I think that soulution was stupider 18:04 <+XorBoole> they should have made the version return some string like W9 18:04 < TkTech> It's stupid, but it works, and it's functionally simple. 18:05 < roblabla> TkTech: it's wrong on so many levels 18:05 < yawkat> just use the year as the version number like ubuntu does. 18:05 <+XorBoole> I mean, it's not like I had any respect for microsoft's ability to write good software in the first place 18:05 <+XorBoole> there are a small number of things microsoft does right 18:05 < TkTech> (To any MSFT developers in the channel...it's okay, I still love you) 18:05 <+XorBoole> but they're insufficient for me to want to even talk to their recruiters at career fairs 18:06 < roblabla> TkTech: how often do you use software that uses that kind of code ? 18:06 < roblabla> Wait no 18:06 <+XorBoole> on and while we're at it, C# sucks 18:06 < roblabla> How often do you use software from 95 18:06 < Aragas> BURN 18:06 <+XorBoole> not as much as java, but it still sucks 18:06 < TkTech> roblabla: Every time I install Ceaser 3 and the installer bitches about the version and hard drive space. 18:06 < TkTech> roblabla: "This application requires at least 100MB of space, but you only have 3.4TB" 18:06 < roblabla> rofl 18:06 <+XorBoole> cat thatFile > /dev/full 18:06 < TkTech> Because the installer just takes the size reported string, strips letters, and converts to a number. 18:07 < yawkat> > /dev/full 18:07 < roblabla> that's... 18:07 < roblabla> ;_; 18:07 <+XorBoole> yawkat it's like /dev/zero but it fails to write anything 18:07 <+Grum> https://web.archive.org/web/20130127025956/http://us2.php.net/quickref.php <-- hehe 'quick' LAL! :D 18:07 <+XorBoole> because it's full =D 18:07 < TkTech> The technological world is held together by spaghetti. The fact that everything works together is a miracle. 18:07 <+XorBoole> 'lal' 18:07 <+XorBoole> that' 18:07 <+XorBoole> that' 18:07 <+XorBoole> ffs 18:07 <+XorBoole> thjat's a new one 18:08 <+XorBoole> TkTech it's no miracle, it's because we sure devs' heads as battering rams 18:09 < TkTech> (Also, I just quit my job so if there are any MSFT devs in the channel, hire me plz) 18:09 < roblabla> it's not really a miracle. Nor is it held together. We just haven't yet found out just how broken apart it is :D 18:09 <+XorBoole> don't hire TkTech, he smells 18:09 * XorBoole runs 18:09 < TkTech> Oi. 18:09 * XorBoole smells of oldspice and rich mahogany 18:10 * XorBoole prods grum 18:10 <+XorBoole> about that multipart thing you posted on reddit 18:10 <+Grum> mm ? 18:10 <+XorBoole> if you were to implement it, what flags would be allowed, exactly? 18:11 <+Grum> just 'selectors' within the blockstate 18:11 <+Grum> also multiple 18:11 <+XorBoole> i'd like to be able to have a ton of variants for a model in wone file and toggle them as I want 18:11 <+Grum> 'toggle them' ? 18:11 <+XorBoole> well, here's an example 18:11 <+Grum> I think you misunderstand whta it is for 18:11 <+Grum> its to reduce the amount you writ 18:11 <+XorBoole> yes, I know 18:11 <+Grum> you cannot 'toggle' anything because the client can overwrite it 18:11 <+XorBoole> I have a furnace model 18:12 <+XorBoole> it has alternate items that can go in the bottom and the top, as decoration 18:12 < Aikar> TkTech, why would a dev hire you :P dont you mean 'get your manager to hire me' lol 18:12 <+XorBoole> but I have to repeat the code that describes the furnace every time 18:12 < Aikar> unless their like me, the lead dev and owner lol 18:12 <+XorBoole> for each combination of fuel/material for a variant 18:12 <+Grum> it only works for values on the blockstate, so for a furnace, that would just be 'facing' (and when i am done with my other branch that will not make it in 1.9) 'burning' 18:12 < TkTech> Aikar: I consistently get interest from companies where I was recommended or pointed out by their developers. 18:13 < Aikar> yeah i know, im just picking on your wording :P 18:13 < TkTech> Aikar: HR in most companies (and managers) have no idea what to look for. I would rather approach a dev and get a leg in. 18:13 <+XorBoole> Grum hmm, that's a shame. I would have loved a field for a variant that would enable various "options" for a model 18:13 <+Grum> that is not what it is for O.o 18:13 < TkTech> I have no formal education so I would get discarded off the top of most resume piles pretty quick ;-( 18:13 <+Grum> you can already do taht, but you have no control over where it ends up 18:13 < TkTech> Which is why I don't do resume piles :) 18:13 <+Grum> you can do that through 'weights' 18:13 <+XorBoole> Grum err, no 18:13 <+Grum> and providing alternatives 18:13 < Aikar> TkTech, experience > Education 18:14 <+Grum> yes, you just cannot control it 18:14 <+XorBoole> give me a sec 18:14 <+Grum> look at stone for 'alternatives' as an example 18:14 < TkTech> Aikar: Yup. Still, many companies and many people actually in charge of sifting resumes don't really know what they're looking for. 18:14 < Aikar> I only have an AS (which I wish I didn't have to waste my time getting, I only got it to help get first job), but def have the cards in my plate in terms of career choices :P 18:14 <+XorBoole> Grum as you can see here, https://github.com/drXor/1.8-Models/tree/master/assets/minecraft/models/block/furnace/off, I have a ton of variants for a furnace 18:15 <+XorBoole> which are all essentially the same furnace model with additonal parts, such as coal at the bottom 18:15 <+XorBoole> which leads to this clusterfuck https://github.com/drXor/1.8-Models/blob/master/assets/minecraft/blockstates/furnace.json 18:15 < TkTech> Got to be a better way for the direction variations. 18:16 <+Grum> XorBoole: that looks good? 18:16 <+XorBoole> instead, I'd like to store all the variants in one file, as multiparts, which I could enable like this: 18:16 <+XorBoole> { "model": "furnace", "y": 180, "weight": 3, "options": { "lit": true, "beef": true } } 18:17 <+Grum> XorBoole: that is definitly not going to happen 18:17 <+XorBoole> oh well 18:17 <+Grum> that only increases the existing problems to solve :/ 18:17 <+XorBoole> haha, I wish I could make better requests, but I don't know how horrid the model registry looks like right now 18:18 <+XorBoole> I have tools for generating this already anyways, so it's not that much of a pain 18:18 <+XorBoole> the main bonus would be smaller pack sizes 18:21 <+XorBoole> Grum also, are there plans to disable gson lenient? would be nice, I'll be forced to validate my json files 18:21 < yawkat> whats wrong with lenient 18:21 <+XorBoole> yawkat ask Thinkofdeath 18:22 < yawkat> he's probably too lazy to parse comments in steven 18:22 <+XorBoole> phteven* 18:22 < yawkat> though i have yet to see a reasonable json lib that doesnt support that. 18:22 < yawkat> no 18:22 < yawkat> the phteven joke died before it even started, sorry 18:23 <+XorBoole> =< 18:23 <+XorBoole> but it's funny! 18:23 <+XorBoole> and it's in the splashes or some shit 18:23 < cindy_k> standards, json shouldnt have comments 18:23 <+XorBoole> cindy_k shoo with your standards 18:23 < rom1504> json doesn't have comments 18:24 < yawkat> lenient json does 18:24 < yawkat> jackson parses it fine 18:24 < rom1504> does it parse mojangson too ? 18:24 < yawkat> probably not, havent tried 18:24 <+XorBoole> it won't 18:24 <+XorBoole> at least, not exactly 18:24 < rom1504> ofc 18:25 <+XorBoole> trailing commas in arrays/objects blow up 18:25 < rom1504> it also won't parse javascript 18:25 <+XorBoole> and number types will fail almost any parser 18:25 < rom1504> because json != js != mojangson and it doesn't have comments 18:26 <+XorBoole> well, json <% js and json <% mojangson, but json != mojangson 18:26 < rom1504> if gson and jackson parse json with comments, it's not just a json parser 18:26 <+XorBoole> actually json <: mojangson I think 18:26 < yawkat> :< 18:26 < rom1504> more like :< yeah :p 18:27 <+XorBoole> no I'm pretty sure you want >: 18:27 < yawkat> :P 18:27 <+XorBoole> what? :< is not valid scala type notation! 18:27 <+Grum> I vote for strict json 18:27 <+XorBoole> wait, there's a vote? =p 18:28 * XorBoole waits for yawkat to vote against 18:28 < yawkat> i vote for comments 18:28 <+SinZ> I vote for NBT 18:28 < yawkat> ++ 18:28 <+XorBoole> ++++ 18:28 <+Grum> nbt-------- 18:28 <+XorBoole> #nbtmasterrace 18:28 < yawkat> i vote for yet another DSL 18:28 <+Thinkofdeath> ini! 18:28 < rom1504> what about json with java methods inside ? 18:28 <+Grum> NewNBT 18:28 <+XorBoole> I'd love to see what happens when nbt gets murdered 18:28 < yawkat> only supports CP437 strings 18:29 <+XorBoole> Grum 5real? =o 18:29 < yawkat> numbers are little-endian 18:29 <+Grum> XorBoole: considering msgpack or bson orso 18:34 <+Grum> XorBoole: it really is not *that* much of an effort to copy/paste stuff ... i prefer to keep those files the most straightforward as possible 18:34 <+Grum> if that means that if you want to add 60 variants per rotation, that means you will have 240 lines 18:35 <+XorBoole> Grum wellll yes, but I need to duplicate the entire furnace model for every variant 18:35 <+XorBoole> and if I want to change it I have to change all of them 18:35 <+Grum> huh? 18:35 <+Grum> you just tell it to rotate 18:35 <+XorBoole> wat no 18:36 <+XorBoole> let me try explain 18:36 <+XorBoole> I have a furnace model 18:36 <+XorBoole> it is very complicated 18:36 <+XorBoole> lots of small parts 18:36 <+Grum> yeah i understand 18:36 < TkTech> I don't even know if my NBT library still works. I should probably updatei t. 18:36 <+XorBoole> I want to display various fuels/materials in it, that are not related to the contents 18:36 <+XorBoole> but each one requres adding extra alements to the furnace 18:37 <+XorBoole> since I can't have both "parent" and "elements" in one model, I have to duplicate the complex empty furnace every tiem 18:37 <+XorBoole> so I end up with about 40 copies of the same code, which you know is bad 18:37 <+XorBoole> unless I'm an idiot and there's a better way to do this 18:37 <+Grum> i dont think there is