[SEEDS]Recherche communautaire : Programmer les seeds

Y'a du bon et du mauvais, enfaite, un seed fait exactement 19 caractères, pas un de plus, pas un de moins.
Quand on tape "A" le seed est bien 65, et le code dit, en gros et simplifié : si le nombre de chiffres dans le seed est inférieur à 19 de x , ajouter "aléatoirement" 19-x chiffres au seed au seed, mais n'afficher que le seed voulu. Si je mets aléatoirement c'est que ce n'est pas aléatoire du tout enfaite, mieux, l'ordi ne sait pas sortir un chiffre aléatoirement, il font croire que. Ainsi, le seed "A" en 1.3 donnera pas la même chose en 1.5 par exemple :) Par contre, un seed de 19 chiffres donnera la même chose en 1.3 qu'en 1.5 attention tout de même les grosses modifications ajoutées depuis la 1.7 rendent obsolète les seeds des versions précédentes.
Voilà voilà
 
La seed Ocean ma donnée un Ocean ...

M'okay , donc si ont dit Ocean , sa donne un océan ...

Go test Forest :eek:

Sinon , le hashCode , meme en ayant fouiller dans le code , j'ai rien compris.
Tu te foures le doigt dans le neuneuil jusque au pied mon pauvre ! Notch a volontairement fait deux trois trucs inévitables, quand à ton océan, c'est purement et simplement de la luck :D
 
Notons que ce que je dis à propos du premier chiffre est on ne peut plus véridique, lancez des mondes sans vérifier quoi que ce soit pour voir, et faites F3 pour regarder le premier chiffre, and enjoy :)
 
Le hashCode, j'ai pas trop compris non plus...
Apparament, c'est une fonction commune en java, mais son fonctionnement est obscur.

le hashcode est utilisé pour créér un entier à partir d'un objet.
Le principe de base c'est : si 2 objets sont égaux, ils doivent avoir le même hascode.
tiré d'un topic: http://forum.hardware.fr/hfr/Programmation/Java/hashcode-sert-sujet_23486_1.htm

Donc, une fonction qui te prend ton seed, te généré un entier (le seed "réel" je pense) et qui n'est pas aléatoire !
Voila pourquoi quand on entre deux même seeds, on a deux générations de maps identiques.

Le tout est de trouver sa fonction inverse...
 
A mon avis, la methode hashCode prend en compte 2 attributs: le seed et le nom de la map.
Ça permet d'avoir des maps les plus variées possibles quand tu définit pas de seed, vu que sur des machines, la fonction RANDOM est foireuse...
 
A mon avis, la methode hashCode prend en compte 2 attributs: le seed et le nom de la map.
Ça permet d'avoir des maps les plus variées possibles quand tu définit pas de seed, vu que sur des machines, la fonction RANDOM est foireuse...
+1
Bon, moi j'adore ce qu'on fait, on a fait 1/4 des 100 pages, on progresse quand même pas mal, enfin bref, que du bonheur, je savais que la communauté minecraft était pas pourrie de types qui chourrent les tutos des autres pour refaire le tout en plus minable ou je ne sais quoi d'autre :)
 
La fonction hashCode existe en C aussi.....
Très interessant, je vais de suite la tester ! (je suis une bille en Java :D )

@Yahuallitlacatl:
J’espère qu'on aura percé le mystère avant d'avoir atteint les 100 pages !
 
Je continue sur ma fonction hashCode...
Et j'ai découvert des trucs cools :cool:

Le world générator de minecraft utilise des hashs pour générer des maps.
Une fonction Hash n'est pas universelle, il y en a des bonnes, et des mauvaises.
D'apres Wikipédia:
A hash function that assigns unique indices to strings, even if inconsistent between runs, is still a perfectly valid hash.

Une bonne fonction hash génère un entier unique pour chaque mot, sans possibilité d'avoir le même hash pour deux mots differends !

Après, faut trouver laquelle Notch a utilisée...
Je go dans le code source !