Crear guild a partir de resets

Bienvenidos a un nuevo tutorial, a razón de varias consultas sobre este tema hemos decidido crear el siguiente tutorial.
Muchos de ustedes optan por restringir de alguna forma la creación de guilds en nuestro servidor MuOnline.
Para lograr esto se puede hacer de diferentes formas:

a)Mover el NPC de creación de guilds a un punto que el usuario no puede llegar por su propio medio, de modo tal, que un admin mueva el personaje manualmente al cumplir con ciertos requisitos.

b)Mover el NPC de creación de guilds a un punto que el usuario no puede llegar por su propio medio, de motodo tal, que desde nuestro sitio web podamos (Mediante un módulo ya programado) mover al personaje que cumpla con los requisitos que nosotros deseamos configurar. (Resets, nivel, zen, etc...)

c)Poseer files con dicho custom de modo tal que podamos configurar el modo de creación de guilds seteando algunos valores en nuestro servidor.

e)Modificando el procedimiento WZ_GuildCreate agregando la condición.
Y en este último paso nos detendremos porque en eso nos basaremos.
Simplemente lo que haremos será modificar el procedimiento el cual nos permite crear una guild.
Para esto debemos seguir estos sencillos pasos:

1)Ingresar al "Administrador corporativo"

Ingresando al administrador corporativo

2)Ingresar a la base de datos "MuOnline" y seleccionar la opción "Procedimientos almacenados"

Abriendo procedimiento almacenado

3)Buscamos el procedimiento llamado "WZ_GuildCreate" y copiamos todo el contenido en un Bloc de notas (Después veremos porque debemos hacer esto)

Seleccionando el procedimiento WZ GuildCreate

4)Ahora, reemplazamos el código original contenido dentro de nuestro procedimiento por el siguiente:

CREATE procedure WZ_GuildCreate
@GuildName nvarchar(8),
@Name nvarchar(10)
as
BEGIN
DECLARE @ErrorCode int
DECLARE @reset int

SET @ErrorCode = 0
SET XACT_ABORT OFF

Set nocount on
begin transaction

SELECT @reset=[Resets] from [Character] where [Name]=@Name


INSERT INTO Guild (G_Name, G_Master) valueS (@GuildName, @Name)
IF ( @reset > 100 )
IF ( @@Error <> 0 )
BEGIN
SET @ErrorCode = 1
END
IF ( @reset < 100 ) IF ( @@Error <> 1 )
BEGIN
SET @ErrorCode = 1
END


IF ( @ErrorCode = 0 )
BEGIN

INSERT GuildMember (Name, G_Name, G_Level) values (@Name, @GuildName, 1)
IF ( @@Error <> 0 )
BEGIN
SET @ErrorCode = 2
END
END

IF ( @ErrorCode <> 0 )
rollback transaction
ELSE
commit transaction

select @ErrorCode

Set nocount off
SET XACT_ABORT ON
END
GO
Contenido modificado del procedimiento para crear guilds

Y ahora reiniciamos el servidor MuOnline e ingresamos a verificar los cambios.

Importante:
a)El procedimiento está modificado para crear guilds a partir de los 100 resets y ese valor ustedes lo pueden cambiar en el código anterior por el que deseen.
b)Si el personaje no posee los resets, el servidor no le dejará crear la guild pero no le mostrará dicho error, sino que ustedes deben notificarlo previamente en su sitio web, dentro del servidor, en su foro, etc...
c)En el paso número 3) debíamos copiar todo el contenido del procedimiento en un bloc de notas ¿Por qué? ...
La respuesta es sencilla, porque si el código que condiciona la creación de guilds por resets no les funciona o les arroja algun error deberán volver al original.
(En ese caso nos informan por mensaje que versión de MuOnline tienen y nos envian su procedure para que nosotros lo editemos.)

Finalmente este procedimiento lo teníamos almacenado por lo que sus créditos le corresponde a su respectivo autor.
WZ_GuildCreate.sql [1 kb]

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

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

