Flatlander
Species Developer
otlist.net is fine.There is others ot lists big like otservlist.org?
Maybe everyone can just get banned off otservlist and switch to otlist lol
otlist.net is fine.There is others ot lists big like otservlist.org?
this decision is gonna destroy otservlist if you don't provide code or think this decision over more thoroughly
but that's none of my business
Only with manual checks of whom he decides to check I assume.How are you even going to check this? I mean, the protocolstatus doesn't send any of the info of the player besides of the name and the level... Am I wrong?
players.append_attribute("online") = std::to_string(g_game.getPlayersOnline()).c_str();
uint32_t real = 0;
std::map<uint32_t, uint32_t> listIP;
for (const auto& it : g_game.getPlayers()) {
if (it.second->getIP() != 0) {
auto ip = listIP.find(it.second->getIP());
if (ip != listIP.end()) {
listIP[it.second->getIP()]++;
if (listIP[it.second->getIP()] < 5) {
real++;
}
} else {
listIP[it.second->getIP()] = 1;
real++;
}
}
}
players.append_attribute("online") = std::to_string(real).c_str();
Do a PR on http://github.com/Otland/theforgottenserver.I've created a working code you can implement in your server.
protocolstatus.cpp (TFS 1.0/1.1/1.2)
Someone can do it for 8.6
Change:
Code:players.append_attribute("online") = std::to_string(g_game.getPlayersOnline()).c_str();
To this:
Code:int real = 0; std::map<uint32_t, uint32_t> listIP; for (const auto& it : g_game.getPlayers()) { if (it.second->getIP() != 0) { auto ip = listIP.find(it.second->getIP()); if (ip != listIP.end()) { listIP[it.second->getIP()]++; if (listIP[it.second->getIP()] < 5) { real++; } } else { listIP[it.second->getIP()] = 1; real++; } } } players.append_attribute("online") = std::to_string(real).c_str();
It would not be merged probably.
I don't care if they provide code, it is still an incredibly stupid idea.
With "fixing" this problem, you create a bigger problem.
If I am correct, and the majority (or at least a large percentage) of OT-Players use Proxies and Tunnels to reduce ping, you are going to be blocking most of them.
Then, if I am correct, and most gold-farmers are smart enough to use virtual machines and spoof their IP, you won't catch any of them.
Also, the fact that most players do MC a few characters, you won't catch them either since you ALLOW 3 MCs EACH anyway.
:// then there is going to be chaos on otland about them getting banned. xDIt would not be merged probably.
Thanks, Ninja planned to do it this weekend but I'm sure he appreciates you saving some time on his behalf.I've created a working code you can implement in your server.
protocolstatus.cpp (TFS 1.0/1.1/1.2)
Someone can do it for 8.6
@xinn @Sir Knighter @Flatlander
Change:
Code:players.append_attribute("online") = std::to_string(g_game.getPlayersOnline()).c_str();
To this:
Code:uint32_t real = 0; std::map<uint32_t, uint32_t> listIP; for (const auto& it : g_game.getPlayers()) { if (it.second->getIP() != 0) { auto ip = listIP.find(it.second->getIP()); if (ip != listIP.end()) { listIP[it.second->getIP()]++; if (listIP[it.second->getIP()] < 5) { real++; } } else { listIP[it.second->getIP()] = 1; real++; } } } players.append_attribute("online") = std::to_string(real).c_str();
Internet cafes ? Can you count how many cafes are still open in your city ? Because in my city it is only one left and it used to be like 10 of them 8 years ago. You want to say that hundreds of people on dreamhack played some OT ? I also doubt that someone plays Open Tibia in that cafe. I completely agree with this new rule, it will make the list more clear.
About WTFast: Not all players use the same end point to connect the OT. I would also bet that is almost impossible to have more than 10 unique players with same IP using WTFast.
About proxy: Please comfigure your proxy to send real IP of the player to your server.
We have only few players with more than 4 mc on Gunzodus and there are probably some servers that even has less real players but showing a lot more.
You live in the modern world mate, stop assuming all tibia players live in modern flats/houses with fiber connection.
There's still a shitload of places there people can't afford computer and fancy stuffs, places there internet cafe's is still very popular.
And don't forget that in some real poor cities, half the city could be using the same IP..
I had few players from god knows where, I don't remember which country but seemed like Thailand similar, a very poor city in the eye of modern cities, there you could get like 50 kb/s internet and share IP with an entire city.
So.. Stop assuming everyone lives as fancy as you do.
Internet cafe's are dying in Sweden, while huge lan parties grow, Dreamhack etc.. people really like LAN playing..
So once more, your point is invalid because huge groups will still be using same IPs.
I actually don't live in a modern world. I live in Slovakia which is on the tail of modern countries. (sadly)
Maybe you can take a time and demonstrate the problem. Say some example of the city, upload some statistics and we can talk not just mention what bad things can happen. You can also invite all of your players to your living room and complain this rule. I can provide statistics of my server from past 3 years. The big majority countries are Brazil, Poland, Sweden. It is very unique to see more then 4 unique players from same IP.
Dreamhack and other lan parties: I've already mentioned VPN/Tunnel providers are not stupid to give every client same IP. The same goes for a lan parties. They've got network managers who usually got some IP prefix they can use, for example of size 256 addresses they divide between guests, players and staff. If only 32 addresses goes for guests you have 128 real players you can send using status protocol. Do you think you can have more than 128 ppl playing your OT from Dreamhack ?
so just because most people have unique IPs, we should throw everyone out from same canyon?
Limiting IP is still stupid, and trying to justify it by saying most players have unique I'ds is like having a debug problem in a OT.. "eh, I don't need fix.. only 5% of the players get debugged per day so no worries...."
When I checked your server last time, there were not a single IP exceeding the number of 4MC's connected to your server using any of the proxy service. I haven't checked the numbers below 4 but you can do it by yourself to have a full picture. It just shows that even that you are "sponsored by wtfast", this change will have a neutral effect when it comes to counting people connected via external proxy services.Although I think this change is the right idea and beneficial in the long run, we are sponsored by wtfast and a massive chunk of our NA player base use WTFast. Your points idea is a very interesting proposition and hopefully something Xinn would consider.