Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Write in a sign from a forge mod


McPqndq
 Share

Recommended Posts

Hello,

 

I'm currently making a mod for game automation, and I would need the mod to automaticly write something on a sign.

I tried to simulate keyboard keys using the java Robot class, but it only send keys to the current active window, and not to the game, if it's not active...

I was wondering if there is a "forge" way to write something in a sign.

 

Is it possible ?

Ty

Link to comment
Share on other sites

Signs have tile entities that store their text. You can access it that way.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Thank you for your answer, but how am I supposed to do that ?

 

Is it the correct way to get the sign's tile entity ? :

TileEntitySign tileEntitySign = (TileEntitySign) Minecraft.getMinecraft().world.getTileEntity(new BlockPos(0, 0, 0));

 

Link to comment
Share on other sites

13 minutes ago, McPqndq said:

Minecraft.getMinecraft().world

This is client side only.

Either:

  • Your mod needs to be client side only (in which case, it can't make changes).
  • You need to access the TE via a server world.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

19 minutes ago, McPqndq said:

You mean that if the mod is client side only, it's not possible ? My mod is client side only

You could read the text of the sign, but you can't change it, because of this pesky thing called "server authoritative model."

That is, the server is the absolute authority on the state of the game, and that state includes the text on signs. Without code on the server to change that text, you can't.

Edited by Draco18s

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Vanilla has code to handle that, but that doesn't mean you can hook into it and make it do what you want.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • We have created a pickaxe.json below MInecraft-MOD-1.17/src/main/resources/data/minecraft.tags.blocks/mineable/pickaxe.json github link  https://github.com/ocome85/MInecraft-MOD-1.17    I can't add Tag and you can't dig. Please help me.
    • Thank you I completely forgot about that. I will attempt to put a delay in  
    • While chugging along making the JSONs by hand (to get an idea of how they need to be generated for each type of block), I cam up with a possibly brilliant idea. Could I somehow make template JSONs and when a new block of a certain type is being generated it will just pull the template and replace certain keywords like "NAME" and "COLOR" instead of all of this getVariantBuilder stuff
    • Hello everyone!     I'm quite new to forge, I used to do development for spigot. I needed to create a GUI Overlays and I found an article https://emxtutorials.wordpress.com/simple-in-game-gui-overlay/ on how to create a gui overlay, but as I understood the classes were renamed. Can you           share a sample code that would perform this function? Thank you in advance
    • I am at my wit's end trying to figure out what keeps going wrong. Reading the error log tells me absolutely nothing I can understand, and after making a blank new server and finally having it work after so long, just to have it break again, is extremely irritating. I would love for someone to decipher what this error log says and point me in a direction, at least, so I'm not swinging blindly. Minecraft 1.16.5 and Forge 36.2.2   [14:47:37] [Server thread/INFO] [minecraft/PlayerList]: Hyratos[/192.168.1.195:64650] logged in with entity id 45 at (481.30365299459726, 78.0, 426.6331819365098) [14:47:37] [Server thread/INFO] [minecraft/DedicatedServer]: Hyratos joined the game [14:47:37] [Netty Server IO #2/ERROR] [tconstruct/]: MaterialRecipeSerializer: Error reading recipe from packet java.lang.NullPointerException: null     at slimeknights.tconstruct.library.recipe.material.MaterialRecipeSerializer.writeSafe(MaterialRecipeSerializer.java:70) ~[tconstruct:1.16.5-3.1.1.252]     at slimeknights.tconstruct.library.recipe.material.MaterialRecipeSerializer.writeSafe(MaterialRecipeSerializer.java:20) ~[tconstruct:1.16.5-3.1.1.252]     at slimeknights.tconstruct.common.recipe.LoggingRecipeSerializer.func_199427_a_(LoggingRecipeSerializer.java:49) ~[tconstruct:1.16.5-3.1.1.252]     at net.minecraft.network.play.server.SUpdateRecipesPacket.func_218771_a(SourceFile:64) ~[?:?]     at net.minecraft.network.play.server.SUpdateRecipesPacket.func_148840_b(SourceFile:43) ~[?:?]     at net.minecraftforge.network.VanillaPacketSplitter.appendPackets(VanillaPacketSplitter.java:100) ~[forge:?]     at net.minecraftforge.network.ForgeConnectionNetworkFilter.splitPacket(ForgeConnectionNetworkFilter.java:85) ~[forge:?]     at net.minecraftforge.network.VanillaPacketFilter.encode(VanillaPacketFilter.java:75) ~[forge:?]     at net.minecraftforge.network.VanillaPacketFilter.encode(VanillaPacketFilter.java:38) ~[forge:?]     at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:88) ~[server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:801) ~[server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:814) ~[server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:794) ~[server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:831) ~[server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1071) ~[server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:300) ~[server-1.16.5-20210115.111550-extra.jar:?]     at net.minecraft.network.NetworkManager.lambda$sendPacket$5(NetworkManager.java:196) ~[?:?]     at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) [server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:465) [server-1.16.5-20210115.111550-extra.jar:?]     at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) [server-1.16.5-20210115.111550-extra.jar:?]     at java.lang.Thread.run(Unknown Source) [?:1.8.0_301] [14:47:38] [Server thread/WARN] [Mekanism/]: Failed to retrieve username for UUID 594cf1d3-7a0c-4e6f-bd16-5df4bb7ce72b, you might want to add it to the JSON cache [14:47:38] [Server thread/WARN] [minecraft/EntityDataManager]: defineId called for: class dev.itsmeow.whisperwoods.entity.EntityMoth from class dev.itsmeow.whisperwoods.imdlib.entity.EntityTypeContainer [14:47:38] [Server thread/WARN] [minecraft/EntityDataManager]: defineId called for: class dev.itsmeow.whisperwoods.entity.EntityMoth from class dev.itsmeow.whisperwoods.imdlib.entity.util.EntityTypeContainerContainable [14:47:38] [Server thread/WARN] [minecraft/EntityDataManager]: defineId called for: class its_meow.betteranimalsplus.common.entity.EntityButterfly from class dev.itsmeow.betteranimalsplus.imdlib.entity.EntityTypeContainer [14:47:38] [Server thread/WARN] [minecraft/EntityDataManager]: defineId called for: class its_meow.betteranimalsplus.common.entity.EntityButterfly from class dev.itsmeow.betteranimalsplus.imdlib.entity.util.EntityTypeContainerContainable [14:47:38] [Server thread/WARN] [minecraft/EntityDataManager]: defineId called for: class dev.itsmeow.whisperwoods.entity.EntityZotzpyre from class dev.itsmeow.whisperwoods.imdlib.entity.EntityTypeContainer [14:47:38] [Server thread/INFO] [survive/]: Syncing Armor Data To Client (Hyratos) [14:47:38] [Server thread/INFO] [minecraft/ServerPlayNetHandler]: Hyratos lost connection: Internal Exception: io.netty.handler.codec.EncoderException: java.lang.NullPointerException [14:47:38] [Server thread/INFO] [minecraft/DedicatedServer]: Hyratos left the game  
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.