18 de mayo de 2014, 20:51

Muy buena guia lo pude hacer correctamente, una duda :
Si decis que no mostrará el error, o sea ahora solo dice: "Vuelve cuando tengas 250 lvl" pero como bien indicas tú, no dice que necesita 10 resets en m icaso.

Acaso pregunto: En los mensajes del sistema, no aparece la parte esa de "Vuelve cuando tengas 250 lvl", no puedo agregar: "y 10 reset" ??

Saludos

19 de mayo de 2014, 10:39

Jhonny Alvarez : Busca el mensaje en el archivo .wft o en el archivo text.bmd de tu cliente.
Saludos

19 de mayo de 2014, 19:19

En el text.bmd no aparece ese mensaje del cliente ( y en el wtf tampoco ,a menos que esté en ingles pero revise bien y nada)

22 de mayo de 2014, 18:58

seo jon : Entonces posiblemente este contenido en alguna .dll o .exe de tu servidor.
Saludos

18 de junio de 2014, 17:21

amigo, luego de hacer eso y reiniciar el server entro al juego y voy al npc de creacion de guild y al poner el nombre y algun dibujo en el cuadro me dice "el nombre ya es existente" hasta le puse como nombre por ejemplo "asdsadssa" sin las comillas y no me crea el guild, alguna solucion?

19 de junio de 2014, 8:52

Anónimo : ¿Y tenes más de 100 resets?
Saludos

19 de junio de 2014, 13:43

si, me puse 150 para probar, pero aun persiste el problema, uso los files 97d+99i de darksteam

19 de junio de 2014, 18:12

Anónimo : Revisaré para ver de que puede tratarse.
Saludos

23 de junio de 2014, 21:35

Me ha vuelto a servir esto, sin embargo no sé porque el server no me toma los cambios, debería reiniciar???

Saludos. Seoveinte

24 de junio de 2014, 15:18

Jhonny : Si, debes reiniciarlo.
Saludos

30 de septiembre de 2014, 14:50

Amigo ayudame.donde edito.los.resets.. y como hago.para q.en.la.pagina aparesca la.pestaña reset pj ayudame.uso.web core.. Mu seasson 6 epi3

1 de octubre de 2014, 11:29

DarkHenry : Los resets lo editas con el editor, y la pestaña resets aparecerá cuando te logues en el sitio. Si no tenes el módulo reset.php desde tu admincp podrás adicionarlo.
Saludos

30 de octubre de 2014, 10:52

Hola asd* como puedo hacer para que la Guild tambien se cree aparte de Reset con un determinado porcentaje de Zen?

30 de octubre de 2014, 14:56

Dominieckii : Tendrías que agregar el condicional [zen]
Para eso antes deberías calcular el zen del personaje y evaluar el resultado.
Saludos

30 de octubre de 2014, 22:47

Me lo Podrias Hacer eso tu? Si no seria de Mucha Molestia? con 170 reset, Zen 50billones
y para poner en vip como seria para que sea aparte 130 reset, Zen 30billones ? :)

31 de octubre de 2014, 9:43

Dominieckii : Puedes pedir el tutorial sobre como agregar un condicional a nuestro mail de contacto.
Saludos

12 de julio de 2016, 3:53

me sale este error 21037 uso file 1.9g titantech 11.11.82

17 de julio de 2016, 13:02

Henber Ortega : Independientemente del error que tengas. ¿Porque usas la modificación de un procedimiento almacenado si en tus files puedes hacerlo directamente desde el archivo Muserver/SCFdata/SCF_Common.ini linea: SCFGuildResetReq=5?
Saludos

31 de julio de 2016, 23:37

Hola Asd , gracias por brindarnos tanto info y guias , sin embargo amigo , esta guia sirve para las versiones clasicas como la 97 , saludos.

7 de agosto de 2016, 11:59

Anónimo : Si.
Saludos

Publicar un comentario en la entrada