kennylovecode Posted July 17 Posted July 17 Recently, I have been trying to develop a source code project from scratch, with a reference target version of 5700. I have collected some packet structures from many source codes. At present, I have been able to change the player name online. I found that after changing the name, I sent a Spawn packet to all players, which is a packet with type ID=10017. Everyone except myself can see the changed name, while the character name on my own screen remains unchanged. I'm not quite sure if I need to send a specific packet to update my role name. I have checked the source code of other authors regarding name changes.They seem to have all implemented measures to force players to log in offline and then log in again But what I want to do is not go offline, update my name in real time. Does the client version support it? Do you need special packet? Quote
kennylovecode Posted July 17 Author Posted July 17 Closed!!! [This forum has really inspired me a lot. Every time I post a question here, the next second I find the answer to solve it] Quote
Spirited Posted July 18 Posted July 18 On 7/16/2025 at 9:16 PM, kennylovecode said: Closed!!! [This forum has really inspired me a lot. Every time I post a question here, the next second I find the answer to solve it] Glad to hear, but make sure you post your answers as well! This forum is about open-sourcing information. The message type is MsgChangeName, and it's type ID 2080. I don't have it documented at the moment, but I'm also not in a position to finish the wiki enough to document it. Quote
kennylovecode Posted July 18 Author Posted July 18 (edited) AhA.....I just forgot! Actually, I just thought of refreshing the character's name when logging in, and sending an ANSWER_OK message packet to complete the process. code like this user.Send(new MsgServer.MsgMessage("ANSWER_OK", "ALLUSERS", MsgMessage.MsgColor.red, MsgMessage.ChatMode.Dialog).GetArray(stream)); user.ClientFlag |= msgserver.client.ServerFlag.AcceptLogin; user.Send(stream.LoginHandlerCreate(1, user.Player.Map)); MsgLoginHandler.LoadMap(user, stream); Of course, everyone's source code structure is different, so you need to test it yourself. Edited July 18 by kennylovecode Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.