Skocz do zawartości
Minecraft.pl Server Banner
szymon5310

Gdzie wydobywać diamennty w 1.0?

Rekomendowane odpowiedzi

szymon5310    0

Mam pewien problem. Otóż nie wiem na jakiej wysokości od skały macierzystej wydobywać diamenty.W wersjach takich jak 1.6 czy 1.7 kopałem na poziomie 15, a teraz mam nowo wygenerowany świat i nie wiem gdzie najlepiej kopać. Jeżeli możecie, to byłbym wdzięczny za pomoc.

A, i jeszcze jedno pytanie.czy generator map zmienił się od wersji 1.9 v5? :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Karkoon    36

Up@ Nie pisz bzdur! Diamenty nie mogą pojawiać się na powierzchni. Generują się tylko od 19 poziomu w dół.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
oranż    0

Kop w pobliżu lawy, ja zawsze tam znajduję diamenty. Oczywiście chodzi mi o lawę występującą pod ziemią

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Mofixil    190

Up@ Nie pisz bzdur! Diamenty nie mogą pojawiać się na powierzchni. Generują się tylko od 19 poziomu w dół.

Przypominam że generator MC nie takie jaja potrafi zrobić.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
SebaProx    4

ja kiedyś znalazłem diaxa tuż obok Bedrocka : D kopię se z kolegą i normalnie wykopaliśmy takie fajne pomieszczenia ja dalej kopie i Diax.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Anhor    0

Generator nie generuje według jakichś ścisłych wzorów, należy o tym pamiętać.




public abstract class WorldProvider
{

public World worldObj;
public WorldChunkManager worldChunkMgr;
public boolean isNether;
public boolean isHellWorld;
public boolean hasNoSky;
public float lightBrightnessTable[];
public int worldType;
private float colorsSunriseSunset[];

public WorldProvider()
{
isNether = false;
isHellWorld = false;
hasNoSky = false;
lightBrightnessTable = new float[16];
worldType = 0;
colorsSunriseSunset = new float[4];
}

public final void registerWorld(World world)
{
worldObj = world;
registerWorldChunkManager();
generateLightBrightnessTable();
}

protected void generateLightBrightnessTable()
{
float f = 0.0F;
for(int i = 0; i <= 15; i++)
{
float f1 = 1.0F - (float)i / 15F;
lightBrightnessTable[i] = ((1.0F - f1) / (f1 * 3F + 1.0F)) * (1.0F - f) + f;
}

}

protected void registerWorldChunkManager()
{
worldChunkMgr = new WorldChunkManager(worldObj);
}

public IChunkProvider getChunkProvider()
{
return new ChunkProviderGenerate(worldObj, worldObj.getWorldSeed(), worldObj.getWorldInfo().isMapFeaturesEnabled());
}

public boolean canCoordinateBeSpawn(int i, int j)
{
int k = worldObj.getFirstUncoveredBlock(i, j);
return k == Block.grass.blockID;
}

public float calculateCelestialAngle(long l, float f)
{
int i = (int)(l % 24000L);
float f1 = ((float)i + f) / 24000F - 0.25F;
if(f1 < 0.0F)
{
f1++;
}
if(f1 > 1.0F)
{
f1--;
}
float f2 = f1;
f1 = 1.0F - (float)((Math.cos((double)f1 * 3.1415926535897931D) + 1.0D) / 2D);
f1 = f2 + (f1 - f2) / 3F;
return f1;
}

public int func_40470_b(long l, float f)
{
return (int)(l / 24000L) % 8;
}

public float[] calcSunriseSunsetColors(float f, float f1)
{
float f2 = 0.4F;
float f3 = MathHelper.cos(f * 3.141593F * 2.0F) - 0.0F;
float f4 = -0F;
if(f3 >= f4 - f2 && f3 <= f4 + f2)
{
float f5 = ((f3 - f4) / f2) * 0.5F + 0.5F;
float f6 = 1.0F - (1.0F - MathHelper.sin(f5 * 3.141593F)) * 0.99F;
f6 *= f6;
colorsSunriseSunset[0] = f5 * 0.3F + 0.7F;
colorsSunriseSunset[1] = f5 * f5 * 0.7F + 0.2F;
colorsSunriseSunset[2] = f5 * f5 * 0.0F + 0.2F;
colorsSunriseSunset[3] = f6;
return colorsSunriseSunset;
} else
{
return null;
}
}

public Vec3D getFogColor(float f, float f1)
{
float f2 = MathHelper.cos(f * 3.141593F * 2.0F) * 2.0F + 0.5F;
if(f2 < 0.0F)
{
f2 = 0.0F;
}
if(f2 > 1.0F)
{
f2 = 1.0F;
}
float f3 = 0.7529412F;
float f4 = 0.8470588F;
float f5 = 1.0F;
f3 *= f2 * 0.94F + 0.06F;
f4 *= f2 * 0.94F + 0.06F;
f5 *= f2 * 0.91F + 0.09F;
return Vec3D.createVector(f3, f4, f5);
}

public boolean canRespawnHere()
{
return true;
}

public static WorldProvider getProviderForDimension(int i)
{
if(i == -1)
{
return new WorldProviderHell();
}
if(i == 0)
{
return new WorldProviderSurface();
}
if(i == 1)
{
return new WorldProviderEnd();
} else
{
return null;
}
}

public float getCloudHeight()
{
return (float)worldObj.field_35472_c;
}

public boolean func_28112_c()
{
return true;
}

public ChunkCoordinates func_40469_f()
{
return null;
}
}

