Poll

Hurp

Durp
Derp

Author Topic: Minecraft  (Read 681430 times)

0 Members and 2 Guests are viewing this topic.

Offline DarkDragon

  • Final Fantasy Fanatic
  • *****
  • Posts: 6501
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #885 on: June 26, 2009, 10:31:58 pm »
You need to add a vote... 'game doesn't work for me and I don't play it anymore'.
-Lego


Tried updating Java?

Here
DarkDragon's Minecraft Survival Server (use this as the IP):

gamingsteve.dyndns.org

- The server uses a whitelist, if you're not on the whitelist (can't connect), PM me your minecraft name.

Offline IamMe

  • Gorf Goon
  • ****
  • Posts: 810
  • +200 Points!
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #886 on: June 27, 2009, 01:58:46 am »
I think Notch could optimize Minecraft in terms of map storing and handling, have a look at how the Minecraft maps are stored:

1. The normal size of a map is 256x256x64, the map is stored pixel by pixel and using layers so each layer is 256x256 and the whole map is 256x256x64
2. That means a whole map occupies a maximum of of 4,194,304 pixels which (I can't recall right now but I'm pretty sure) means it occupies 4,194,304 Bytes = approx. 4MB (that's not counting coordinates which probably bring it up to 9x that)
3. That's probably if the map is full of dirt, etc. I don't think air blocks occupy anything, they're basically the "blank" block because they're the most common.

Either way, it's unpractical. Notch's method on the left, my method on the right:


As you can see Notch stores every pixel so each pixel (lets say) occupies 9 bytes, I haven't worked with Java in a while but I think an Integer in Java is 4 bytes meaning that if you want to store the x, y and color of a pixel it takes 4, 4, 1 bytes respectively.
So to store the layer above using the Notch method we would be storing 14,196 pixels, each with 8 bytes of coordinates (on this layer) meaning that bit of dirt uses 113,568

Now have a look at my method, a function runs through the layer and finds the greatest block that can that fits in there, then it finds smaller blocks around it and so on (I did this by hand just to show it):

So, looking at my method on the right side we have 8 imaginary squares (x, y - width * height):

1: 373, 55 - 56 * 17 (952 pixels)
2: 368, 72 - 66 * 7 (462 pixels)
3: 364, 79 - 75 * 7 (525 pixels)
4: 383, 86 - 56 * 5 (280 pixels)
5: 338, 86 - 9 * 58 (522 pixels)
6: 347, 86 - 36 * 79 (2844 pixels)
7: 383, 91 - 67 * 113 (7571 pixels)
8: 450, 91 - 20 * 52 (1040 pixels)

We have 8 blocks in this case, each block stores 8 Bytes for coordinates, 8 Bytes for size and 1 Byte for block type (which is represented by color, in this case it's dirt)
What the above means is that using this method (with each block using 17 Bytes) that piece of dirt uses only 136 Bytes!

Compare 136 Bytes to 113,568
The new method uses only 0.12% of the data the other one uses and achieves the same effect. Of course Notch would have to write new algorithms to handle this new method but in the long run (and applying this to a 3d world) it would save a lot of rendering and processing time as well as map size, it would also allow for maps (hundreds?) of times bigger than what we have now, which would be quite epic.

I could go on, but I think you get the picture :P

Air is actually a block.

Offline DarkDragon

  • Final Fantasy Fanatic
  • *****
  • Posts: 6501
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #887 on: June 27, 2009, 02:28:01 am »
I think Notch could optimize Minecraft in terms of map storing and handling, have a look at how the Minecraft maps are stored:

1. The normal size of a map is 256x256x64, the map is stored pixel by pixel and using layers so each layer is 256x256 and the whole map is 256x256x64
2. That means a whole map occupies a maximum of of 4,194,304 pixels which (I can't recall right now but I'm pretty sure) means it occupies 4,194,304 Bytes = approx. 4MB (that's not counting coordinates which probably bring it up to 9x that)
3. That's probably if the map is full of dirt, etc. I don't think air blocks occupy anything, they're basically the "blank" block because they're the most common.

Either way, it's unpractical. Notch's method on the left, my method on the right:


As you can see Notch stores every pixel so each pixel (lets say) occupies 9 bytes, I haven't worked with Java in a while but I think an Integer in Java is 4 bytes meaning that if you want to store the x, y and color of a pixel it takes 4, 4, 1 bytes respectively.
So to store the layer above using the Notch method we would be storing 14,196 pixels, each with 8 bytes of coordinates (on this layer) meaning that bit of dirt uses 113,568

Now have a look at my method, a function runs through the layer and finds the greatest block that can that fits in there, then it finds smaller blocks around it and so on (I did this by hand just to show it):

So, looking at my method on the right side we have 8 imaginary squares (x, y - width * height):

1: 373, 55 - 56 * 17 (952 pixels)
2: 368, 72 - 66 * 7 (462 pixels)
3: 364, 79 - 75 * 7 (525 pixels)
4: 383, 86 - 56 * 5 (280 pixels)
5: 338, 86 - 9 * 58 (522 pixels)
6: 347, 86 - 36 * 79 (2844 pixels)
7: 383, 91 - 67 * 113 (7571 pixels)
8: 450, 91 - 20 * 52 (1040 pixels)

We have 8 blocks in this case, each block stores 8 Bytes for coordinates, 8 Bytes for size and 1 Byte for block type (which is represented by color, in this case it's dirt)
What the above means is that using this method (with each block using 17 Bytes) that piece of dirt uses only 136 Bytes!

Compare 136 Bytes to 113,568
The new method uses only 0.12% of the data the other one uses and achieves the same effect. Of course Notch would have to write new algorithms to handle this new method but in the long run (and applying this to a 3d world) it would save a lot of rendering and processing time as well as map size, it would also allow for maps (hundreds?) of times bigger than what we have now, which would be quite epic.

I could go on, but I think you get the picture :P

Air is actually a block.

I know air is a block, but considering that air is the most common and that he stores blocks by coordinates instead of sequentially then the most practical way is to not even store the air blocks, that way the game knows that if there is no block, it's because it's air.
DarkDragon's Minecraft Survival Server (use this as the IP):

gamingsteve.dyndns.org

- The server uses a whitelist, if you're not on the whitelist (can't connect), PM me your minecraft name.

Offline munchkin5

  • Punch-Out Champ
  • *****
  • Posts: 3130
  • Gentlemen.
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #888 on: June 27, 2009, 11:51:11 am »
The gaming steve spleef league (GSL for short) grand stadium is now open for business.

Offline Celdur

  • R-Type Force Pod
  • *****
  • Posts: 6615
  • :33
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #889 on: June 27, 2009, 11:57:52 am »
spleef is for chumps :P

Quote from: Krakow sam
That quote is actualy very witty, Celdur. I suggest you use that in your signature.

Offline DarkDragon

  • Final Fantasy Fanatic
  • *****
  • Posts: 6501
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #890 on: June 27, 2009, 03:43:55 pm »
Yet the cubist chumps lost 1-3 against us superior spherists!

EDIT:
Yes Gungnir, the white building on the server is an Ayleid ruin from Oblivion, I built it :D
You're also the first to notice, lol.
« Last Edit: June 27, 2009, 06:30:53 pm by DarkDragon »
DarkDragon's Minecraft Survival Server (use this as the IP):

gamingsteve.dyndns.org

- The server uses a whitelist, if you're not on the whitelist (can't connect), PM me your minecraft name.

Offline Cobra

  • Moderator
  • All Your Base Zero Wing
  • *****
  • Posts: 8951
  • People want ducks.
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #891 on: June 27, 2009, 07:32:39 pm »
I started just building a labyrinth to nowhere. So far it I have dug it around some other pre dug tunnels in one instance it runs parallel to someone elses tunnel.

Offline Kratok

  • Turkey Shoot Terminator
  • *****
  • Posts: 3179
  • Probably dead at this point!
    • View Profile
    • [url=http://la-mulana.com/en/][img]http://la-mulana.com/banner/half_banner3.gif[/img][/url]
Re: Minecraft (new poll added; please share!)
« Reply #892 on: June 28, 2009, 01:26:13 am »
Our servers seem to be down.

Offline DarkDragon

  • Final Fantasy Fanatic
  • *****
  • Posts: 6501
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #893 on: June 28, 2009, 01:48:20 am »
Sorry about that, working on porting the L4D maps to daylight maps while still making them look good, once I'm done with No Mercy 1 I'll start the server again.
DarkDragon's Minecraft Survival Server (use this as the IP):

gamingsteve.dyndns.org

- The server uses a whitelist, if you're not on the whitelist (can't connect), PM me your minecraft name.

Offline Summoner

  • BurgerTime Chef
  • *****
  • Posts: 1246
  • I wont stab you... or will i?
    • View Profile
    • Summoners Deviant Art Page
Re: Minecraft (new poll added; please share!)
« Reply #894 on: June 28, 2009, 06:57:08 am »
Sound Tommorow :p

Offline DarkDragon

  • Final Fantasy Fanatic
  • *****
  • Posts: 6501
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #895 on: June 28, 2009, 07:12:18 am »
It's public day!

The Spherists vs Cubists vanilla map is back in action!
DarkDragon's Minecraft Survival Server (use this as the IP):

gamingsteve.dyndns.org

- The server uses a whitelist, if you're not on the whitelist (can't connect), PM me your minecraft name.

Offline Xenomorph

  • Balloon Fight Aerialist
  • *****
  • Posts: 4463
  • ....
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #896 on: June 28, 2009, 08:57:40 am »
Can somebody repost the link to the servers we currently use? Cause my bookmarked links don't seem to be working anymore... :-\
"Apply layers to Reality
Things only you can see
Add a beat to Normality
To tap the core of Insanity"

Offline Celdur

  • R-Type Force Pod
  • *****
  • Posts: 6615
  • :33
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #897 on: June 28, 2009, 09:01:17 am »
Can somebody repost the link to the servers we currently use? Cause my bookmarked links don't seem to be working anymore... :-\

1st post

Quote from: Krakow sam
That quote is actualy very witty, Celdur. I suggest you use that in your signature.

Offline FROMAN

  • Journey Groupie
  • *****
  • Posts: 2328
  • =ω=
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #898 on: June 28, 2009, 09:25:45 am »
Could someone help me i still can't get online to work.

Offline munchkin5

  • Punch-Out Champ
  • *****
  • Posts: 3130
  • Gentlemen.
    • View Profile
Re: Minecraft (new poll added; please share!)
« Reply #899 on: June 28, 2009, 09:45:46 am »
you have to register