Jump to content

RANKSHANK

Members
  • Posts

    305
  • Joined

  • Last visited

Everything posted by RANKSHANK

  1. Yup it's easily worked around with an instance check. Sorry! Stacktrace: at net.minecraft.block.state.BlockState$StateImplementation.getValue(BlockState.java:167) at rankshank.pikmine.block.BlockOnionAir.isAir(BlockOnionAir.java:86) at net.minecraft.world.World.playMoodSoundAndCheckLight(World.java:2835) at net.minecraft.world.WorldServer.updateBlocks(WorldServer.java:394) at net.minecraft.world.WorldServer.tick(WorldServer.java:228) So it happens in World in the final line here Block block = p_147467_3_.getBlock(blockpos); //queiries the chunk for l += p_147467_1_; i1 += p_147467_2_; if (block.isAir(this, blockpos) && this.getLight(blockpos) <= this.rand.nextInt( && this.getLightFor(EnumSkyBlock.SKY, blockpos) <= 0) Which makes no sense since it's grabbing the block at the position and the calling its isAir. I've confirmed this happens when any other block class overrides, and it's always when the light tables are being updated as well. I'm guessing now reading through a bit more that the Chunk class is failing a sanity check in getBlock0 if (extendedblockstorage != null) try { block = extendedblockstorage.getBlockByExtId(x, y & 15, z); } If that extended Block storage is null it passes air as the block
  2. ItemStacks have their tag compounds as null by default; You'll have to use the setTagCompound(new NBTTagCompound()) to allow you to store data on it.
  3. I'm getting random periodic (happens within about 10 minutes) crashes due to BlockAir being passed through my block's isAir(IBlockAccess, BlockPos). Crash line java.lang.IllegalArgumentException: Cannot get property PropertyInteger{name=meta, clazz=class java.lang.Integer, values=[0, 1, 2, 3]} as it does not exist in BlockState{block=minecraft:air, properties=[]} isAir method @Override public boolean isAir(IBlockAccess w, BlockPos pos){ return (Integer)w.getBlockState(pos).getValue(meta) != 3; } I can live without using this method, but I'm curious as to why the wrong position would be getting passed... Perhaps a vanilla bug?
  4. I''m guessing you're using tile entities for the teleporters? I'd say use the item to link via a string tag per entity and then use that in a map as keys for the locations. The item wouldn't even need to store the data in this case.
  5. Definitely ignore what I said- I've always avoided instantiating my own iterators in favor of the shorthand variant... Thanks for the heads up Lex!
  6. I'd definitely recommend learning to use iteration, as it's cleaner looking, easier to debug, and harder to mess up /**removes the specified Item's corresponding recipes*/ public static void removeCraftingRecipes(Item target){ List<IRecipe> l = new ArrayList(); for(IRecipe r : (List<IRecipe>)CraftingManager.getInstance().getRecipeList()) if(r.getRecipeOutput() != null && r.getRecipeOutput().getItem() == target) l.add(r); for(IRecipe r : l) CraftingManager.getInstance().getRecipeList().remove(r); } Make sure you do not iterate through a list and modify it at the same time, as a general practice. Here I'm copying the recipes I want to remove when iterating through the list, and then remove them after they are all found. This prevents comodification errors because the lists iteration access ends with the for loop, allowing for it to be accessed again to call remove() for(Object<T> o: Iterable<T> i) // The iterable's <T> must be safely castable to the object's <T> (Of course objects can't have a <T> but for the example's sake) // eg: for(String s : new String[] {"a", "b"}); //or for(Object o : new String[] {"a", "b"}); //but NOT for(String s: new Object[] {"a", "b"}); Iteration is a wondrous thing, basically the first section is your allocated object which has its value fed from the array/list in the second section. The loop is then run through and the variable is replaced by the next item in the array/list until you use a break, or the list/array is exhausted. Notice how I cast CraftingManager.getInstance.getRecipeList() to a List<IRecipe> so I can iterate through as an IRecipe array
  7. Why not have a game rule that has a default value set by a config
  8. 1) Why can't you just write a mod to recursively print the dictionaries yourself? You did point this out yourself as a viable method. 2) Do you think enough people need these extra logs to justify packaging it in Forge?
  9. [10:26:43] [Client thread/WARN]: Failed to load texture: syntheticgems:textures/blocks/tesrhydrotorch.png java.io.FileNotFoundException: syntheticgems:textures/blocks/tesrhydrotorch.png I'd start here. Been a few months since I've read through one of these logs but hey
  10. Actually I just stumbled on part of the answer. Using the "Open command window here" or launching a .bat opens up a different command prompt setup(including window format) as opposed to manually launching command prompt. Seems to not have access to the C:/Program for system variables. No clue why yet but it's something. Definitely not a forge thing, and just means I'll have to do a manual launch of cmd to avoid this- Sorry about that
  11. I haven't touched my JAVA_HOME variable since I set up my JDK and had decompiled the FML1.8 environment successfully. Also went to check the administrative level and it doesn't have a set JAVA_HOME variable, yet it is required to access the JDK compiler... [/img] Must be my setup, but I've got no clue what could have changed for the compiler to only be accessed via administrator.
  12. Didn't really see this as a bug or issue as I found the solution, just a bit of curiosity. Environment: JDK = build 1.8.0_25-b18 OS = Windows 8.1 Forge src = 11.14.0.1269 So before when I was tinkering with 1.8's FML I had no issues setting up using the good old gradlew SetupDecompWorkspace eclipse, as well as a .bat that opened up the gradle GUI. But when I went to set up a 1.8 Forge environment it failed to find my compiler during makestart, which I found quite odd. Went to double check my syntax for path and my path for the user variable, they were both clear. Running an echo shows the correct location of the JDK and running java with the version param brought up the correct info. All sanity checks passed, but the blasted makestart still wouldn't run due to it not being able to find my JDK. Scratched my head for a bit, tried a fresh gradlew setup, tried different versions, nada. Just to do one final check before spending some time digging through the web, I ran command prompt as an administrator, mounted the directory, and ran gradlew makestart. It worked perfectly. So I was wondering; has Gradle changed so that it requires administrative privileges, or has my environment somehow thrown a spanner in the works for the forge versions?
  13. [16/12/2014 21:03:54 PM] [iNFO] [ForgeModLoader] Forge Mod Loader version 6.4.49.965 for Minecraft 1.6.4 loading May have a 1.7.1 version released but you aren't using it. From your own link. Not a supported version a la the EAQ, sorry bud This support forum is aimed at keeping Forge up and running, as in the foundation for mods. This is a mod/ mod compatibility issues, so it's the mod pack author/mod author that needs to see this for you to get any help. More the user(you in this case) reports issues to the modder and the modder reports issues here. With these third party packs, we don't have access to the set up and it's not like anyone owes you the time of running around and finding it, and there's been issues in the past with malignant code so it's easier to just ward the community away from it.
  14. Need the log without optifine installed
  15. What Diesieben meant was uninstall Optifine (load a fresh minecraft + forge instance) and see if it works. It does not matter if it's the only thing you have installed. Sanity checks must be done. If it works, complain to the Optifine author since it's not a part of Forge's jurisdiction.
  16. Why can't all support seekers be this comprehensive? Good show.
  17. Sorr Iy only have the FML 1.8 environment on my pc so this *may* be different- but check the internal class EntityEggInfo.class in the EntityList.class. There's an addMapping() method that adds the entity egg to the list of possibilities with the egg color and such
  18. Unfriendly because the community has to deal with self entitled, lazy narcissists like yourself who expect what they want to be handed to them on a little silver platter. If you "don't have the time" to learn java you need to find a hobby that actually feels like it's worth your time instead of expecting the community to bottle feed you the code that you need. Oh and this is the Forge community. Not a MCCreator community; not a Java or OpenGL school. You're in the wrong neighborhood.
  19. Thousands of people have been using forge for years. Hundreds of mods have been developed using forge... Why would everyone be using it if it was malware?
  20. You wot mate logs? forge version?
  21. And here be the flame thread of the month Okay first of all Lex does what he can. The constant changing of core formats in vanilla, new item/block registration, rendering, continual obfuscation of code etc. The team is also severely stunted. There's a massive gap between developer and contributor. Micro updates such as the 1.8 to 1.8.1 are also problematic. It also doesn't help that poorly read self entitled kids such as yourself see that they should have free support as soon as the team at mojang fart out another release. Have you ever seen obfuscated code? It's awful and mojang changes it with each release. And then trying to work around the vanilla additions to get continuity in forge would be difficult to say the least But let's look at it like this. You don't pay for it. You don't contribute. You do nothing but demand support from a now dwindling team. Sad, self centered and ridiculous.
  22. which mc release? the 1.8 version I'm using is in the fml src 1.8. (fml build release) .jar
  23. you've only covered the x and y axis... you'll need a z that also has a diminishing effect on the xy radius
  24. Horrible in what respect? Horrible when the developer has no clue what they're doing? potentially. But as far as outcome, performance impact, and stability they're pretty much like any other mod out there. In fact it is going to be a bit better in some cases since when used right, it alleviates the need for reflection. And since the changes are only run as the classes are serialized, it's the same as loading pre modified classes. And what Bedrock_Miner was talking about is known as a library. A resource for development. Commonly used classes between mods can be packaged into a library. Dependencies are just adding the modid of the required mod with an argument after./before. this means you could ship the library with a @mod file/dummy container to have the dependency list, but that's not a crucial aspect if you distribute the library properly.
  25. ... If you don't like the mechanics of a mod, don't use it- A tip for users
×
×
  • Create New...

Important Information

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