vampir Posted May 9, 2017 Posted May 9, 2017 Hello Anybody knows correct structure of ServerList Login>Client packet of ertheia or similar client? I have tested L2JServer Ertheia structure and Mobius/L2JUnity, they don't work correctly on ertheia(amount of characters is always shown as 0). L2JServer ertheia structure: writeC(0x04); writeC(_servers.size()); writeC(_lastServer); for (ServerData server : _servers) { writeC(server._serverId); // server id writeC(server._ip[0] & 0xff); writeC(server._ip[1] & 0xff); writeC(server._ip[2] & 0xff); writeC(server._ip[3] & 0xff); writeD(server._port); writeC(server._ageLimit); // Age Limit 0, 15, 18 writeC(server._pvp ? 0x01 : 0x00); writeH(server._currentPlayers); writeH(server._maxPlayers); writeC(server._status == ServerStatus.STATUS_DOWN ? 0x00 : 0x01); writeD(server._serverType); // 1: Normal, 2: Relax, 4: Public Test, 8: No Label, 16: Character Creation Restricted, 32: Event, 64: Free writeC(server._brackets ? 0x01 : 0x00); } writeH(0x00); // unknown if (_charsOnServers != null) { writeC(_charsOnServers.size()); for (int servId : _charsOnServers.keySet()) { writeC(servId); writeC(_charsOnServers.get(servId)); if ((_charsToDelete == null) || !_charsToDelete.containsKey(servId)) { writeC(0x00); } else { writeC(_charsToDelete.get(servId).length); for (long deleteTime : _charsToDelete.get(servId)) { writeD((int) ((deleteTime - System.currentTimeMillis()) / 1000)); } } } } else { writeC(0x00); }
0 vampir Posted May 10, 2017 Author Posted May 10, 2017 I figured it out. Packet structure seems to be fine, I had L2.ini from Interlude(not Ertheia) and that was the cause. Game was running normally, just characters online count was not showing...
Question
vampir
Hello
Anybody knows correct structure of ServerList Login>Client packet of ertheia or similar client?
I have tested L2JServer Ertheia structure and Mobius/L2JUnity, they don't work correctly on ertheia(amount of characters is always shown as 0).
L2JServer ertheia structure:
2 answers to this question
Recommended Posts