Estou tentando, através de um comando, adicionar ou remover o password de acesso ao servidor (RCON). Porém, gostaria de saber como posso fazer para remover esta senha, uma vez que com o sscanf, ele solicita um valor string.
é possivel criar um comando para crashar um jogador de pc e de mobile? fiz com ApplyAnimation ae coloquei biblioteca de animaçao que n existe e o nome de animação que n existe funciono no pc mas no mobile n ent eu vim perguntar se tem como criar um comando de crashar para crashar o mobile e pc?
Venho trazer hoje um script bastante pedido no samp, e que vai ajudar na maioria dos servidor samp! Tá cansado de banir um player pelo IP e o mesmo voltar? Bom tenho uma solução para você que vai corrigir 80% disso.
Esse script que eu trago se chama anti vpn como o título já diz, ele contém 2 verificação, 1 quando o player spawna, outra quando o player conecta,
Quando o player spawna ele vai fazer uma verificação média, se caso o player tiver com vpn e não for detectado pela Api, quando o player spawnar aí ter outra verificação, nessa verificação é mais rígida, e conserteza vai pegar o player que está usando Vpn/Proxy.
Versão Samp (Testada):
Código:
//Anti vpn/proxy
#define FILTERSCRIPT
#include <a_samp>
#include <a_http>
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Anti Vpn por: Cifra Modder ");
print("--------------------------------------\n");
return 1;
}
stock bool:StrContains(const source[], const find[])
{
new source_len = strlen(source);
new find_len = strlen(find);
for (new i = 0; i <= source_len - find_len; i++)
{
new match = true;
for (new j = 0; j < find_len; j++)
{
if (source[i + j] != find[j])
{
match = false;
break;
}
}
if (match)
return true;
}
return false;
}
public MyHttpResponse(playerid, response_code, data[])
{
new name[MAX_PLAYERS],string[256];
new ip[16];
GetPlayerName(playerid, name, sizeof(name));
GetPlayerIp(playerid, ip, sizeof ip);
if(strcmp(ip, "127.0.0.1", true) == 0)
{
format(string, 256, "[LOCALHOST] %s(%d) se conectou no servidor - LocalHost.", name, playerid);
SendClientMessageToAll( 0x09F7DFC8, string);
return 1;
}
if(response_code == 200)
{
if (StrContains(data, "\"proxy\": \"yes\""))
{
format(string, 256, "[ANTI-VPN] %s(%d) foi kickado por suspeita de Vpn/Proxy.", name, playerid);
SendClientMessageToAll( 0xFF0000FF, string); //AQUI VOCE PODE COLOCAR O SISTEMA PRA ENVIAR A MENSAGEM PROS ADMINS ONLINE.
Kick(playerid); //AQUI VOCE VER QUAL PUNIÇÃO VAI DAR PRO PLAYER
}
if (StrContains(data, "\"proxy\": \"no\"")) //VOCÊ PODE REMOVER ISSO SE QUISER
{
format(string, 256, "[ANTI-VPN] %s(%d) nao foi detectado Proxy/Vpn. Jogador conectado!.", name, playerid);
SendClientMessageToAll( 0x09F7DFC8, string );
}
}
return 1;
}
#endif
Versão Open.MP (Não testada):
Código:
// Versao open mp atualizado - 29/8/2024
#include <open.mp>
public OnFilterScriptInit()
{
print("sistema Anti vpn/proxy iniciado");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
public OnPlayerConnect(playerid)
{
DetectionVpn(playerid)
return 1;
}
stock bool:StrContains(const source[], const find[])
{
new source_len = strlen(source);
new find_len = strlen(find);
for (new i = 0; i <= source_len - find_len; i++)
{
new match = true;
for (new j = 0; j < find_len; j++)
{
if (source[i + j] != find[j])
{
match = false;
break;
}
}
if (match)
return true;
}
return false;
}
forward MyHttpResponse(playerid, response_code, data[]);
public MyHttpResponse(playerid, response_code, data[])
{
if(response_code == 200)
{
if (StrContains(data, "\"proxy\": \"yes\"")) // Foi detectado
{
SendClientMessageToAll(0xFF0000FF, "[ANTI-VPN] %s foi kickado por suspeita de Vpn/Proxy.", GetPlayerName(playerid));
Kick(playerid);
}
if (StrContains(data, "\"proxy\": \"no\"")) // Nao foi detecado
{
SendClientMessageToAll(0x09F7DFC8, "[ANTI-VPN] %s(%d) nao foi detectado Proxy/Vpn. Jogador conectado!.", GetPlayerName(playerid), playerid);
}
}
return 1;
}
As inúmeras desvantagens e desafios a serem enfrentados por aqueles que decidirem se aventurar aos longos caminhos do desenvolvimento SAMP, nós decidimos criar uma solução para todos os problemas e desafios enfrentados arduamente.
Inicialmente, o framework foi criado para um projeto interno do GoSeventh mas percebemos o que estávamos criando e o grande potencial para a comunidade SAMP e decidimos abrir o projeto para o público, tornando-se open-source. Ainda não há uma versão estável do projeto, no entanto você pode acompanhar o desenvolvimento: repositório github
O que é RakStar?
RakStar é um framework open-source para a linguagem de programação Go — Você pode obter mais detalhes aqui — feito para e por aqueles que desejam um ambiente agradável, produtivo e elegante para o desenvolvimento de servidores performáticos e modernos.
Quais problemas são resolvidos? — Utilização do RakStar
Citar:
Desempenho extremo: Com a utilização do projeto o desenvolvimento se tornará mais produtivo e intuitivo, adeus a compilações de software lentas e boas vindas ao mundo moderno! Chega de lentidões para processar comandos: Clássico problema do SAMP, uma lentidão absurda para processar míseras solicitações de comandos por segundo; Com a utilização da linguagem Go, todos os processamentos são efetuados simultaneamente — Isso significa que qualquer ação interna pode ser executada, enquanto algumas outras ações são processadas ao mesmo tempo.
Produtividade incrível: Chega de perder tempo com complicações, criações de códigos complexos e difíceis de entender, manipulações complicadas de memória, péssima organização de código; RakStar surgiu para resolver tudo isso para você, com apenas algumas linhas de código é possível construir sistemas avançados, rápidos e elegantes.
Comporação = Pawn:
Código PHP:
stock valid_text(text[]) { static Reg:text_reg;
if (!text_reg) { text_reg = Regex_New("[A-Z][a-z]+_[A-Z][a-z]+"); }
Sempre que achar o desenvolvimento samp cansativo, estressante, frustante e nem um pouco elegante. O RakStar tem o compromisso de entregar ferramentas poderosas para alta produtividade e desempenho em tempo de execução de forma intuitiva — Não é necessário ler a documentação para começar um projeto, basta conhecer um pouco sobre fundamentos SAMP e Go para começar a por a mão na massa!
Conclusão:
Ainda é cedo para utilizar o framework em linha de produção, ainda há muito pela frente e o desenvolvimento é contínuo e não para.
E aí rapaziada... sou usuario linux e talvez outra pessoa que também seja, como eu, já teve ou tem dificuldade pra compilar gamemodes e filsterscripts no sistema. Vou fazer um brevê tutorial de como tornar todo esse processo simples como é no Windows.
Primeiramente, você vai baixar o server e o compilador. Extraia o servidor linux e na mesma pasta do executavel samp03svr você vai criar uma pasta chamada pawncc (o nome da pasta é de sua preferencia). Depois disso, extraia o compilador e copie tudo da pasta bin/ para o seu pawncc/.
Você vai ver algo semelhante a isso depois de um ls em pawncc/:
Código:
pawncc pawndisasm
[jv@fedora pawncc]$
Aí mesmo faça uma pasta chamada include, onde vai ficar suas includes, obviamente. Você vai extrair elas do ZIP do servidor Windows (não vem includes no servidor GNU Linux) para pasta include. Depois, (caso baixou) extraia o pawn-stdlib e sobreescreva.
Você vai ver algo semelhate a isso depois de um ls em include/:
Esse exemplo é do comando rodando direto da pasta onde fica o executavel pawncc. Agora vamos aos detalhes: primeiro parametro é o código que vamos compilar (especifique o caminho e nome sempre), segundo parametro é a opção -i que aponta o diretorio das includes que vão ser usadas, e por ultimo, a opção -o especifica o cominho e o nome da saida (código compilado).
Cláro que você não é idiota de digitar esse comando enorme toda vez. Então na pasta raiz do server (onde fica o executavel samp03svr) crie um arquivo chamdo compile.sh (nome é de sua preferencia, mas tem que ter a extensão .sh). Nele você vai colar esse shellscript:
Der à ele permissão de executavel (sudo chmod +x compile.sh). Agora para executar é muito simples:
Código:
$ ./compile.sh example
O único parametro é o nome do código, sem extensão (desde que seja .pwn) e caminho da pasta.
É isso aí! Qualquer dúvida pode mandar mensagem privada ou aqui no tópico mesmo.
Visite o repositório dela no gihub lá tem as explicações sobre como usar ela no seu gm.
É um sistema de dano com muitos recursos para as armas no seu servidor, bloqueia o godmode com o lagcomp ativado, qualquer tipo de dano pode ser modificado, as maquinas de bebidas são controladas do lado do servidor, jogadores pausados podem ser mortos com a animação do jogador morrendo sua barra de saúde sempre irá mostrar os valores corretos, sistema anti g destrói os veículos com passageiros sem motorista, você pode personalizar o dano de queda, textdraw e som de indicador de dano na tela dano tomado ou recebido, detecta novos tipos de armas WEAPON_PISTOLWHIP quando você acertar alguém com uma arma, WEAPON_VEHICLE_M4 veículos com arma m4, WEAPON_VEHICLE_MINIGUN veículos com minigun, WEAPON_HELIBLADES quando você mata alguém usando helicóptero, WEAPON_CARPARK quando você atropela um jogador, checagem extensiva da sanidade dos disparos, weapon data modificado pode ser detectado, o vetor de tiro a distância do jogador e muito mais pode ser verificado, uma chamada é iniciada para cada chamada de retorno para que o jogador seja informado: causar dano depois de morto por causa do lag, acertar um jogador muito longe da posição de acerto devido ao lag ou por cheat de draw distance que aumenta o alcance da arma com um campo de visão ilimitado isso é uma configuração no sobeit que se chama disable dl limit isso mas o weapon range no weapon data, sim existe um plugin já datado que modifica os dados das armas do lado do cliente no samp.
hitting / shooting too fast (due to severe lag or cheating) isso se trata do rapid fire na ultima linha do valor das armas no arquivo weapon data tem um parâmetro lá que pode ser alterado no singplayer pra aumentar a velocidade do disparo das armas bater ou atirar muito rápido devido ao lag ou uso de cheat, modifica toda a quantidade de dano da arma, para um único valor, para múltiplos valores dependendo da distância do acerto, com uma lógica customizada em uma chamada de retorno ex: aumenta o dano por tiro na cabeça, aumenta ou diminui o tiro por combos, diminui o dano para c-bug ou rapid fire, corrige a sincronização da faca com a compensação de lag ativada ou não, nova animação de morte e lógica de respawn, customiza o tempo global do respawn para cada morte, animações totalmente personalizáveis, com um bom conjunto de padrões, animação diferente, dependendo da arma ou parte do corpo, tiro cabeça faz aquela animação da katana onde o ped se abaixa e bota mão na cabeça.
Se durante um tiroteio você não for morto por trás se for morto com um tiro de doze faz a animação do ped voando pra trás com o impacto do disparo.
Com essa include da pra reportar os jogadores que não tão tomando dano ou modificando o valor da munição, eu nunca usei essa include mas já tomei ban em servidor que usa ela, sem chance pra quem xita com arma nem minução passa :/
alguem me ajuda tipo quero fazer um sistema para reiniciar o server tipo ele da /reiniciarserver ae fala q vai ser reiniciado em 1 minuto ae quando chegar no 30 segundos vai dar outro aviso ae no 15 vai dar outro aviso tendeu como q faz isso? eu fiz e n deu certo