Jump to content

MX_wb

Members
  • Posts

    17
  • Joined

  • Last visited

Everything posted by MX_wb

  1. I see. After deleting the .gradle directory, and clearing the cache, it still produced the same error. But after deleting the build and classes directories, it works! Thanks for the help
  2. I ran cleanCache after removing the lines, if that's what you mean, but that didn't fix the problem. I don't remember now, but I remember seeing it on most Intellij setup tutorials a while ago. Can you atleast explain why it's not needed?
  3. I thought that line was necessary when using Intellij. It still doesn't work whether it's there or not anyway.
  4. Does anyone know of a solution to this?
  5. Actually, I think it should be "data": 0 instead of "data": "0"
  6. You need to specify the metadata of the fish. cooked_fish is either Cooked Fish (data=0) or Cooked Salmon (data=1).
  7. Also note that if i run jar and then run the mod outside of Intellij, I get the error java.lang.IllegalArgumentException: Multiple entries with same key: industrial_alarms=FMLMod:industrial_alarms{1.0.1.0} and industrial_alarms=FMLMod:industrial_alarms{1.0.1.0}. To index multiple values under a key, use Multimaps.index. So I'm guessing it's putting the mod in twice for some reason? That would explain the "duplicate entry" from before.
  8. When running the reobfJar task for my mod, in Intellij or in a terminal, it fails when it gets to the extractAnnotationsJar task. Here is the output: :reobfJar FAILED Error while building FML annotations cache: duplicate entry: mcmod.info java.util.zip.ZipException: duplicate entry: mcmod.info at java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:232) at net.minecraftforge.gradle.user.TaskExtractAnnotations.processJar(TaskExtractAnnotations.java:96) at net.minecraftforge.gradle.user.TaskExtractAnnotations.doTask(TaskExtractAnnotations.java:69) 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:498) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75) at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:228) at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:221) at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210) at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:621) at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:604) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46) at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35) at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66) at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58) at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52) at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52) at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53) at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43) at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203) at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185) at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66) at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50) at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25) at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110) at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37) at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37) at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23) at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43) at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32) at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37) at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30) at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153) at org.gradle.internal.Factories$1.create(Factories.java:22) at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91) at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53) at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150) at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32) at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98) at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92) at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91) at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63) at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92) at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83) at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99) at org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:46) at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) at org.gradle.tooling.internal.provider.runner.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:58) at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48) at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30) at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81) at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46) at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52) at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74) at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72) at org.gradle.util.Swapper.swap(Swapper.java:38) at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60) at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72) at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41) at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50) at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:237) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54) at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) :extractAnnotationsJar FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':reobfJar'. > java.util.zip.ZipException: duplicate entry: mcmod.info I have tried running the task in Windows aswell as Linux, but instead I get the same error, but a random json in my resources path is the "duplicate entry" instead of mcmod.info. Deleting the mcmod.info file still causes the error, but then says the duplicate entry is caused by a different file. I have tried deleting the .gradle and build directories, running clear, switching to a later version of forge (currently using 1.12.2-14.23.5.2768), but the error still persists. The error also occurs if I clone a repository from github, and try to run the task with that mod. Here is a link my the github repository if you need to see any of the gradle files: https://github.com/chez4/Industrial-Alarms Please say if you need any more information.
  9. Sorry, I don't think 1.7.10 is supported here anymore :(. You should use late versions anyway, as they have more useful features such as the json models and blockstates.
  10. Thanks for the help everybody! For rendering the multiblock model, should I use a TESR (is that deprecated?), or just a regular block json model. Or should I just make a new topic and ask there, because this isn't really about validation edit: Nvm I don't think TESRs are deprecated, but I think that's what I'll use as my model needs to rotate in 2 axes at once.
  11. Wow, I wouldn't have thought of that. It works great now! Thanks! Sorry, I'm not sure what you mean when you say I need to make the blocks invalidate the tile entity when broken :(. Now I just need to figure out how to render a model onto the entire set of blocks
  12. I see, that is pretty clever. I've done that now, but then if I don't create a MultiblockCokeFurnace instance, how do I retrieve the pattern and check if it's valid?
  13. Well, i managed to get it working, but only one side. I can't seem to get all the rotations. I have this to check if it is valid, but only the first iteration on the first loop works: boolean found = false; for (int i = 0; i < 4; i++) { for (BlockPos find : pattern.keySet()) { if (i == 1) { find = find.add(1, 0, -1); } else if (i == 2) { find = find.add(0, 0, -2); } else if (i == 3) { find = find.add(-1, 0, -1); } if (world.getBlockState(pos.add(find)).getBlock() == pattern.get(find)) { System.out.println("found " + i); found = true; } else { found = false; break; } } System.out.println(i); if (found) { return true; } } return false; I have no idea why this isnt working. It should just move it to a place where it can check all the blocks
  14. Yes, I know that's what you are supposed to do :(. But how would i approach this? When would I create an instance of MultiblockCokeFurnace? Because that has the isValid() function. I probably should've put that in the question.
  15. Correct me if I'm wrong, but on your client log it says you are missing some mods: [18:11:35] [Netty Client IO #0/INFO] [FML]: Attempting connection with missing mods [controlling, ctgui, ctm, custommainmenu, defaultoptions, jeiintegration, jeresources, llor, modnametooltip, mousetweaks, reauth, resourceloader, toastcontrol] at SERVER Maybe try installing those mods, and they try
  16. I've been trying to make a multiblock coke oven for several days now, but I always get stuck on the validation part. I can't find any tutorials anywhere apart from the odd 1.7.10, and when i look at github repos that use multiblocks, they all seem very complicated and spread out between 5 different classes. I'm just wondering how to would approach checking if the blocks are in the correct formation, I made a map with key BlockPos and value Block to try and represent the formation, but I'm struggling to use it to check the specific blocks around, with rotations. I have the pattern here: BBB BBB Bottom layer BBB BCB CBC Middle layer BCB B BBB Top layer B B is fired bricks, and C is also fired bricks, but depending on which one you click, will form the multiblock and that specific block becomes the master and the 'opening' to the coke furnace. Fired bricks is a tile entity, and ive tried making mutliblock classes to see if that might help things for me. If you would like to see my github repo it's here, so you can see fully all of my classes https://github.com/MX-wb/Mineral_Processing/tree/master/src/main/java/mxwb/mineralprocessing Please tell me if you would like to see or know anything else
×
×
  • Create New...

Important Information

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