Everything posted by Jackson Perr
-
hi i'm new to this. where does "--enable-native-access=com.sun.jna" go?
Hold on, wait a minute. So are you saying that the server you are trying to run is crashing or failing to work properly? If this is the case, then it should have nothing to do with a warning message. Could you be a little more specific as to what's going on? Are you just annoyed that there are some warning messages being displayed? (I mean, if that's the case then I can totally understand.) Again, I notice that you use the word "attempted" when referring to launching the forge server. This gives me the impression that something is going much more wrongly than a warning.
-
1.20.1 Client crashing when joining the ender portal
Hey man, I looked at your crash log, and I gotta' say: I'm not exactly sure wth is goin' on here either. But I believe I can offer some advice to you to hopefully help you better pinpoint the issue here. Now, I checked the crash file and you have a TON of mods. When making a mod pack, adding a lot of mods together can cause some issues, as their transformer functions can interfere with each other often. Because of this, you might have choices of mods that you can try to remove instead of just one singular mod being the culprit. You just need to make sure that the mods that aren't exactly compatible with each other are removed. Since you have many mods installed, you should try first backing up your world. Then, create a copy of the back up and remove a large chunk of the mods from your mod folder. Then, load your copy of the back up. If there are no errors, then you know one or both, maybe even all, of the problematic mods is in the chunk you selected. If not, then it's the other way around. Try and use this kind of logic to rapidly hone in on the problematic mod, constantly creating a new copy of your world from the back up each time and loading it from there. Let me know if this is feasible for you. If not, I can try'n brain storm another solution for ya'. Hope this helps man!
-
The rafted smp
- I need help with a custom structure in my mod.
- Eclipse Throwing "Could not create an instance of Tooling API" and "Could not run build action"
Hey fellas! I've been trying for the past few months to fix this miserable, horrible, god awful, hair pulling, hopelessly relentless error I've been having with my imported Gradle projects that have worked fine for several years until I made the mistake of installing Java-17 and Java-21. Basically, I think I know exactly what is causing the error. Gradle for Minecraft Forge 1.12.2 uses Gradle Distribution 4.9, which is literally like ancient technology, so it requires Java-8. But for some incredibly stupid reason that is just completely beyond me, the moment I installed Java-17, it became utterly and entirely impossible to convince eclipse to just use Java-8. I've tried everything: I've yelled at it, I've spoken softly to it, I've even tried actually fixing, but nothing I have done has seemed to work. Literally, every single time I try to fix this problem, a new one pops up. I am sick and tired of having to navigate this LABYRINTH of errors. I think I know how Hercules must have felt trying to slay the hydra at this point. I add launch options to fix it, and now it's generating, "Could not run build action." I try to force eclipse to use a different java version, and it says, "Eclipse requires java blah blah blah." What am I supposed to do at this point? The only way I am able to assemble my 1.12.2 mods is to use Command Prompt and forcibly set the JRE for the gradlew batch file to Java-8. BUT THEM I'M STUCK WITH RUNNING IT ON THE BATCH FILE. I already have so many windows pulled up when I'm modding Minecraft that when I assemble my mod istg I can actually hear my computer start shaking. Trying to reach google through all my windows is like trying to uncover ancient mayan ruins! The last thing I need is EVEN MORE WINDOWS. Now, before you ask any questions, I'm going to try to cover them here, so get ready: Have you tried praying? Yes, that's like the first thing I tried. Did you try putting it in rice? ... Did you try changing your Gradle Distribution version? Yes, it needs gradle 4.9, otherwise I get another error that says something like "Needs gradle 4.9.x or below". Can you please provide the errors that were generated? Sure, here's the error that was first generated when I noticed this problem: org.gradle.tooling.GradleConnectionException: Could not create an instance of Tooling API implementation using the specified Gradle distribution 'https://services.gradle.org/distributions/gradle-4.9-bin.zip'. at org.gradle.tooling.internal.consumer.loader.DefaultToolingImplementationLoader.create(DefaultToolingImplementationLoader.java:99) at org.gradle.tooling.internal.consumer.loader.CachingToolingImplementationLoader.create(CachingToolingImplementationLoader.java:45) at org.gradle.tooling.internal.consumer.loader.SynchronizedToolingImplementationLoader.create(SynchronizedToolingImplementationLoader.java:44) at org.gradle.tooling.internal.consumer.connection.LazyConsumerActionExecutor.onStartAction(LazyConsumerActionExecutor.java:104) at org.gradle.tooling.internal.consumer.connection.LazyConsumerActionExecutor.run(LazyConsumerActionExecutor.java:86) at org.gradle.tooling.internal.consumer.connection.CancellableConsumerActionExecutor.run(CancellableConsumerActionExecutor.java:45) at org.gradle.tooling.internal.consumer.connection.ProgressLoggingConsumerActionExecutor.run(ProgressLoggingConsumerActionExecutor.java:61) at org.gradle.tooling.internal.consumer.connection.RethrowingErrorsConsumerActionExecutor.run(RethrowingErrorsConsumerActionExecutor.java:38) at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor.lambda$run$0(DefaultAsyncConsumerActionExecutor.java:55) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56) at java.base/java.lang.Thread.run(Thread.java:1575) at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46) at org.gradle.tooling.internal.consumer.DefaultModelBuilder.get(DefaultModelBuilder.java:51) at org.gradle.tooling.internal.consumer.DefaultProjectConnection.getModel(DefaultProjectConnection.java:50) at org.eclipse.buildship.core.internal.util.gradle.CompatProjectConnection.getModel(CompatProjectConnection.java:53) at org.eclipse.buildship.core.internal.util.gradle.IdeAttachedProjectConnection.configureOperation(IdeAttachedProjectConnection.java:68) at org.eclipse.buildship.core.internal.util.gradle.IdeAttachedProjectConnection.model(IdeAttachedProjectConnection.java:59) at org.eclipse.buildship.core.internal.CachingProjectConnection.model(CachingProjectConnection.java:59) at org.eclipse.buildship.core.internal.CachingProjectConnection.getModel(CachingProjectConnection.java:39) at org.eclipse.buildship.core.internal.workspace.EclipseModelUtils.runTasksAndQueryModels(EclipseModelUtils.java:56) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.lambda$null$4(DefaultModelProvider.java:75) at org.eclipse.buildship.core.internal.DefaultGradleBuild$GradleConnectionOperation.runInToolingApi(DefaultGradleBuild.java:329) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager$WorkspaceRunnableAdapter.run(DefaultToolingApiOperationManager.java:58) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager.run(DefaultToolingApiOperationManager.java:39) at org.eclipse.buildship.core.internal.DefaultGradleBuild.withConnection(DefaultGradleBuild.java:122) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.lambda$fetchEclipseProjectAndRunSyncTasks$5(DefaultModelProvider.java:75) at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4878) at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529) at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278) at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155) at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045) at com.google.common.cache.LocalCache.get(LocalCache.java:3953) at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4873) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.getFromCache(DefaultModelProvider.java:98) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.executeOperation(DefaultModelProvider.java:90) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.fetchEclipseProjectAndRunSyncTasks(DefaultModelProvider.java:72) at org.eclipse.buildship.core.internal.DefaultGradleBuild$SynchronizeOperation.runInToolingApi(DefaultGradleBuild.java:226) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager$WorkspaceRunnableAdapter.run(DefaultToolingApiOperationManager.java:58) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager.run(DefaultToolingApiOperationManager.java:39) at org.eclipse.buildship.core.internal.DefaultGradleBuild$SynchronizeOperation.run(DefaultGradleBuild.java:192) at org.eclipse.buildship.core.internal.DefaultGradleBuild.synchronize(DefaultGradleBuild.java:100) at org.eclipse.buildship.core.internal.workspace.SynchronizationJob.runInToolingApi(SynchronizationJob.java:64) at org.eclipse.buildship.core.internal.workspace.SynchronizationJob.runInToolingApi(SynchronizationJob.java:30) at org.eclipse.buildship.core.internal.operation.ToolingApiJob$1.runInToolingApi(ToolingApiJob.java:54) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager$WorkspaceRunnableAdapter.run(DefaultToolingApiOperationManager.java:58) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager.run(DefaultToolingApiOperationManager.java:39) at org.eclipse.buildship.core.internal.operation.ToolingApiJob.run(ToolingApiJob.java:65) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) Caused by: java.lang.ExceptionInInitializerError at org.gradle.internal.classloader.FilteringClassLoader.<clinit>(FilteringClassLoader.java:45) at org.gradle.initialization.DefaultClassLoaderRegistry.restrictTo(DefaultClassLoaderRegistry.java:39) at org.gradle.initialization.DefaultClassLoaderRegistry.restrictToGradleApi(DefaultClassLoaderRegistry.java:35) at org.gradle.initialization.DefaultClassLoaderRegistry.<init>(DefaultClassLoaderRegistry.java:29) at org.gradle.internal.service.scopes.GlobalScopeServices.createClassLoaderRegistry(GlobalScopeServices.java:210) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73) at org.gradle.internal.service.ReflectionBasedServiceMethod.invoke(ReflectionBasedServiceMethod.java:35) at org.gradle.internal.service.DefaultServiceRegistry$FactoryMethodService.invokeMethod(DefaultServiceRegistry.java:821) at org.gradle.internal.service.DefaultServiceRegistry$FactoryService.create(DefaultServiceRegistry.java:774) at org.gradle.internal.service.DefaultServiceRegistry$ManagedObjectServiceProvider.getInstance(DefaultServiceRegistry.java:568) at org.gradle.internal.service.DefaultServiceRegistry$SingletonService.get(DefaultServiceRegistry.java:625) at org.gradle.internal.service.DefaultServiceRegistry.applyConfigureMethod(DefaultServiceRegistry.java:188) at org.gradle.internal.service.DefaultServiceRegistry.findProviderMethods(DefaultServiceRegistry.java:170) at org.gradle.internal.service.DefaultServiceRegistry.addProvider(DefaultServiceRegistry.java:244) at org.gradle.internal.service.DefaultServiceRegistry$1.addProvider(DefaultServiceRegistry.java:225) at org.gradle.tooling.internal.provider.ConnectionScopeServices.configure(ConnectionScopeServices.java:55) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73) at org.gradle.internal.service.ReflectionBasedServiceMethod.invoke(ReflectionBasedServiceMethod.java:35) at org.gradle.internal.service.DefaultServiceRegistry.applyConfigureMethod(DefaultServiceRegistry.java:192) at org.gradle.internal.service.DefaultServiceRegistry.findProviderMethods(DefaultServiceRegistry.java:170) at org.gradle.internal.service.DefaultServiceRegistry.addProvider(DefaultServiceRegistry.java:244) at org.gradle.internal.service.ServiceRegistryBuilder.build(ServiceRegistryBuilder.java:52) at org.gradle.tooling.internal.provider.DefaultConnection.initializeServices(DefaultConnection.java:123) at org.gradle.tooling.internal.provider.DefaultConnection.configure(DefaultConnection.java:106) at org.gradle.tooling.internal.consumer.connection.AbstractPost12ConsumerConnection.configure(AbstractPost12ConsumerConnection.java:37) at org.gradle.tooling.internal.consumer.loader.DefaultToolingImplementationLoader.createConnection(DefaultToolingImplementationLoader.java:104) at org.gradle.tooling.internal.consumer.loader.DefaultToolingImplementationLoader.create(DefaultToolingImplementationLoader.java:88) at org.gradle.tooling.internal.consumer.loader.CachingToolingImplementationLoader.create(CachingToolingImplementationLoader.java:45) at org.gradle.tooling.internal.consumer.loader.SynchronizedToolingImplementationLoader.create(SynchronizedToolingImplementationLoader.java:44) at org.gradle.tooling.internal.consumer.connection.LazyConsumerActionExecutor.onStartAction(LazyConsumerActionExecutor.java:104) at org.gradle.tooling.internal.consumer.connection.LazyConsumerActionExecutor.run(LazyConsumerActionExecutor.java:86) at org.gradle.tooling.internal.consumer.connection.CancellableConsumerActionExecutor.run(CancellableConsumerActionExecutor.java:45) at org.gradle.tooling.internal.consumer.connection.ProgressLoggingConsumerActionExecutor.run(ProgressLoggingConsumerActionExecutor.java:61) at org.gradle.tooling.internal.consumer.connection.RethrowingErrorsConsumerActionExecutor.run(RethrowingErrorsConsumerActionExecutor.java:38) at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor.lambda$run$0(DefaultAsyncConsumerActionExecutor.java:55) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56) at java.base/java.lang.Thread.run(Thread.java:1575) Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected java.lang.Package[] java.lang.ClassLoader.getPackages() accessible: module java.base does not "opens java.lang" to unnamed module @6d8d945b at java.base/java.lang.reflect.AccessibleObject.throwInaccessibleObjectException(AccessibleObject.java:388) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:364) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:312) at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:203) at java.base/java.lang.reflect.Method.setAccessible(Method.java:197) at org.gradle.internal.reflect.JavaMethod.<init>(JavaMethod.java:42) at org.gradle.internal.reflect.JavaMethod.<init>(JavaMethod.java:32) at org.gradle.internal.reflect.JavaMethod.<init>(JavaMethod.java:36) at org.gradle.internal.reflect.JavaReflectionUtil.method(JavaReflectionUtil.java:186) at org.gradle.internal.classloader.ClassLoaderUtils.<clinit>(ClassLoaderUtils.java:42) ... 45 more And here is the error I am getting after adding the launch options: org.gradle.tooling.GradleConnectionException: Could not run build action using Gradle distribution 'https://services.gradle.org/distributions/gradle-4.9-bin.zip'. at org.gradle.tooling.internal.consumer.ExceptionTransformer.transform(ExceptionTransformer.java:55) at org.gradle.tooling.internal.consumer.ExceptionTransformer.transform(ExceptionTransformer.java:29) at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:43) at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor.lambda$run$0(DefaultAsyncConsumerActionExecutor.java:57) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56) at java.base/java.lang.Thread.run(Thread.java:1575) at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46) at org.gradle.tooling.internal.consumer.DefaultBuildActionExecuter.run(DefaultBuildActionExecuter.java:66) at org.eclipse.buildship.core.internal.util.gradle.CompatProjectConnection$CompatBuildActionExecuter.run(CompatProjectConnection.java:407) at org.eclipse.buildship.core.internal.CachingBuildActionExecuter.run(CachingBuildActionExecuter.java:198) at org.eclipse.buildship.core.internal.workspace.EclipseModelUtils.queryCompositeModel(EclipseModelUtils.java:121) at org.eclipse.buildship.core.internal.workspace.EclipseModelUtils.runTasksAndQueryModels(EclipseModelUtils.java:63) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.lambda$null$4(DefaultModelProvider.java:75) at org.eclipse.buildship.core.internal.DefaultGradleBuild$GradleConnectionOperation.runInToolingApi(DefaultGradleBuild.java:329) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager$WorkspaceRunnableAdapter.run(DefaultToolingApiOperationManager.java:58) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager.run(DefaultToolingApiOperationManager.java:39) at org.eclipse.buildship.core.internal.DefaultGradleBuild.withConnection(DefaultGradleBuild.java:122) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.lambda$fetchEclipseProjectAndRunSyncTasks$5(DefaultModelProvider.java:75) at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4878) at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529) at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278) at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155) at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045) at com.google.common.cache.LocalCache.get(LocalCache.java:3953) at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4873) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.getFromCache(DefaultModelProvider.java:98) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.executeOperation(DefaultModelProvider.java:90) at org.eclipse.buildship.core.internal.workspace.DefaultModelProvider.fetchEclipseProjectAndRunSyncTasks(DefaultModelProvider.java:72) at org.eclipse.buildship.core.internal.DefaultGradleBuild$SynchronizeOperation.runInToolingApi(DefaultGradleBuild.java:226) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager$WorkspaceRunnableAdapter.run(DefaultToolingApiOperationManager.java:58) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager.run(DefaultToolingApiOperationManager.java:39) at org.eclipse.buildship.core.internal.DefaultGradleBuild$SynchronizeOperation.run(DefaultGradleBuild.java:192) at org.eclipse.buildship.core.internal.DefaultGradleBuild.synchronize(DefaultGradleBuild.java:100) at org.eclipse.buildship.core.internal.workspace.SynchronizationJob.runInToolingApi(SynchronizationJob.java:64) at org.eclipse.buildship.core.internal.workspace.SynchronizationJob.runInToolingApi(SynchronizationJob.java:30) at org.eclipse.buildship.core.internal.operation.ToolingApiJob$1.runInToolingApi(ToolingApiJob.java:54) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager$WorkspaceRunnableAdapter.run(DefaultToolingApiOperationManager.java:58) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317) at org.eclipse.buildship.core.internal.operation.DefaultToolingApiOperationManager.run(DefaultToolingApiOperationManager.java:39) at org.eclipse.buildship.core.internal.operation.ToolingApiJob.run(ToolingApiJob.java:65) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) Caused by: org.gradle.api.GradleException: Unable to start the daemon process. This problem might be caused by incorrect configuration of the daemon. For example, an unrecognized jvm option is used. Please refer to the user guide chapter on the daemon at https://docs.gradle.org/4.9/userguide/gradle_daemon.html Please read the following process output to find out more: ----------------------- FAILURE: Build failed with an exception. * What went wrong: java.lang.ExceptionInInitializerError (no error message) * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org at org.gradle.launcher.daemon.client.DaemonGreeter.parseDaemonOutput(DaemonGreeter.java:35) at org.gradle.launcher.daemon.client.DefaultDaemonStarter.startProcess(DefaultDaemonStarter.java:160) at org.gradle.launcher.daemon.client.DefaultDaemonStarter.startDaemon(DefaultDaemonStarter.java:136) at org.gradle.launcher.daemon.client.DefaultDaemonConnector.doStartDaemon(DefaultDaemonConnector.java:212) at org.gradle.launcher.daemon.client.DefaultDaemonConnector.startDaemon(DefaultDaemonConnector.java:206) at org.gradle.launcher.daemon.client.DefaultDaemonConnector.connect(DefaultDaemonConnector.java:130) at org.gradle.launcher.daemon.client.DaemonClient.execute(DaemonClient.java:139) at org.gradle.launcher.daemon.client.DaemonClient.execute(DaemonClient.java:93) at org.gradle.tooling.internal.provider.DaemonBuildActionExecuter.execute(DaemonBuildActionExecuter.java:60) at org.gradle.tooling.internal.provider.DaemonBuildActionExecuter.execute(DaemonBuildActionExecuter.java:41) at org.gradle.tooling.internal.provider.LoggingBridgingBuildActionExecuter.execute(LoggingBridgingBuildActionExecuter.java:58) at org.gradle.tooling.internal.provider.LoggingBridgingBuildActionExecuter.execute(LoggingBridgingBuildActionExecuter.java:37) at org.gradle.tooling.internal.provider.ProviderConnection.run(ProviderConnection.java:180) at org.gradle.tooling.internal.provider.ProviderConnection.runClientAction(ProviderConnection.java:142) at org.gradle.tooling.internal.provider.ProviderConnection.run(ProviderConnection.java:132) at org.gradle.tooling.internal.provider.DefaultConnection.run(DefaultConnection.java:239) at org.gradle.tooling.internal.consumer.connection.ParameterizedActionRunner.execute(ParameterizedActionRunner.java:36) at org.gradle.tooling.internal.consumer.connection.CancellableActionRunner.run(CancellableActionRunner.java:52) at org.gradle.tooling.internal.consumer.connection.AbstractConsumerConnection.run(AbstractConsumerConnection.java:69) at org.gradle.tooling.internal.consumer.connection.ParameterValidatingConsumerConnection.run(ParameterValidatingConsumerConnection.java:56) at org.gradle.tooling.internal.consumer.DefaultBuildActionExecuter$1.run(DefaultBuildActionExecuter.java:80) at org.gradle.tooling.internal.consumer.connection.LazyConsumerActionExecutor.run(LazyConsumerActionExecutor.java:87) at org.gradle.tooling.internal.consumer.connection.CancellableConsumerActionExecutor.run(CancellableConsumerActionExecutor.java:45) at org.gradle.tooling.internal.consumer.connection.ProgressLoggingConsumerActionExecutor.run(ProgressLoggingConsumerActionExecutor.java:61) at org.gradle.tooling.internal.consumer.connection.RethrowingErrorsConsumerActionExecutor.run(RethrowingErrorsConsumerActionExecutor.java:38) at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor.lambda$run$0(DefaultAsyncConsumerActionExecutor.java:55) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56) at java.base/java.lang.Thread.run(Thread.java:1575) What launch options did you add to the eclipse jre? These ones: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED I put them at the very end of my eclipse.ini file, btw. Have you tried uninstalling your later java versions? Yes, but it's no use, eclipse will just magically pull up another more updated java version like a magician pulling a bunny out of a hat. Have you tried just using IntelliJ? I will never join the dark side! You know IntelliJ actually provides some better maneuverability than ecli- YOUR TRICKS AREN'T GOING TO WORK ON ME! Have you tried just simply deleting the java that eclipse will use? Yes, but when I do eclipse blows up and melts down like reactor number 4. (I will not be trying that again, btw.) What did you do to the gradlew batch file to make it work that you can't do with eclipse? VERY EXCELLENT QUESTION! I just added set "JAVA_HOME=C:\Users\[MY USERNAME]\JDK8\jre" to the very beginning of the batch file. And yes, I know this JRE is installed in a very strange spot, and I also know that it says "JDK" before opening into a folder called "jre". I installed this folder when I was like, six; c'mon, cut me a little slack. Could you provide the path to the java environment that eclipse is currently using? Absolutely: C:/Users/[MY USERNAME]/.p2/pool/plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_23.0.1.v20241024-1700/jre/bin Have you tried changing your java home variables on your system and what not? Yes, but to no avail; eclipse will just continue using the JRE supplied to it in it's ini file. Have you tried just making a new project and exporting everything over there to see if it works? I tried making a new project, but I could instantly tell it wasn't going to work just based on that fact that I immediately get the "Could not create an instance of Tooling API" error. Have you tried downgrading eclipse? No, and I'm honestly pretty scared to do that because I don't want to have to deal with another meltdown again. If there are no other ways to get eclipse to use a lower java version, then this is probably what I'll end up doing if I don't die from frustration before I get there. Have you tried uninstalling some eclipse plugins and downgrading the java that eclipse requires in the ini file? No, and I'm again afraid of doing it for the exact same reasons as stated above. What is the required java version in the eclipse ini file? Java-11 I'm hoping somebody here knows a way around this problem that allows me to use eclipse to build my forge 1.12.2 gradle projects. Actually, strangely, I just though of the fact that it's JUST my 1.12.2 projects that are failing. That's interesting because I do in fact have a GT New Horizons 1.7.10 mod that NEVERMIND, I just checked and apparently those crazy insane people down workin' on the GTNH mod pack managed to used gradle distribution 8.13 in their template project. I guess they're just a bunch of gigachads that literally built their mod pack from the ground up. Maybe I might end up just doing what they did and make my own forge gradle mod template, but that would REALLY suck having to do that for any gradle version that doesn't like java 21. If somebody knows how to get eclipse to just use an earlier version of java, please for the love of all that is holy, help me out! In the meantime, I guess I got no other good choice but to use the command line. I'm hoping this post reaches somebody that can help.- I need help with a custom structure in my mod.
Alright, I took a look at the code... again. I assume that you are using 1.20.1, as from your last post. First, let's get the "Have you tried putting it in rice?" questions out of the way first. Have you looked from world height to bedrock? Notice anything strange in that range? Did you set the bounds of your structure properly? Have you checked multiple different locations? Did you pray before you ran your mod? Alright, now assuming that you did all of that, try this! Pray really hard, and open your log file. CONTROL+F search for the following string: "Failed Start with id". Hopefully your praying payed off and manifested this message into reality, because if not, this could be real rough. In the case that you do not see this message, the problem could be literally almost anything without any code to reference. There is a significant amount of things that could go wrong when generating structures, and it's all up to how you programmed the Structure Pieces class and your Structure class. If none of this works, please post your code here. My previous post paragraph completely ignored the main bulk of the things you said in your post. Now I'll take it into account here. I notice that you said this one scary word: "structure block." Are you trying to use the datapack method to generate custom structures? If you are, I'm not exactly sure if this is the place for that kind of help, as I believe the people here are more experienced with PROGRAMMING WITH JAVA IN FORGE rather than operating general Minecraft datapacks. Perhaps somebody here will be more familiar with the datapack method of generating structures, but I'm not too sure. If you are trying to use the datapack method (which if you have forge and enough comfortability with java, then I would strongly recommend just making a mod instead), there is probably a more general Minecraft forum somewhere to ask in. If you are feeling up to it, you can actually very easily make a custom structure with this very old MCEdit method I remember from way back. I'm not sure if it could still work with 1.20.1, but it's worth a shot. Basically, you would just build a structure in a custom world, load that world in MCEdit, and use MCEdit to convert it into java code. I remember somebody made a program to "compress" the code that was generated from MCEdit, but I wasn't able to find the program. Sorry man. Anyways, if you are stickin' with the datapack rotue, then I'm sorry, but I don't have enough experience to help you with that, but I wish you the best of luck!- [solved] 300+ Modpack keeps crashing
Alr, I just looked at the individual mods here (MixinBooter and Iris Flywheel Compat). I'm going to try my best to add some input here for when you get back next morning WITHOUT making a huge text wall again. Before your exception is thrown here and your game crashes, in your log you should see something like this: "Error loading class:". Try a CONTROL+F search to find it in your log file. If you do not see this message, then I really hope you have a bible on hand and a good prayer in mind, because you might be screwed. Hopefully that's not the case though. If you find this message in your log file, please post it here. Also, could you provide the name of the modpack you are using? One more thing I should add. I'm not exactly sure that removing Iris Flywheel Compat would work, but I would encourage you to do so anyways just in case it does work. If it does not work, then the problem is 100% being caused by a bad transformer function, in which case you should provide a link to your modpack. ONE MORE THING: if you are using any other additional mods in your modpack, please provide them here, even if they are hacked clients; I cannot help you with anything revolving around hacked clients, but knowing if you have a hacked client mod will still help determine the source of the problem. Hopefully removing Iris-Compat works...- [solved] 300+ Modpack keeps crashing
Hmmmmm... It looks like your problem might be being cause by a transformer function that has previously failed. Basically, the game uses transformers to literally rewrite Minecraft's code. Think of these functions like a courier service. Let's say you buy a package from FedEX. They put your package in their big ol' trucks and send 'em off. However, let's say that this truck suddenly gets stopped to be searched, e.g. the transformer editing the package (the code). The guy searching the truck finds your package and he goes, "Hey, man, this package is a bit strange so we gotta' change it a bit, here-" and he opens up the package, removes a few things, adds a few things, and finally puts the package back in the truck and sends it off. When you get your package (again, the code), it will be changed by the man who searched the truck (again, the transformer). Everything went alright, HOORAY! Now, let's say this man searching your truck runs into a bit of an issue while modifying your package, and he... gets struck by and asteroid or something, idk. Because he failed so catastrophically, you will NEVER get your package, so the truck will just have to drive off without your package. Now let's say we have another guy on the track this time that wants to search the truck, and let's say he's looking for that same package that the first guy messed up with. He goes into the truck, looks around a bit, and says, "wth, there ain't nothin' here man." Then he calls the police and says something like, "ClassMetadataNotFoundException." This could be what has happened here, although I'm not too positive. But basically, the entire package (the code needed to be modified) is GONE! But here's the thing, the exception shown in your crash report is NOT going to be the one that's actually of note, because the original guy didn't throw an exception. What you need is evidence of what failed to change the class beforehand. Here's what you can do. In your log file, try finding the point where the exception is initially thrown, then try scrolling up and see what's there. If you see anything of note, please report it here. If all else fails and nobody is able to help you here, then as a last resort you could post the log file, although I wouldn't exactly recommend this right off the bat, who knows what might be in there. Hope this helps ya' out man!- [SOLVED] Guys, please help me get through this horrible NoClassDefFound exception.
Well, needing help for this didn't last nearly as long as I expected, lol. I figured out the solution, and it's a real face palmer. Basically, the function Type.getInternalName(Class<?> clazz) does NOT work for classes that are obfuscated. This means that it won't work for basically every minecraft class. So running it with the argument EntityTrackerEntry.class won't work, but running it with CustomHandler.class will work! Annoying, but a still bit interesting. So I just replaced my call for Type.getInternalName(EntityTrackerEntry.class) with just "os", as that is the name of the actual class for EntityTrackerEntry at runtime. Hope this solution helps somebody. In the meantime, I'm going to mark this thread as solved.- [1.20.1] Custom Effect Help
- How do you add a mob to spawn around a existing vanilla structure?
Hey dawg! I think I might be able to help you out with your issue here. I say might because I don't know about 1.16.x or any later version, but I know how to do this kind of thing for 1.12.2 forge. Basically, in the pre-init or init (I don't really remember which one) you just gotta' Okay, ykw, I just downloaded the 1.14.4 1.20.1 minecraft mdk. I think I actually can help you here. So, the 1.12.2 method actually doesn't work with 1.20.1 minecraft or later. Probably not too far before either. I see two options here for ya': First, it's important to note that the game stores its spawn data for structures in, well, the Structures class. Here, the game initializes an instance of each Structure class and registers them with the BootstrapContext using its bootstrap function. Each instance of a Structure class is registered with a StructureSettings class as an argument. One of the arguments, the one that you're probably going to be particularly interested in here, would be the spawnOverrides argument. For this argument, the game uses a Map between MOB_CATEGORIES and StructureSpawnOverride. StructureSpawnOverride is essentially the juice of it here. It contains almost everything you would need to control how your custom mob spawns in Pillager Outposts. Now, if you want to change how the Structure class for the pillager outposts is registered with the BootstrapContext in the bootstrap function, you're going to want to change where the function's caller gets the function and replace it with your own custom version of this function. How might you do this? This is where it gets a little tricky. The bootstrap function for the structures class is referenced in VanillaRegistries.BUILDER. However, unfortunately, this field is private and final, so you can't directly change it with reflections, but you can still access it with reflections. Now the VanillaRegistries.BUILDER field is of the type RegistrySetBuilder, which uses a private final field "entires", which is set as a List<RegistrySetBuilder.RegistryStub<?>> type. So here, you could use reflections to access this list field and remove the entry for the structures bootstrap. Then you might be able to create your own structures class and add change the bootstrap function to reflect the changes you wish. Then finally, simply re-add the Structure entry that you made to the list, and you should be completely done! Keep in mind, I haven't actually tested this, so I'm not sure if it would actually work, and even if it did work it's really unorthodox, so I would recommend trying this next idea. When the game is deciding whether or not to spawn an entity, if the entity is registered with the SpawnPlacements class, is uses the function you specify in the entity class to determine whether or not the entity can spawn in a certain spot. For example, the guardian cannot spawn on a block that is exposed to light from underwater because of this function. So what you could do is make a checkSelfSpawnRules function for your mob and register it with the SpawnPlacements function. Then, you could have your checkSelfSpawnRules function take into account if the block it's trying to spawn on is near a Pillager Outpost. Finally, you can get the coordinates to the chunk of your block and iterate through the ServerLevels in your MinecraftServer class and get their chunk sources and test if the chunk source has the chunk of your block position. If it does, you can then get the StructureManager from the ServerLevel. In there should be some very helpful functions for you to use. Although this is a bit more orthodox, it might be a bit laggy. It's really up to you which of these options you choose. If you need some additional clarification then please let me know, I would be happy to help you out! Also let me know if any of these options hit your goals for what your looking for here or not. If not then just let me know; I could probably find another method you could try.- [SOLVED] Guys, please help me get through this horrible NoClassDefFound exception.
Oh yeah, and one more thing I forgot to mention. My server runs on Java SE 8 from Graal VM Enterprise Edition. Not exactly sure if this will come in handy.- [SOLVED] Guys, please help me get through this horrible NoClassDefFound exception.
Hey fellas! So I've been working on a mod for my Minecraft server that adds "admin tools" ( that's code for "trolling commands" ( : ) It's been pretty smooth so far: I've heard them scream as they were chased by every enemy in the entire world, I've watched as they mysteriously turned into potatoes, and I've even gotten to hear them say strange things like "Why th are my pants on my head?" However, I've lately started running into an issue that I can't quite seem to get through... Like at all! It started when I thought it would be a really cool idea to implement a command that makes EVERYTHING invisible for a selected player. You know, the usual everyday kinda' tool needed for proper server administration. But I can't just set all the entities to be invisible with the setInvisible(boolean value) kind of deal, because that would mean that if you had either a hacked client or the entity had some kind of equipment, then you could still see it. I wanted it so that the client that I chose didn't even know the entity existed. So, I initially started by just trying to intercept packets. However, this only worked for vanilla entities, like zombies and basic items. The reason? Because forge is really annoying and decides that it's not going to spawn mod entities through the default channel and is instead going to use an entirely different channel, one that I can't conveniently connect a player entity to through a CustomPacketHandler because this channel remains static throughout the server's lifespan. So I though, jeez, well why don't I just add another CustomPacketHandler to this channel and see how it goes. So I did my first test and tried to prevent an entity spawn packet from being written to the channel. And can you guess what happened? Probably not, because it wasn't a NoClassDefFound exception. Instead, it was a NullReferenceException that lead to an error that said something like, "Don't know how to spawn in this entity." As it turns out, when the packet for spawning an entity is being created, it relies on trying to write the packet to this fml channel and then for some reason it just reads the packet from the fml channel before trying to send it again. So that means if you prevent it from being written then there's nothing that can be read from the channel, so the spawn packet ends up being null. So I though, damn, this is really stupid. So I searched around a bit and found a function called isVisibleTo, which is basically just called to check whether a player can or can't see an entity before it decides to make the packet to send to the player. Then I got an idea: what if I just hijack this function and add some code at the start to make it return false if the player has had this "invisible enemy" command ran on them. So I looked around a little more, and finally, I found out that if you make your mod a plugin, then you can access the transform method of the IClassTransformer interface. Basically, it's like the harmony transpiler patch, but with java! So I got to work. Now, understand that everything before this point it basically just pretext to give you fellas some good context. From this point on, this is where my struggles are going to start to begin. I started off with writing my hijacking function. It was a static public function with one argument of the type EntityPlayerMP that returned a boolean value. I named this function "canPlayerSee". Now, on the AsmTranspiler end, I had gotten the class/method descriptors and function names from the obfuscated mappings and pulled apart the isVisibleTo function's disassembly. From here, I put together some quick code that injected at the start of the isVisibleTo function the following java assembly codes: aload_1 //This loads the first, and only argument (excluding the this argument) of the isVisibleTo function invokestatic //canPlayerSee ifne //label_0 iconst_0 //This should load the 0 integer ireturn //This should return the number at the top of the stack, zero in this case label_0 So I loaded up the server, and nothing bad happened. I run the command on myself to make everything invisible and it works perfectly! So at this point, I'm thinking that this would be a pretty powerful tool if I could load an instance of the Entity that the isVisibleTo function concerns onto the stack and pass is as an argument to the canPlayerSee function for better use. This would let me implement a propper vanish command and a command that would let me turn players of my choice into a creeper that the player in question cannot see. So, I modified the assembly code again. I changed it to this instead: (Note, I did update the canPlayerSee function to accept the new Entity arg at the end) aload_1 //This loads the first, and only argument (excluding the this argument) of the isVisibleTo function aload_0 //Loads the this arg to the stack getfield //EntityTrackerEntry.trackedEntity invokestatic //canPlayerSee ifne //label_0 iconst_0 //This should load the 0 integer ireturn //This should return the number at the top of the stack, zero in this case label_0 So I launched up the server again... And it crashes: NoClassDefFoundException. This is the error, I am currently getting, and I have tried almost everything I could think of to fix it. Hell, I even tried praying, which almost always works! None of those things I tried are of particular note here, but what is of particular note is the fact that it seems that the crashing will happen only when I make the canPlayerSee function two arguments and change the code to reflect loading the proper arguments. Now, I'm going to send some source code, so just be ready: my chunking skills are horrible and my coding "elegancy" might make you really want to puke. For that, I am sorry. Also, since it's like 3:00 AM rn, I'm just going to try and send images instead of providing text. I know this will make it a bit harder to help, so I am sorry for that too, but I'm really tired. Nvm, I guess I'm sending text: This is my entire class for modifying the asm code: public class AsmTransformer implements IClassTransformer { @SuppressWarnings("deprecation") private static Logger logger = FMLLog.getLogger(); public byte[] transform(String name, String transformedName, byte[] bytes) { if (transformedName.startsWith("net.minecraft.entity.EntityTrackerEntry")) { ClassReader reader = new ClassReader(bytes); ClassNode node = new ClassNode(); reader.accept((ClassVisitor)node, 0); if (analyzeClass(node)) { ClassWriter writer = new ClassWriter(3); node.accept(writer); bytes = writer.toByteArray(); } } return bytes; } private boolean analyzeClass(ClassNode node) { boolean rval = false; for (MethodNode method : node.methods) { logger.info(method.name); logger.info(method.desc); if (method.name.equals("isVisibleTo") || (method.name.equals("c") && method.desc.equals("(Loq;)Z"))) { try { rval = hijackCanSeeFunc(method); } catch (NoSuchMethodException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } } } if(!rval) logger.info("COULD NOT FIND METHOD!"); return rval; } private boolean hijackCanSeeFunc(MethodNode node) throws NoSuchMethodException, SecurityException { InsnList insnList = node.instructions; logger.info("Hackin' it..."); Method meth = CustomHandler.class.getMethod("canPlayerSee", Entity.class, EntityPlayerMP.class); String methDesc = Type.getMethodDescriptor(meth); logger.info(methDesc); InsnList patch = new InsnList(); LabelNode ln = new LabelNode(new Label()); patch.add((AbstractInsnNode) new VarInsnNode(Opcodes.ALOAD, 0)); patch.add((AbstractInsnNode) new FieldInsnNode(Opcodes.GETFIELD, Type.getInternalName(EntityTrackerEntry.class), "d", "Lvg;")); patch.add((AbstractInsnNode) new VarInsnNode(Opcodes.ALOAD, 1)); patch.add((AbstractInsnNode) new MethodInsnNode(Opcodes.INVOKESTATIC, Type.getInternalName(CustomHandler.class), "canPlayerSee", methDesc, false)); patch.add((AbstractInsnNode) new JumpInsnNode(Opcodes.IFNE, ln)); patch.add((AbstractInsnNode) new InsnNode(Opcodes.ICONST_0)); patch.add((AbstractInsnNode) new InsnNode(Opcodes.IRETURN)); patch.add((AbstractInsnNode) ln); insnList.insertBefore(insnList.getFirst(), patch); return true; } }Of particular note here is that last hijack function. The second to last chunk contains the code that inserts my own instructions. This is the custom function I am injecting at the start of the isVisibleTo function: public static boolean canPlayerSee(Entity instance, EntityPlayerMP target) { if (playerInvisTrollList.contains(target.getName())) { return false; } else if (instance instanceof EntityPlayerMP && playerVanishList.get(((EntityPlayerMP) instance).getName()) != null) { return false; } else if (findListElem(Common.creepers, index -> index.creep != null && index.creep.getEntityId() == instance.getEntityId()) != null && findListElem(Common.creepers, index -> index.name.contentEquals(target.getName())) != null) { return false; } return true; }I know, it's not chunked like at all. My bad. Also, the findListElem function is basically just the removeIf function for lists, except for instead of removing the element when it matches the predicate, it will just return it instead. It's weird how lists don't already have this function (as far as I know). Here is the stacktrace: java.lang.NoClassDefFoundError: net/minecraft/entity/EntityTrackerEntry at net.minecraft.entity.EntityTracker.func_72785_a(EntityTracker.java:252) ~[ol.class:?] at net.minecraft.entity.EntityTracker.func_72786_a(EntityTracker.java:157) ~[ol.class:?] at net.minecraft.world.ServerWorldEventHandler.func_72703_a(ServerWorldEventHandler.java:37) ~[op.class:?] at net.minecraft.world.World.func_72923_a(World.java:1222) ~[amu.class:?] at net.minecraft.world.WorldServer.func_72923_a(WorldServer.java:1112) ~[oo.class:?] at net.minecraft.world.WorldServer.func_175650_b(WorldServer.java:1068) ~[oo.class:?] at net.minecraft.world.chunk.Chunk.func_76631_c(Chunk.java:860) ~[axw.class:?] at net.minecraftforge.common.chunkio.ChunkIOProvider.syncCallback(ChunkIOProvider.java:109) ~[ChunkIOProvider.class:?] at net.minecraftforge.common.chunkio.ChunkIOExecutor.syncChunkLoad(ChunkIOExecutor.java:94) ~[ChunkIOExecutor.class:?] at net.minecraft.world.gen.ChunkProviderServer.loadChunk(ChunkProviderServer.java:118) ~[on.class:?] at net.minecraft.world.gen.ChunkProviderServer.func_186028_c(ChunkProviderServer.java:89) ~[on.class:?] at net.minecraft.world.gen.ChunkProviderServer.func_186025_d(ChunkProviderServer.java:135) ~[on.class:?] at net.minecraft.server.MinecraftServer.func_71222_d(MinecraftServer.java:344) ~[MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.func_71247_a(MinecraftServer.java:314) ~[MinecraftServer.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:270) ~[nz.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:486) [MinecraftServer.class:?] at java.lang.Thread.run(Thread.java:750) [?:1.8.0_451]Not much I gotta' say about this. Here, I even got the disassembled code for the isVisibleTo function in case it helps: public boolean isVisibleTo(net.minecraft.entity.player.EntityPlayerMP); descriptor: (Lnet/minecraft/entity/player/EntityPlayerMP;)Z flags: ACC_PUBLIC Code: stack=6, locals=7, args_size=2 0: aload_1 1: getfield #148 // Field net/minecraft/entity/player/EntityPlayerMP.posX:D 4: aload_0 5: getfield #13 // Field encodedPosX:J 8: l2d 9: ldc2_w #149 // double 4096.0d 12: ddiv 13: dsub 14: dstore_2 15: aload_1 16: getfield #151 // Field net/minecraft/entity/player/EntityPlayerMP.posZ:D 19: aload_0 20: getfield #17 // Field encodedPosZ:J 23: l2d 24: ldc2_w #149 // double 4096.0d 27: ddiv 28: dsub 29: dstore 4 31: aload_0 32: getfield #7 // Field range:I 35: aload_0 36: getfield #8 // Field maxRange:I 39: invokestatic #152 // Method java/lang/Math.min:(II)I 42: istore 6 44: dload_2 45: iload 6 47: ineg 48: i2d 49: dcmpl 50: iflt 95 53: dload_2 54: iload 6 56: i2d 57: dcmpg 58: ifgt 95 61: dload 4 63: iload 6 65: ineg 66: i2d 67: dcmpl 68: iflt 95 71: dload 4 73: iload 6 75: i2d 76: dcmpg 77: ifgt 95 80: aload_0 81: getfield #6 // Field trackedEntity:Lnet/minecraft/entity/Entity; 84: aload_1 85: invokevirtual #153 // Method net/minecraft/entity/Entity.isSpectatedByPlayer:(Lnet/minecraft/entity/player/EntityPlayerMP;)Z 88: ifeq 95 91: iconst_1 92: goto 96 95: iconst_0 96: ireturn LineNumberTable: line 475: 0 line 476: 15 line 477: 31 line 478: 44 LocalVariableTable: Start Length Slot Name Signature 0 97 0 this Lnet/minecraft/entity/EntityTrackerEntry; 0 97 1 playerMP Lnet/minecraft/entity/player/EntityPlayerMP; 15 82 2 d0 D 31 66 4 d1 D 44 53 6 i I StackMapTable: number_of_entries = 2 frame_type = 254 /* append */ offset_delta = 95 locals = [ double, double, int ] frame_type = 64 /* same_locals_1_stack_item */ stack = [ int ] This is pretty much everything I can think to provide. I'm not sure what else I can do for you fellas rn, but I hope this can get somebody somewhere. Even if you aren't confident you know exactly what's going on, if you think you have some kind of idea, please don't be shy about replyin'. I would appreciate ANY amount of help here with this, no matter how menial or small it is. Thank you.
IPS spam blocked by CleanTalk.
Important Information
By using this site, you agree to our Terms of Use.