[FilterScript] Use GetPlayerVersion function.
#1

Good evening.

Currently MANY servers do not use the GetPlayerVersion function while it is actually useful for various cheats or otherwise.

It is very easy to use.

We will create a variable:

pawn Code:
new version[16];
Now use the function with the variable created:

pawn Code:
GetPlayerVersion(playerid, version, sizeof(version));
And we kick a player who does not have the correct version of SA: MP with a message:

pawn Code:
if(strcmp(version, "0.3z"))
{
    SendClientMessage(playerid, COLOR_ROUGE_CLAIR, "Please install the latest version of SA:MP.");
    SetTimerEx("Player_kick", 1000, 0, "d", playerid);
}
A simple and optimized code that you can limit cheaters.

Bye!
Reply
#2

I used to use it, but there is 3 0.3z clients, so you need to inform player where to download version your server use.
Its useful when there is some client sided updates, to force players to use latest client.
Reply
#3

Even if there are different things on the client side information to update SA:MP, this code is smooth and reliable, so why deprive yourself using it?
Reply
#4

Random player with different client joins, and gets kicked, he/she wont bother to install correct client and try agian, can you lose many random players, plus it confuse players to which version they actually should use, also with this kick priority thing, not always player get that info mgs
Reply
#5

Nice work. But its not useful. First thing you will lose many players and the second everyone will get confused with their current version.
No one is going to use this. Anyways, Bring something special next time
Reply
#6

u can't even join with wrong version so how ??
Reply
#7

Sorry but isn't that impossible to happen, I mean if a server is 0.3z, and the player got a 0.3x client and tries to log into the server it WONT even happen, he won't be connected to the server anyway so why would we need such script at all?.
Reply
#8

Quote:
Originally Posted by Stanford
View Post
Sorry but isn't that impossible to happen, I mean if a server is 0.3z, and the player got a 0.3x client and tries to log into the server it WONT even happen, he won't be connected to the server anyway so why would we need such script at all?.
I'm agree with this. Server version and Client version must match to start connection. Anyway, GetPlayerVersion NOT a useful function.
Reply
#9

Quote:
Originally Posted by iFarbod
View Post
Anyway, GetPlayerVersion NOT a useful function.
It can be useful to detect if the player is using subversion of the client such as 0.3z Rx. If you want to force any player to use some specific subversion (release) you can easily. Remember there was an exploit discovered where arbitrary code can be executed by the server then 0.3x R2-1, R2-2 came.
Reply
#10

The version NAME obtained by using GetPlayerVersion is sent by the client in RPC_ClientJoin together with other informations like his name etc. and the version text can be anything you want, it's not checked by the server.
However together with all the other info and the version text, there is a version number written to the bistream that is checked by the server.
Older SA:MP clients cannot connect to the new version server mainly because of different encryption tables and some other changes.
Reply
#11

Great work.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)