21:20 < Gjum> completely different ideas or is there some consensus? 21:20 < Grum> we'll drop the block->id completely 21:21 < Grum> purge metadata completely 21:21 < Gjum> so everything will be indexed via name? or how? 21:22 < Gjum> like transferring a chunk without IDs seems pretty complicated 21:22 < Grum> within the code there is no way to obtain an id 21:22 < Grum> the currency is going to be BlockStates 21:22 < Grum> storage will handle BlockState -> id 21:23 < Gjum> so the IDs in storage and transfer are temporary and only for the stored/transferred chunk? 21:23 < Grum> chunk storage will handle it 21:25 <+Amaranth> Different int ids per chunk? Seems wasteful 21:25 < Grum> not really 21:25 < Grum> comes with one huge benefit 21:25 < Grum> memory is going to be the only limit for the amounts of blockstates you can handle 21:26 < Grum> aka infinite blocks 21:26 < Gjum> hm, if there are no ores in a chunk, it can use all the numbers for e.g. mod-added blocks 21:26 < Gjum> so there will be another completely new world format? 21:26 <+Amaranth> A string->id mapping with up to 4096 unique entries and strings are probably about 20 characters each (10 just for "minecraft:") 21:26 < Grum> but yes, there is a tradeof point where just storing raw BlockState's is going to be cheaper than dual-indexing 21:26 < Grum> Amaranth: also compresses *really* well 21:27 <+Amaranth> Grum: I'm talking about in memory 21:27 < Grum> and obviously after it is loaded it will have all those things resolved to BlockStates 21:27 < Grum> so we'll have: id->BlockState (BlockState[]) and BlockState->id which is going to be something more memory efficient than Map 21:27 <+Amaranth> Ok so your in memory mapping is going to be 4096 pointer->int mappings and 4096 int->pointer mappings 21:28 < Grum> at very worst case, and as i said, math will tell when its cheaper to just store 'BlockState[]' instead of: char[] + Bidirectional mappings 21:29 < Grum> cheapest however, nearly all generated chunks can be stored using 16 entry pallete 21:29 < Grum> which means: BlockState[16] (which we can just traverse, who the hell cares) and Nibble[4k] for size 21:29 < Grum> which is barely anything sizewise 21:30 <+Amaranth> Assuming you're willing to rely on compressed pointers it's going to almost always be cheaper to store BlockState[] assuming your BlockState objects are singletons 21:30 < Grum> they are singletons and it will have a tradeoffpoint 21:31 < Grum> eg: with <16 pallete entries; you just store 16*8+2k 21:31 < Grum> sorry, 16*4 21:31 <+Amaranth> I'd have to think on it a bit for the palette approach but for the bidirectional map I don't think it'd ever win 21:31 < Grum> and 'worst case' it will be BlockState[] which is 4x4k = 16k 21:31 < Grum> it will? 21:32 < Grum> ok lets assume we just do this stupidly 21:32 < Grum> and we search through the BlockState[] to find the index ok ? 21:32 < Grum> and then use that index in the char[4k] to write 21:32 < Grum> so; char[4k] we'll always have, which is 8k of data 21:33 < Grum> so we can host another 8k of data until 'just storing BlockState[]' is better 21:33 < Grum> which is 2k pallet entries 21:33 <+Amaranth> But of course that'd be too slow to use... 21:33 < Grum> so, when <2048 blockstates and super naive searching it is cheaper to do that over BlockState[] 21:34 < Grum> so lets assume trove is cool 21:34 < Grum> and its ObjectCharIdentityMap is 'smart' 21:34 < Grum> so it would just store: BlockState and char for each 'entry' 21:34 <+Amaranth> I don't remember when the cutoff point is where having a sorted array and binary search is faster than linear though 21:35 < Grum> so that is 6 bytes each 21:35 < Grum> and another 4 bytes for the other index 21:35 < Grum> so when it can spend 8k, we can do ~800 entries until BlockState[] is cheaper 21:35 < Grum> in the end its just math, and cramming 800 blockstates into a single chunk is actually quite hard to do 21:36 < Grum> and we need a migation path anyhow, so just mathing all the options and then having it selecting stuff based on the pallet-size and growing just makes sense 21:36 <+Amaranth> btw, this would be a good time to change to 32x32x32 chunk size :D 21:36 <+Amaranth> Double your draw distance 21:37 < Grum> that is not how it works Amaranth :p 21:38 <+Amaranth> Well, unless you're already bottlenecking somewhere else that's close enough to how it works 21:38 < Grum> not really 21:38 <+Amaranth> Although you'll also slow down mesh generation on updates 21:38 < Grum> yeah and this means you have to generate 8 times the amount of mesh 21:40 <+Amaranth> But the overhead for setting up state and drawing each chunk as a separate draw call is non-trivial and having bigger chunks means you get to cut that down or draw more with the same effort 21:40 <+Amaranth> Of course you also have to worry about memory and blah blah blah 21:40 <+Amaranth> But once you optimize the rest the chunk size will end up being a limiter 21:43 < Grum> yeah gpu memory is also a pain 21:44 < Grum> we can get quite some gain from jsut rendering a sphere 21:45 < Grum> saves 33% area assuming i remember right =) 21:47 <+Amaranth> Yeah, something like that 21:50 < Grum> anyhow, until we fix generation that is just all pointless 21:50 < Grum> threading that is going to be needed to do anything >16 --- Day changed mer. mars 25 2015 01:12 < Not-4e01> [wiki.vg] Edit by Thejoshwolfe to Protocol -> http://wiki.vg/index.php?title=Protocol&diff=6528&oldid=6524 02:13 < Not-4e01> [mineflayer] thejoshwolfe pushed 2 commits to master [+1/-0/±4] http://git.io/jUtk 02:13 < Not-4e01> [mineflayer] thejoshwolfe 1a4a05b - adding a windowUpdate event on windows themselves, such as bot.inventory. see #236. 02:13 < Not-4e01> [mineflayer] thejoshwolfe dc2577f - basic support for creative mode inventory management. see #121 02:43 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+1/-0/±1] http://git.io/jUs3 02:44 < Not-4e01> [mineflayer] thejoshwolfe 840bc19 - starting a test bot. see #203. The bot uses the creative mode api to clear it's inventory, and then /give to give itself dirt. The bot checks that every step of the way is working as intended. Throwing items at the bot during the test will cause the test to fail. 03:49 < rom1504> does someone have any clue whether this https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/src/protocol.js#L1097 is correct ? (by comparison to http://wiki.vg/Protocol#Position) 03:49 < rom1504> maybe there's someone good with binary operators around ^^ 03:51 < Fenhl> I have absolutely no clue what is going on in that Prismarine code 03:51 < Fenhl> why is there an array? 03:51 < rom1504> https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/src/protocol.js#L1062 03:52 < rom1504> apparently 64bit long are represented with an array 03:52 < Fenhl> ah 03:53 < Fenhl> the code seems correct, then 03:54 < rom1504> x and y seems to be correct (from testing), but z is wrong (only using minecraft-server, it's working using "open to lan" on vanilla client) 03:54 < rom1504> well I'm assuming the problem is coming from that part of the code 03:55 < rom1504> there must be something slightly different between the minecraft server and the one in the vanilla client 03:55 < Fenhl> is your z negative? 03:55 < rom1504> yes 03:55 < Fenhl> and x is positive? 03:55 < rom1504> yes 03:55 < Fenhl> bit shifting operators in most languages are different from Java's 03:56 < Fenhl> I don't know how they work in JS, but that's probably what's breaking the code 03:56 < rom1504> yeah 03:57 < rom1504> I don't understand "& 0x3FFFFFF" 03:57 < Fenhl> that just takes the last 26 bits 03:58 < Fenhl> since 0x3FFFFFF is 26 ones in binary 03:58 < rom1504> oh ok 03:58 < rom1504> (I get 67108820 instead of around -44 as z) 04:00 < Fenhl> 67108820 - 2^26 = 44 04:00 < Fenhl> er, -44 04:00 < rom1504> good point 04:00 < Fenhl> if your x or z coord is >= 2^25, you need to subtract 2^26 04:01 < Fenhl> that should give you the right numbers 04:01 < Fenhl> same with y: if it's >= 2^11, you need to subtract 2^12 04:01 < rom1504> ok let's try that 04:04 < Fenhl> there, fixed the docs 04:04 < Fenhl> is Not-4e01 broken again? 04:04 < Not-4e01> [wiki.vg] Edit by Fenhl to Data Types -> http://wiki.vg/index.php?title=Data_Types&diff=6529&oldid=6491 04:04 < Fenhl> oh, it's just really slow 04:06 < rom1504> that fixed my problem :) 04:07 < rom1504> thanks 04:07 < Fenhl> glad I could help. It's also common enough to warrant explanation on the wiki 04:11 < Not-4e01> [wiki.vg] Edit by Fenhl to Data Types -> http://wiki.vg/index.php?title=Data_Types&diff=6530&oldid=6491 04:13 < Fenhl> hm, apparently this is broken in Hematite too 07:31 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+0/-0/±1] http://git.io/jTfA 07:31 < Not-4e01> [mineflayer] thejoshwolfe ce849ed - fix "message" event parameter documentation 08:41 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+0/-0/±1] http://git.io/jT3s 08:41 < Not-4e01> [mineflayer] thejoshwolfe e5d0b88 - superflat test starts by making sure it has op 09:26 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+1/-0/±2] http://git.io/jT8B 09:26 < Not-4e01> [mineflayer] thejoshwolfe 9370359 - superflat test should use creative actions instead of /give to get items 20:53 < barney_> For anyone writing python protocol implementations, the poorly-named 'cryptography' library now supports everything you need to do encryption on the server and the client 20:53 < barney_> https://github.com/pyca/cryptography 20:54 < barney_> previously I think only pycrypto did everything you need, and pycrypto is kind of a piece of shit 21:19 < dx> \o/ 21:20 < dx> barney_: are you doing anything minecraft related lately? or did they just close a ticket relevant to this today? 21:37 < barney_> dx, I'm going to move quarry over to cryptography when they release 0.9 21:37 < barney_> and idk, I'm a bit stuck for projects at the moment 21:38 < barney_> well, I already have moved quarry over locally, but I'll wait til they release before pushing anything 21:40 < dx> branches! 21:40 < barney_> good point 21:44 < barney_> dx, https://github.com/barneygale/quarry/commit/c3d92fa0b5d09c4d1d8c8661ffb359b20471cd6c 21:51 < dx> neat 21:51 < Not-4e01> [mineflayer] rom1504 pushed 4 commits to master [+0/-0/±8] http://git.io/jqwk 21:51 < Not-4e01> [mineflayer] deathcap cca1ed1 - bite -> double_bite since it now reads 16 bits instead of 8 21:52 < Not-4e01> [mineflayer] deathcap 1dfb3f6 - Remove Column metadata property - not part of API 21:52 < Not-4e01> [mineflayer] deathcap 5d03bb0 - Remove the obsolete Block 'add' field 'add' was a 4-bit integer value, used to support 'extended' block IDs, when combined with the 8-bit blockType field (for 12-bits total). MC 1.8 combined add(4)+blockType(8)+metadata(4) to a 16-bit value; we now set blockType to the full 12-bit value instead of splitting it across 'add'. 21:52 < Not-4e01> [mineflayer] ... and 1 more commits. 21:53 < Not-4e01> [mineflayer] rom1504 pushed 2 commits to master [+0/-0/±2] http://git.io/jqwV 21:53 < Not-4e01> [mineflayer] deathcap 30edfa1 - Update to lodash ^3.5.0 21:53 < Not-4e01> [mineflayer] rom1504 d7d671f - Merge pull request #238 from deathcap/lodash3 Update to lodash ^3.5.0 21:57 < rom1504> much spaming ^^ 22:06 < nickelpro> PyCrypto is hard for some people to install but using it isn't so bad --- Day changed jeu. mars 26 2015 00:44 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jmVe 00:44 < Not-4e01> [mineflayer] rom1504 ffa6ab9 - Update minecraft-protocol 01:09 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+0/-0/±2] http://git.io/jmim 01:09 < Not-4e01> [mineflayer] thejoshwolfe ec4fce8 - starting a flying implementation for creative mode. see #121 06:29 < Not-4e01> [mineflayer] thejoshwolfe pushed 2 commits to master [+0/-0/±3] http://git.io/jYVA 06:29 < Not-4e01> [mineflayer] thejoshwolfe 17fa43c - less indentation 06:29 < Not-4e01> [mineflayer] thejoshwolfe 3723d71 - smoother flying implementation 11:37 < gurun> Bounding boxes in the MCPC. Does it adjust to pich/yaw with grow and shrink of the aligned bbox? 11:38 < gurun> or are bbox just fake hardcoded with lenght height boxes? 11:56 < gurun> yeah, it's just fake. Damn. 12:23 < barneygale_> nickelpro, I personally found pycrypto's AES to be pretty slow 17:58 < SopaXorzTaker> Id Unconnected Ping Open Connections 17:58 < SopaXorzTaker> whew! 19:05 < rom1504> Gjum: any clue whether nbt matter inside a recipe ? 19:06 < rom1504> we have been ignoring the existence of nbt entirely 19:44 * gurun awards rom1504 the "master ingorant achievement of the year" 19:45 < gurun> that is total and complete denial :-) 19:47 < rom1504> :D 19:48 < rom1504> no be nbt is handled, but we just don't take it into account inside recipe 19:48 < rom1504> I'm not sure it should be ? 22:04 < Paprikachu> Grum: why did you guys have to break my cactus farm design :( 22:22 < redstonehelper> Paprikachu: what changed? 22:22 < Paprikachu> they changed vines so that you cant have them hold a floating block anzmore 22:22 < Paprikachu> anymore 22:24 < Grum> huh? 22:24 < Grum> since when has what changed Paprikachu? 22:24 < Paprikachu> im not sure when it changed, it's been a while since i played factions 22:25 < Grum> custom server -- should i argue they did it? 22:25 < Paprikachu> but you used to be able to place a vine on the side of a block, place a block on top of the vine, then remove the block on the side and the vine would hold the block above and not break 22:25 < Paprikachu> and no i just tried it in creative 22:25 < Paprikachu> single player 22:25 < Paprikachu> it doesn't work anymore 22:25 < Grum> seem weird 22:26 < Paprikachu> https://www.youtube.com/watch?v=FRTB5uwSYgI 22:26 < Paprikachu> here's a video of the design 22:27 < Paprikachu> well, skip forward to 4:10 22:27 < redstonehelper> Paprikachu: try placing a button on the bottom of the sand you want to float 22:28 < redstonehelper> the button should replace the vine 22:28 < Paprikachu> right, i forgot you could do that 22:28 < Paprikachu> ill try it 22:28 < Paprikachu> wait 22:28 < Not-4e01> [mineflayer] rom1504 pushed 2 commits to master [+1/-0/±7] http://git.io/jn6D 22:28 < Not-4e01> [mineflayer] rom1504 a6abea7 - Use new recipes format 22:28 < Not-4e01> [mineflayer] rom1504 9dba64b - Merge branch 'master' of github.com:andrewrk/mineflayer 22:28 < Grum> wonder where that changed 22:28 < Paprikachu> how can you possibly place a button on sand, when it would fall immediately 22:29 < Grum> i know we touched the logic because it was wtfbbqinsanely unreadable 22:29 < redstonehelper> you can say vines auto-attaching to a floating block is a bug :D 22:30 < Grum> yes i dont mind the current behavior 22:30 < Grum> 'just top attached vines' is a weird thing to have 22:30 < Paprikachu> while weird, it's cool and useful 22:30 < redstonehelper> they can make nice detail on ceilings 22:30 < Paprikachu> makes for very space efficient farms 22:31 < Paprikachu> theres probably a lot of people relying on it too, i wonder why nobody reported it yet 22:31 < Grum> guessing they do not know of bugs.mojang.com or its fewer people than hoped 22:31 < Paprikachu> heh 22:31 < Paprikachu> well, it's pretty unknown 22:32 < Grum> i just tried to read the code for the vines .... yeaaaah never touching that again :/ 22:32 < Paprikachu> :) 22:33 < Grum> i actually had to ask jens what the intended behavior was because the code didnt explain, so i reimplemented it as he said and i guess that purged this freak behavior of 'just having it on the ceiling' 22:33 < redstonehelper> I'd totally trade in all vines if we could just get the stem mushroom blocks with silk touch :D 22:34 < Paprikachu> seems like the button replacement doesn't work, unless i'm not seeing the obvious 22:34 < Grum> from the looks of it it was never intended to 'survive' on top only O.o 22:35 < Grum> because it decides 'if it dies' depending on if it has one of the NESW faces 'vined' 22:35 < Paprikachu> :s 22:35 < Grum> i'm guessing that before the data didn't change orso? and it 'thought' it had a vine on NESW ? and now with blockstates there is no lying anymore? 22:36 < Paprikachu> i'm not sure what you mean 22:36 < Grum> lol 22:36 < Grum> it never even stored 'having a top vine' 22:36 < Paprikachu> the way to build it was as described 22:36 < Grum> that explains O.o 22:36 < Grum> so yeah, bug in the old code I'm afraid :/ 22:37 < Paprikachu> you could re-add it as an intended feature for builders :) 22:38 < Paprikachu> so that we can actually place them on blocks too 22:38 < Paprikachu> without using tricks 22:38 < Paprikachu> (would still need the trick for falling blocks though) 22:39 < redstonehelper> Paprikachu: you can maybe just use floating sand if your design allows that 22:39 < Grum> well if this would be implemented sanely it would need to 'grow' to the up-face 22:39 < redstonehelper> Grum: I finished that train I annoyed you about a few weeks back :D http://i.imgur.com/PXZ93AF.jpg 22:39 < Paprikachu> what the fuck. 22:39 < Grum> yeah i saw the post. looks majestic 22:39 < redstonehelper> (survival, of course) 22:40 < Paprikachu> how did you make that 22:40 < redstonehelper> I made a tool to convert images to schematics representing the images on a map 22:40 < Paprikachu> redstonehelper: im not sure what you mean with floating sand 22:40 < Paprikachu> heh 22:40 < redstonehelper> tool here, let me get a link for the sand: http://www.reddit.com/r/Minecraft/comments/2yck3f/i_made_a_tool_to_help_you_create_map_art_in/ 22:40 < Paprikachu> and i thought you built it by hand :P 22:40 < redstonehelper> I did 22:41 < redstonehelper> I just copied it block by block from a superflat world I put the schematic in 22:41 < Paprikachu> mhh 22:41 < redstonehelper> Paprikachu: floating sand: http://imgur.com/EpNPMAm,LpNKwbw#1 22:41 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jnDw 22:41 < Not-4e01> [mineflayer] rom1504 94194e6 - Update api.md concerning the new format of the recipes. 22:41 < Paprikachu> using a flower? 22:41 < redstonehelper> yup 22:42 < Paprikachu> i cant do that, the design needs to stack about 100 blocks up 22:42 < Paprikachu> which is the height of my base 22:42 < Paprikachu> well, the height of the part that i use for the farm :P 22:42 < redstonehelper> I don't want to question your intentions 22:42 < redstonehelper> but why the hell would you need so many cacti? 22:43 < Paprikachu> it sells for good money :) 22:43 < redstonehelper> oh. 22:43 < Paprikachu> mh, maybe i could use strings 22:43 < Paprikachu> but vines definitely looked better 22:43 < Paprikachu> strings are also harder to get 22:43 < redstonehelper> huge cactus farms are not about the looks 22:43 < redstonehelper> dig a hole to put your farm in 22:44 < Paprikachu> heh 22:44 < Paprikachu> if it was that easy :P 22:44 < Grum> gross bug :/ 22:44 < redstonehelper> digging holes is fun! 22:44 < Paprikachu> we already dug out 4 entire chunks for our base ;) 22:44 < Paprikachu> base goes from bedrock to sky limit 22:45 < Paprikachu> Grum: don't know what to do, huh 22:46 < redstonehelper> just use buttons 22:46 < Paprikachu> that doesnt work 22:47 < Paprikachu> how would you place the button? 22:47 < Paprikachu> if the sand has no block below, it falls :p 22:47 < Paprikachu> i guess pulling out your internet cable, breaking the blocks, plugging it back in *might* work 22:49 < redstonehelper> Paprikachu: place vine on wall, place sand on top of vine, place button on bottom of sand, done 22:49 < Paprikachu> oh 22:49 < Paprikachu> right 22:50 < redstonehelper> or be really quick, it's possible without vines 22:50 < Paprikachu> hence the "cut your internet" trick :D 22:51 < Paprikachu> but yeah, buttons look like a good replacements 22:51 < Paprikachu> -s 22:51 < Paprikachu> so thanks for that 22:52 < Paprikachu> i like how in factions every single weird mechanic in minecraft is abused 22:52 < Paprikachu> our base defense relies on fence hitboxes :D 22:54 < Paprikachu> .:Paprikachu:. i like how in factions every single weird mechanic in minecraft is abused 22:54 < Paprikachu> .:Paprikachu:. our base defense relies on fence hitboxes :D 22:54 < Paprikachu> not sure if you received that. randomly got dc'd. 22:59 < Xor_Boole> is sticking random NBT on items "supported"? 23:03 < Gjum> Xor_Boole: I think it's done by mods already, and used by vanilla for custom names and the like 23:04 < Xor_Boole> Gjum well yes 23:04 < Xor_Boole> but I need to know if it's "future proof", e.g. if I can stick random NBT on an item taht isn't recognized by vanilla 23:04 < Xor_Boole> and then it'll stay there, and won't break when an update happens or whatever 23:24 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+1/-0/±1] http://git.io/jnjW 23:24 < Not-4e01> [mineflayer] rom1504 2c35ebc - Put the craft part of inventory.js in craft.js. --- Day changed ven. mars 27 2015 00:48 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+5/-0/±1] http://git.io/jc8i 00:48 < Not-4e01> [mineflayer] rom1504 57f83b3 - Split inventory.js in 5 more files (chest,dispenser, enchantment table, furnace, simple_inventory) 03:03 < Not-4e01> [mineflayer] thejoshwolfe pushed 3 commits to master [+0/-0/±3] http://git.io/jcQS 03:03 < Not-4e01> [mineflayer] thejoshwolfe c9afcfe - clarifying placeBlock api 03:03 < Not-4e01> [mineflayer] thejoshwolfe 6acaae7 - creative.startFlying() to begin hovering. see #121 03:03 < Not-4e01> [mineflayer] thejoshwolfe 912e786 - superflat test digs and places blocks around 0,4,0 to initialize a testing area 03:38 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+0/-0/±1] http://git.io/jcbj 03:38 < Not-4e01> [mineflayer] thejoshwolfe 92d7cfe - superflat test: dirt collect test passes. see #203 04:16 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+0/-0/±1] http://git.io/jcjh 04:16 < Not-4e01> [mineflayer] thejoshwolfe 837ecf4 - adding a chest management test. see #203 04:35 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+0/-0/±1] http://git.io/jCJP 04:35 < Not-4e01> [mineflayer] thejoshwolfe ce4b260 - also testing trap chests 07:07 < Grum> Grum: don't know what to do, huh <-- oh know that floating sand on doubleplants will get fixed eventually 15:44 < toqueteos> has any of you guys written something about implementing/handling tickers in minecraft? it seems a fixed-step ticker is not suitable because TPS is variable with server load 16:11 <+Amaranth> toqueteos: To maintain 100% vanilla mechanics I don't think you have a choice 16:11 <+Amaranth> You could splits things up in to islands of execution for cases where players are far enough away from each other to not share any loaded chunks 16:11 <+Amaranth> Just have to be careful about merging them back together 16:12 <+Amaranth> But that's still a 20 ticks per second rate just ticking each island independently then waiting for them to all finish 16:12 < toqueteos> Amaranth: so it's all about making al run as fast as the slowest thing in the server? 16:13 <+Amaranth> You could probably get away with pervasively threading entities too but again, you'd have to wait for them all to finish (and probably wait for all the block ticking before starting) 16:13 < toqueteos> s/al run/all run/ 16:13 <+Amaranth> Yep 16:14 < toqueteos> damn 16:14 <+Amaranth> Worlds/dimensions might be able to run independently but that could get complicated with portal mechanics 16:14 <+Amaranth> Someone might be passing entities back and forth through a portal and expect exact ticking between the worlds for their machine to work 16:15 < toqueteos> i want to toy with distributed server approach but ticks are non-trivial to handle that way then 16:16 < SopaXorzTaker> WTF: http://wiki.vg/Pocket_Minecraft_Protocol#Packet_Encapsulation_Format, "length short 0x0090 Length of Packet in bits" 16:16 < SopaXorzTaker> did RakNet developers do that 16:17 < SopaXorzTaker> to keep compatibility with various devices and bitnesses 16:17 <+Amaranth> boo, raknet has the facebook PATENTS clauses 16:19 < toqueteos> haha 16:19 < toqueteos> it would be awesome to have osmething like httpbin but for mc 16:19 < morfin> but what do you think about breaking whole thing to tasks and running those tasks in thread pool? 16:20 <+Amaranth> SopaXorzTaker: From raknet docs: bitSize tells you how many bits long the data field of the struct is. 16:20 < TkTech> fragmer: You have any ooooooold .dat levels sitting around? 16:20 < TkTech> fragmer: If you do, mind sending them my way? 16:20 <+Amaranth> Does that mean how many bits are in a byte? 16:20 < SopaXorzTaker> but why the did they choose BITS? 16:20 <+Amaranth> Because they've got the length in bytes too 16:21 < SopaXorzTaker> why not use just BYTES? 16:21 < morfin> i think island execution would be overcomplicated 16:21 < morfin> because of redstone 16:22 <+Amaranth> Huh, maybe bits is on the wire and the library converts to bytes for the struct 16:23 <+Amaranth> morfin: Well, if you allow chunk loading with redstone and a machine runs into another island you'd just have to merge them same as if a player was moving 16:23 <+Amaranth> Although it would be in a different part of the state machine 16:23 < toqueteos> well.. thanks Amaranth that was pretty informative 16:23 < SopaXorzTaker> Amaranth, {i'm enraged of RakNet} BUT WHY THE HELL DO THEY USE 3-BYTE COUNTS THEN? 16:23 <+Amaranth> But yeah, recalculating what the islands are could be expensive 16:24 < morfin> imagine huge holyshit CPU using redstone) 16:25 < TkTech> (Actually, does *anyone* have old Minecraft Classic .dat levels sitting around?) 16:26 <+Amaranth> Personally I think I'd just say fuck redstone loading chunks and go back to before 1.6 behavior or whenever that change happened 16:26 < morfin> hm? 16:27 < morfin> i remember only that redstone schemes could not start automatically 16:27 < morfin> sometimes 16:39 < SopaXorzTaker> TkTech, I do! 16:39 < SopaXorzTaker> yo mean these uncompressed levels? 16:39 < SopaXorzTaker> I do 16:41 < SopaXorzTaker> TkTech, No, sorry, but I have a script to get the data 16:43 < TkTech> SopaXorzTaker: Nah, thanks though. I'm looking for the actual serialized on-disk .dat files 16:44 < TkTech> SopaXorzTaker: I want to replace the iffy loader in pymclevel (https://github.com/Khroki/MCEdit-Unified/blob/master/pymclevel/javalevel.py) with a proper Java serialized object loader. 16:44 < SopaXorzTaker> TkTech, you mean the HDD saves that the thing made 16:44 < TkTech> Yeah, they're normally called level.dat 16:44 < TkTech> Literally just a Java ObjectOutputStream 16:44 < SopaXorzTaker> TkTech, sorry :< 16:44 < TkTech> Womp womp 16:45 < TkTech> Someone will have a couple, I'm like 99% sure fragmer will have them laying around. 16:45 < SopaXorzTaker> maybe decompile original jar, tweak some about premium checks annd recompile 16:46 < SopaXorzTaker> you will be able to save the level 17:44 < ZeroCool00> hi guys 17:44 < ZeroCool00> i'm here because i visit this site: http://wiki.vg/Protocol and i would to create a minecraft bot using this source 17:48 < ZeroCool00> heyy 17:48 < ZeroCool00> is anyone there?? 17:49 < ZeroCool00> hey stupid kid answer me 17:50 < ZeroCool00> fuck this stupid irc channel 17:54 < toqueteos> woah that dude is an ungrateful bastard 18:01 < shoghicp> this reminds me of my channel D: 18:08 < morfin> lol such faggot 18:34 < TkTech> morfin: Not appropriate either. 18:34 < morfin> hm 18:35 < morfin> i don't know what problems can appear if i just teleport between worlds 18:36 < morfin> if i have one entry point 18:36 < morfin> so as example i have server A, but also i have B,C,D - users connect to B,C,D via A(let's call that lobby), but when i move to another server i just need to proxify user differently 18:39 < morfin> but also if A and B belong to one "realm" i should pass whole inventory, experience etc of user 18:39 < morfin> *B and C 18:50 < morfin> shit i will have such problems like messaging between servers 19:47 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±30] http://git.io/j4nS 19:47 < Not-4e01> [mineflayer] rom1504 7890055 - Improve code style (hints from webstorm + require style discussed in #226, I didn't remove the trailing comma) 19:57 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/j48w 19:57 < Not-4e01> [mineflayer] rom1504 6bdaebf - Add message on how to run superflat.js 21:56 < toqueteos> guys does any of you have any numbers on how much does loading chunks from disk take? i have a very barebones benchmark and want to test against something 21:58 < toqueteos> these are the results for my current thingie http://hastebin.com/lugayegixu.rs 22:35 < Not-4e01> [mineflayer] rom1504 pushed 2 commits to master [+0/-0/±2] http://git.io/jBV6 22:36 < Not-4e01> [mineflayer] zuazo ac27894 - BungeeCord: Support receiving multiple exit packets for the same user 22:36 < Not-4e01> [mineflayer] rom1504 18bc585 - Merge pull request #241 from onddo/bungueecord-quit BungeeCord: Support receiving multiple exit packets for the same user --- Day changed sam. mars 28 2015 00:13 < Not-4e01> [mineflayer] thejoshwolfe pushed 1 commit to master [+0/-0/±2] http://git.io/jRIk 00:13 < Not-4e01> [mineflayer] thejoshwolfe 691fc99 - documenting creative api. closes #121 01:14 -!- Irssi: #mcdevs: Total of 155 nicks [1 ops, 0 halfops, 10 voices, 144 normal] 12:09 < SopaXorzTaker> hi there 16:15 < SopaXorzTaker> writing a MCPE server in pure C 16:15 < SopaXorzTaker> ~~~ decodeConnectionRequest2(buf, &offset, &mtu, &clientId); 21:29 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+1/-0/±2] http://git.io/jz2H 21:29 < Not-4e01> [mineflayer] rom1504 03ea871 - Add everything for circle ci to work, just need to enable circle ci. (see #232) 22:53 < slide> Does anyone know how to clear the tab list header/footer? 22:53 < slide> Setting them to "" leaves the space they occupy there. And sending null crashes the client. 23:21 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jgv9 23:22 < Not-4e01> [mineflayer] rom1504 4c1d7ac - Remove zlib in test.js : compression is now done in node-minecraft-protocol (this doesn't fix these 2 tests) 23:25 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jgfw 23:25 < Not-4e01> [mineflayer] rom1504 4402e7a - Fix buffer sizes in test.js (fix one of the two tests) --- Day changed dim. mars 29 2015 04:18 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jgil 04:18 < Not-4e01> [mineflayer] rom1504 caa520a - Fix recipe delta for recipe with null ids 04:39 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jg14 04:39 < Not-4e01> [mineflayer] rom1504 719b549 - Continue fixing null items in recipe (now RecipeItem with id -1), fix #244 15:13 < Aragas> I have mastered 3D, can't believe it. https://www.dropbox.com/s/wd7fg5aly07ubrf/Скриншот%202015-03-29%2015.43.08.png 15:15 < Aragas> Soon this will even work properly 15:17 < Aragas> And it can work on Craft.Net 17:33 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jVmz 17:33 < Not-4e01> [mineflayer] rom1504 4a4d2a8 - Ignore named_entity_spawn if player_info was not sent, fix #213 and #206. 21:16 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±2] http://git.io/jwGW 21:16 < Not-4e01> [mineflayer] rom1504 a8fadba - Fix #114 by waiting a bit before jumping again. Add command "jump a lot" and "stop jumping" to test that in jumper.js. 22:08 < Not-4e01> [mineflayer] rom1504 pushed 2 commits to master [+0/-0/±2] http://git.io/jwzO 22:08 < Not-4e01> [mineflayer] deathcap 427eb93 - Fix stopDigging() block_dig packet block location 22:08 < Not-4e01> [mineflayer] rom1504 5745e26 - Merge pull request #245 from deathcap/stopdig Fix stopDigging() block_dig packet block location --- Day changed lun. mars 30 2015 02:55 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+5/-1/±3] http://git.io/jrc2 02:55 < Not-4e01> [mineflayer] rom1504 1f0fcf6 - Port superflat.js to mocha. Refactor it. Run it automatically with circle ci. Rename test.js to internalTest.js. * Divise superflat into 5 files : * superflat.js start the whole thing * start_server.js to start the minecraft server * testCommon contain common function used in the test * digAndBuild tests dig and build * useChest tests Chests. Rename test.js to internalTest.js. 02:57 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jrch 02:57 < Not-4e01> [mineflayer] rom1504 183f12f - add missing packages 02:58 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jrCI 02:58 < Not-4e01> [mineflayer] rom1504 da33de9 - remove trailing comma in package.json 03:01 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jrCK 03:01 < Not-4e01> [mineflayer] rom1504 cae547b - update circle.yml 03:23 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jr4F 03:23 < Not-4e01> [mineflayer] rom1504 b4e84c6 - find external tests automatically in superflat.js 03:30 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+1/-1/±0] http://git.io/jrBN 03:30 < Not-4e01> [mineflayer] rom1504 c0f45ba - Rename superflat.js externalTest.js (because it tests against the minecraft server) 04:02 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jrgW 04:02 < Not-4e01> [mineflayer] rom1504 4357190 - Add parameters to externalTest.js 04:17 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+1/-0/±0] http://git.io/jran 04:17 < Not-4e01> [mineflayer] rom1504 64e8932 - Add test for crafting 11:39 < mattrick> Hello 15:17 < lautriv> can anyone help me debugging a minecraft server ? it's rejecting users on whitelist ( and i have no idea about games ;) ) 16:15 < toqueteos> does anyone know a client doing "server list ping" with just ping, or ping and then handshake? 16:26 < Not-4e01> [wiki.vg] Edit by Fenhl to Protocol -> http://wiki.vg/index.php?title=Protocol&diff=6532&oldid=6528 16:28 < barneygale_> toqueteos, handshake, then ping 16:28 < barneygale_> handshake is always the first packet 16:29 < Fenhl> yeah, clients should always do it in that order, because vanilla clients do 16:29 < Fenhl> but I'm arguing that servers should accept any amount of handshake and ping packets in any order, following the robustness principle 16:30 < toqueteos> that seems more undeterministic than robust 16:31 < barneygale_> Fenhl, that would require us going back to unique packet IDs right? 16:32 < Fenhl> they are already unique 16:32 < barneygale_> no they're not, you need the protocol mode too 16:32 < barneygale_> they're only unique within a protocol mode 16:32 < Fenhl> yes but status request and ping are in the same mode 16:32 < barneygale_> ahh, I misunderstood your point 16:33 < barneygale_> interlaced/multiple "request" and "ping" packets make sense to me, but not handshakes 16:35 < Fenhl> clients that want to talk to Notchian servers shouldn't actually do this because according to toqueteos they rely on that specific order 16:36 < Fenhl> but it doesn't hurt at all for custom servers to support it anyway 16:37 < Dinnerbone> The vanilla server doesn't care in which order you do that 16:37 < Dinnerbone> It just so happens that the client does a status then a ping, but it could do ten statuses and then two pings, or a ping then a status, or a ping, or nothing 16:38 < Dinnerbone> In fact the request isn't tied to a response, some servers are abusing this to send animated MOTDs by spamming the client with status responses 16:38 < Fenhl> toqueteos: wherever you got your info, it's incorrect :P 16:39 < toqueteos> vanilla server does care about that, i just tried 16:39 < Fenhl> maybe it's a bug? 16:40 < toqueteos> https://github.com/toqueteos/hematite_server/blob/master/src/proto/slp.rs#L186 move ping 1 line up 16:40 < toqueteos> and remove the #cfg from that test, launch a server locally and run "cargo test" 16:44 < Fenhl> btw, there is a subtle difference between “Notchian” and “vanilla” 16:46 < Fenhl> Notchian is the official Minecraft server/client binaries by Mojang. Vanilla is the intended behavior of Minecraft 16:47 < Fenhl> Notchian is an implementation of vanilla, with the exception of bugs and the addition of implementation details 17:06 < barneygale_> I always thought notchian was the reference implementation 17:12 < barneygale_> drawing such a distinction is pretty difficult IMO. Take the Query protocol for example. Did notch intend to write it such that the player list is a list of null-terminated string pairs, (("player_0", "Fenhl"), ("player_1", "barneygale"))? Yep. Did his code actually achieve that? Not at all. 17:12 < barneygale_> Implementing an imagined "vanilla" behaviour wouldn't make any sense in that case. 17:13 < rom1504> a bug in the notchian server/client is something missing from the protocol description 17:13 < rom1504> (or not, happy trolling :p) 17:25 < Dinnerbone> Haha 17:25 < Dinnerbone> This is funny to read from my perspective :p 17:26 < Dinnerbone> Most of what you call notchian network stuff was written by me, I did most of the packet layer that's in use atm 17:26 < Dinnerbone> And the Query protocol was written externally 17:26 < Dinnerbone> Really badly. 17:53 < barneygale_> That explains it 17:54 < barneygale_> What was the history behind that? When it was announced we all expected hosted multiplayer, but then realms took another 2 years to materialize and it doesn't use query (right?) 17:54 < barneygale_> I may be misremembering :P 17:55 < barneygale_> I remember devouring your blog post dbone, before you were cool 17:55 < barneygale_> ;D 18:07 < Xor_Boole> s/cool/insane 18:07 * Xor_Boole runs 18:11 < toqueteos> bwahahahaha 18:11 < toqueteos> There's always something Xor_Boole can add to make it hilarious 18:11 < Xor_Boole> I've spent too long near Thinkofdeath, blame him 18:12 < Xor_Boole> the spigot leaks many strange fumes 18:12 < toqueteos> yeah yeah, blame the spigot now 18:12 < toqueteos> you were that way since birth, for sure 18:12 < Xor_Boole> but it smells so great 18:12 < Xor_Boole> probably, working under thinky didn't help 18:13 < toqueteos> so.. somehow my region file loader got 10x worse and it's now taking 6 seconds to read 712 chunks, how much am i fired? 18:13 < Xor_Boole> 12 18:14 < toqueteos> only 12? nice! 18:14 < toqueteos> no, really.. any estimates on how much should it take to load that much chunks? 18:15 < Thinkofdeath> toqueteos: oh btw, whilst the vanilla server doesn't care about the order of the SLP, bungeecord and spigot do 18:16 < toqueteos> holy shit llvm optimizations dude 18:16 < toqueteos> now it's taking 277ms 18:16 < toqueteos> Thinkofdeath no weird client users blaming you? 18:16 < Thinkofdeath> just ones trying to break the server :) 18:17 < Thinkofdeath> turns out its very easy to DOS the server with repeated status requests 18:17 < toqueteos> really? 18:17 < Thinkofdeath> yep 18:17 < Thinkofdeath> Most likely made worse by us firing an event for it but still 18:18 < toqueteos> yeah.. i guess that's most of cpu time goes for sure 18:18 < toqueteos> that's where* 18:18 < toqueteos> so.. can i ask for volunteers for something which could be amaaazing? 18:19 < toqueteos> yesterday i sort of finished my distributed NOT-YET-FUNCTIONAL-THOUGH MC Server proof of concept 18:20 < Xor_Boole> so many modifiers 18:20 < Xor_Boole> sort of kind of in a way maybe finished 18:20 < toqueteos> and it would be great for some volunteers to spin up some nodes all around the globe to test if the server can handle ticks getting de-sync if shit goes down 18:21 < toqueteos> i know, it's just a toy right now, that's why so many modifiers 18:22 < Xor_Boole> public static final synchronized strictfp void foo(A a, B b, C c) 18:22 < Xor_Boole> wow, feels wierd not having higher kinds 18:22 < toqueteos> the idea is to have a easily scalable server based on lots of small shitty ones 18:22 < toqueteos> all acting as one 18:23 < toqueteos> you forgot a some ? in there Xor_Boole 18:23 < Xor_Boole> #webscale 18:23 < toqueteos> yeah #buttscale matters 18:23 < Xor_Boole> toqueteos nah just too much scala for me 18:23 < toqueteos> scala? no no 18:23 < Xor_Boole> no, I mean my generics 18:25 < toqueteos> ok then 18:25 < Xor_Boole> I was going to do something like def foo[A, B[_] >: A, C[_] <: B[A]](a: A, b: B[C[A]]) 18:25 < toqueteos> it would be even better if you used A, _A and A_ 18:25 < toqueteos> for clarity purposes 18:25 < Xor_Boole> obviouslly 18:25 < Xor_Boole> actually... 18:26 < Xor_Boole> I think A_ is an invalid identifier... 18:26 < Xor_Boole> maybe 18:26 < toqueteos> A is not a number, it should do 18:26 < Xor_Boole> no never mind 18:26 < Xor_Boole> scala is wierd about suffix underscores 18:26 < Xor_Boole> wunderbar! 18:27 < Xor_Boole> def foo[A, _A[_] >: A, A_[_] <: _A[A]](a: A, b: _A[A_[A]]) = ??? bettur 18:28 < toqueteos> WAY better 18:28 < toqueteos> and i like the lack of docs 18:28 < toqueteos> keep it that way please 18:28 < Xor_Boole> I never document my code 18:28 < Xor_Boole> ever 20:49 < Xor_Boole> hmm, apparently the vanilla client treats the custom name visible tag differently on LivingEntities now 20:49 < Xor_Boole> something about "new rules?" 20:49 * Xor_Boole shrugs 21:14 < Aragas> I can't understand one thing about light. For example, i have a Sand block, on top of it is Air. Will SkyLight = 15 in Sand block or in Air block? There aren't any block on top except Air, so the sky is clean. 21:16 < Xor_Boole> I think light is zero inside solid blocks 21:16 < Aragas> Light is set around solid blocks? 21:16 < Xor_Boole> though ostensibly it's a meaningless choice what the value of light is inside a solid block 21:17 < Xor_Boole> but yes, light is calculated around solid blocks 21:19 < Aragas> Now i see that the problem is. My render uses solid blocks for light info 21:19 < Aragas> Thanks 21:49 < Aragas> The problem here is, chunks can't be rendered separate the. Border blocks need light info from neighbor chunks 21:51 < Aragas> But it's clear why such methode is used. One block in separate sides can have diffenrent lightning 21:52 < Thinkofdeath> You re-render the chunk when the one next to it is loaded 21:53 < Aragas> So you render them as one --- Day changed mar. mars 31 2015 12:25 < Not-4e01> [mineflayer] roblabla pushed 2 commits to master [+0/-0/±2] http://git.io/jDyf 12:25 < Not-4e01> [mineflayer] deathcap f4032cb - Add _chunkColumn for direct chunk data access (not stable API) 12:25 < Not-4e01> [mineflayer] roblabla 8c03c9b - Merge pull request #247 from deathcap/_chunkcol Add _chunkColumn for direct chunk data access (part of Danger-Zone API) 23:23 < rom1504> does someone know how to dismount a cart ? 23:28 < gamingrobot> rom1504: I think its a BlockPlace event with the cursor position on the cart? 23:28 < gamingrobot> oh wait nvm thats to enter it 23:30 < rom1504> that's to enter the cart http://wiki.vg/Protocol#Use_Entity 23:31 < rom1504> according to mineflayer code, it used to be the same to exit it 23:31 < rom1504> except not anymore 23:31 < rom1504> it does nothing now to resend that 23:33 < rom1504> there's nothing on http://wiki.vg/Protocol about dismounting 23:57 < Thinkofdeath> rom1504: http://wiki.vg/Protocol#Steer_Vehicle --- Day changed mer. avril 01 2015 00:02 < rom1504> oh thanks ! 00:05 < gurun> I seem to remeber something about corrupt level.dat files from some tools. Anyone recoginze that? 00:51 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±3] http://git.io/j76y 00:51 < Not-4e01> [mineflayer] rom1504 29ca422 - Fix dismount (see http://wiki.vg/Protocol#Steer_Vehicle), also add a simple API to move a vehicle. 09:55 < gurun> fnbt has improved performance, a lot. I used to use Craft.NET to load Anvil, but now wrote my own and using the latest fnbt. Loading now only takes a bit over 1s where it used to take 20-30s and up to a minute. 09:57 < gurun> so MiNET is finally free from all Craft.NET code. Hurray :-) 11:38 < rom1504> is a painting a block ? 12:44 <+Amaranth> rom1504: Nope, entity 12:45 < rom1504> oh right 17:11 * gurun in chock http://news.microsoft.com/2015/04/01/microsoft-sells-mojang-to-easports/ 17:18 < TkTech> gurun: Tell that to fragmer, he'd probably be happy :) 17:19 < gurun> TkTech, already wrote him an email. He did a great job. 17:20 < gurun> i sense countless hours of performance profiling behind it :-) 17:26 < TkTech> He's a bit of a perfectionist. 17:42 < jast> 404 :( 17:59 < SopaXorzTaker> anyone? 17:59 < SopaXorzTaker> so I have a problem 17:59 < SopaXorzTaker> http://wiki.vg/Pocket_Minecraft_Protocol#ChunkDataPacket_.280x9e.29 17:59 < SopaXorzTaker> What's the format of chunk data? 18:03 < SopaXorzTaker> I know you guys are sleeping or somewhat, but my inner fat kid wants it NOW 18:03 < SopaXorzTaker> okay, I'll wait 18:33 <+Amaranth> SopaXorzTaker: Look at the PHP server to figure it out maybe 18:33 <+Amaranth> Then document it 18:45 < SopaXorzTaker> I'm too lazy 18:45 < SopaXorzTaker> shoghicp can tell the truth 20:40 < rom1504> what's the difference between a Skeleton and a Wither Skeleton ? 20:41 <+Amaranth> rom1504: Wither 20:44 < rom1504> they have the same id 20:50 < Thinkofdeath> rom1504: http://wiki.vg/Entities#Skeleton 20:51 < Thinkofdeath> the index may be out of date though 20:55 < rom1504> yeah it's 51 now 20:56 < rom1504> ok so it's about the metadata thanks 21:22 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jxJ3 21:22 < Not-4e01> [mineflayer] rom1504 e15388b - fix painting 21:36 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±1] http://git.io/jxLa 21:36 < Not-4e01> [mineflayer] rom1504 4c15fd0 - fix block_action packet handling (packet.location.x vs packet.x) 22:55 < Not-4e01> [mineflayer] rom1504 pushed 1 commit to master [+0/-0/±3] http://git.io/jxML 22:55 < Not-4e01> [mineflayer] rom1504 7304a6c - begin fixing enchant : see http://wiki.vg/Inventory#Enchantment_Table about the inventorySlotStart. ignore the packet.property>=3 (there shouldn't be any), fix putting an item in the enchant table --- Day changed jeu. avril 02 2015 00:52 < wtfaremyinitials> has anyone reversed 15w14a’s protocol changes yet? 00:53 < wtfaremyinitials> I was about to start but if there’s someone already working on it there’s no use in reinventing the wheel 00:56 <+Amaranth> wtfaremyinitials: Does it have any? It's just a bunch of joke features 00:57 < wtfaremyinitials> Well at the very least they bumped the protocol version to 48 00:58 < wtfaremyinitials> And the client errors out when trying to log in over my old debugging proxy 01:22 < wtfaremyinitia-1> How do you set the Notchian server into protocol debug mode? 05:06 < wtfaremyinitials> has anyone figured out all the differences between 1.8.3 and 15w14a? 05:07 < wtfaremyinitials> all i’ve discovered is that client to server 0x04 and 0x06 changed /somehow/ 05:07 < wtfaremyinitials> not sure what changed though 05:24 < Deanveloper> I'm having some trouble with inheritance. 05:25 < Deanveloper> Code is confidential, so I can't reveal that stuff, but for some reason my abstract class' constructor isn't being called when I initialize a subclass of it. 05:26 < Deanveloper> Basically 05:26 < Deanveloper> ... 05:26 < Deanveloper> http://pastebin.com/FPQQgrQj 05:27 < Deanveloper> The debug code is not being called when I make a new instance of class B 05:29 < Deanveloper> http://pastebin.com/cc0uR4h8 05:30 < Deanveloper> In that case, the subclass's debug code runs, but not the superclass's 05:47 < Deanveloper> Never mind that thing I said before. It was a problem with super() being called before instance variables are registered 05:47 < Deanveloper> (which is just ugh) 10:36 < rom1504> Deanveloper: is this #java ? 10:36 <+AndrewPH> It is now 10:39 < gurun_> LOL 16:13 < wtfaremyinitials> a 16:15 < wtfaremyinitials> 16:21 < xehbit> 19:42 <+AndrewPH> 20:25 < Not-4e01> [mineflayer] rom1504 pushed 2 commits to master [+2/-0/±2] http://git.io/veJAN 20:25 < Not-4e01> [mineflayer] deathcap c580fd4 - Add sound effect event 20:25 < Not-4e01> [mineflayer] rom1504 ec2cc39 - Merge pull request #251 from deathcap/sound Add sound effect event 20:30 < Not-4e01> [mineflayer] rom1504 pushed 2 commits to master [+0/-0/±4] http://git.io/veJhs 20:30 < Not-4e01> [mineflayer] deathcap 28e4ca4 - Add block break progress events 20:30 < Not-4e01> [mineflayer] rom1504 91b1100 - Merge pull request #250 from deathcap/blockbreak Add block break progress events 22:04 < Aragas> how much chunks are drawn with 32 render distance? 22:05 < Aragas> can't see it in F3, if it exist there 22:07 <+Amaranth> Aragas: (32+32+1)^2 22:08 < MrARM> less are drawn :p 22:08 <+Amaranth> MrARM: Well, hopefully :P 22:08 < MrARM> they have a culling alghoritm 22:10 < Aragas> i'm curious. My chunk draw algorithm use 150 mb GPU memory, minecraft use 90 mb. But i'm not sure how much chunks it draws 22:11 < Aragas> * i draw all 440 chunks 22:11 < Aragas> 441* 22:40 < MrARM> MCPC uses culling, but it won't affect GPU memory I think 22:40 < MrARM> maybe it uses drawElements, not drawArray? 23:03 < Aragas> not a big difference 23:04 < Aragas> using indicies saves about 1.3-5x memory, i think 23:05 < Aragas> so, in my case, using indicies will give me about 100 mb of GPU data in theory 23:06 < Aragas> i'm sume minecraft use indicies 23:34 < MrARM> Aragas: oh I think I know what it may be 23:34 < MrARM> it's most likely how MCPC is doing culling of the blocks 23:34 < MrARM> you may have some more faces rendered than MC 23:35 < Aragas> i'm rendering whole sections 23:37 < Aragas> rendering is not so important right now :D I want to make it first use a minimal amounth of GPU memory 23:38 < Aragas> Then i'll make culling on sections, which should be enough for mobile rendering 23:38 < MrARM> Yeah, but less verticles mean less GPU memory 23:38 < MrARM> also, I was also doing a custom client and ran into another issue 23:39 < MrARM> how to cull block faces on chunk edges 23:39 < MrARM> rebuild connected chunks after you get a new chunk? (it's supposed to be multiplayer client) 23:40 < MrARM> main problem is that it's in js and rebuilding takes about 100ms on some chunks 23:40 < Aragas> currently i have only visible verticles, i think dynamic rebuilding will cost too much performance, dunno 23:40 < Aragas> Yep 23:40 < Aragas> I just pass neightborn chunks 23:41 < Aragas> And it render those chunks really fast 23:41 < MrARM> I think I may create a cached array for that 23:41 < MrARM> so that it would instantly rebuild 23:41 < Aragas> for rebuilding? 23:42 < MrARM> Yeah an array with all block faces except the edges itself 23:42 < MrARM> edges of chunk 23:42 < MrARM> if I get a chunk, just rebuild the edges 23:42 < Aragas> hm. you already have chunks when you reive them from server. just search chunks by coordinates 23:42 < MrARM> but that's a waste of memory then 23:42 < MrARM> Yeah but I don't always get the nearby chunks 23:43 < Aragas> I use nllable types for that. just ignore it if it is null and use other chunks 23:43 < Aragas> nullable* 23:43 < MrARM> no I meam 23:43 < MrARM> *mean 23:43 < MrARM> you have a chunk 23:43 < MrARM> and you want to cull unused faces 23:44 < MrARM> problem starts 23:44 < MrARM> when the faces are exactly on chunk borders 23:44 < MrARM> and you don't have the chunk next to it 23:44 < MrARM> you would get it later 23:44 < MrARM> maybe 10ms, maybe a second, maybe never 23:45 < MrARM> I guess MC rebuilds it 23:45 < Aragas> That's normal. You cant cull sides because you have no info about next blocks 23:45 < MrARM> Yeah I know 23:45 < MrARM> and problem is how to handle this 23:45 < MrARM> either rebuild it when you get data 23:45 < MrARM> or make a cached arrY 23:45 < MrARM> *array 23:45 < MrARM> but still rebuilding chunks in js means pain 23:46 < Aragas> Render full blocks, wait for neightbor chunks, then rebuild 23:46 < MrARM> js is slow 23:46 < MrARM> so rebuild twice? 23:46 < Aragas> yep 23:46 < Aragas> Shouldn't cost too mush performance if optimize it 23:47 < MrARM> I think I will try to move that all to a web worker 23:47 < MrARM> then the 100ms won't really cost too much 23:47 < Aragas> There isn't any other way, i think. I tried to do something, but nope 23:48 < MrARM> you could make a second array and waste memory 23:48 < Aragas> Yup, but memory is critical 23:49 < MrARM> well not really for me 23:50 < MrARM> it wouldn't be 2x for all the time 23:50 < Aragas> Servers should send already culled chunks, it would prevent cheating and reduce render time 23:52 < MrARM> in the end it would result in 1.1x current usage if optimized good 23:52 < MrARM> Aragas: what about destroying blocks 23:53 < Aragas> ah, yea. sending new chunk after destroing isn't good 23:53 < Aragas> point got 23:56 < Aragas> Rendering is a funny and interenting, can't wait to test it on android 23:56 < Aragas> is funny* 23:57 < MrARM> I'll have fun getting my code to work on Android later 23:58 < MrARM> will be porting JS to C++ <3 23:58 < Aragas> the best part :DD 23:58 < MrARM> are you writing it in Java or C++? 23:58 < Aragas> C# 23:58 < MrARM> Mono? 23:59 < MrARM> (Unity?) 23:59 < Aragas> And MonoGame. It was first opengl, but i'm to lazu to handle shaders and other stuff. looks scary 23:59 < MrARM> Shaders are really easy --- Day changed ven. avril 03 2015 00:01 < MrARM> I just use glmatrix lib for mine, that's all 00:01 < Aragas> my 3D code will run on opengl right now. I'll win about 20% of performance, but, crossplatform is gold 00:02 < Aragas> that's not even opengl, i guess? 00:02 < MrARM> well not exactly opengl 00:02 < Aragas> that's hardcore 00:03 < MrARM> At first opengl looks like a weird hard to understand msss 00:03 < MrARM> *mess 00:03 < MrARM> but it really is not ;D 00:03 < Aragas_M> Yup. Thats true 00:04 < MrARM> actually I found out a single WebGL call to take about 300ms 00:04 < MrARM> *0.3ms 00:04 < MrARM> lil 00:04 < MrARM> *lol 00:04 < MrARM> this wasn't supposed to be in ms 00:05 < MrARM> so this resulted in the biggest bottleneck in my rendering code being GUI code 00:05 < MrARM> taking 15ms per frame 00:06 < MrARM> GUI rendering = 25fps 00:06 < MrARM> no GUI rendering = 35-40fps 00:06 < Aragas_M> Thats funny :DD 00:06 < MrARM> still not too good 00:07 < MrARM> but GUI is definitely a major issue for me right noa 00:07 < MrARM> *now 00:07 < Aragas_M> Maybe some alternatives? 00:09 < MrARM> I'm going to make as least calls as possible 00:09 < MrARM> not sure how just yet however 00:09 < MrARM> Textures are the problem, mainly 00:09 < MrARM> and swapping of them 00:09 < MrARM> but seriously 0.3ms a call is terrible 00:12 < Aragas_M> Yea, that's sad 00:30 < Gjum> Aragas_M: any code up yet? wanna check it out ^^ 00:31 < Aragas_M> I'll publish it tomorrow then. About time to do it 00:32 < Aragas_M> I only have some bugs with network stuff. not all block id are correct for some reason 01:05 < Thinkofdeath> MrARM: pretty sure it shouldn't be that slow o.O, i've done a renderer in webgl and its been mostly fine 10:39 < MrARM> Thinkofdeath: you most likely didn't do any GUI stuff, it seems fine for rendering just the map itself 10:39 < MrARM> it's not a lot of calls then 10:42 <+Amaranth> MrARM: Efficiently rendering a GUI is surprisingly hard 10:43 < MrARM> I think that I'm going to create a dynamic buffer 10:43 < MrARM> and just update it every render 10:44 <+Amaranth> That's one of the reasons why even companies that make their own game engines will license some middleware for their UI 10:44 < MrARM> actually 10:44 < MrARM> why every render 10:44 < MrARM> *every render 10:44 <+Amaranth> The other reason would be because getting an artist to "program" a GUI in Flash is easier 10:44 < MrARM> >.> 10:45 < MrARM> about what I wrote 10:45 < MrARM> I think I should make a s 10:45 < MrARM> *dynamic buffer 10:45 < MrARM> and every time there's a update 10:45 < MrARM> update a part of it 10:45 < MrARM> that's actually a good idea I think 10:46 < MrARM> the size could be a problem though 11:20 < MrARM> oh also 11:20 < MrARM> anyone implemented skylight fill here? 11:42 < Thinkofdeath> MrARM: well if its webgl, just use html as the ui :) 11:42 < MrARM> I wanted to have it cool and made in webgl :P 11:42 < Thinkofdeath> hehe 11:43 < MrARM> so that I can easily port it from webgl to something other later 11:53 < MrARM> Thinkofdeath, in your client do you receive lighting or calculate it at your own? 11:53 < Thinkofdeath> just use the stuff I receive 11:54 < MrARM> The problem with the server software I use is that I can't get lighting from it 11:54 < MrARM> I tried calculating it on my client 11:54 < MrARM> just that I suck at that and it was terribly slow 11:54 < MrARM> and additionally not working correctly 11:55 < Thinkofdeath> Why can't you get it from the server? o.O 11:56 < MrARM> server sends me bad data 11:56 < MrARM> it's pocketmine 11:56 < Thinkofdeath> oh 11:56 < MrARM> light level 0 on most surfaces 11:58 < Thinkofdeath> would have thought pocketmine had the correct lighting, is this a PE client or desktop? 11:58 < MrARM> I think I'm going to open this map in mcedit and make it recalculate the lights 11:58 < MrARM> but anyway spreading skylight is about iterating all the air blocks and doing flood fill, right? 11:58 < MrARM> PE 11:59 < MrARM> Just shoghi didn't implement correct light filling it 11:59 < Thinkofdeath> skylight is flood fill from the top of the map 11:59 < Thinkofdeath> just with no loss downwards if the skylight level is 15 11:59 < MrARM> Hmm 11:59 < MrARM> thanks, finally got it 12:00 < MrARM> lighting is not the most important thing right now anyway 12:00 < MrARM> it's on the cool to have features 12:01 < Thinkofdeath> but it makes things pretty :( 12:03 < Thinkofdeath> https://i.imgur.com/vMHfsz9.png 12:26 < MrARM> Thinkofdeath: well, smooth lighting 12:34 < Aragas> Thinkofdeath: Do you know how many chunks are drawn on 32 render distance? 12:35 < Thinkofdeath> 4225 12:35 < Aragas> Chumks or sections? 12:35 < Thinkofdeath> chunks 12:36 < Aragas> ah, this is the maximum possible, yes? If i receive 441 chunks from server, server handles all of them? 12:38 < Thinkofdeath> the server is capped at that yes, but custom servers are free to change it and the listen will listen 12:38 < Thinkofdeath> but since vanilla dies at 32 I don't think anyone will :P 12:39 < Aragas> Okay, thanks 12:43 < Aragas> I beated minecraft. 69 mb of GPU, building only lightened blocks. But that's only block rendering 12:44 < Aragas> Rendering all 441 chunks 12:46 < Thinkofdeath> is that including block models or just simple blocks? 12:48 < Aragas> Block. You think models will significantly increase memory usage? 12:49 < Thinkofdeath> depending on the pack but in most cases no 12:49 < Aragas> For now, i render block models as normal blocks 12:49 < Thinkofdeath> well, leaves will 12:50 < Aragas> Yep, leaves are not rendered as leaves yet. I'll say about mem usage when i implement them 12:51 < Thinkofdeath> for me, not in a jungle: ~100mb, in a jungle: 250mb :) 12:52 < Aragas> Because of leaves? 12:52 < Thinkofdeath> yep, they don't cull next to each other 12:52 < Thinkofdeath> so all of them have all faces visible 12:53 < Aragas> Oh, yes. Then that's easy. I'll make a flter right now and see how it will work 13:27 < Aragas> Done, now it consumes 101 mb, impressive 13:34 < Aragas> does mega swamp count? 13:35 < Aragas> Can't find any jungle 13:46 < Aragas> 217 mb in jungle 13:48 < Aragas> and 253 in minecraft 18:48 < Gjum> why does the Open Window message for a workbench/enchantment table/anvil say "0 additional slots"? 18:52 < LinkTheProgramer> Hi 18:52 < LinkTheProgramer> I'm building a Minecraft Modding API and I want to use RMI for the server. 18:52 < LinkTheProgramer> What is the safest way to implement RMI? 19:13 < Xor_Boole> lol 19:13 < Xor_Boole> I was going to answer "not RMI" 19:19 < gurun> i love the fast in fast out questions :-P 22:41 <+Amaranth> Is RMI just a baked in RPC system for Java? 22:41 <+Amaranth> Looks like yes --- Day changed sam. avril 04 2015 00:00 < gurun> is MCPC case sensitive about NBT tag-names? 00:02 < Thinkofdeath> yes 00:25 < Aragas_M_> I'm sorry, releasing project sources tomorrow 00:25 < Aragas_M_> Totally fotgot about it 21:14 < Not-4e01> [wiki.vg] Edit by Phasesaber to Server List -> http://wiki.vg/index.php?title=Server_List&diff=6534&oldid=6511 21:18 < Aragasas> https://github.com/Aragas/MineLib.Client someone requested sources. Please don't judge me :DD 21:22 * Thinkofdeath judges 21:24 < Aragas> Initial code in Client.cs is garbage, i'm not rewriting it because debuggin' and stuff 21:41 < Not-4e01> [wiki.vg] Edit by Phasesaber to Library List -> http://wiki.vg/index.php?title=Library_List&diff=6535&oldid=6318 21:45 * dx judges too 21:46 < dx> Aragas: it would be easier to judge you if i knew how to compile this 21:47 < Not-4e01> [wiki.vg] Edit by Phasesaber to Wrapper List -> http://wiki.vg/index.php?title=Wrapper_List&diff=6536&oldid=6090 21:47 < Aragas> H. It requires MonoGame, i wrote that in readme 21:47 < Aragas> I think that's all, should compile 21:49 < Aragas> Run a local server with online mode false, run it and press J when RAM is about 15k 21:49 < Aragas> run it* - i mean MineLib.Client 21:51 < Not-4e01> [wiki.vg] Edit by Phasesaber to Wrapper List -> http://wiki.vg/index.php?title=Wrapper_List&diff=6537&oldid=6090 21:51 < dx> i don't even have visual studio or monodevelop or xamarin studio enterprise edition for rich people 21:51 < dx> i don't even know what .sln files are for 21:51 < dx> i don't even know how to use github 21:52 < Aragas> i'm a student, have dreamspark :D 21:52 < Aragas> aaaaand i don't get that joke 21:53 < dx> i'm dead serious 21:54 < Aragas> https://github.com/dequis I thought it was you 21:54 < dx> shhhhh 21:55 < Aragas> :DDDD 21:59 < Not-4e01> [wiki.vg] Edit by Phasesaber to Client List -> http://wiki.vg/index.php?title=Client_List&diff=6538&oldid=6516 22:01 < Not-4e01> [wiki.vg] Edit by Phasesaber to Client List -> http://wiki.vg/index.php?title=Client_List&diff=6539&oldid=6516 22:04 < gurun> kotlin.. yapl 22:05 < gurun> it's like jetbrains really really want to make a footprint with their own language. They could also just have supported Golang. 22:05 < gamingrobot> :D 22:06 < gurun> And no, i'm not asking for a language war betwen kotlin and golang. With Go there is not point in having that type of arguments, we all know that. 22:06 < gurun> :-P 22:08 < dx> DID SOMEONE SAY LANGUAGE WAR 22:08 < dx> i don't know what kotlin is but it sucks 22:10 < Aragas> nah sounds like poo 22:20 < nickelpro> Rust has much better buzzwords than kotlin, but Go is so enterprise. None of these things can measure up to the sheer asynchronous client-server synergy of node though 22:20 < nickelpro> I am doing this right? 22:21 < Aragas> Wait I thought Rust is a minecraft-like game 22:22 < dx> Aragas: rust is a minecraft-like game written in a go-like programming language, and go is a programming language designed after a chinese board game 22:23 < Aragas> all these squares make a circle 22:25 < Fenhl> Aragas: it gets worse 22:25 < Fenhl> I'm one of a couple people working on a Minecraft server written in Rust 22:26 < Not-4e01> [wiki.vg] Edit by ILexiconn to Server List -> http://wiki.vg/index.php?title=Server_List&diff=6540&oldid=6534 22:27 < Aragas> Hehe 22:28 < Fenhl> Aragas: http://www.reddit.com/r/rust/comments/2e35v6/hematite_vs_minecraft/cjwa3vd?context=1 22:29 < Aragas> lol 22:30 < Aragas> awww, when i see all those working game engines in other languages...so mad, why not C# 22:32 * gurun gives his deepest symphaties to Fenhl. Perhaps future will hold a better destiny.. 22:33 < gurun> Aragas, i think MS asked Mojang the same and the answer was 22:33 < Aragas_M_> :DDD 22:51 < Thinkofdeath> Hows hematite going? Haven't been following it lately apart from the webgl port Amaranth showed me 22:54 < Fenhl> Thinkofdeath: server is almost ready for login, we're mostly just waiting for our dependencies to get fixed 22:54 < Fenhl> not sure about the client, I don't really follow it that much and when I want to try it out it usually doesn't compile 22:55 < Thinkofdeath> ah 22:55 <+Amaranth> The client hasn't had any significant work done on it since then 22:56 <+Amaranth> I think it renders everything except liquids pretty almost exactly like MC does uses MC block models and textures 22:56 <+Amaranth> But to make it a real client a bunch of other shit is needed and most of that is the same as what a server needs 22:56 <+Amaranth> So now there is hematite_server 22:57 < gurun> what language is that? 23:00 < Thinkofdeath> gurun: hematite is rust 23:00 < gurun> ah, that was the rusty stuff. 23:00 < gurun> have to look into that. A client would be nice.. for MCPE 23:01 < Thinkofdeath> After seeing the progress on hematite I got inspired to work on my own client for fun, decided to do it in Go because I like pain :) 23:01 < gurun> Go is nice 23:01 < gurun> how does gfx work with Go? 23:02 < Aragas> are there any mpce clients? 23:02 < gurun> Aragas, not that i have seen. MrARM has been working on a closed-source version in JS. 23:02 < Aragas> mcpe* 23:02 < Thinkofdeath> gurun: cgo to use opengl 23:02 < Aragas> MAH WILL BE FIRST THEN 23:02 < Thinkofdeath> https://i.imgur.com/ZFYvac6.png it how it looks currently 23:03 < gurun> Thinkofdeath, seriously .. is that GO?! 23:03 < Thinkofdeath> yes, its still opengl. Language doesn't change that :P 23:03 < Aragas> awesome 23:04 < gurun> yeah, but you came far. Do you have any terrain following and stuff implemented? 23:04 < Thinkofdeath> terrain following? 23:04 < gurun> i mean .. for player movements.. walking and stuff. That kind of collision detection 23:04 < Thinkofdeath> nope, its just flying in spectator mode currently 23:05 < gurun> yeah, but that is still very impressive 23:05 < gurun> very 23:05 < Thinkofdeath> thanks :) I think hematite is further along though 23:05 < gurun> now, all you have to do is to switch out the communication to MCPE protocol instead 23:05 < Thinkofdeath> I only started 2-3 weeks ago 23:05 < Thinkofdeath> gurun: hehe, feel free 23:06 < gurun> you can get a Go version of MCPE comms from Intyre 23:06 < Aragas> Implementing walking wont be hard anyway 23:06 < gurun> actally .. i would find that mostly useful for parents and admins. For monitoring, so the features necssary are very limited. 23:06 < Thinkofdeath> Aragas: hard part is when you realize the collision boxes for the weirder blocks in minecraft are hardcoded in the client 23:07 < gurun> more like an admin control panel 23:07 < Aragas> oh, thats nasty 23:08 < gurun> ..wow. 23:08 < gurun> Go has a future, rust does not. 23:09 < dx> what did we talk about the language wars, gurun? 23:09 < gurun> hihi 23:09 < dx> (did that ever happen?) 23:09 < dx> (you know what i mean anyway) 23:09 < gurun> obviously didn't work with that other kottle thing.. rust and go .. that's more religious :_) 23:09 < dx> heh 23:10 < gurun> have to look into Rust.. don 23:10 < gurun> don't know enough about it to start a war even. 23:10 < gurun> But I was very impressed with Go. I've actually not been that impressed since C# came out to replace Java. 23:11 < dx> i have to look into both go and rust, but can't find any projects that motivate me enough to do so 23:11 < gurun> dx, know exactly how you feel. BUT after looking at Go .. i was on the brink of getting started porting over my server to that. BUT then i tried some of the editing, and the environment just sucked. 23:12 < gurun> So, that was my initial remark about why Jetbrains have to come up with their own stuff, and not just support Go instead. 23:19 < Not-4e01> [wiki.vg] Edit by Phasesaber to Client List -> http://wiki.vg/index.php?title=Client_List&diff=6541&oldid=6539 23:22 < Aragas> By the way, are there any servers capable of sending more than 441 chunks? 23:22 < Gjum> per what? 23:22 < Aragas> per user 23:23 < Paprikachu> set view distance to 15? 23:23 < Paprikachu> i always send 961 chunks (31*31) 23:23 < Aragas> i thought don't work, i'll test it 23:24 < Paprikachu> theres a setting on the server as well 23:24 < Aragas> i thought view distance don't work, i'll test it 23:24 < Paprikachu> view-distance 23:24 < Aragas> yea, see it. Thanks 23:25 < Thinkofdeath> Vanilla 1.8 supports up to view distance 32 23:25 < gurun> why is there .. a limit? 23:25 < Aragas> ooooooh, rhat's really nice 23:25 < Thinkofdeath> gurun: because silly people expecting 100 to work 23:25 < gurun> Thinkofdeath, yeah and now it doesn't!? 23:26 < Aragas> their pc will blow up 23:26 < Paprikachu> Thinkofdeath: oh nice, they doubled it? :) 23:26 < Thinkofdeath> Aragas: ^^ 23:26 < Thinkofdeath> Paprikachu: yep 23:26 < Paprikachu> noice 23:26 < Paprikachu> i need to change that in my server implementation immediately 23:26 < Thinkofdeath> well, randomly in 1.7.10 I think it changed to 20 for no reason 23:27 < Thinkofdeath> 1.8 took that further 23:27 < Paprikachu> so, radius is now 32? 23:27 < Paprikachu> so a 65*65 area? 23:27 < Aragas> Oh, it works!!! 23:27 < Thinkofdeath> Paprikachu: yes 23:27 < Paprikachu> alright 23:29 < Aragas> time to set view distance on client to 5000 23:29 < Aragas> Not chunks 23:31 < Paprikachu> hm 23:31 < Paprikachu> server uses 1.6gb of ram 23:31 < Paprikachu> for the 65*65 spawn area 23:32 < Paprikachu> that can't be right can it 23:32 < Aragas> depends on data size 23:32 < Paprikachu> http://i.imgur.com/6tJc6Qs.jpg 23:32 < Paprikachu> whatever i guess, 65*16 = 1024 23:33 < Paprikachu> 1k blocks squared is a lot 23:36 < Thinkofdeath> sounds about right 23:37 < Paprikachu> yeah nevermind, it's correct 23:37 < Aragas> https://www.dropbox.com/s/kq1z46ly2eu7cip/12345.png ok i really think i need more chunks 23:38 < Aragas> And yes, grass color in work 23:38 < Aragas> and other colors :DDDD 23:38 < Aragas> and no, 53 is not the max fps 23:39 < Paprikachu> 73 is not my fps either, dunno why it was that low there, i get a constant 144 (vsync) :P 23:39 < Paprikachu> s/73/71 23:39 < Paprikachu> in any case, that's pretty cool 23:40 < Paprikachu> though i don't see why anyone would use that on a server 23:40 < Paprikachu> vanilla servers can't handle it 23:40 < Aragas> 65*65? so, 4225 chunks? 23:41 < Paprikachu> yup 23:41 < Paprikachu> you can see how many chunks the client loaded under "multiplayer chunk cache" 23:41 < Aragas> where can i get this beauty? 23:42 < Paprikachu> what beauty? 23:43 < Aragas> you mean, 65*65 was the vanilla server? i thought that was some custom 23:43 < Paprikachu> no, that's vanilla since 1.8, like Thinkofdeath said 23:43 < Aragas> oh, don;t get that first 23:49 < woder> can anyone give me some insight on how the chat "with" segment works with gson? I have tried to parse it but I run into a snag with the fact that minecraft combines JsonObjects AND strings, like this: with:[{bla bla jsonobject here}, "STRING!!!!"] 23:49 < Aragas> Hahahaha, good luck with that :DDD I gave up 23:50 < Paprikachu> hm, whats the issue with that 23:51 < Paprikachu> (no idea what gson is) 23:51 < Aragas> new json framework