sources

okami35

Aventurier
29 Mai 2011
59
0
1
Bonjour à tous,
Je me suis mis au modding il y a quelques temps et je pense avoir les bases (créations d'armes, de block...)

J'ai regardé un peu les mod proposés ici, j'en ai testé quelques uns qui sont vraiment géants et j'en ai décompilé d'autres pour essayer de comprendre (même si certains semblent "cryptés" et protégés contre le décompilage, ce qui est compréhensible).
Mais voila le problème, je ne comprends pas, il y a des fonctions utilisés que je ne trouve nulle part par exemple.

Donc là est ma question, vous, moddeur avancés qui nous faites rêver, où avez vous trouvé vos sources? Une doc quelconque?

En décortiquant les sources du jeu? Là encore, quelqu'un sait il à quoi correspond chaque fichier .class? Par exemple, je cherchais le code de l'arc pour faire des armes de lancé, j'ai donc trouvé itemBow.class (pas difficile, cette classe définit juste l'arc) mais quelle est la classe qui crée cette arme? (que nous nous appellerions mod_arc)

Voila, un sujet qui permettra sûrement aux jeunes moddeurs d'avancé.
Je vous remercie d'avance pour vos réponses
 

Stormweaker

Bucheron
15 Mai 2011
518
1
11
30
serveur-sinan.forumgratuit.fr
Ce ne sont pas les mods eux-mêmes qui sont "cryptés", toutes les méthodes et variables de Minecraft ont des nom en a, b, field_24848_A, etc
C'est pour ça qu'on utilise MCP, qui renomme tout ça en quelque chose de plus facilement comréhensible

Ensuite pour ton problème avec l'arc, tous les items sont définis dans Item.java, les blocs dans Block.java
 

okami35

Aventurier
29 Mai 2011
59
0
1
Ok merci.
personne d'autres?

edit: j'ai épluché un peu le item.java et le itembow.java, mais dans ce dernier une partie reste abstraite:
Code:
if(!world.multiplayerWorld)
            {
                world.entityJoinedWorld(new EntityArrow(world, entityplayer));
            }

Quelqu'un peut il m'expliquer à quoi cela correspond?
Que représente le fichier entityarrow? (qui est un peu difficile à comprendre^^)
Et le fichier RenderArrow?

Merci d'avance
 

okami35

Aventurier
29 Mai 2011
59
0
1
Personne pour expliquer ce que représente le fichier entityArrow? Et ce qu'il faudrait modifier pour changer la puissance de la flèche ou la vitesse de l'arc?
 

okami35

Aventurier
29 Mai 2011
59
0
1
Ok merci beaucoup pour ton aide. Je commence un peu à comprendre le principe du jeu.

Autre question, j'ai essayé de faire en sorte que pendant un temps donné, lorsque le joueur marche sur un bloc, il perd de la vie:

Code:
	public void onEntityWalking(World world, int l, int j, int k, Entity entity)
	    {
		player = entity;
		player.attackEntityFrom(null, 2);
		 compteur = 600;
	    }
	
	public void updateTick(World world, int i, int j, int k, Random random) {
		if(compteur > 0) {
			compteur--;
			 player.attackEntityFrom(null, 2);
		}
	}

Mais ça ne marche pas, et franchement je ne vois pas pourquoi
 

okami35

Aventurier
29 Mai 2011
59
0
1
Alors j'ai réussi mais en modifiant le fichier entity.java:
J'ai rajouté une variable poison et une condition dans la fonction on_update.

Le truc, c'est que j'aimerai ne pas avoir à modifier les fichiers du jeu (les mod ne le font pas je crois), alors quelqu'un aurait il une autre solution pour faire sur le joueur des effets(poison, immunité) pendant un temps limité?

Merci d'avance