Crear un mapa VIP

Bienvenidos a un nuevo tutorial, hoy aprenderemos una alternativa de como crear un mapa VIP.
La historia de este tutorial comienza cuando un usuario quería tener un mapa vip dentro de su servidor FREE.
La respuesta rápida sería crear un Subserver VIP y, de esta manera; todos los mapas serían vips, ya que el acceso al subserver sería totalmente restringido.
¿Qué sucede?, un subserver vip implica un consumo de memoria mayor y las condiciones técnicas no lo permitian.
Entonces como los Server Files no tenían dicha programación incluida se ideo una manera de hacerlo.
1)Lo primero que debemos hacer, es decidir que mapa retiraremos del juego FREE para convertirlo en VIP, en este DEMO trabajaré con una versión vieja [0.97+0.99] y usaremos al mapa TARKAN para convertirlo en vip (Sin duda, ustedes puede aplicarlo al mapa que deseen)
Lo primero que necesitamos es saber que número de mapa es TARKAN, existe diversas formas de saber que número es, en mi caso lo haré con una muy sencilla, llevo mi personaje a Tarkan y reviso en el SQL que numeración le corresponde.

Tabla character

2)Como pudimos ver, el mapa 8 es TARKAN, esto no lo vamos a usar ahora, sino que vamos a anotarlo en algun apartado porque más adelante lo necesitaremos.
Como TARKAN será nuestro mapa a convertir en VIP, lo que haremos ahora será sacar al mapa del juego, ¿Sacarlo del juego?, no literalmente , lo que necesitamos hacer es evitar que los personajes puedan moverse a el.
Yo estoy trabajando con una versión 0.97+0.99 entonces lo que hare será simplemente abrir el archivo message_kor.wtf con cualquier editor .WTF y cambiar o retirar el nombre TARKAN.
Para que se entienda lo que estamos haciendo, en el .WTF tenemos el nombre del mapa, es decir, el nombre por el cual al escribir /move tarkan o /warp tarkan no lleva a dicho destino. Lo que necesitamos hacer es evitar esto, es decir que ningun usuario pueda ir a TARKAN con el comando move o warp.
Les rescomendaría que pongan otro nombre, asi Ustedes: administradores del juego, de manera secreta puedan moverse sin problemas.
Lo llamaré "mapvip" [Recuerden el nombre que ingresarán ya que les servirá dentro del juego]

Editor wtf

3)Reiniciamos el server y verificamos los cambios dentro del juego. (Por las dudas, lo que deben verificar es que al escribir [/move tarkan] o [/warp tarkan] no los lleve a dicho mapa, sino que el comando funcione al escribir [/move mapvip] o [/warp mapvip]
Atención: todos sabemos que a un mapa podemos llegar dentro del juego por comando o por un portal, por entonces necesitamos modificar nuestro archivo gate.txt, lo que haremos será simplemente quitar la entrada al mapa por portal (La salida a stadium o arena se la dejamos, de modo tal que podamos salir del mapvip por dicho portal pero no entrar)

Modificación del archivo gate

4)Entonces, revisemos lo realizado:
a)Seleccionamos un mapa para convertir en vip
b)Lo sacamos de nuestra lista de moves
c)Le quitamos cualquier acceso de tipo portal
Nuestro último paso será configurar la forma de ingreso al mapa, es decir, ¿Cómo haran para ingresar los usuarios a dicho mapa?
Veamos diferentes alternativas:
a)Un adm/gm los moverá de manera manual [Podría servir como evento, pero no sería lo ideal si queremos usar a dicho mapa como VIP ya que no siempre tendremos un adm/gm Online en nuestro server]
b)Con job o sentencia SQL [También podría ser como evento, y podría servir, sólo que siempre que salgamos del juego apareceremos en el mapa vip]
c)Por PHP, creo que sería la mejor alternativa y además podemos usar muchísimos condicionales.
Para quienes tienen conocimiento en PHP esto será una tarea muy sencilla para quienes no, deberán seguir leyendo el tutorial:
Lo primero que necesitamos es crear nuestra propia tabla, la cual la usemos como llave de ingreso, ¿Qué quiere decir "llave de ingreso"?, me refiero a que haremos un:

