Jump to content

Alsan Ali

Members
  • Posts

    10
  • Joined

  • Last visited

Everything posted by Alsan Ali

  1. I have a client-side mod and a server-side mod. I want to make sure that the client has the correct mod file (making sure it's not modified), by using JAR signing and stuff. Is there a way to be able to do this via the server-side mod? I saw something in @Mod that looked something like a certificate fingerprint, so I got curious.
  2. I'm trying to make an inventory menu where you select which server you want to join, but I have no idea where to start. I don't know how to construct an Inventory or anything like that, since it requires me to enter an ILockableContainer which I obviously can't construct. I've done this in Bukkit/Spigot before, but I don't want to use that now (I like Forge's API better).
  3. I'm running the code on server-side. All I did was try to access the Items class in: ItemStack itemStack = new ItemStack(Items.APPLE, 1);
  4. When I'm trying to register my command, I get this: [12:48:52] [Server thread/ERROR] [FML]: Caught exception from ebm_core (EBM Core) java.lang.AbstractMethodError: null at net.minecraft.command.CommandBase.updateNamespacedAlias(CommandBase.java:1006) ~[bi.class:?] at org.spongepowered.common.command.MinecraftCommandWrapper.<init>(MinecraftCommandWrapper.java:89) ~[MinecraftCommandWrapper.class:1.12.2-2611-7.1.0-BETA-2946] at org.spongepowered.mod.command.ForgeMinecraftCommandWrapper.<init>(ForgeMinecraftCommandWrapper.java:43) ~[ForgeMinecraftCommandWrapper.class:1.12.2-2611-7.1.0-BETA-2946] at net.minecraft.command.ServerCommandManager.wrapCommand(SourceFile:1550) ~[dh.class:?] at net.minecraft.command.ServerCommandManager.func_71560_a(SourceFile:1102) ~[dh.class:?] at net.minecraftforge.fml.common.event.FMLServerStartingEvent.registerServerCommand(FMLServerStartingEvent.java:59) ~[FMLServerStartingEvent.class:?] at net.everybytematters.ebm_core.EBMCore.serverStarting(EBMCore.java:91) ~[EBMCore.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_152] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_152] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_152] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_152] at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:600) ~[forge-1.12.2-14.23.2.2632-universal.jar:?] at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_152] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_152] at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76) ~[minecraft_server.1.12.2.jar:?] at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:217) ~[minecraft_server.1.12.2.jar:?] at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:278) ~[forge-1.12.2-14.23.2.2632-universal.jar:?] at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:256) ~[forge-1.12.2-14.23.2.2632-universal.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_152] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_152] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_152] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_152] at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76) ~[minecraft_server.1.12.2.jar:?] at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:217) ~[minecraft_server.1.12.2.jar:?] at net.minecraftforge.fml.common.LoadController.redirect$onPost$zza000(LoadController.java:560) [LoadController.class:?] at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:148) [LoadController.class:?] at net.minecraftforge.fml.common.Loader.serverStarting(Loader.java:771) [Loader.class:?] at net.minecraftforge.fml.common.FMLCommonHandler.handleServerStarting(FMLCommonHandler.java:296) [FMLCommonHandler.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:306) [nz.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:484) [MinecraftServer.class:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_152] [12:48:52] [Server thread/ERROR] [FML]: A fatal exception occurred during the server starting event net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from EBM Core (ebm_core) Caused by: java.lang.AbstractMethodError at net.minecraft.command.CommandBase.updateNamespacedAlias(CommandBase.java:1006) ~[bi.class:?] at org.spongepowered.common.command.MinecraftCommandWrapper.<init>(MinecraftCommandWrapper.java:89) ~[MinecraftCommandWrapper.class:1.12.2-2611-7.1.0-BETA-2946] at org.spongepowered.mod.command.ForgeMinecraftCommandWrapper.<init>(ForgeMinecraftCommandWrapper.java:43) ~[ForgeMinecraftCommandWrapper.class:1.12.2-2611-7.1.0-BETA-2946] at net.minecraft.command.ServerCommandManager.wrapCommand(SourceFile:1550) ~[dh.class:?] at net.minecraft.command.ServerCommandManager.func_71560_a(SourceFile:1102) ~[dh.class:?] at net.minecraftforge.fml.common.event.FMLServerStartingEvent.registerServerCommand(FMLServerStartingEvent.java:59) ~[FMLServerStartingEvent.class:?] at net.everybytematters.ebm_core.EBMCore.serverStarting(EBMCore.java:91) ~[EBMCore.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_152] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_152] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_152] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_152] at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:600) ~[forge-1.12.2-14.23.2.2632-universal.jar:?] at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_152] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_152] at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76) ~[minecraft_server.1.12.2.jar:?] at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:217) ~[minecraft_server.1.12.2.jar:?] at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:278) ~[forge-1.12.2-14.23.2.2632-universal.jar:?] at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:256) ~[forge-1.12.2-14.23.2.2632-universal.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_152] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_152] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_152] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_152] at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76) ~[minecraft_server.1.12.2.jar:?] at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116) ~[minecraft_server.1.12.2.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:217) ~[minecraft_server.1.12.2.jar:?] at net.minecraftforge.fml.common.LoadController.redirect$onPost$zza000(LoadController.java:560) ~[LoadController.class:?] at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:148) ~[LoadController.class:?] at net.minecraftforge.fml.common.Loader.serverStarting(Loader.java:771) [Loader.class:?] at net.minecraftforge.fml.common.FMLCommonHandler.handleServerStarting(FMLCommonHandler.java:296) [FMLCommonHandler.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:306) [nz.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:484) [MinecraftServer.class:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_152] Here's my command class: public class CommandAuthenticate extends CommandBase { public HashMap<String, Integer> hashMap = new HashMap<String, Integer>(); @Override public String getName() { return "authenticate"; } @Override public boolean checkPermission(MinecraftServer server, ICommandSender sender) { // Check permission code } @Override public String getUsage(ICommandSender sender) { // Get usage code } @Override public List<String> getAliases() { // Alias code } @Override public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException { // Execute code } @Override public List<String> getTabCompletions(MinecraftServer server, ICommandSender sender, String[] args, @Nullable BlockPos targetPos) { // Get tab completions code } @Override public boolean isUsernameIndex(String[] args, int index) { return false; } @Override public int compareTo(ICommand o) { return 0; } } I'm registering this command in: @EventHandler public void serverStarting(FMLServerStartingEvent event) { event.registerServerCommand(commandAuthenticate); }
  5. I want to repeat some code every 10 minutes or so, without the whole server freezing over
  6. Thanks, I thought about doing this, just didn't know how to nest TextComponentStrings together. And can you tell me the reason why color codes can't be used? I just want to know
  7. For example, I have a TextComponentString like this: new TextComponentString("Hi, there!") I want the 'Hi' to be blue and 'there' to be green. Also, how do we make parts of the text clickable? Like, if the player clicks 'hi' it will execute code
  8. I'd like to do this entirely from the server-side, no client mods. I want a way for the player to switch from the lobby1 server to the lobby2 server, stuff like that. Is this possible to do this with packets? I never used packets before, but it looks like it could work
  9. @Choonster Is it possible to do this in Forge itself? Like, the client doesn't need to have Forge installed, kinda like Bukkit or Spigot. It's ok though, if this isn't possible. And do you know any reliable way of getting an instance of MinecraftServer? Here's my current way of doing it: public static void makeInstance(MinecraftServer minecraftServer) { EBMCore.minecraftServer = minecraftServer; } This method is called when I do my custom command '/initialize'. So I have to do the command immediately after the server starts (every time). This is the only method I've figured out ._.
  10. Here's my mod annotation: @Mod(modid = SomeRandomMod.MODID, version = SomeRandomMod.VERSION, serverSideOnly = true) Even though serverSideOnly is set to true, I still get a mod rejection when trying to connect to the server. I don't want to install the mod in my client. Here are the stuff my mod does, not sure if all of them are server-side: Registers some basic commands (the commands don't do anything except send the player messages) I also have an instance of MinecraftServer which I use to shutdown the server (server.initiateShutdown) There's a PlayerEvent.PlayerLoggedInEvent which is registered A CommandEvent and ServerChatEvent which are registered as well Connects to a SQLite database Use the EntityPlayer class Use potion effects Use InventoryPlayer class Use MobEffects class
×
×
  • Create New...

Important Information

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