Nie, tylko tak troszeczkę ;)

@Topic:

12~~ poziom, szukaj w kanionach - najszybciej i najłatwiej znaleźć.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Jasiek_One    6

Up@ Nie pisz bzdur! Diamenty nie mogą pojawiać się na powierzchni. Generują się tylko od 19 poziomu w dół.

Ja wierze we wszystkie cuda generatra map. Mi kiedyś piasek w powietrzu się zgenerował SAM!

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
dex3r    143

Kod odpowiedzialny za generowanie się surowców:


public class WorldGenMinable extends WorldGenerator
{
private int minableBlockId;
private int numberOfBlocks;
public WorldGenMinable(int i, int j)
{
minableBlockId = i;
numberOfBlocks = j;
}
public boolean generate(World world, Random random, int i, int j, int k)
{
float f = random.nextFloat() * 3.141593F;
double d = (float)(i + 8) + (MathHelper.sin(f) * (float)numberOfBlocks) / 8F;
double d1 = (float)(i + 8) - (MathHelper.sin(f) * (float)numberOfBlocks) / 8F;
double d2 = (float)(k + 8) + (MathHelper.cos(f) * (float)numberOfBlocks) / 8F;
double d3 = (float)(k + 8) - (MathHelper.cos(f) * (float)numberOfBlocks) / 8F;
double d4 = (j + random.nextInt(3)) - 2;
double d5 = (j + random.nextInt(3)) - 2;
for(int l = 0; l <= numberOfBlocks; l++)
{
double d6 = d + ((d1 - d) * (double)l) / (double)numberOfBlocks;
double d7 = d4 + ((d5 - d4) * (double)l) / (double)numberOfBlocks;
double d8 = d2 + ((d3 - d2) * (double)l) / (double)numberOfBlocks;
double d9 = (random.nextDouble() * (double)numberOfBlocks) / 16D;
double d10 = (double)(MathHelper.sin(((float)l * 3.141593F) / (float)numberOfBlocks) + 1.0F) * d9 + 1.0D;
double d11 = (double)(MathHelper.sin(((float)l * 3.141593F) / (float)numberOfBlocks) + 1.0F) * d9 + 1.0D;
int i1 = MathHelper.floor_double(d6 - d10 / 2D);
int j1 = MathHelper.floor_double(d7 - d11 / 2D);
int k1 = MathHelper.floor_double(d8 - d10 / 2D);
int l1 = MathHelper.floor_double(d6 + d10 / 2D);
int i2 = MathHelper.floor_double(d7 + d11 / 2D);
int j2 = MathHelper.floor_double(d8 + d10 / 2D);
for(int k2 = i1; k2 <= l1; k2++)
{
double d12 = (((double)k2 + 0.5D) - d6) / (d10 / 2D);
if(d12 * d12 >= 1.0D)
{
continue;
}
for(int l2 = j1; l2 <= i2; l2++)
{
double d13 = (((double)l2 + 0.5D) - d7) / (d11 / 2D);
if(d12 * d12 + d13 * d13 >= 1.0D)
{
continue;
}
for(int i3 = k1; i3 <= j2; i3++)
{
double d14 = (((double)i3 + 0.5D) - d8) / (d10 / 2D);
if(d12 * d12 + d13 * d13 + d14 * d14 < 1.0D && world.getBlockId(k2, l2, i3) == Block.stone.blockID)
{
world.setBlock(k2, l2, i3, minableBlockId);
}
}
}
}
}
return true;
}
}