1= SI entra al mapa vip
0= No entra al mapa vip
Para crear nuestra tabla ingresamos al SQL , buscamos la tabla MEMB_INFO hacemos un clic derecho y luego seleccionamos la opción "Diseñar tabla"

Acceso vip desde el sql

5)Ahora nos deslizamos hasta el final de las tablas y la completamos de la siguiente manera:
Nombre de columna: asd
Tipo de datos: int
Logintud: 4
Permitir valores null: [Destilden la opción]
Valor predeterminado: 0
Configuración y asignación de una columna

6)Nuestro siguiente paso será crear el formulario en PHP el cual contenga los siguientes datos:
Login de cuenta
Nombre del personaje
Password de cuenta
Y luego con un "Select" (Ya que más adelante podremos tener más mapas vips), hacemos la selección del mapa
y enviamos toda la información por un _post para evaluarla [El número 8 reempresenta al mapa, si ustedes van a usar otro mapa, deben ingresar el número que vimos en el paso 1) ].

Agregado de código php para el sistema vip

7)Una vez que recibimos las variables enviadas por el formulario, las evaluamos:
$personaje = stripslashes($_POST['personaje']);
$cuenta = stripslashes($_POST['cuenta']);
$pass = stripslashes($_POST['pass']);
$map= stripslashes($_POST['map']);
Un poco de seguridad para evitar códigos en el pasaje y evaluación
if ((eregi("[^a-zA-Z0-9_-]", $personaje)) ||
(eregi("[^a-zA-Z0-9_-]", $cuenta)) ||
(eregi("[^a-zA-Z0-9_-]", $map)) ||
(eregi("[^a-zA-Z0-9_-]", $pass)))
Junto a la extración de datos del SQL, agregamos lo siguiente para conocer el estado de la cuenta:
$vip2 = mssql_query("select asd From MEMB_INFO Where memb___id = '$cuenta'");
$row = mssql_fetch_row($vip2);
Agregamos el condicional para saber si la cuenta es VIP (Comparando los datos)
elseif ($row[0] < 1){ echo "Error: Tu cuenta no es VIP"; }


Y finalmente la querry que hara mover al personaje al punto deseado
$msquery ="UPDATE dbo.Character SET MapNumber = '$map'
WHERE Name = '$personaje'
UPDATE dbo.Character SET MapPosX= '193'
WHERE Name = '$personaje'
UPDATE dbo.Character SET MapPosY= '57'
WHERE Name = '$personaje'";
}
Por último, para hacer una cuenta vip podemos valernos de este simple .sql el cual aplicamos en el analizador de consultas:
use MuOnline
UPDATE MEMB_INFO
SET asd=2
WHERE (memb___id = 'AcaElLogin')
El "asd" es la tabla que creamos para condicionar a los usuarios vips, si bien los files o la mayoria de ellos tienen una tabla llamada vip, no es bueno ocuparla con otros proyectos ya que hay webs para MuOnline que la ocupan para trabajar.
Con este tutorial podemos convertir cualquier mapa en VIP, lógicamente que el código PHP requiere de mayor optimización, seguridad, etc... Simplemente se mostro una imagen global para dar idea o dimensión de dicha estructura básica.
Ustedes puede jugar con otros condicionales, es decir, pueden hacer por ejemplo que ciertos usuarios con cierta cantidad de resets puedan ir a ese mapa, condicionar el mapa por el nivel del personaje, también pueden ir dando puntos por cierta cantidad de resets y al llegar a dicha cantidad de puntos cambiarlos por una entrada o siemplemente vender la membresia vip por 30 días para ingresar.
Las condiciones de ingreso son realmente Infinitas, solo resta un poco de imaginación y personalidad.
MapVip_php.rar [2 KB]

