26.04.2012, 01:55
Quote:
|
Garfield, acho que sу utilizando a funзгo de validade ( jб utilizo fбs anos ) й impossнvel roubar/utilizar o game mode, ainda mais com um anti-descompilador ( vamos chamar ) jб й impossнvel
![]() outra maneira й atravйs de uma pasta na Scriptfiles, sem ela o game mode nгo funciona, й como utilizar um sistema de salvamento sem A pasta localizada, adicionando umas funзхes... й quase a proteзгo do BPG. ( estou apenas falando outra maneira que segundos utilizam ) уtimo tutorial, parabйns. |
alguns bбsicos sгo comparando datas, horas (quando usado em um VPS com a data errada ano pode ser burlбvel).
agora, quando criamos arquivos com nomes codificados pode se sair melhor.
Oque o ViniBorn postou, sгo sistemas simples mais seguros que vocк nгo precisa ter muito esforзo para
injetar seguranзa em seu servidor, mais jб se vocк quer investir nisto, vocк pode seguir os exemplos
abaixo, como a maioria eu utilizado, e alguns jб vi.
- Alguns tipos sгo:
- - Verificaзгo se arquivo especial existe ou nгo.
No cуdigo acima, verificamos se o arquivo existe ou nгo, caso nгo existir,pawn Код:// OnGameModeInit()
if(!fexist(#unloadsever.dl)) SendRconCommand(#exit);
ele desliga o servidor (nгo muito avanзado).
- - Comparaзгo de Callback's.
Neste estilo, podemos verificar se tal callback existe.
WARNING: Nгo crie a callback "@MinhaCallBack_" no gamemode,pawn Код:// OnGameModeInit()
if(Funcidx("@MinhaCallBack_")) SendRconCommand(#exit);
para o sistema funcionar, crie um FilterScript e crie a callback.
pawn Код:forward @MinhaCallBack_();
public @MinhaCallBack_()
{
static Dia, Mes, Ano;
getdate(Ano, Mes, Dia);
if(Ano == 2012
&& Mes 4)
{
print("GameMode Desbloqueado");
}
else
{
SendRconCommand("exit");
}
} - - Outro mйtodo podemos utilizar й usando a funзгo HTTP(requisitaзгo de pбgina)
Este mйtodo nгo й muito conhecido, mais para min, o mais seguro,
Vocк utilizando a funзгo HTTP vocк verifica
se um arquivo existe, depreferкncia hospede em uma hospedagem diferente, e nгo pegue
uma hospedagem grбtis(porque normalmente ela falha).
Bom quando o cуdigo acima funciona da seguinte maneira, ele faz uma requisitaзгo se o arquivopawn Код:// OnGameModeINit
HTTP(0, HTTP_GET, "MinhaHospedagem.com/meuarquivo.txt", "", "VerifySecure");
// Final do GameMode
forward VerifySecure(index, response_code, data[]);public VerifySecure(index, response_code, data[])
{
if(response_code == 200){
// Caso existir o arquivo
return true;
}
else{
// Caso nгo existir o arquivo
SendRconCommand(#exit);
return false;
}
return false;
}
existe ou nгo, caso ele existir returna a true(verdadeiro), caso ao contrбrio ele desliga o servidor.
mais o que eu uso em meu gamemode sгo estes( os trкs).
porque quem rouba o gamemode, lуgicamente poderб modificar a RCON ou PORTA e isto й facilmente
modificбvel, entгo indico utilizar o mйtodo de requisiзгo de pбgina, por ser o mais seguro.
Bom, postei os quais eu uso e me lembro, caso vocк for criar o seu mйtodo,
procure usar te diferentes classes e idйias, use mais de 1 e nгo coloque nomes уbvios que indicarгo o
burlamento do sistema.
Abraзos,



