|
You last visited: Today at 15:13
Advertisement
Update Server name in Realtime?
Discussion on Update Server name in Realtime? within the SRO Private Server forum part of the Silkroad Online category.
06/30/2019, 17:46
|
#1
|
elite*gold: 0
Join Date: Apr 2016
Posts: 289
Received Thanks: 67
|
Update Server name in Realtime?
Hello epvpers!
Im looking for a way to update server name in realtime 
I like Sro Stats in vSroMax and i want to make something like this.
I using A101 pck to update server name But it's only update onetime in login progess. Wait a few min, server status goes to check ^^
|
|
|
06/30/2019, 17:50
|
#2
|
elite*gold: 350
Join Date: Aug 2015
Posts: 2,008
Received Thanks: 1,193
|
use a filter
|
|
|
06/30/2019, 18:03
|
#3
|
elite*gold: 0
Join Date: Apr 2016
Posts: 289
Received Thanks: 67
|
Quote:
Originally Posted by B1Q
use a filter
|
Yep. I using filter to replace A101 packet. But it's n't change @@~
|
|
|
06/30/2019, 18:08
|
#4
|
elite*gold: 350
Join Date: Aug 2015
Posts: 2,008
Received Thanks: 1,193
|
Quote:
Originally Posted by hoangphan7
Yep. I using filter to replace A101 packet. But it's n't change @@~
|
show code
|
|
|
06/30/2019, 22:07
|
#5
|
elite*gold: 0
Join Date: Sep 2018
Posts: 423
Received Thanks: 953
|
Quote:
Originally Posted by hoangphan7
Hello epvpers!
Im looking for a way to update server name in realtime 
|
I'm not sure what you are asking about "realtime" but this is an example how to change that server name with the player count :
PHP Code:
// packet = the original packet (0xA101)
// newPacket = the new one with your edit
Packet newPacket = new Packet(packet.Opcode, packet.Encrypted,packet.Massive);
while (packet.ReadUInt8() == 1)
{
newPacket.WriteUInt8(1); // while flag
newPacket.WriteUInt8(packet.ReadUInt8()); // farm id
newPacket.WriteAscii(packet.ReadAscii()); // farm name
}
while (packet.ReadUInt8() == 1)
{
newPacket.WriteUInt8(1); // while flag
newPacket.WriteUInt16(packet.ReadUInt16()); // server id
string serverName = packet.ReadAscii();
ushort online = packet.ReadUInt16();
ushort capacity = packet.ReadUInt16();
newPacket.WriteAscii(serverName+" ("+ online + "/"+ capacity + ")"); // server name
newPacket.WriteUInt16(online); // online
newPacket.WriteUInt16(capacity); // capacity
newPacket.WriteUInt8(packet.ReadUInt8()); // is available
newPacket.WriteUInt8(packet.ReadUInt8()); // server -> farm id
}
// Send the edited packet, not the original
this.Send(newPacket); // or whatever you use..
|
|
|
07/01/2019, 06:21
|
#6
|
elite*gold: 166
Join Date: Apr 2009
Posts: 2,339
Received Thanks: 2,661
|
It should work live. Server sends A101 when it's requested, so it will even change without having to restart the client. Whenever you click list, it's requested, and i think it's requested every x seconds as well.
|
|
|
07/01/2019, 09:31
|
#7
|
elite*gold: 0
Join Date: Apr 2016
Posts: 289
Received Thanks: 67
|
Quote:
Originally Posted by JellyBitz
I'm not sure what you are asking about "realtime" but this is an example how to change that server name with the player count :
PHP Code:
// packet = the original packet (0xA101)
// newPacket = the new one with your edit
Packet newPacket = new Packet(packet.Opcode, packet.Encrypted,packet.Massive);
while (packet.ReadUInt8() == 1)
{
newPacket.WriteUInt8(1); // while flag
newPacket.WriteUInt8(packet.ReadUInt8()); // farm id
newPacket.WriteAscii(packet.ReadAscii()); // farm name
}
while (packet.ReadUInt8() == 1)
{
newPacket.WriteUInt8(1); // while flag
newPacket.WriteUInt16(packet.ReadUInt16()); // server id
string serverName = packet.ReadAscii();
ushort online = packet.ReadUInt16();
ushort capacity = packet.ReadUInt16();
newPacket.WriteAscii(serverName+" ("+ online + "/"+ capacity + ")"); // server name
newPacket.WriteUInt16(online); // online
newPacket.WriteUInt16(capacity); // capacity
newPacket.WriteUInt8(packet.ReadUInt8()); // is available
newPacket.WriteUInt8(packet.ReadUInt8()); // server -> farm id
}
// Send the edited packet, not the original
this.Send(newPacket); // or whatever you use..
|
yes i using this method but not realtime ^^ restart client required
HTML Code:
Packet capacity = new Packet(0xA101, true);
capacity.WriteUInt8(0x01); //flag
capacity.WriteUInt8(0x14); //unk
capacity.WriteAscii("SRO_Vietnam_TestLocal [F] 0");
capacity.WriteUInt8(0x00); //flag
capacity.WriteUInt8(0x01); //flag
capacity.WriteUInt16(FilterMain.ShardID); //shardID
capacity.WriteAscii("Thien Vuong" + " (" + players + "/" + max_players + ")"); //name
capacity.WriteUInt16(players); //online
capacity.WriteUInt16(max_players); //maxplayers
capacity.WriteUInt8(0x01); //Status
capacity.WriteUInt8(0x14); //unk
capacity.WriteUInt8(0x00); //flag
Quote:
Originally Posted by sarkoplata
It should work live. Server sends A101 when it's requested, so it will even change without having to restart the client. Whenever you click list, it's requested, and i think it's requested every x seconds as well.
|
Restart client required
|
|
|
07/01/2019, 10:50
|
#8
|
elite*gold: 0
Join Date: Sep 2018
Posts: 423
Received Thanks: 953
|
Hmm.. By server, the only option I can see is keeping a reference from that client about his last packet opcode sent and using the ping opcode as refresh, AND maybe a datetime or counter to not overload sending too much "refresh" on every client ping .. Just put this data on website and problem solved, better visualization
|
|
|
07/01/2019, 13:26
|
#9
|
elite*gold: 166
Join Date: Apr 2009
Posts: 2,339
Received Thanks: 2,661
|
Yeah I tried, the name does not update.
Interesting, then you'll manually have to do with a dll. Send your own info packet and change that text by yourself..
|
|
|
07/01/2019, 13:27
|
#10
|
elite*gold: 0
Join Date: Jun 2019
Posts: 10
Received Thanks: 0
|
there is a certification, released here in the forum that can update the server name directly through SMC
|
|
|
Similar Threads
|
FTW Battle Record Update Realtime?
03/09/2019 - SRO Private Server - 0 Replies
Hello epvpers!
How to realtime update _SiegeFortressBattleRecord table ?
Thank's!
|
[24/7] ReaLTiMe/Survival/RPG Server 1.5.2
05/22/2013 - Minecraft Server Advertising - 0 Replies
Minecraft Server ReaLTimE
Server-IP: 93.186.205.122
_____________________________________________
|
[Tool] Realtime server stats retriever (login trick)
10/22/2007 - SRO Hacks, Bots, Cheats & Exploits - 13 Replies
This little script shows stats of chosen server(stats=population)
So you can login in few minutes with this tool
It has autologin funcionality too - it can type your login info and then wait for free slots on server and login you automaticaly.
This works for every server - just specifiy it in settings.ini(there is option for your acc info too)
well... loading times are really long...
this script DOES NOT send your id pw anywhere...
|
All times are GMT +1. The time now is 15:18.
|
|