-
Posts
1830 -
Joined
-
Last visited
-
Days Won
12
Everything posted by DavidM
-
The Forge documentation should cover everything you’ll need in this case: https://mcforge.readthedocs.io/en/1.15.x/
-
"Connection timed out" in a Singleplayer world.
DavidM replied to IUseWeirdPkmn's topic in Support & Bug Reports
IIRC if the server shuts down due to lack of memory, it would log such occurrence into the log. Most of the times nearly hitting the memory limit does not necessarily mean the game would run out of memory. Java’s garbage collector would clean up memory when memory usage is high. -
"Connection timed out" in a Singleplayer world.
DavidM replied to IUseWeirdPkmn's topic in Support & Bug Reports
I don't think such world gen lag would cause the server to shut down directly. -
"Connection timed out" in a Singleplayer world.
DavidM replied to IUseWeirdPkmn's topic in Support & Bug Reports
AFAIK the log does not suggest anything about that though. 1.12.2 is no longer supported on this forum. Update to a modern version of Minecraft to receive support. -
By that I meant using your packet to sync the necessary data needed in order to update the information in the GUI. In this case, you would want to use the packet to sync the tile entity. To illustrate, say you have a GUI that has access to a tile entity. You want to display a string stored in the tile entity, which can change during the opening of the GUI of the tile entity. // Pseudocode @Override public void drawScreen(int mouseX, int mouseY, float partialTicks) { // ... drawString(this.myTileEntity.getStoredString()); } Since the string is fetched from the tile entity per rendering of the screen (per frame), it will get updated when your tile entity is updated (in your case, with a sync packet from the server). The post below from diesieben07 illustrated a more suitable approach for your case. They are not literally the same "GUI instance", but GUIs/containers like chests can be opened by multiple players at the same time. You can change client side values from the server by sending packets. When the client receives a packet, you can change values on the client based on the information in the packet. Technically, you could change server values from the client too with packets. However, since clients can be modified to send false data, most packets sent from a client should be request packets: they should not dictates values on the server, but instead should let the server determine whether the requested actions are valid and should be performed.
-
You can send a packet to the client whenever the value on the server changes. On the client, simply change the GUI when such packet is received.
-
Are you referring to mods like VeinMiner/OreExcavator? You might want to take a look at creating a KeyBind (and packets to notify the server of the mining attempt).
-
The Windows installer is just a wrapper around the jar installer. You should run the jar installer in order to install Forge.
-
[1.14.4] If anyone wants to make the smithing table an anvil...
DavidM replied to the_infamous_1's topic in Modder Support
You should not be using IInventory. -
Build failed with Exception error of setting up Workspace
DavidM replied to Gameatro's topic in Modder Support
You do not. Please make your own thread. -
Latest forge kept telling me that my mod file isn't valid
DavidM replied to Solenia's topic in Support & Bug Reports
9Minecraft is a repost site that redistributes mod, which will potentially edit them and rename them. You should never download from such sites. In this case, 9Minecraft wrongly labeled your mod. It is not for 1.15. -
Please read the EAQ and post the debug.log.
-
@Sobber Please post the full log. @M1st Please make your own thread.
-
Please post logs.
-
Note that most IDEs have a "search for class" feature. This allows you to look for classes easily.
-
[SOLVED] How to modify a method from a vanilla block?
DavidM replied to HappyHippo77's topic in Modder Support
You should do this in the Item which you right click with instead. If it is a custom item, override Item#onItemUse. If it is a vanilla item, subscribe to PlayerInteractEvent.RightClickBlock and do your block changing there. -
I've created my custom particles, but am having difficulties rendering them. My code regarding the rendering of the particles is here. The current code in my repo is supposed to render a white plane among the xz axis for testing purpose, but even that is not rendering. I've added debug lines to make sure the particles are spawning. Currently, nothing renders if I spawn my particles. Any help would be appreciated.
-
Since cheats like XRay is discouraged throughout most of the community, there is unlikely to be such mod on CurseForge or any major community platform. You are on your own if you want to look for it.
-
9Minecraft is not a reliable site for downloading mods. It is a rehost site. Rehost sites rehost mods without permission from the author, and may change the content and/or add malicious code into it. I suggest you to remove the mod and run a virus scan on your computer. For more information on mod reposting, check out https://stopmodreposts.org/.
-
Where did you download the mod? If it is not from official sources, then there is a high chance that the version is wrongly labeled.
-
Please read the EAQ and post logs. You probably installed the wrong version of the mod (i.e. 1.13.2 mods will not work on 1.14.4).
-
Thanks. I looked into the subject a bit more, and my current understanding is the following: - The registration of particles have not changed much from earlier versions. However, it seems that in 1.14.4 modded particles use the same convention as vanilla particles, and IParticleData is a way to generalize the server's notifying the client of particle spawning. - IParticleData is used in SSpawnParticlePacket to pass the relevant data of the particle to the client. There also needs to be an implementation of IDeserializer to read and write the content of IParticleData to and from a string (to be used in SSpawnParticlePacket).