Detectar comandos!
#1
Aca voy a dejar un pequeño tip, para cuando necesitemos Detectar/Hookear/Registrar un comando y hacer la accion que queramos. Siempre y cuando hablemos de comandos ya existentes en el cs.



Por ejemplo, registremos cuando se usa el comando buyammo1 que es cuando compramos balas para el arma primaria:



Código PHP:
#include <amxmodx>



public plugin_init()

{

    
register_plugin("Registrar Comando""1.0""Alucard")

    
register_clcmd("buyammo1""HookBuyCmd")

}



public 
HookBuyCmd(id)

{

    
// Codigo aca...





Bien, funcionar funciona... el problema es que depende el comando y/o la funcion del plugin que estemos haciendo... se puede evadir la deteccion de dicho comando usando un alias.

Código PHP:
alias evadir "say cualquier_comando;buyammo1" 



Por eso para una mejor deteccion de un comando deberiamos hacer lo siguiente:



Código PHP:
#include <amxmodx>



public plugin_init()

{

    
register_plugin("Registrar Comando""2.0""Alucard")

}



public 
client_command(id// Cuando el player ejecuta un comando

{

    static 
argv[12// Donde se guarda el comando

    
read_argv(0argvcharsmax(argv) ) // Detectamos el comando

    

    
if(equali(argv"buyammo1") ) // Si dicho comando tiene equivalencia con "buyammo1"

    
{

        
// Codigo aca...

    
}





De esta manera lo que hace es verificar si el comando que se ejecuto contiene "buyammo1" no importa si hay 2 comandos en un bind ("comando1;comando2") o si es unico comando. Por ende, no se puede burlar usando alias de la forma anteriormente mostrada.
Responder
#2
Esto no lo sabía, si es así voy a tener que actualizar mi plugin

Gracias por aportar a la comunidad

Ni te molestes en enviarme un mensaje privado para pedirme ayuda porque NO lo voy a contestar.
Gracias por su atención.
Responder
#3
Por lo menos en argentina, todos los servidores tienen sXe, y el mismo desactiva los alias.. así que no se anden preocupando tanto (solo si usan sxe).
Responder
#4
SXEARGENTINA casi no se usa en otra parte! xd.



Yo tampoco tenía conocimiento de eso, nunca probé el alias del cs no sé si funciona y nunca pensé en hacer un alias para un comando y evadir el bloqueo.
Búsqueda de la ecuación perfecta.
Responder
#5
creditos a Alucard por el tuto?

(su verdadera identidad es draculA :O)
Responder
#6
El primer ejemplo lo probé bloqueando la compra usando alias y lo bloquea igual

Puse

Código:
alias asd "say hola;buyammo1"

bind p asd

Y me sale solo el say



Alguno más que lo pruebe y me diga

Ni te molestes en enviarme un mensaje privado para pedirme ayuda porque NO lo voy a contestar.
Gracias por su atención.
Responder
#7
Que es un alias xD
Todos los MODS VHL totalmente gratuitos  Descarga Aqui

Mis plugins:
STEAM: https://steamcommunity.com/id/Metrikcz/
FB: fb.com/rwoong
Venta plugins a pedido en México mándame MP
Responder
#8
(07/11/2013, 05:51 PM)Metrikcz escribió: Que es un alias xD



Los alias son como binds solo que les podes dar un "nombre"

Generalmente son usados para hacks como por ejemplo el kz, y es por eso que el sxe los bloquea

Ni te molestes en enviarme un mensaje privado para pedirme ayuda porque NO lo voy a contestar.
Gracias por su atención.
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)