24.04.2011, 18:21
(
Последний раз редактировалось Diogo_Bras; 24.04.2011 в 19:10.
)
Eu e um amigo meu aqui de Portugal pensamos em abrir um servidor de samp, eu iria ser o scripter/dono do servidor e ele iria pagar o host apenas.
Comecei a desenvolver o gamemode e a fazer tudo o que me competia, e com tanta gente aн a dizer que estгo a sofrer ataques aos servidores (alguns deles logam-se na rcon e banem o pessoal dos servidores, ...) eu fiz este sistema para kickar quem usar (/rcon login ...).
Mas tambйm, vбrias pessoas precisam do sistema de rcon, entгo criei um comando que й colocado no gamemode que loga o jogador na Rcon.
Lembrando, a senha que tiver na rcon no server.cfg deve coincidir com a senha que colocar no sistema /rSenha.
P: Como altero a senha no sistema?
R: Procure por:
Altere o 5541236 pela senha desejada.
Hб uns dias apenas testei o /rSenha, nгo testei o /rcon login porque meu samp estб com uns problemas :/
Mas se encontrarem qualquer tipo de bug, avisem-me!
O sistema й muito simples, mas tambйm eficaz (:
Agradecimentos: Kn1f3 por me ter dado uma luz (:
[iPs]Team
Comecei a desenvolver o gamemode e a fazer tudo o que me competia, e com tanta gente aн a dizer que estгo a sofrer ataques aos servidores (alguns deles logam-se na rcon e banem o pessoal dos servidores, ...) eu fiz este sistema para kickar quem usar (/rcon login ...).
Mas tambйm, vбrias pessoas precisam do sistema de rcon, entгo criei um comando que й colocado no gamemode que loga o jogador na Rcon.
Lembrando, a senha que tiver na rcon no server.cfg deve coincidir com a senha que colocar no sistema /rSenha.
pawn Код:
/*
_ ____ _____ __ __
(_) _ \ ___ |_ _|__ __ _| \/ |
| | |_) / __| | |/ _ \/ _` | |\/| |
| | __/\__ \ | | __/ (_| | | | |
|_|_| |___/ |_|\___|\__,_|_| |_|
• Inteliggent Programming Style •
[R.P.S] Rcon Protection System
Funcionalidades:
- Para se logar na rcon, use /rSenha [senha]
- /rcon login desativado;
*/
//Includes
#include <a_samp>
//Defines
#define Vermelho (0xEE0000FF)
#define Branco (0xFFFFFFFF)
//News
enum jInformacoes
{
jNome[24],
}
new jInfo[MAX_PLAYERS][jInformacoes];
//Calbacks
public OnPlayerConnect(playerid)
{
GetPlayerName(playerid, jInfo[playerid][jNome], 22);
return true;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new rps[256], idx;
if(!strcmp(cmdtext, "/rcon", true))
{
rps = strtok(cmdtext, idx);
if(!strlen(rps)) return SendClientMessage(playerid, Vermelho, "[R.P.S] RCON desativada!");
if(strcmp(rps, "login", true) == 0)
{
SendClientMessage(playerid, Vermelho, "[R.P.S] Vocк foi kickado por tentar logar-se na RCON!");
Kick(playerid);
return true;
}
return true;
}
if(!strcmp(cmdtext, "/rSenha", true))
{
rps = strtok(cmdtext, idx);
if(!strlen(rps)) return SendClientMessage(playerid, Branco, "Use: /rSenha [Senha]");
if(strcmp(rps, "5541236", true) == 0) //5541236 substitua pela sua senha RCON (que estб configurada no server.cfg)
{
SendRconCommand("login 5541236"); //5541236 substitua pela sua senha RCON (que estб configurada no server.cfg)
SendClientMessage(playerid, Branco, "[R.P.S] Vocк logou-se como Administrador RCON");
}
else
{
SendClientMessage(playerid, Vermelho, "[R.P.S] Senha errada!");
}
return true;
}
return false;
}
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
R: Procure por:
pawn Код:
if(strcmp(rps, "5541236", true) == 0)
SendRconCommand("login 5541236");
Hб uns dias apenas testei o /rSenha, nгo testei o /rcon login porque meu samp estб com uns problemas :/
Mas se encontrarem qualquer tipo de bug, avisem-me!
O sistema й muito simples, mas tambйm eficaz (:
Agradecimentos: Kn1f3 por me ter dado uma luz (:
[iPs]Team