Créer un mob basique
-
Essaye de mettre du Random dans une condition. Sinon, regarde le code des Chevaux ou des villageois.
-
Ok merci, mais je me sert pas trop des Random donc… disons que ça va être légèrement compliqué

EDIT :
Il n’existerai pas un event de Forge fait exprès ? :huh: -
Comment fait-on pour faire tenir un objet à un mob ? J’ai cherché dans les classes des mobs de base comme le squelette mais tout ce que j’ai testé ne marche pas.
PS :
Existe-t-il une page web concernant les degrés de fréquence de spawn Minecraft ? (Je sais pas si c’est la rareté qui est trop élevée ou si c’est mes mobs qui buguent :() -
@‘MrBlockTNT’:
Ok merci, mais je me sert pas trop des Random donc… disons que ça va être légèrement compliqué

EDIT :
Il n’existerai pas un event de Forge fait exprès ? :huh:Pourquoi il y aurait un event pour un truc aussi simple o_O
Tu déclare deux resourceLocation, et ensuite :protected ResourceLocation getAniZobTextures(EntityAnizob anizob) { if(anizob.worldObj.rand.nextInt(1) == 0) { return texture; } else { return texture2; } }Rien de compliqué.
Pour faire tenir un objet en main, il y a une fonction dans le mob, mais aussi dans le rendu. -
Ok merci, par contre je crois que tu as répondu après mon edit x) donc si quelqu’un pouvait m’aider à ce niveau là (fréquence de spawn)
-
Hum, pour ta question dans le ton édit, je sais pas.
-
C’est ```java
EntityRegistry.addSpawn(Anyzoo.class, 5, 2, 4, EnumCreatureType.monster, BiomeGenBase.plains); -
Salut !
Merci pour ce tutoriel
Petit problème : mon mob ne fait pas planter le client (c’est déjà ça) mais il génère des erreurs quand j’essaye de le faire pop ::::
Client> 2013-10-26 19:04:31 [INFO] [STDERR] java.lang.reflect.InvocationTargetException
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at java.lang.reflect.Constructor.newInstance(Unknown Source)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.entity.EntityList.func_75616_a(EntityList.java:205)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.item.ItemMonsterPlacer.func_77840_a(SourceFile:139)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.item.ItemMonsterPlacer.func_77648_a(SourceFile:86)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.item.ItemStack.func_77943_a(ItemStack.java:152)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.item.ItemInWorldManager.func_73078_a(ItemInWorldManager.java:429)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.network.NetServerHandler.func_72472_a(NetServerHandler.java:554)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.network.packet.Packet15Place.func_73279_a(SourceFile:58)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.network.MemoryConnection.func_74428_b(MemoryConnection.java:89)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.network.NetServerHandler.func_72570_d(NetServerHandler.java:141)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.network.NetworkListenThread.func_71747_b(NetworkListenThread.java:54)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.server.integrated.IntegratedServerListenThread.func_71747_b(IntegratedServerListenThread.java:109)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:689)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:585)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:129)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:482)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:582)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] Caused by: java.lang.NullPointerException
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at Yseriu.Test.EntityAntiZob.func_110147_ax(EntityAntiZob.java:19)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.entity.EntityLivingBase.<init>(EntityLivingBase.java:193)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.entity.EntityLiving.<init>(EntityLiving.java:85)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at net.minecraft.entity.EntityCreature.<init>(SourceFile:22)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] at Yseriu.Test.EntityAntiZob.<init>(EntityAntiZob.java:10)
Client> 2013-10-26 19:04:31 [INFO] [STDERR] … 20 more
Client> 2013-10-26 19:04:31 [WARNING] [Minecraft-Server] Skipping Entity with id 25:::
Et voilà, juste ça dans les logs, rien de visible IG
Mon code :
Entity
:::package Yseriu.Test; import net.minecraft.entity.EntityCreature; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.ai.EntityAISwimming; import net.minecraft.world.World; public class EntityAntiZob extends EntityCreature { public EntityAntiZob(World par1World) { super(par1World); this.tasks.addTask(1, new EntityAISwimming(this)); } protected void applyEntityAttributes() { super.applyEntityAttributes(); this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setAttribute(40D); this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setAttribute(0.7D); this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setAttribute(8D); } }:::
Render
:::package Yseriu.Test; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.renderer.entity.RenderBiped; import net.minecraft.entity.Entity; import net.minecraft.util.ResourceLocation; public class RenderAntiZob extends RenderBiped { protected static final ResourceLocation texture = new ResourceLocation("ytestmod:alex.png"); public RenderAntiZob(ModelBiped biped, float tailleOmbre) { super(biped, tailleOmbre); } protected ResourceLocation getAntiZobTextures(EntityAntiZob anizob) { return texture; } protected ResourceLocation getEntityTexture(Entity par1Entity) { return this.getAntiZobTextures((EntityAntiZob)par1Entity); } }:::
Merci !</init></init></init></init>
-
Supprime la ligne
this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setAttribute(8D);
Les mobs extends EntityCreature ne sont pas agressif, et donc ne fond pas de dégât. Il faut faire un extends EntityMob si tu veux qu’il soit agressif. -
ça marche, merci

enfin, mon mob a pas de texture … j’ai mis le fichier de texture un peu partout, j’ai regardé le fichier du squelette, du coup j’ai changé le : en / toujours rien (le mob est là, je vois sa barre de vie de TukMC) sur les logs, j’ai des NPE, et des ReportedException: Registering texture.
Je sais pas quoi faire. -
Tu as placés où ta texture ?
-
assets/ytsetmod/alex.png
ytestmod, c’est mon modid sans majuscules
alex, c’est un skin.
Je l’ai aussi copié/collé un peu partout, sans résultat. <- Technique du boulet
-
tu dois le mettre dans “assets/ytsetmod/entity/alex.png”
-
Non, essaye avec :
protected static final ResourceLocation texture = new ResourceLocation("ytsetmod:textures/entity/alex.png");et place la texture dans :
assets/ytsetmod/textures/entity/alex.png -
ça marche merci

-
Salut,
J’ai aussi un problème avec la texture du mob qui ne s’affiche pas:protected static final ResourceLocation texture = new ResourceLocation("terracraft:textures/entity/test.png"); -
Où as-tu placé la texture ?
-
bas dans assets/terracraft/textures/entity/test.png
test.png qui est la texture des zombies
J’ai gardé le nom anizob pour ne pas me tromper.
La class du mob:
package terracraft.common; import net.minecraft.entity.EntityCreature; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.world.World; public class EntityAniZob extends EntityCreature { public EntityAniZob(World world) { super(world); } protected void applyEntityAttributes() { super.applyEntityAttributes(); this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setAttribute(40D); this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setAttribute(0.69999D); } }le render:
package terracraft.common; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.renderer.entity.RenderBiped; import net.minecraft.entity.Entity; import net.minecraft.util.ResourceLocation; public class RenderAniZob extends RenderBiped { protected static final ResourceLocation texture = new ResourceLocation("terracraft:textures/entity/test.png"); public RenderAniZob(ModelBiped biped, float tailleOmbre) { super(biped, tailleOmbre); } protected ResourceLocation getAniZobTextures(EntityAniZob entity) { return texture; } @Override protected ResourceLocation getEntityTexture(Entity par1Entity) { return this.getAniZobTextures((EntityAniZob)par1Entity); } } -
Aucun problème à première vu

Essaye avec :protected static final ResourceLocation texture = new ResourceLocation("terracraft", "textures/entity/test.png");Sinon tu peux envoyer tes logs ?
-
Voila les logs
24 nov. 2013 18:07:37 net.minecraft.launchwrapper.LogWrapper log INFO: Loading tweak class name cpw.mods.fml.common.launcher.FMLTweaker 24 nov. 2013 18:07:37 net.minecraft.launchwrapper.LogWrapper log INFO: Using primary tweak class name cpw.mods.fml.common.launcher.FMLTweaker 24 nov. 2013 18:07:37 net.minecraft.launchwrapper.LogWrapper log INFO: Calling tweak class cpw.mods.fml.common.launcher.FMLTweaker 2013-11-24 18:07:38 [INFO] [ForgeModLoader] Forge Mod Loader version 6.4.20.916 for Minecraft 1.6.4 loading 2013-11-24 18:07:38 [INFO] [ForgeModLoader] Java is OpenJDK Client VM, version 1.6.0_27, running on Linux:i386:3.8.0-32-generic, installed at /usr/lib/jvm/java-6-openjdk-i386/jre 2013-11-24 18:07:38 [INFO] [ForgeModLoader] Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation 2013-11-24 18:07:39 [INFO] [STDOUT] Loaded 40 rules from AccessTransformer config file fml_at.cfg 2013-11-24 18:07:39 [INFO] [STDOUT] Loaded 109 rules from AccessTransformer config file forge_at.cfg 2013-11-24 18:07:40 [GRAVE] [ForgeModLoader] The binary patch set is missing. Either you are in a development environment, or things are not going to work! 2013-11-24 18:07:42 [INFO] [ForgeModLoader] Loading tweak class name cpw.mods.fml.common.launcher.FMLDeobfTweaker 2013-11-24 18:07:42 [INFO] [ForgeModLoader] Calling tweak class cpw.mods.fml.common.launcher.FMLDeobfTweaker 2013-11-24 18:07:43 [INFO] [ForgeModLoader] Launching wrapped minecraft {net.minecraft.client.main.Main} 2013-11-24 18:07:48 [INFO] [Minecraft-Client] Setting user: Player629 2013-11-24 18:07:48 [INFO] [Minecraft-Client] (Session ID is null) 2013-11-24 18:07:53 [INFO] [Minecraft-Client] LWJGL Version: 2.9.0 2013-11-24 18:07:53 [INFO] [STDERR] javax.imageio.IIOException: Can't read input file! 2013-11-24 18:07:53 [INFO] [STDERR] at javax.imageio.ImageIO.read(ImageIO.java:1291) 2013-11-24 18:07:53 [INFO] [STDERR] at net.minecraft.client.Minecraft.readImage(Minecraft.java:557) 2013-11-24 18:07:53 [INFO] [STDERR] at net.minecraft.client.Minecraft.startGame(Minecraft.java:419) 2013-11-24 18:07:53 [INFO] [STDERR] at net.minecraft.client.Minecraft.run(Minecraft.java:807) 2013-11-24 18:07:53 [INFO] [STDERR] at net.minecraft.client.main.Main.main(Main.java:93) 2013-11-24 18:07:53 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2013-11-24 18:07:53 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 2013-11-24 18:07:53 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 2013-11-24 18:07:53 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Method.java:616) 2013-11-24 18:07:53 [INFO] [STDERR] at net.minecraft.launchwrapper.Launch.launch(Launch.java:131) 2013-11-24 18:07:53 [INFO] [STDERR] at net.minecraft.launchwrapper.Launch.main(Launch.java:27) 2013-11-24 18:08:04 [INFO] [Minecraft-Client] Reloading ResourceManager: Default 2013-11-24 18:08:05 [INFO] [STDOUT] 2013-11-24 18:08:05 [INFO] [STDOUT] Starting up SoundSystem… 2013-11-24 18:08:06 [INFO] [STDOUT] Initializing LWJGL OpenAL 2013-11-24 18:08:06 [INFO] [STDOUT] (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) 2013-11-24 18:08:12 [INFO] [MinecraftForge] Attempting early MinecraftForge initialization 2013-11-24 18:08:12 [INFO] [STDOUT] MinecraftForge v9.11.1.916 Initialized 2013-11-24 18:08:12 [INFO] [ForgeModLoader] MinecraftForge v9.11.1.916 Initialized 2013-11-24 18:08:13 [INFO] [STDOUT] OpenAL initialized. 2013-11-24 18:08:13 [INFO] [STDOUT] 2013-11-24 18:08:14 [INFO] [STDOUT] Replaced 101 ore recipies 2013-11-24 18:08:15 [INFO] [MinecraftForge] Completed early MinecraftForge initialization 2013-11-24 18:08:15 [INFO] [ForgeModLoader] Reading custom logging properties from /media/INTENSO/Modding/Terracraft 1.6.4 INDEV/mcp/jars/config/logging.properties 2013-11-24 18:08:15 [AUCUN] [ForgeModLoader] Logging level for ForgeModLoader logging is set to ALL 2013-11-24 18:08:15 [INFO] [ForgeModLoader] Searching /media/INTENSO/Modding/Terracraft 1.6.4 INDEV/mcp/jars/mods for mods 2013-11-24 18:08:26 [INFO] [ForgeModLoader] Forge Mod Loader has identified 4 mods to load 2013-11-24 18:08:26 [INFO] [mcp] Activating mod mcp 2013-11-24 18:08:26 [INFO] [FML] Activating mod FML 2013-11-24 18:08:26 [INFO] [Forge] Activating mod Forge 2013-11-24 18:08:26 [INFO] [terracraft] Activating mod terracraft 2013-11-24 18:08:26 [ATTENTION] [Forge Mod Loader] Mod Forge Mod Loader is missing a pack.mcmeta file, things may not work well 2013-11-24 18:08:26 [ATTENTION] [Minecraft Forge] Mod Minecraft Forge is missing a pack.mcmeta file, things may not work well 2013-11-24 18:08:26 [ATTENTION] [Terraria on Minecraft] Mod Terraria on Minecraft is missing a pack.mcmeta file, things may not work well 2013-11-24 18:08:26 [INFO] [Minecraft-Client] Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Terraria on Minecraft 2013-11-24 18:08:27 [INFO] [STDOUT] 2013-11-24 18:08:27 [INFO] [STDOUT] SoundSystem shutting down… 2013-11-24 18:08:27 [INFO] [STDOUT] Author: Paul Lamb, www.paulscode.com 2013-11-24 18:08:27 [INFO] [STDOUT] 2013-11-24 18:08:27 [INFO] [STDOUT] 2013-11-24 18:08:27 [INFO] [STDOUT] Starting up SoundSystem… 2013-11-24 18:08:27 [INFO] [ForgeModLoader] Registering Forge Packet Handler 2013-11-24 18:08:27 [INFO] [STDOUT] Initializing LWJGL OpenAL 2013-11-24 18:08:27 [INFO] [STDOUT] (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) 2013-11-24 18:08:27 [INFO] [ForgeModLoader] Succeeded registering Forge Packet Handler 2013-11-24 18:08:28 [INFO] [STDOUT] OpenAL initialized. 2013-11-24 18:08:28 [INFO] [STDOUT] 2013-11-24 18:08:28 [INFO] [ForgeModLoader] Configured a dormant chunk cache size of 0 2013-11-24 18:08:30 [GRAVE] [Minecraft-Client] Unable to parse animation metadata from terracraft:textures/blocks/TikkiTorch.png: broken aspect ratio and not an animation 2013-11-24 18:08:31 [INFO] [ForgeModLoader] Forge Mod Loader has successfully loaded 4 mods 2013-11-24 18:08:31 [ATTENTION] [Forge Mod Loader] Mod Forge Mod Loader is missing a pack.mcmeta file, things may not work well 2013-11-24 18:08:31 [ATTENTION] [Minecraft Forge] Mod Minecraft Forge is missing a pack.mcmeta file, things may not work well 2013-11-24 18:08:31 [ATTENTION] [Terraria on Minecraft] Mod Terraria on Minecraft is missing a pack.mcmeta file, things may not work well 2013-11-24 18:08:31 [INFO] [Minecraft-Client] Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Terraria on Minecraft 2013-11-24 18:08:31 [GRAVE] [Minecraft-Client] Unable to parse animation metadata from terracraft:textures/blocks/TikkiTorch.png: broken aspect ratio and not an animation 2013-11-24 18:08:32 [INFO] [STDOUT] 2013-11-24 18:08:32 [INFO] [STDOUT] SoundSystem shutting down… 2013-11-24 18:08:32 [INFO] [STDOUT] Author: Paul Lamb, www.paulscode.com 2013-11-24 18:08:32 [INFO] [STDOUT] 2013-11-24 18:08:32 [INFO] [STDOUT] 2013-11-24 18:08:32 [INFO] [STDOUT] Starting up SoundSystem… 2013-11-24 18:08:32 [INFO] [STDOUT] Initializing LWJGL OpenAL 2013-11-24 18:08:32 [INFO] [STDOUT] (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) 2013-11-24 18:08:33 [INFO] [STDOUT] OpenAL initialized. 2013-11-24 18:08:33 [INFO] [STDOUT] 2013-11-24 18:08:40 [GRAVE] [Minecraft-Client] Realms: Invalid session id
