Posted March 30, 201510 yr I am doing something similar to iChun's Hats mod where players can unlock titles by completing achievements. Using a gui they can choose which of their available titles will be displayed in their name tag. The issue I am encountering is that the arraylists that store which players have unlocked which titles is not visible to players who join through LAN (thus I guess also those who join an actual server). I understand the issue I have involves communicating between client and server, but I don't know how to approach it. Any insight would be appreciated, even if it's a mod that provides a simple example. The link to the code is here: https://github.com/Aurilux/Titles. It also uses some classes from my core library which is here: https://github.com/Aurilux/ArdentCore.
March 30, 201510 yr http://www.minecraftforum.net/forums/mapping-and-modding/mapping-and-modding-tutorials/2137055-1-7-2-customizing-packet-handling-with Probably all you need to know. Also - to store data about player - use IEEP: (2nd post in thread): http://www.minecraftforum.net/forums/mapping-and-modding/mapping-and-modding-tutorials/1571567-1-7-2-1-6-4-eventhandler-and 1.7.10 is no longer supported by forge, you are on your own.
April 4, 201510 yr Author Alright, so I did already look at that tutorial (plus a few others) before I posted this but I decided to take another look at it just in case. As I understand it, packets are only necessary when data changes and not when data needs to be retrieved/accessed. All of my packets function properly. I used println's to verify that they are triggered correctly at all phases, yet it still doesn't work. I imagine my issue now is not marking a function with @SideOnly(Side.CLIENT) or the place were my data is stored for some reason is just not on the server. I've tried moving it to CommonProxy but that didn't have any effect. Could someone explain where variables should be (in specific classes?) so that they can be accessed by each client?
April 4, 201510 yr You need to send packets to each player when they join to help them "catch up" on the information about the other clients/players. I think you can handle the PlayerJoinEvent for this, and send the packet. Check out my tutorials here: http://jabelarminecraft.blogspot.com/
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.