modifier la hauteur de spawn de la neige

jojothieb

Aventurier
24 Juin 2012
7
0
1
31
Bonjour!
J'ai envie de créer un serveur minecraft avec les paramètres customs de la map, qui nécessiteraient de créer + de dénivelés sur l'axe Y.
Du coup il me faudrait à tout prix modifier la hauteur à laquelle la neige se forme en altitude (Je ne compte pas la supprimer non plus...). pour par exemple la faire passer de 90 de base à 130. J'ai cependant 2 options:
- Trouver un Plugin permettant cela. Cependant après pas mal de recherche, je n'ai réussi à trouver que le NoSnow, qui n'est malheureusement pas compatible en 1.8...
- Modifier les fichiers du serveur pour trouver cette fameuse ligne de code et la modifier (solution qui me semble la plus évidente). Voilà cependant des heures que je cherche à travers les nombreux fichiers sans la trouver...

Enfin voilà, si quelqu'un connaît l'emplacement de cette ligne, ou qui a une solution à me proposer, je lui en serais très reconnaissant! :)

En espérant avoir de bons conseils =)
 
En théorie non car ça touche seulement au registre du jeu, donc c'est forcément une donnée qu'on peut modifier manuellement (Y a pas de nouveaux éléments qui sont rajoutés au jeu contrairement aux mods) :/
 
Merci de tes réponses =).

J'ai trouvé des events du genre raining.fall, j'ai réussi à trouver aussi des rapports entre ceux-ci et l'event permettant de former Ice et snow, mais aucune valeur mettant en avant quelque chose du genre y>=90 :/

Peut être cela parlera t'il a quelqu’un (tous ces codes viennent du fichier crafktbukkit.jar) :

else
{
for (long chunkCoord : this.chunkTickList.popAll()) {
int chunkX = LongHash.msw(chunkCoord);
int chunkZ = LongHash.lsw(chunkCoord);
int k = chunkX * 16;
int l = chunkZ * 16;

this.methodProfiler.a("getChunk");
Chunk chunk = getChunkAt(chunkX, chunkZ);

a(k, l, chunk);
this.methodProfiler.c("tickChunk");
chunk.b(false);
this.methodProfiler.c("thunder");

if ((this.random.nextInt(100000) == 0) && (S()) && (R())) {
this.m = (this.m * 3 + 1013904223);
int i1 = this.m >> 2;
BlockPosition blockposition = a(new BlockPosition(k + (i1 & 0xF), 0, l + (i1 >> 8 & 0xF)));
if (isRainingAt(blockposition)) {
strikeLightning(new EntityLightning(this, blockposition.getX(), blockposition.getY(), blockposition.getZ()));
}
}

this.methodProfiler.c("iceandsnow");
if (this.random.nextInt(16) == 0) {
this.m = (this.m * 3 + 1013904223);
int i1 = this.m >> 2;
BlockPosition blockposition = q(new BlockPosition(k + (i1 & 0xF), 0, l + (i1 >> 8 & 0xF)));
BlockPosition blockposition1 = blockposition.down();

if (w(blockposition1))
{
BlockState blockState = getWorld().getBlockAt(blockposition1.getX(), blockposition1.getY(), blockposition1.getZ()).getState();
blockState.setTypeId(Block.getId(Blocks.ICE));

BlockFormEvent iceBlockForm = new BlockFormEvent(blockState.getBlock(), blockState);
getServer().getPluginManager().callEvent(iceBlockForm);
if (!iceBlockForm.isCancelled()) {
blockState.update(true);
}

}

if ((S()) && (f(blockposition, true)))
{
BlockState blockState = getWorld().getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ()).getState();
blockState.setTypeId(Block.getId(Blocks.SNOW_LAYER));

BlockFormEvent snow = new BlockFormEvent(blockState.getBlock(), blockState);
getServer().getPluginManager().callEvent(snow);
if (!snow.isCancelled()) {
blockState.update(true);
}

}

if ((S()) && (getBiome(blockposition1).e())) {
getType(blockposition1).getBlock().k(this, blockposition1);
}
}

this.methodProfiler.c("tickBlocks");
int i1 = getGameRules().c("randomTickSpeed");
if (i1 > 0) {
ChunkSection[] achunksection = chunk.getSections();
int j1 = achunksection.length;

for (int k1 = 0; k1 < j1; k1++) {
ChunkSection chunksection = achunksection[k1];

if ((chunksection != null) && (chunksection.shouldTick()))
for (int l1 = 0; l1 < i1; l1++) {
this.m = (this.m * 3 + 1013904223);
int i2 = this.m >> 2;
int j2 = i2 & 0xF;
int k2 = i2 >> 8 & 0xF;
int l2 = i2 >> 16 & 0xF;

BlockPosition blockposition2 = new BlockPosition(j2 + k, l2 + chunksection.getYPosition(), k2 + l);
IBlockData iblockdata = chunksection.getType(j2, l2, k2);
Block block = iblockdata.getBlock();

if (block.isTicking())
{
block.a(this, blockposition2, iblockdata, this.random);