Jeśli komuś naprawdę wygenerowały się diamenty na powierzchni (chociaż sam w to nie wierzę i chyba nikt normalny również) to był bug. Generowanie surowców w wersji 1.0.0 wcale nie zmieniło się od wersji 1.6, gdy usunięto bug, gdzie diamenty generowały się o 50% częściej w południowo-zachodniej części świata (licząc od punktu 0,0). Opowieści typu: ja znajduje diamenty przy lawie, albo w jaskiniach mają w sobie trochę prawdy. Nie chodzi o to, że one się generują przy lawie, lecz w takich miejscach jest odkryta duża przestrzeń. Gdy kopiemy tunel, zazwyczaj 1x2, powierzchnia jaką odkopujemy wynosi 2 bloki kwadratowe(co nie znaczy, że kopiąc 2x2 mamy większe szanse, ale to już co innego), a w takiej jaskini mamy ok. 50 bloków kwadratowych na raz! To oznacza że mamy kilkakrotnie większe szanse na znalezienie diamentów. Mogło by się wydawać, że szanse wzrastają 25 krotnie, ale tak nie jest, ze względu na to, że diamenty nie generują się pojedynczo, ale grupami po 1-10 klocków.(Oczywiście można spotkać więcej, lecz wynika to z połączenie dwóch źródeł generowania.) Trochę statystyki i porad:

Ruda diamentu generuje się w przybliżeniu w 0.1276% wszystkich bloków kamienia, na poziomach od 2 do 14. I tutaj drobny komentarz: Diamenty można znaleźć już od poziomu 16, lecz wynika to z wysokości rudy! Np. ruda generuje się na poziomie 14, jej wysokości wynosi 2, więc górna warstwa diamentów znajduje się na poziomie 16.

Średnio na jednego chunka (

Zaloguj lub zarejestruj się aby zobaczyć ten link.

) generuje się 3,097 diamentów.

Podsumowując: Najbardziej opłaca się kopać... bardzo skompilowane tunele, których wyjaśnienie matematyczne jest baaardzo skomplikowane i planowanie takiej sieci zajmuje dużo czasu. Więc najlepiej kopać na poziomie 12 (mało lawy, generowane diamenty od poziomu 12 mogą mieć wys. 2, więc sięgają do poziomu 14, gdzie już możemy spotkać nowe rudy. To nie oznacza, że na poziomie 13 nie mogą się wygenerować ;) ) tunele o wys. 2 i szerokości 1, w odstępie 3 kratki od siebie.

Uff trochę tego wyszło, ale mam nadzieję, iż wyczerpałem temat i rozwiałem wszelkie wasze wątpliwości ;) Pozdrawiam.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Jasiek_One    6

Widzę że dyskusję wywołałem :-/ Co do kanionów to się zgadzam, tam najłatwiej znaleźć cenne materiały. Podobno żelazo nie generuje się na powierzchmi. Mi np. się zgenerowało. Albo idealnie kwadratowe wejście i tunele w kopalni. To wejśvie trochę mnie przestraszyło. Dla mnie(nawet ze wzorem)generator map w Minecraft potrafi cuda.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Mofixil    190

Diaxy sa pod ziemią tam gdzie zawsze :]

Niesamowite jak wiele taki post wnosi do tematu...

Temat uważam za wyczerpany a ty panie Wojtekzilla, jeszcze jeden taki przepełniony przełomowym przesłaniem post to inaczej porozmawiamy.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

×
×
  • Dodaj nową pozycję...