Modifier le nombre de ticks de la journée et de la nuit
-
Salut
Je vous le dit franchement, vous allez peut-être pas comprendre car comme j’explique comme un pied… Mais je vais faire de mon mieux ^^En fait, j’aimerai modifier les ticks du jour et ceux de la nuit(mettre le jour moins longtemps et la nuit plus longtemps)
Est ce que c’est possible et si oui, comment ?
Merci d’avancePS : J’ai chercher dans le fichier qui pour moi étais logique(donc dans net.minecraft.world world.java ; et ben non)
-
Personne ?
Je ne sais pas dans quel fichier chercher -
Merci de patienter pour une réponse.
Les membres du site, et l’équipe ne peuvent pas répondre rapidement tout le temps.
Le Week-End se présentant, une réponse arriveras sûrement.
-
Salut
Si vous ne comprenez pas n’hésitez pas à me demander
-
Personne ?
En fait, j’aimerai mettre la nuit à environ 15 minutes(temps réel) et le jour environ 5 minutes(temps réel)
Je pense que ce n’est que des chiffres à modifier, mais je ne sais pas c’est quel fichier.Merci d’avance pour vos éventuelles réponses
PS : J’ai calculer : 5 minutes réel = 6000 ticks & 15 minutes réel = 18000 ticks car
20 ticks = 1 seconde réel
donc
1200 ticks = 1 minute réel
donc
6000 ticks = 5 minutes réel
donc
18000 ticks = 15 minutes réel -
Déjà:
1 tick = 0.1 s
600 ticks = 1 min
3000 ticks = 5 mins
9000 ticks = 15 mins -
Non, minecraft tourne à 20 tick par seconde. Si tu as moins de 20 tick par seconde (/forge tps) c’est que ton serveur/ta map lag.
-
J’ai toujours pensé que 10 faisaient 1 seconde, surtout lors des systèmes redstone expliqué par aypierre.
-
aypierre dans certaine de ses video explique que 20 tick fait 1 second(je ne sais plus dans quel video il le dit )
–------------EDIT----------------
Axaurus regarde dans le package net.minecraft.world.storage il y a une classe qui s’appelle WorldInfo -
@‘Superloup10’:
J’ai toujours pensé que 10 faisaient 1 seconde, surtout lors des systèmes redstone expliqué par aypierre.
Aypierre ne connait pas le vrai système technique de Minecraft (nombre de ticks etc…). Surtout que là il a dit une grosse bêtise en disant que 10 ticks = 1 seconde…
-
Ok, de toute façon, on en apprend tous les jours.
-
on est là pour aider Axaurus –’
-
Salut
J’ai chercher dans le fichier, mais je ne trouve pasJ’ai lu tout le fichier, mais non : rien
Peut être que je sais pas chercher
Mais pouvez vous m’indiquez c’est dans quel condition, ou quel ligne pour modifier ?
Merci d’avance
-
désoler j’ai rien trouver d’autres
-
Dans WorldInfo.java, tu devrais avoir ceci:
private long worldTime;
Avec la réflexion (Java, pas de ton cerveau… quoi qu’il faut bien l’utiliser ici ^^'), tu devrais pouvoir détecter si c’est la nuit ou le jour et accélérer/ralentir artificiellement le temps du monde
-
Petit cours sur les ticks :
Dans Minecraft, il y a DEUX types de ticks :
Les ticks du jeu
Les “redstone ticks”Le tick du jeu représente 0.05 secondes ( 20 ticks = 1 seconde )
Le “redstone tick” représente 0.1 seconde ( 10 redstone ticks = 1 seconde ). -
@‘jglrxavpok’:
Dans WorldInfo.java, tu devrais avoir ceci:
private long worldTime;
Avec la réflexion (Java, pas de ton cerveau… quoi qu’il faut bien l’utiliser ici ^^'), tu devrais pouvoir détecter si c’est la nuit ou le jour et accélérer/ralentir artificiellement le temps du monde
Salut
Merci, mais je ne peux pas(enfin……, je ne pense pas)
Car, chaque “truc”(pas explicite) est dans Minecraft.java
Par exemple :ObfuscationReflectionHelper.setPrivateValue(SoundManager.class, mc.sndManager, 999999999, "ticksBeforeMusic", "");
Ici, sndManager est dans le fichier Minecraft.java
J’ai donc chercher le worldinfo, mais il n’y a pas
Donc si vous pouvez m’aider, merci d’avance
-
Chaque “truc” est dans Minecraft.java…
Minecraft est looooooooooooooooooooooooooooooooooooooooooooooooin d’avoir une seule classe qui dirige tout (parce que Notch/Dinner bone/jeb_ savent coder un minimum). Et WorldInfo est dans les instances de World
-
Salut
Donc logiquement, dans la reflection de Forge, il devrait y avoir un truc en rapport avec worldinfo quand je met world et que je met un point après.
Mais quand je met le point, le seul truc que ça met, c’est MAX_ENTITY_RADIUS
J’ai donc marquer worldclient après le point, mais ils me disent de le mettre en public(je le fait juste pour tester). Mais une fois que je l’ai mis en public, ils me disent que ce field n’existe pas.
Donc du coup, je suis bloquerVoilà la ligne :
ObfuscationReflectionHelper.setPrivateValue(WorldInfo.class, World., 0, "ceci_n'est_pas_un_field", "");
-
Ne jamais, au grand JAMAIS, modifier le code source de Minecraft si tu utilises Forge, autant coder en Vanilla sinon.
De plus, le field worldInfo EXISTE dans World. Je suis pas sûr-sûr que tu connaisses vraiment le principe de la POO (& de la réflexivité.)
Et il faut que tu ais une instance (variable) de World.Ce forum n’étant pas un forum d’apprentissage du java, donc je te redirige donc vers OpenClassroom (anciennement siteduzero.com
http://fr.openclassrooms.com/informatique/cours/apprenez-a-programmer-en-javaAh aussi, je sens que je vais le répéter, le re-répéter et le re-re-répéter sur le forum… Mais Java est sensible à la casse! wordInfo n’a rien à voir avec worldinfo ou WorldInfo (pareil WORLDINFO).