¿Necesitas ayuda? Visita www.iceventas.com y nosotros lo hacemos por ti.

Se han publicado un total de 31 comentarios en Mu Online Tutoriales :

8 de agosto de 2013, 21:01

con que programa puedo abrir el archivo.WTF

9 de agosto de 2013, 10:05

adriel teglia : Con un editor .wtf , puedes intentarlo con nuestro editor online.
http://iceventas.com/Editor/
Saludos

9 de agosto de 2013, 12:44

gracias disculpa si estoy hablando en una sección equivocada pero queria saber si me pueden pasar los terrain de DareDevil?

9 de agosto de 2013, 16:18

adriel teglia : Descarga un cliente con dicho archivos, los copias y los pegas en el tuyo.
Saludos

2 de julio de 2014, 22:48

Hola asd, como esta todo? quisiera preguntarte como le pongo a "x" usuario "x" dias de vip, es decir que tenga un vencimiento automatico, tengo un subserver vip, y en el ConnectMember.txt pongo el usuario y todo funciona bien pero para que no tenga que poner un recordatorio en mi celular avisandome que se le vencio el vip a un usuario y borrarlo de la lista de ese archivo quisiera saber como ponerle que por ejemplo en 30 dias se le quite automaticamente el acceso al server vip, desde ya muchisimas gracias

3 de julio de 2014, 9:58

Anónimo : Aunque tengas un sistema automatico, de todas formas va a requerir que hagas un reloaded del gameserver_vip para que tome los cambios.
Tendrías que desarrollar dos sistemas, uno para el .txt y otro para la aplicación.
Saludos

3 de julio de 2014, 15:47

ok amigo gracias, de todas formas no lo se hacer, asi que seguire como estaba no mas. por cierto, una pregunta mas, nose porque hace un tiempo me paso esto, a mi personaje le ponia el modo admin, es decir el numero "10" dentro del SQL, y estaba todo perfecto, pero ahora quiero mover un item y lo vuelve al mismo lugar ni si quiera puedo tirar nada al suelo, pero solo pongo en modo GM con el numero "8" o "24" funciona perfecto, no entiendo el motivo, podrias sacarme esa duda capo? gracias y saludos para vos

4 de julio de 2014, 11:08

Anónimo : ¿Qué versión de MuOnline tienes?
Saludos

4 de julio de 2014, 19:01

uso files 97d+99i de darksteam, y tampoco encuentro como bloquear el acceso a el servidor y web, es decir la ip, se encontrar la ip pero no encuentro como bloquearla, desde ya gracias y disculpa la molestia

5 de julio de 2014, 11:04

Anónimo : Revisa si esos files poseen Gm_System
Saludos

5 de julio de 2014, 23:23

si amigo, tiene ese archivo, y una pregunta mas y ya no te molesto mas, podrias hacer un tutotial para solucionar el "no charge info" luego de registrarte y querer ingresar al cliente sale ese cartel? gracias

7 de julio de 2014, 11:42

Anónimo : Okey armaremos un tutorial para solucionar ese problema.
Saludos

15 de marzo de 2015, 15:00

amigo una pregunta como puedo poner a las personas q donen en mi server automaticamente vip por favor me ayudas?

17 de marzo de 2015, 16:59

rayner : Y primero debes definir el sistema por el cual trabajarás para recibir donaciones.
Saludos

18 de marzo de 2015, 14:31

me podrias ayudar en eso por favor a mi me gustaria que fuese asi: que ellos pagan X cantidad por items y se le otorgan X dias de vip yo tengo un mapa vip pero no se como hacer q los user q donen al server puedan ir al mapa por X cantidad de dias

18 de marzo de 2015, 16:14

Rayner : ¿Compran items y se los otorga acceso vip? (No entendi esa parte)
¿Ese mapa vip, es por acceso web o dentro del servidor?
Saludos

