Jump to content

Choonster

Moderators
  • Posts

    5120
  • Joined

  • Last visited

  • Days Won

    75

Everything posted by Choonster

  1. This definitely sounds like a use case for a TileEntity . You should look for tutorials or look at examples in vanilla code. Players can change their name now, so you should store their UUID instead ( Entity#getUniqueID ). You can use UsernameCache#getLastKnownUsername to get the last known username of a player's UUID for display purposes.
  2. A block in the world doesn't store any information beyond 4 bits of metadata unless it has a TileEntity . What are you trying to achieve?
  3. Are you creating your own dimension or modifying the Overworld? If it's your own dimension, just don't generate the structures in the first place. coolAlias has a tutorial on event handling here. Jabelar has a tutorial here.
  4. HarvestCheck is only fired if the Block 's Material requires a tool. This is not the case for Material.wood .
  5. nolpfij_wildycraft is causing the crash, but dragonSword is also using invalid names for its items. Report these errors to the mod authors.
  6. I'm guessing you have Forge Multipart in both your mods and mods/1.6.4 folders, which means it's trying to load the mod twice. It should only be in one of the two folders.
  7. I'm not entirely sure, but this could be caused by Java using IPv6 instead of IPv4. Try adding -Djava.net.preferIPv4Stack=true to the Java command line arguments (Settings -> Java/Minecraft -> Java Parameters in the ATLauncher). Also make sure Minecraft isn't being blocked by your firewall.
  8. You can download the latest version of Java from the Java website. You've cut off the parts of the log with the Java version and the OutOfMemoryError 's message. Upload logs/fml-client-latest.log to Gist and link it here.
  9. To completely disable a specific type of structure generation: Create a class that extends the appropriate MapGen class (e.g. MapGenStrongholds ) and overrides canSpawnStructureAtCoords to return false . Subscribe to InitMapGenEvent , check for the appropriate EventType and assign a new instance of your class to the newGen field. This replaces the default generator with one that does nothing.
  10. You cut off the start of the crash report. Post the full crash report from C:\Program Files (x86)\Minecraft\ATLauncher\Instances\CrundeeCraft\crash-reports\crash-2015-09-07_09.16.24-client.txt.
  11. You need to use Forge's fluid model. Use the default render type of 3 (model specified by blockstates file). -1 stops the block being rendered at all (used by vanilla TESR blocks). Forge has an example here (blockstates file) and I have an example here (blockstates file).
  12. It still exists, but it probably doesn't have a deobfuscated name in the mappings version you're using. Its SRG name is func_180433_a . To update your mappings version, set the minecraft.mappings field in your build.gradle script to the appropriate version, re-run setupDecompWorkspace and regenerate (for Eclipse) or refresh (for IDEA) your IDE project. You can get the mappings version from the MCPBot website.
  13. Keep in mind that you're limited to 4 bits of data per block unless you use a TileEntity . Redstone wire uses all 4 bits to store the 16 possible strength levels; storing the sign would take up 2 bits, leaving you with 2 bits to store 4 possible strength levels. A non-ticking TileEntity (the default in 1.8 ) probably wouldn't hurt performance too much, but you'll want to do some profiling to confirm that. Edit: Actually, you probably don't need an explicit neutral sign (since that would just be 0 strength); so you can store the sign in 1 bit and use 3 bits to store 7 strength values.
  14. World#getWorldTime returns the current time of day (so it resets to 0 at the start of the in-game day), World#getTotalWorldTime returns the total number of ticks that the world has been active (so it doesn't reset). If you store the time as a long (what it's given to you as), that will last for Long.MAX_VALUE ( 2^63-1 ) ticks; which at 20 ticks per second is equivalent to 1.2810238940076 x 10^14 hours, 5337599558365 days or roughly 14623560433 years. I don't think you need to worry too much about your code running for that long.
  15. To update Forge, change the minecraft.version field (i.e. the version field in the minecraft block) in your build.gradle script to the appropriate version and run gradlew setupDecompWorkspace again. If you're using Eclipse, regenerate your project with gradlew eclipse . If you're using IDEA, refresh the project in the Gradle window. Your repo doesn't have the code for the flying entity in it. If you look at the stacktrace, you'll see that your code is throwing a NullPointerException on line 36 of EntityEoC (in the applyEntityAttributes method).
  16. Why did you post the vanilla class? Why not post your class? As I asked in my previous post, why can't you? What happens when you try? Are you using an old version of Forge? The new egg system was added in 11.14.3.1468.
  17. You're probably using a newer version of the mappings in your workspace than the ones included in the 9.10 release of MCP. You can find the mappings used by your ForgeGradle workspaces (for recent 1.8 versions of ForgeGradle) in ~/.gradle/caches/minecraft/de/oceanlabs/mcp/<mcp_type>/<mappings_version> (replace ~ with %USERPROFILE% on Windows). You can also download specific mappings versions from the MCPBot website. In Stable 16, potionRequirements is field_179539_o and potionAmplifiers is field_179540_p .
  18. registerModEntity can add a spawn egg for you without using a global ID, just use the overload with the two additional int parameters (the egg background and foreground colours). There's no reason to use global IDs at all. Why can't you spawn flying entities with commands or eggs? Do you get an error in the log when you attempt to do so? If so, post it.
  19. You need to override getMetaFromState , just ignore the DAMAGE property in it. getStateFromMeta will always return the default state if you don't override it, which is what you want in this case.
  20. "I can't upgrade" is pretty much never a valid statement. I think there's a few older versions of OS X that don't support it, but I'm not entirely sure. The OP should definitely upgrade if possible.
  21. ItemStack#writeToNBT will write an ItemStack to an NBTTagCompound . You should be able to save the EnumChatFormatting as a string (i.e. store the result of the toString method).
  22. The first error is caused by not having NEI installed. The second error is caused by having the wrong version of Chisel Facades installed. You're using Cricket's Chisel 2 but have a Chisel Team version of ChiselFacades installed. Either switch to Chisel Team's Chisel or to a Cricket version of Chisel Facades. I explain which version of Chisel Facades to use for each version of Chisel on the CurseForge page.
  23. You've run out of PermGen memory. You should upgrade to Java 8, which no longer uses PermGen. If you can't upgrade, increase the maximum PermGen with the MaxPermSize command line argument.
  24. Recipes for Dyes and coloured blocks (e.g. Stained Clay) are added by RecipeDyes#addRecipes , which is called from the CraftingManager constructor. They're just standard shaped/shapeless recipes, so your method should remove them without issue. Fireworks recipes are handled by the RecipeFireworks class, which returns null from IRecipe#getRecipeOutput until IRecipe#matches has found a matching recipe; so you can't remove it based on the output Item . You can remove it based on the class instead, though. You can see a working example of this for 1.8 here. This outputs the following to the log:
  25. Gist is a similar site with a much higher limit. It will accept full FML logs.
×
×
  • Create New...

Important Information

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