Postado originalmente por
hadeslan
sim as variações e na control code mais recomendo criar uma control code propria por que usar o sistema do jogo em alguns gs e usar control code diferente pode bugar
Só existem duas CtlCode no jogo relacionado a GM.
São elas a número 8, referente a versões antigas e 32 a partir de Season 2.
@Topic
Se você quer fazer essa sub-divisão, cria uma coluna na Character por exemplo para definir o nível de cada um.
Como o rapaz acima disse, não utilize a do jogo pois ela só serve para definir de é um personagem normal, bloqueado ou GM.
Na teoria dos jogos online, principalmente do MU, só existe o Game Master... essa de ADM/GM/DV/SUB/CL, etc. foram invenções dos piratas.
Abaixo uma dica para você:
Coluna na Character:
Código:
ALTER TABLE MuOnline.dbo.Character ADD StaffLevel tinyint NOT NULL CONSTRAINT DF_Character_StaffLevel DEFAULT(0)
Query para consultar o nome por posição junto do status online/offline:
Código:
-- Moderador
SELECT C.Name, ISNULL(MS.ConnectStat, 0) AS ConnectStat FROM MuOnline.dbo.Character C JOIN MuOnline.dbo.MEMB_STAT MS ON (MS.memb___id = C.AccountID) WHERE C.StaffLevel = 1
-- Game Master
SELECT C.Name, ISNULL(MS.ConnectStat, 0) AS ConnectStat FROM MuOnline.dbo.Character C JOIN MuOnline.dbo.MEMB_STAT MS ON (MS.memb___id = C.AccountID) WHERE C.StaffLevel = 2
-- Coordenador
SELECT C.Name, ISNULL(MS.ConnectStat, 0) AS ConnectStat FROM MuOnline.dbo.Character C JOIN MuOnline.dbo.MEMB_STAT MS ON (MS.memb___id = C.AccountID) WHERE C.StaffLevel = 3
-- Sub-Administrador
SELECT C.Name, ISNULL(MS.ConnectStat, 0) AS ConnectStat FROM MuOnline.dbo.Character C JOIN MuOnline.dbo.MEMB_STAT MS ON (MS.memb___id = C.AccountID) WHERE C.StaffLevel = 4
-- Administrador
SELECT C.Name, ISNULL(MS.ConnectStat, 0) AS ConnectStat FROM MuOnline.dbo.Character C LEFT JOIN MuOnline.dbo.MEMB_STAT MS ON (MS.memb___id = C.AccountID) WHERE C.StaffLevel = 5
Repare que a diferença está no "StaffLevel".
Para saber se ele está Online é a coluna ConnectStat, se ela for = 1, quer dizer que está Online.
[]'s