Como Configurar Eventos Sazonais (Halloween, Natal) no Servidor MU
Aprenda a ativar e configurar eventos sazonais de Halloween e Natal no seu servidor MU Online com SQL e arquivos .ini.
Eventos sazonais como Halloween e Natal são recursos poderosos para aumentar o engajamento dos jogadores no seu servidor MU Online. Este guia mostra como configurar esses eventos no Season 6 (a versão mais comum em servidores privados), com referências para outras Seasons onde aplicável.
Pré-requisitos
Antes de começar, certifique-se de ter:
- Acesso ao SQL Server Management Studio (SSMS) com o banco
MuOnlineacessível - Acesso à pasta do servidor, tipicamente
C:\MuServer\ouD:\GameServer\ - GameServer parado durante edições de arquivos críticos
- Backup recente do banco de dados (veja o tutorial de backup antes de prosseguir)
Parte 1: Configurar o Evento de Halloween
Passo 1 — Localizar o arquivo de configuração de eventos
No Season 6, o controle principal de eventos fica em:
GameServer\Data\EventChipInfo.ini
Abra o arquivo em um editor de texto (Notepad++ recomendado). Localize a seção [HalloweenEvent]:
[HalloweenEvent]
EventEnable = 0 ; 0 = desativado, 1 = ativado
EventStartMonth = 10 ; Outubro
EventStartDay = 25
EventEndMonth = 11
EventEndDay = 2
RewardItemCode = 7167 ; Código do item de recompensa (Halloween Pumpkin)
RewardItemLevel = 0
RewardItemDur = 255
RewardAmount = 1
Altere EventEnable = 0 para EventEnable = 1.
Passo 2 — Configurar os monstros de Halloween via SQL
Os monstros especiais de Halloween (Pumpkin of Luck, Jack o'Lantern) precisam estar habilitados no banco de dados. Execute no SSMS:
USE MuOnline;
GO
-- Verificar se os monstros sazonais existem
SELECT MonsterID, Name, Level
FROM dbo.MonsterInfo
WHERE Name LIKE '%Pumpkin%' OR Name LIKE '%Halloween%';
-- Habilitar spawn dos monstros de Halloween nos mapas existentes
UPDATE dbo.MonsterSetBase
SET Enable = 1
WHERE MonsterID IN (
SELECT MonsterID FROM dbo.MonsterInfo
WHERE Name LIKE '%Pumpkin%' OR Name LIKE '%Halloween%'
);
Passo 3 — Inserir monstros de Halloween manualmente (se necessário)
Se os monstros não existirem, insira-os. Exemplo para o Pumpkin of Luck (MonsterID 277) no mapa Lorencia (MapNumber 0):
USE MuOnline;
GO
-- Inserir monstro de Halloween em Lorencia
INSERT INTO dbo.MonsterSetBase
(MapNumber, MonsterID, X, Y, Dir, PathType, SpawnType, Enable)
VALUES
(0, 277, 136, 110, 0, 0, 0, 1), -- Pumpkin of Luck ponto 1
(0, 277, 142, 115, 2, 0, 0, 1), -- Pumpkin of Luck ponto 2
(0, 278, 138, 120, 0, 0, 0, 1); -- Jack o'Lantern ponto 1
GO
Adapte os valores de X, Y conforme o layout do seu mapa.
Passo 4 — Configurar drops de itens sazonais
Para que os monstros de Halloween dropem itens específicos, edite o arquivo:
GameServer\Data\MonsterItemDrop.ini
Adicione no final do bloco correspondente ao MonsterID 277:
[Monster277]
; Pumpkin of Luck - drops de Halloween
ItemDrop0 = 7167,0,255,100 ; ItemCode, Level, Dur, Chance(%)
ItemDrop1 = 7168,0,255,50 ; Halloween Candy
ItemDrop2 = 7169,0,255,25 ; Halloween Spirit
Chance aceita valores de 1 a 100000 dependendo da versão do seu MuServer. No Season 6 padrão, 100 representa 1% de chance. Ajuste conforme a escala da sua versão.Parte 2: Configurar o Evento de Natal
Passo 5 — Ativar o evento de Natal no arquivo .ini
No mesmo arquivo GameServer\Data\EventChipInfo.ini, localize a seção [ChristmasEvent]:
[ChristmasEvent]
EventEnable = 0 ; 0 = desativado, 1 = ativado
EventStartMonth = 12
EventStartDay = 15
EventEndMonth = 1
EventEndDay = 5
RewardItemCode = 7170 ; Christmas Firecracker
RewardItemLevel = 0
RewardItemDur = 255
RewardAmount = 1
Altere EventEnable = 0 para EventEnable = 1.
Passo 6 — Habilitar decoração de Natal nos mapas
Alguns builds do MuServer Season 6 possuem um arquivo separado para decoração visual:
GameServer\Data\Maps\ChristmasDecoration.ini
Se existir, configure:
[MapDecoration]
LorenciaSnow = 1 ; 1 = neve em Lorencia
NoriaSnow = 1
DeviasSnow = 0
Se o arquivo não existir na sua versão, a decoração é controlada pelo cliente e não requer configuração server-side.
Passo 7 — Configurar NPCs sazonais de Natal via SQL
O NPC Santa Claus (GiftShop) precisa estar habilitado:
USE MuOnline;
GO
-- Verificar NPC de Natal
SELECT NPID, NpcName, MapNumber, X, Y, Enable
FROM dbo.NpcInfo
WHERE NpcName LIKE '%Santa%' OR NpcName LIKE '%Christmas%';
-- Habilitar NPC de Natal (substitua o NPID correto)
UPDATE dbo.NpcInfo
SET Enable = 1
WHERE NpcName LIKE '%Santa%';
Se o NPC não existir, insira-o em Lorencia (posição segura próxima ao centro):
INSERT INTO dbo.NpcInfo
(NpcName, MapNumber, X, Y, Dir, Enable)
VALUES
('SantaClaus', 0, 130, 135, 1, 1);
Passo 8 — Configurar a loja do Papai Noel
A loja do NPC sazonal é configurada em:
GameServer\Data\NpcItem\SantaShop.ini
Exemplo de configuração básica:
[SantaShop]
; ItemCode, Level, Dur, Skill, Luck, Option, BuyPrice (Zen ou EventCurrency)
Item0 = 7170,0,255,0,0,0,5000000 ; Christmas Firecracker - 5M Zen
Item1 = 7171,0,255,0,0,0,10000000 ; Christmas Gift Box - 10M Zen
Item2 = 7172,0,255,0,0,0,50000000 ; Santa's Special Gift - 50M Zen
dbo.T_CashShopItemList com ShopType = 3 (Event Shop). Consulte a documentação da sua versão específica.Parte 3: Automação e Agendamento via SQL Agent
Passo 9 — Criar um Job SQL para ativar/desativar eventos automaticamente
Para não precisar editar arquivos manualmente toda temporada, configure um SQL Server Agent Job:
USE msdb;
GO
-- Job para ativar Halloween (executa em 25 de outubro)
EXEC sp_add_job
@job_name = N'Ativar_Evento_Halloween';
EXEC sp_add_jobstep
@job_name = N'Ativar_Evento_Halloween',
@step_name = N'Habilitar monstros Halloween',
@command = N'
USE MuOnline;
UPDATE dbo.MonsterSetBase
SET Enable = 1
WHERE MonsterID IN (277, 278, 279);
';
-- Agendar para 25/10 às 00:01
EXEC sp_add_schedule
@schedule_name = N'HalloweenSchedule',
@freq_type = 8, -- Semanal
@freq_interval = 1,
@active_start_time = 000100;
EXEC sp_attach_schedule
@job_name = N'Ativar_Evento_Halloween',
@schedule_name = N'HalloweenSchedule';
EXEC sp_add_jobserver
@job_name = N'Ativar_Evento_Halloween';
GO
Desativar_Evento_Halloween com o mesmo script, mas Enable = 0, agendado para 3 de novembro. Isso automatiza completamente a rotação de eventos.Parte 4: Reinicialização e Verificação
Passo 10 — Aplicar as alterações
- Salve todos os arquivos .ini editados
- Pare o GameServer (feche o processo ou use o script de reinicialização)
- Inicie o GameServer e aguarde a tela de carregamento completo
- Verifique o arquivo
GameServer\Logs\Server.log— procure por linhas como:
[Event] HalloweenEvent: Loaded - Active
[Event] ChristmasEvent: Loaded - Inactive
Passo 11 — Testar o evento em jogo
Com uma conta GM, execute os seguintes testes:
/move lorencia→ verifique se os monstros de Halloween aparecem no mapa- Mate um Pumpkin of Luck e confirme se o drop sazonal cai
- Fale com o NPC Santa Claus e confirme se a loja abre com os itens configurados
Solução de Problemas Comuns
Monstros de Halloween não aparecem no mapa:
- Confirme que
Enable = 1na tabeladbo.MonsterSetBasepara os MonsterIDs corretos - Verifique se o
EventEnable = 1no arquivoEventChipInfo.ini - Reinicie o GameServer após qualquer alteração no banco de dados
NPC de Natal não aparece:
- Certifique-se de que as coordenadas X, Y estão dentro dos limites do mapa (Lorencia: 0-255 em ambos os eixos)
- Verifique se
Enable = 1na tabeladbo.NpcInfo
Drops sazonais não caem:
- Confirme os ItemCodes no arquivo
MonsterItemDrop.ini— eles devem existir na tabeladbo.ItemInfo - Verifique se os valores de
Chanceestão na escala correta para sua versão
Decoração de neve não aparece no cliente:
- A neve de Natal é renderizada pelo cliente MU, não pelo servidor. Verifique se o cliente possui os arquivos
Data\Effect\Christmas*.bmdpresentes.
Perguntas frequentes
Os eventos sazonais funcionam em qualquer Season?
Os eventos de Halloween e Natal existem desde o Season 4, mas a implementação via arquivo .ini ou tabela SQL varia por versão. No Season 6 (o mais comum), ambos são configurados via GameServer/Data/EventChipInfo.ini e tabelas do banco MuOnline. Em Seasons mais antigas (S1-S3), os monstros especiais devem ser adicionados manualmente via MonsterSetBase.
Como sei se o evento está ativo no servidor?
Conecte com uma conta GM e use o comando /move losttower 7 (Tarkan para Halloween) ou /move xmas (mapa de Natal, se habilitado). Se o mapa carregar e exibir a decoração visual, o evento está ativo. Outra forma é verificar o log do GameServer em Logs/Server.log — ao iniciar, ele registra quais eventos foram carregados.
Posso rodar Halloween e Natal ao mesmo tempo?
Tecnicamente sim — são sistemas independentes. No campo EventEnable da tabela dbo.T_EventConfig (ou equivalente), você pode habilitar os dois ao mesmo tempo com valor 1 em cada linha. Porém, isso gera confusão para os jogadores. Recomenda-se alternar conforme o calendário real ou criar um sistema de agendamento via SQL Agent Job.
Os drops de itens sazonais somem quando o evento termina?
Os itens já no inventário do personagem permanecem. Apenas o drop de novos itens cessa quando o evento é desativado. Para remover itens sazonais em circulação (se necessário), execute: DELETE FROM dbo.Character_Items WHERE ItemCode IN (7167, 7168, 7169) — ajuste os códigos conforme sua versão.