Jump to content

ulfgur

Members
  • Posts

    25
  • Joined

  • Last visited

Converted

  • Gender
    Undisclosed
  • Personal Text
    I am new!

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

ulfgur's Achievements

Tree Puncher

Tree Puncher (2/8)

2

Reputation

  1. I'm thinking about getting into forge modding again. How do you folks go about creating + editing entity models and animations? When I did some modding years ago, I was editing it in the code... but now that I'm a bit wiser, it occurs to me that there's probably a tool that'd make it a lot easier. Thanks!
  2. I tried shifting over to the shadow plugin, and while it does a very nice job of putting all the dependencies together, It produces a .zip file that is not recognized by minecraft as a mod. Do you know any tricks to either make it produce a compatible .jar, or get minecraft to recognize the zip? (the new build.gradle): // For those who want the bleeding edge buildscript { repositories { jcenter() maven { name = "forge" url = "http://files.minecraftforge.net/maven" } } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT' } dependencies { classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.3' } } apply plugin: 'net.minecraftforge.gradle.forge' apply plugin: 'com.github.johnrengelman.shadow' apply plugin: 'application' /* // for people who want stable - not yet functional for MC 1.8.8 - we require the forgegradle 2.1 snapshot plugins { id "net.minecraftforge.gradle.forge" version "2.0.2" } */ version = "1.0" group= "org.drools.minecraft" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "minecraft-drools-game" mainClassName='com.example.examplemod.ExampleMod' minecraft { version = "1.9.4-12.17.0.1976" runDir = "run" // the mappings can be changed at any time, and must be in the following format. // snapshot_YYYYMMDD snapshot are built nightly. // stable_# stables are built at the discretion of the MCP team. // Use non-default mappings at your own risk. they may not allways work. // simply re-run your setup task after changing the mappings to update your workspace. mappings = "snapshot_20160518" // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. } repositories { mavenLocal() maven{ name = "jboss" url = "https://repository.jboss.org/nexus/content/groups/public-jboss" } } dependencies { compile ('org.drools.game:drools-game-engine-core-impl:1.0-SNAPSHOT'){ exclude group: 'commons-io', module: 'commons-io' transitive = true } compile ('org.drools.game:drools-game-engine-horserace-kjar:1.0-SNAPSHOT'){ exclude group: 'commons-io', module: 'commons-io' transitive = true } runtime 'org.drools.game:drools-game-engine-horserace-kjar:1.0-SNAPSHOT' shadow ('org.drools.game:drools-game-engine-core-impl:1.0-SNAPSHOT'){ exclude group: 'commons-io', module: 'commons-io' exclude group: 'xmlpull', module: 'xmlpull' exclude group: 'org.slf4j', module: 'slf4j-api' transitive = true } shadow ('org.drools.game:drools-game-engine-horserace-kjar:1.0-SNAPSHOT'){ exclude group: 'xmlpull', module: 'xmlpull' exclude group: 'commons-io', module: 'commons-io' exclude group: 'org.slf4j', module: 'slf4j-api' transitive = true } } processResources { // this will ensure that this task is redone when the versions change. inputs.property "version", project.version inputs.property "mcversion", project.minecraft.version // replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'mcmod.info' // replace version and mcversion expand 'version':project.version, 'mcversion':project.minecraft.version } // copy everything else, thats not the mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' } } shadowJar { baseName = 'horse-race-fatjar' classifier = null version = null mergeServiceFiles() }
  3. I have a couple gradle files. (was trying some things, and they got kind of stretched out.) /* root project build.gradle */ import org.gradle.api.artifacts.* apply plugin: 'base' // To add "clean" task to the root project. subprojects { apply from: rootProject.file('common.gradle') } task mergedJavadoc(type: Javadoc, description: 'Creates Javadoc from all the projects.') { title = 'All modules' destinationDir = new File(project.buildDir, 'merged-javadoc') // Note: The closures below are executed lazily. source { subprojects*.sourceSets*.main*.allSource } classpath.from { subprojects*.configurations*.compile*.copyRecursive({ !(it instanceof ProjectDependency); })*.resolve() } } /* root project common.gradle */ // // This file is to be applied to every subproject. // apply plugin: 'java' apply plugin: 'maven' String mavenGroupId = 'org.drools.minecraft' String mavenVersion = '1.0-SNAPSHOT' sourceCompatibility = '1.8' [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' repositories { mavenCentral(); // You may define additional repositories, or even remove "mavenCentral()". // Read more about repositories here: // http://www.gradle.org/docs/current/userguide/dependency_management.html#sec:repositories } dependencies { // Adding dependencies here will add the dependencies to each subproject. testCompile group: 'junit', name: 'junit', version: '4.10' } String mavenArtifactId = name group = mavenGroupId version = mavenVersion task sourcesJar(type: Jar, dependsOn: classes, description: 'Creates a jar from the source files.') { classifier = 'sources' from sourceSets.main.allSource } artifacts { archives jar archives sourcesJar } configure(install.repositories.mavenInstaller) { pom.project { groupId = mavenGroupId artifactId = mavenArtifactId version = mavenVersion } } task createFolders(description: 'Creates the source folders if they do not exist.') doLast { sourceSets*.allSource*.srcDirs*.each { File srcDir -> if (!srcDir.isDirectory()) { println "Creating source folder: ${srcDir}" srcDir.mkdirs() } } } /* Root project settings.gradle */ rootProject.name = 'minecraft-drools-game' // Find the directories containing a "build.gradle" file in the root directory // of the project. That is, every directory containing a "build.gradle" will // be automatically the subproject of this project. def subDirs = rootDir.listFiles(new FileFilter() { public boolean accept(File file) { if (!file.isDirectory()) { return false } if (file.name == 'buildSrc') { return false } return new File(file, 'build.gradle').isFile() } }); subDirs.each { File dir -> include dir.name } /* mod build.gradle */ // For those who want the bleeding edge buildscript { repositories { jcenter() maven { name = "forge" url = "http://files.minecraftforge.net/maven" } } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT' } } apply plugin: 'net.minecraftforge.gradle.forge' /* // for people who want stable - not yet functional for MC 1.8.8 - we require the forgegradle 2.1 snapshot plugins { id "net.minecraftforge.gradle.forge" version "2.0.2" } */ version = "1.0" group= "org.drools.minecraft" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "minecraft-drools-game" configurations { embed compile.extendsFrom(embed) } minecraft { version = "1.9.4-12.17.0.1976" runDir = "run" // the mappings can be changed at any time, and must be in the following format. // snapshot_YYYYMMDD snapshot are built nightly. // stable_# stables are built at the discretion of the MCP team. // Use non-default mappings at your own risk. they may not allways work. // simply re-run your setup task after changing the mappings to update your workspace. mappings = "snapshot_20160518" // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. } repositories { mavenLocal() maven{ name = "jboss" url = "https://repository.jboss.org/nexus/content/groups/public-jboss" } } dependencies { embed ('org.slf4j:slf4j-api:1.7.5') embed ('org.slf4j:jcl-over-slf4j:1.7.12') embed ('org.drools.game:drools-game-engine-core-impl:1.0-SNAPSHOT'){ exclude group: 'commons-io', module: 'commons-io' transitive = true } embed ('org.drools.game:drools-game-engine-horserace-kjar:1.0-SNAPSHOT'){ exclude group: 'commons-io', module: 'commons-io' transitive = true } runtime 'org.drools.game:drools-game-engine-horserace-kjar:1.0-SNAPSHOT' } processResources { // this will ensure that this task is redone when the versions change. inputs.property "version", project.version inputs.property "mcversion", project.minecraft.version // replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'mcmod.info' // replace version and mcversion expand 'version':project.version, 'mcversion':project.minecraft.version } // copy everything else, thats not the mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' } } jar { duplicatesStrategy = DuplicatesStrategy.EXCLUDE from configurations.embed.collect { it.isDirectory() ? it : zipTree(it) } }
  4. Thanks, this is something I very much needed to know. Do you have any idea what could cause the problem in my first post, where built-in dependencies were not being found? At this point, even a general "well, you might look *here*, but I really don't know" would be massively useful.
  5. Is there any alternative for shaded (/fat) jars? In our case, the main problem of shaded jars is that we have serveral META-INF/ files in different jars that overlaps each other, and we will need to create a way to merge these files for the shaded approach. It will be interesting to know if there is a way to define the classpath of the mod in a different way, such a libs directory or a mod specific configuration file to define which dependencies needs to be picked up. Also for the org.slf4j.LoggerFactory issue, we can see the class being bundled inside the shaded jar, but for some reason minecraft is not picking it up. Is there any Classloader magic happening for mods?
  6. Heya, I'm having dependency troubles during mod loading. I have a set of dependencies including slf4j, and the mod is not finding them during load. It functions correctly in the development environment, and builds correctly, but as soon as I try to run the mod from forge, the dependency is not found. Here is the relevant section of my build file: dependencies { //both added as an effort to overcome the problem. embed ('org.slf4j:slf4j-api:1.7.5') embed ('org.slf4j:jcl-over-slf4j:1.7.12') //other dependencies } Here is the error I'm getting: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at org.drools.compiler.kie.builder.impl.KieContainerImpl.<clinit>(KieContainerImpl.java:84) ~[KieContainerImpl.class:?] at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieClasspathContainer(KieServicesImpl.java:99) ~[KieServicesImpl.class:?] at org.drools.compiler.kie.builder.impl.KieServicesImpl.getKieClasspathContainer(KieServicesImpl.java:82) ~[KieServicesImpl.class:?] at org.drools.compiler.kie.builder.impl.KieServicesImpl.getKieClasspathContainer(KieServicesImpl.java:73) ~[KieServicesImpl.class:?] at org.drools.game.core.GameSessionImpl.bootstrap(GameSessionImpl.java:92) ~[GameSessionImpl.class:?] at org.drools.minecraft.adapter.NewAdapter.bootstrapWorld(NewAdapter.java:83) ~[NewAdapter.class:?] at org.drools.minecraft.adapter.NewAdapter.<init>(NewAdapter.java:59) ~[NewAdapter.class:?] at org.drools.minecraft.adapter.NewAdapter.<clinit>(NewAdapter.java:43) ~[NewAdapter.class:?] at com.example.droolsinterface.InitCommon.preInit(InitCommon.java:29) ~[initCommon.class:?] at com.example.examplemod.ExampleMod.preInit(ExampleMod.java:23) ~[ExampleMod.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25] at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25] at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:566) ~[forge-1.9.4-12.17.0.1976.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25] at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:228) ~[forge-1.9.4-12.17.0.1976.jar:?] at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:206) ~[forge-1.9.4-12.17.0.1976.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25] at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:135) [LoadController.class:?] at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:586) [Loader.class:?] at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:249) [FMLClientHandler.class:?] at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:437) [bcd.class:?] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:349) [bcd.class:?] at net.minecraft.client.main.Main.main(SourceFile:124) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25] at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?] Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_25] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_25] ... 47 more [10:18:07] [Client thread/INFO] [sTDOUT/]: [net.minecraft.init.Bootstrap:func_179870_a:560]: ---- Minecraft Crash Report ---- // Surprise! Haha. Well, this is awkward. Time: 8/3/16 10:18 AM Description: There was a severe problem during mod loading that has caused the game to fail net.minecraftforge.fml.common.LoaderException: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at net.minecraftforge.fml.common.LoadController.transition(LoadController.java:179) at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:589) at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:249) at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:437) at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:349) at net.minecraft.client.main.Main.main(SourceFile:124) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) Caused by: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at org.drools.compiler.kie.builder.impl.KieContainerImpl.<clinit>(KieContainerImpl.java:84) at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieClasspathContainer(KieServicesImpl.java:99) at org.drools.compiler.kie.builder.impl.KieServicesImpl.getKieClasspathContainer(KieServicesImpl.java:82) at org.drools.compiler.kie.builder.impl.KieServicesImpl.getKieClasspathContainer(KieServicesImpl.java:73) at org.drools.game.core.GameSessionImpl.bootstrap(GameSessionImpl.java:92) at org.drools.minecraft.adapter.NewAdapter.bootstrapWorld(NewAdapter.java:83) at org.drools.minecraft.adapter.NewAdapter.<init>(NewAdapter.java:59) at org.drools.minecraft.adapter.NewAdapter.<clinit>(NewAdapter.java:43) at com.example.droolsinterface.InitCommon.preInit(InitCommon.java:29) at com.example.examplemod.ExampleMod.preInit(ExampleMod.java:23) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:566) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:228) at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:206) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:135) at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:586) ... 10 more Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 47 more I also tried adding { "name": "org.slf4j:slf4j-api:1.7.2”, "url": "http://files.minecraftforge.net/maven/" } to the "libraries" section in minecraft's configuration files, for my version of Forge. This didn't work, either. Any ideas how to effectively add dependencies?
  7. Agh. Should have thought to try that. Thank you! It's up and working!
  8. I've got my mob working, analyzed much of the code, heaped wonderful loads of custom behaviors on it, and have it spawning in my custom biome. I'd like to add it to some of the mob spawners I sprinkle around the world. Unfortunately, when the mob spawner is generated, it's empty. (registration:) EntityRegistry.registerModEntity(EntityTutorialMob.class, "TutorialMob", EntityUniqueIDFinder.getID(), MinecraftByExample.instance, 230, 3, true); (The code that eventually creates the spawner:) WorldGenHelpers.genMobSpawner(world, pos.add(2, 1, 2), "TutorialMob"); //Then, in a different class: public static void genMobSpawner(World world, BlockPos pos, String mobName) { world.setBlockState(pos, Blocks.mob_spawner.getDefaultState(), 2); TileEntity tileentity = world.getTileEntity(pos); if (tileentity instanceof TileEntityMobSpawner) { ((TileEntityMobSpawner)tileentity).getSpawnerBaseLogic().setEntityName(mobName); } } Any ideas?
  9. It was the update frequency that worked from my other entities, all of which are projectiles (for those, the update frequency was used by some tutorial I saw somewhere). I take it the update frequency should be something different? I did try upping it to 200, which didn't help at all. What value would you suggest? (also, am I doing it wrong for the particles, too?)
  10. in commonproxy: EntityRegistry.registerModEntity(EntityTutorialMob.class, "TutorialMob", EntityUniqueIDFinder.getID(), MinecraftByExample.instance, 230, 78, true); in clientproxy: RenderManager reman = Minecraft.getMinecraft().getRenderManager(); RenderingRegistry.registerEntityRenderingHandler(EntityTutorialMob.class, new RenderTutorialMob(reman, new ModelChicken(), .5F)); ...the stuff about entityUniqueIDFinder references this class: public class EntityUniqueIDFinder { public static int currentID = -1; public static int getID() { currentID++; return currentID; } } ...after reading your advice (but before understanding what you meant), I thought I wasn't supposed to define my own global ID, and tried using EntityRegistry.findGlobalUniqueEntityId() where that code was. It didn't work, (I was obviously doing something the stupid way), so I just wrote my own so I didn't have to track the all my entity ID numbers. Why? I'm gonna take it apart and find out how everything works later... This mod will not be released to the public...
  11. Thank you! That partially worked! The mobs are visible... ..Now, I'm having a problem where the mobs kinda jerk around and teleport, while displaying chicken behaviors. (I'll hold seeds, they'll walk-teleport to me). They still animate. Any ideas? EDIT: My render & entity classes are literally copy-pasted (then refactored) from the chicken's. I'm getting something stupid-simple to work before I play with anything more complex.
  12. This is my first time through building a custom mob. I'm taking the chicken as my base, and ATM am just trying to get it to render & behave like a chicken. I can spawn the mob. I'm guessing it has chicken-like behaviors, but I can't see it. I can, however, hear it. Here is my registration code: //in client proxy, init RenderManager reman = Minecraft.getMinecraft().getRenderManager(); RenderItem reIt = Minecraft.getMinecraft().getRenderItem(); RenderingRegistry.registerEntityRenderingHandler(EntityTutorialMob.class, new RenderTutorialMob(reman, new ModelChicken(), 0.5F)); //////////////////////////////////////////////////////////////////////////////////////// //in common proxy, init EntityRegistry.registerGlobalEntityID(EntityTutorialMob.class, "TutorialMob", 900, 230, 78); Spawning the mob results in the following errors: java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more [08:06:24] [Client thread/WARN]: Skipping Entity with id -24 [08:06:24] [Client thread/FATAL] [FML]: Exception caught executing FutureTask: java.util.concurrent.ExecutionException: java.lang.NullPointerException java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.get(FutureTask.java:188) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:677) [FMLCommonHandler.class:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1011) [Minecraft.class:?] at net.minecraft.client.Minecraft.run(Minecraft.java:345) [Minecraft.class:?] at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79] at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79] at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?] at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:78) [start/:?] at GradleStart.main(GradleStart.java:45) [start/:?] Caused by: java.lang.NullPointerException at net.minecraft.client.network.NetHandlerPlayClient.handleSpawnMob(NetHandlerPlayClient.java:818) ~[NetHandlerPlayClient.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.func_180721_a(S0FPacketSpawnMob.java:120) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.play.server.S0FPacketSpawnMob.processPacket(S0FPacketSpawnMob.java:136) ~[s0FPacketSpawnMob.class:?] at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:18) ~[PacketThreadUtil$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[?:1.7.0_79] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[?:1.7.0_79] at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:676) ~[FMLCommonHandler.class:?] ... 11 more Any idea what could be causing this? Thanks.
  13. The following code-dump comes with a warning: this works great in SP, but it may be causing crashes in MP. I haven't tested enough yet. public class PlantGenerator extends WorldGenerator { @Override public boolean generate(World worldIn, Random rand, BlockPos pos) { BlockPos tempPos; BlockPos topPos; /* * generate strawberries */ if(worldIn.getBiomeGenForCoords(pos) instanceof BiomeGenSwamp) { for(int i = 0; i < 1; i++) { if(rand.nextFloat() < .4f) { tempPos = pos; int x = rand.nextInt(16) - 8; int z = rand.nextInt(16) - 8; tempPos = tempPos.add(x, 0, z); int y = worldIn.getHorizon(tempPos).getY(); topPos = tempPos.add(0, y, 0); if(StartupCommon.blockStrawberry.canPlaceBlockAt(worldIn, topPos)); { worldIn.setBlockState(topPos, StartupCommon.blockStrawberry.getDefaultState()); for(int ix = -1; ix <= 1; ix++){ for(int iy = -1; iy <= 1; iy++){ for(int iz = -1; iz <= 1; iz++){ if(rand.nextFloat() < .4f) { tempPos = topPos.add(ix, iy, iz); if (Blocks.double_plant.canPlaceBlockAt(worldIn, tempPos)) { worldIn.setBlockState(tempPos, StartupCommon.blockStrawberry.getDefaultState()); } } } } } } } } } return false; } public class WldGen implements IWorldGenerator { @Override public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider) { if(!world.isRemote) { BlockPos pos = new BlockPos(chunkX * 16, 0, chunkZ * 16); //for my structures, not related to this mod //(new StructureGen()).generate(world, random, pos); (new PlantGenerator()).generate(world, random, pos); } } } ...and then in the mod's startup: GameRegistry.registerWorldGenerator(new WldGen(), 1);
  14. Thanks for the help! After some fiddling, working with the advice, and looking at those resources, I have the plant & it's seeds fully functional and spawning in swamps and snazzy. (for those of you searching who find this in three months, there were stupid problems with my JSONs that I fixed, some readability problems with my PNGs, and the problems alias and jabelar mentioned.)
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.