Hacer una cuenta VIP en MUEMU

Bienvenidos a un nuevo tutorial, hoy aprenderemos a convertir o hacer una cuenta vip en los files MUEMU.
Recuerden que cuando trabajamos con el sistema vip en estos files, siempre hacemos referencia a la cuenta y no al personaje, ya que existen files en donde permite hacer VIP a un personaje en lugar de hacer vip a una cuenta.

Tambien es importante saber que los usuarios con cuentas vip podrán ingresar a los servidores FREE y tendrán privilegio diferencial de acuerdo a nuestras configuraciones dentro del juego.



1)Lo primero que veremos será como hacer una cuenta vip. Para esto usaremos la siguiente query o consulta SQL

USE MUONLINE
UPDATE MEMB_INFO SET AccountLevel = 1, AccountExpireDate = GETDATE() + 30 WHERE memb___id = 'LOGIN'
Veamos como configurar la consulta:
AccountLevel = hace referencia al nivel vip que deseamos darle a esa cuenta, entonces
0=Account FREE
1=Account Vip nivel 1
2=Account Vip nivel 2
3=Account Vip nivel 3

AccountExpireDate= Hace referencia al tiempo, solo que debemos prestar atención, no podemos borrar de la sentencia el "GETDATE() +" porque ese parámetro se encarga de imprimir la fecha actual y sumarle una variable, en este caso 30, esto quiere decir que la cuenta tendrá 30 días de membresia vip, si desean modificar la cantidad de días, sólo deben modificar la variable independiente, es decir, el valor 30

memb___id=Hace referencia al ID o login de la cuenta a convertir en VIP

2)Una vez que tenemos configurada nuestra query, ingresamos al Microsoft SQL Server Management Studio, hacemos un clic en "Connect" y luego un clic en donde dice "New Query"

Nueva query en SQL 2008

3)Lo que haremos ahora será copiar y pegar la sentencia ya modificada con nuestros parámetros en el campo que aparece a la derecha y apretamos la tecla "F5" o hacemos un clic en "Execute"
Si todo está correcto, en el campo "Messages" les debe aparecer el mensaje que indica que 1 Row(s) o fila fue afectada, si en lugar de eso aparece 0 Row(s) posiblemente se deba a que colocaron un Id o login de cuenta inexistente.

Query vip para files MUEMU

4)Para ver que todo esta correcto ingresamos al juego a verificarlo:

Ingresando al cliente a verificar el estado vip de la cuenta

5)Como podemos observar en la imagen anterior, la cuenta ahora es Vip 1 y con vencimiento en 30 dias.
Pero supongamos que deseamos modificar el nivel Vip, es decir, de nivel Vip 1 a nivel Vip 3 pero sin alterar la fecha de vencimiento, en ese caso podemos usar la siguiente consulta:
USE MUONLINE
UPDATE MEMB_INFO SET AccountLevel = 3 WHERE memb___id = 'LOGIN'
El procedimiento es el mismo que realizamos en los pasos anteriores, es decir, seleccionamos el "AccountLevel" al que deseamos actualizar, ingresamos el "Login" de la cuenta y copiamos la consulta como una nueva query en nuestro SQL Server Management
Para actualizar los datos apretamos "F5" o hacemos clic en "Execute"

Ingresando al cliente a verificar la actualizacion del estado vip

6)Como podemos ver en la imagen anterior, el estado Vip paso de 1 a 3
Ahora supongamos que lo que deseamos modificar no es el nivel vip , sino el tiempo, lo haremos con la siguiente consulta:
USE MUONLINE
UPDATE MEMB_INFO SET AccountExpireDate = AccountExpireDate + 30 WHERE memb___id = 'LOGIN'
En este caso, modificamos el 30 por la cantidad de dias que deseamos adicionar y el login de la cuenta a la cual deseamos alterarle el tiempo de vencimiento.
Luego apretamos "F5" o hacemos un clic en el boton "Execute"

Ingresando al cliente a verificar el tiempo de vencimiento

7)Como podemos observar, el tiempo de vencimiento vip paso de 30 días a 60 días. Es decir, del 17/11 al 17/12.
Finalmente, para realizar los cortes de usuarios vip podemos hacerlo de la siguiente forma:
USE MUONLINE
UPDATE MEMB_INFO SET AccountLevel = 0 WHERE memb___id = 'LOGIN'
El valor 0 hará que la cuenta se convierte en FREE nuevamente
Al igual que los ejemplos anteriores, reemplazamos la palabra
"Login" por el Id de la cuenta y luego apretamos "F5" o hacemos un clic en el boton "Execute".

Pero hacer este corte manual puede volverse tedioso cuando se trata de varias cuentas, es decir, controlar cuenta por cuenta verificando su vencimiento es un procedimiento que demanda mucho tiempo por eso podemos automatizar esta tarea con el siguiente procedimiento almacenado:
USE MuOnline
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER Procedure [dbo].[WZ_GetAccountLevel]
@Account varchar(10)
AS
BEGIN

SET NOCOUNT ON
SET XACT_ABORT ON

DECLARE @CurrentAccountLevel int
DECLARE @CurrentAccountExpireDate smalldatetime

SELECT @CurrentAccountLevel=AccountLevel,@CurrentAccountExpireDate=AccountExpireDate FROM MEMB_INFO WHERE memb___id=@Account

IF(@CurrentAccountLevel <> 0 AND getdate() > @CurrentAccountExpireDate)
BEGIN
SET @CurrentAccountLevel = 0

UPDATE MEMB_INFO SET AccountLevel=@CurrentAccountLevel,AccountExpireDate=@CurrentAccountExpireDate WHERE memb___id=@Account
END

SELECT @CurrentAccountLevel As AccountLevel,@CurrentAccountExpireDate As AccountExpireDate

SET NOCOUNT OFF
SET XACT_ABORT OFF

END
GO

SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO
Al igual que con las otras querys, para su "instalación" debemos copiar el contenido, pegarlo y apretar el boton "F5" o hacemos un clic en el boton "Execute", este procedimiento sólo debemos ejecutarlos realizarlo una sola vez.

Si desean verificar que todo funcione correctamente, pueden alterar la fecha de vencimiento de forma manual desde la base de datos y ver si hace el corte vip automático ingresando al juego. En el caso que no les funcione no duden en escribirnos.

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

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

28 de octubre de 2021, 13:51

Tengo una duda, para que sirve el ultimo query? Automatizaría el agregar vips? O que?

9 de noviembre de 2021, 11:28

Sheking : No, la última query lo que hace es el corte vip automático cuando esta vencido, es decir, evitar el proceso manual de quitarle el vip a un usuario cuando a este se le termino el tiempo vip.
Saludos

Publicar un comentario