18 de marzo de 2015, 16:26

dentro del servidor pero digamos que es como un pack ejemplo comparas un set y te otorgo acceso a stadium por 10 dias

18 de marzo de 2015, 17:53

y una cosita mas se que no es post adecado para preguntar esto pero mi server le da dc a algunos user en un rangop de 15 min xq?a ya desactive la opciones de speedhack y eso y reinicie, a mi no me da dc pero a los demas si ayudame si por favor es 97d+ 99b

18 de marzo de 2015, 18:59

rayner : Entonces primero debes identificar o saber como el servidor hace esa lectura de usuarios vip, por ejemplo; si trabaja con alguna tabla/columna en especial que activa la cuenta vip.
Y sobre el problema de las desconexiones, ¿Has revisado los logs?
Saludos

18 de marzo de 2015, 21:30

lo del log del game server me sale asi
18:35:47 [ÈÎÎñ] ÈÎÎñ±£´æ [rainiere][Kirito] Ë÷Òý(1) Ãû³Æ( ¹Â ´ë·úÀÇ ¼¼ °¡Áö º¸¹°) ״̬(ÎÞ)
18:35:47 (4837)(rainiere)(Kirito) Character closed
ahi le dio dc :( y para lo de la tabla vip no sabria decirte donde puedo ver? ya abri vi varaias tablas de muonline y nada

19 de marzo de 2015, 16:55

Rayner : Deberías revisar un poco más arriba.
¿Cómo haces un usuario vip en tu server?
Saludos

20 de marzo de 2015, 13:18

nunca he creado un user vip amigo x eso tengo dudas de verdad me gustaria q me ayudes gracias

20 de marzo de 2015, 17:19

rayner : Sólo puedo guiarme u orientarme por lo que me informas, necesitaría mas información para poder ayudarte.
Saludos

20 de marzo de 2015, 17:33

gracias por dedicarme tiempo valioso como puedo darte mas info dime donde se guardan los user vip por favor o como modifico la tabla para crearlo gracias de antemano

21 de marzo de 2015, 10:51

Rayner : Debes investigar, revisar al menos la estructura de tus archivos y hacer algunos test`s básicos.
Saludos

21 de marzo de 2015, 11:15

:S buenos días como hago ese test básico discúlpame si no se nada sobre el tema :(

22 de marzo de 2015, 10:57

Rayner : Comenza revisando las tablas y columnas de tu DB. Talvez exista una columna llamada vip o similar y setea el valor en 1 para ver si toma esa cuenta/personaje como vip.
Tambien revisa la estructura de los files, busca alguna variable que indique que tus files contienen un sistema vip integrado.
Caso contrario deberás ponerte en contacto con alguna persona que pueda revisar tus archivos.
Saludos

22 de marzo de 2015, 17:08

hola amigo dudo que mis files tenga algo de vip ya que son files de mu server facil ya q me gustan las versiones viejas 97d pero files vip son muy dificiles de encontrar

22 de marzo de 2015, 18:41

Rayner : Entonces estamos perdiendo el tiempo, si los files no tiene sistema vip integrado no entendi lo que deseas hacer.
Si has realizado lo del tutorial, en el paso 5) se define la columna de acceso vip.
Para darle acceso vip, bastará con poner con 1 en la cuenta a convertir en vip.
Saludos

22 de marzo de 2015, 23:30

ya voy adelantado revise y revise y tengo 1 mapa vip que es stadium intento ir con mis pj normales y al pasar el portal me manda a lorencia pero con el gm no ahora la cosa es esta intente buscar el mapa con wtf pero me aparece q stadium es el mapa 7 cosa falsa xq al yo ir a stadium es el 6 y ahi quede amigo

23 de marzo de 2015, 18:38

Rayner : ¿Has revisado las tablas y columnas en tu base de datos como te había nombrado anteriormente?
Saludos

Publicar un comentario en la entrada