[Tutorial] Rastrear ítems robados y ver corrupción del Team
-
muy buena guia me servira para mi server..
-
Haré uso de las imágenes que puse en elite, y las que estoy haciendo ahora.
Necesitáis:
*un administrator de bases de datos (en mi caso, es el navicat)
*tabla log.log funcionando
*nombre del ladrón (no es necesario saberlo)
*brain.exe (me gusta mas dejarlo en inglés xD)
*nombre de la víctima (necesario)
y aquí empezamos :
este es Krain, la "víctima" xD
y esta es Tele, la que ha "robado"
ah, se me olvidaba presentaros a tester, el pj que intentó hacer desaparecer el ítem
1- Abrimos una nueva query, y escribimos:
select * from player.player where name='nombre del afectadoª'
ª_**por nombre del afectado, entendamos nombre del usuario al que le han robado**
2- debemos buscar la ID del jugador al que le han robado en la tabla log.log, y en este caso quedaría así:
select * from log.log where who='1'
pero en este punto puede haber varias respuestas, aonque hay que mirar bastante, según el tiempo que tenga la tabla puede ocupar un ratillo ver quien ha robado o si el "afectado" está mintiendo:
Variable 1: han entrado a la cuenta del afectado, han dropeado el ítem y se lo han llevado:
y en esta imagen podemos ver claramente como pone DROP en la casilla "how"
si queremos ver quién cojió el item, debemos buscar lo siguiente:
select * from log.log where what='10000324'
fíjate que la query dice que seleccionemos todo lo que hay en la tabla log de la base log que en la casilla "what" tenga el valor "10000324", el cual vemos en la foto anterior, y este valor, no es otra cosa que la ID de la olímpica que se ha tirado al suelo.
tal query da el siguiente resultado:
como vemos el usuario con ID 2 recoje la olímpica unos segundos despue de ser tirada al suelo, y apartir de ahí no hay mas movimiento de item, con lo cual sabemos que el usuario con ID 2 tiene el item en en su inventario.
Pero creo que a todos nos gusta saber quien nos ha robado, o quien es el gracioso que va vaciando cuentas, ¿no?4-con la siguiente query, podemos ver quién es el usuario con ID 2:
select * from player.player where id='2'
y da como resultado lo siguiente:
como vemos Tele tiene la ID de jugador número 2, la cual ha recogido la olímpica al poco de ser tirada al suelo.
Variable 2: El robo se ha producido mediante comercio (incluyendo trade hack):
debemos recordar la query :
select * from log.log where who='1'
que dará como resultado que el usuario con ID 1, ha entregado el ítem (olímpica en este caso)
si queremos ver a quíen se la ha entregado, debemos buscar como antes, mediante la ID del ítem:
select * from log.log where what='10000324'
que nos dará como resultado:
tal como vemos, el usuario con ID 1(krain, la víctima) entrega el ítem y el usuario con ID 2(Tele, el ladrón) lo recibe.
Variable 3: El usuario intenta sacar tajada guardando las cosas en el almacén:
acabo de colocar la armadura en el almacén, y podemos ver si se ha colocado en el almacén de dos maneras, las cuales ya conocemos:Primera: revisando si el jugador "afectado" la ha puesto con ese jugador (la forma más facil según empezamos a buscar, es ver el último movimiento del ítem)
select * from log.log where who='1'
Segunda: revisando los movimientos del ítem (recordemos que en what, en este caso va el ID del item):
select * from log.log where what='10000324'
lo cual, usemos la que usemos, en esta variable nos dará:
en caso de haber sido retirada del almacén, y haber metido la query que busca los movimientos del ítem, puede salirnos esto:
como vemos, el usuario con ID 5, ha sacado del almacén el ítem (armadura olímpica), entonces sabemos que el usuario está mintiendo, o no recuerda donde la tiene (yo almenos, si no veo una batalla+8, reviso todos mis pjs antes de reportar el robo xD)
entonces, veamos quien es el usuario con ID 5:
select * from player.player where id='5'
y nos dará como resultado:
Variable 4: Que pasa si el ítem ha sido dropeado, pero el ladrón no tiene acceso a la cuenta?, pues una de dos, o alguien está mintiendo, o el jugador ha dropeado con puntos de rank negativos xD:
select * from log.log where what='10000324'
y vemos:
como os daréis cuenta, con esto podemos revisar a otros miembros del TEAM.
buscamos el nombre del GM
select * from player.player where name='[GM]Ejemplo' select * from log.log where who='ID DEL PJ GM'
y ahi veremos los comercios y lo ocurrido con tal GM
y bueno, podéis dejar correr la imaginación con las queryes, porque también podeis anotaros la lista de máximos bonus, e ir bonus a bonus (attrtype0,attrtype1,attrtype2,attrtype3,attrtype4,attrtype5,attrtype6) buscando cada máximo y si hay alguno que lo supere, podéis des editarlo, cosa que yo hacía en el m2hits, (dado que un "colega" editaba, tal como está escrito en un post en el foro de dicho servidor)
sin más que decir (creo que está todo, si falta algo lo editaré y lo veréis)
PD1: Hace un tiempo dije para recuperar los ítems, simplemente es modificar el owner_id, colocando la ID de tu cuenta, para que el item quede en tu almacén, véase respetar espacios, revisar que no haya items en la misma casilla, porque pueden bugearse y aparecer semanas mas tarde(varía).
PD2: Esta guía la he echo con los conocimientos que he adquirido al leerme el manual oficial de mysql (en su web oficial) y de pruebas en un servidor, los propios usuarios de hits, panamera y otros servidores pueden decir de la eficaz recuperación de items en pjs que se borraron y robaron.me despido, atentamente Krain :icon_mrgreen:
-
Mui buena guia,con esto lo server privados no tienen escucas hum!
-
nunca ha habido que poner excusas, el que quiere resolver robos puede, el que no lo quiere hacer es porque le dan igual los usuarios y solo piensa en sacar pasta :icon_mrgreen:
-
Muy muy bueno, pero una cosa, el 10000324 es único en el server y jamás habrá 2 iguales no?
Si el GM lo deja en su inventario y luego lo vacía, te sale allí no? y si quiero recuperar el articulo después de haber sido borrado, se puede?
Salu2
-
tal como dices, el código de un item no se vuelve a repetir, si un GM tiene en su inventario por ejemplo el ítem 10000324, y hace /ip el item desaparece, aparecerá en los logs en caso de meterlo al almacén, tirarlo al suelo, agregarle bonus, mejorarlo o comerciarlo, pero al haberlo tirado al suelo (desapareciendo) o limpiado del inventario no aparecerá en la tabla player.item
yo las recuperaciones las conseguía porque hacia copias diarias de los datos (aun se siguen haciendo), con un script o directamente comprimiendo la base de datos, el tema de las recuperaciones de borrados, suelo hacerlas en dumps, aonque en un servidor con mas de 20mil pjs las tablas empiezan a pesar bastante y recomiendo hacer el dump desde localhost en el bsd
cualquier cosa preguntadme y aver si puedo contestar :icon_mrgreen: -
Perfecto, lo realizare en php para usarlo en el panel administracion
PD: agregame al skype si puedes ronin.96 , y me explicas unas cosas de la tabla, a ver si puedo postear los script para un panel admin y para mi web de la version 2 -
Estaría de p.. madre un panel que aga todo esto automatico pa no estar query va y query viene
-
:mem2: lo del panel estoy mirando como hacerlo, tengo un panel sencillito, banea cuentas por email, buscar items, buscar por ip, fechas de logeos, bonus de items, ver items del pj, del almacen, almacen itemshop, pero meter esto me parece algo mas complicado xd, aun así en el post que puse en epvp, me dijeron que un user ya habia creado un panel con estas funciones, aonque yo almenos prefiero hacerlo así, en 2 o 3 minutos tengo el robo resuelto y los items de nuevo en el "afectado" :icon_mrgreen:
-
Rimender a la vercion 2 de tu pagina web agregale que se compàtible en files 2010 y 2011 el ranking