DRS Halloween
Evento de Halloween completo, pronto a ligar. O script inclui:
- caça às abóboras por jogador (normais, raras e douradas), que recomeça todos os dias;
- doces ou travessuras à porta dos vizinhos, com partidas (ovos, bêbado, susto, palhaço, casca de banana, vizinho de taco);
- vagas de zombies criadas pelo servidor, em janelas de horas reais ou pelo staff;
- fantasmas, relâmpagos, corvos e nevoeiro de Halloween;
- 8 missões diárias e missões do evento que dão moedas;
- atividades com história: carrinha de doces, mapa do tesouro e poção da bruxa;
- loja de prémios (itens, armas, dinheiro e veículos), caderneta e ranking semanal;
- ferramentas de staff dentro do próprio menu.
Funciona com Qbox, QBCore e ESX. Tudo é validado no servidor.
#Requisitos
| Recurso | Obrigatório |
|---|---|
oxmysql | Sim |
| Qbox, QBCore ou ESX | Sim (deteção automática) |
ox_target ou qb-target | Não — sem target usa a tecla E |
ox_lib ou progressbar | Não — barra de progresso ao apanhar abóboras |
qb-weathersync | Não — se existir, o nevoeiro é aplicado por ele e reposto no fim |
#Instalação
- Coloca
drs_halloweenemresources. - Cria os itens com o ficheiro do teu inventário em
install/(items_qb-core.txt,items_ox_inventory.txtouitems_esx.sql) e copia as imagens deinstall/images/para o inventário. - Adiciona ao
server.cfg, depois da framework:
ensure oxmysql
ensure qb-core
ensure drs_halloween- Dá acesso de staff (os grupos de admin da framework já têm):
add_ace group.admin drs.halloween allowAs tabelas criam-se sozinhas (também estão em sql/drs_halloween.sql). No primeiro arranque entram as abóboras e as portas de Config.SeedPumpkins e Config.SeedDoors.
Dica
As coordenadas que vêm no config são um ponto de partida. Em jogo, abre /halloween → Staff e põe as abóboras, as portas e as decorações onde estás.
#Datas do evento
Config.Event = { always = true, start = '10-20', finish = '11-05' }
Config.ResetHour = 6Com always = false, o evento só está ligado entre start e finish (MM-DD, hora do servidor). As abóboras, as portas e as missões diárias recomeçam à Config.ResetHour.
#Abóboras e portas
- Cada jogador vê só as suas abóboras; as que apanha desaparecem só para ele. Com
Config.Pumpkins.mode = 'shared', quem chega primeiro leva e a abóbora desaparece para todos. - A raridade de cada abóbora muda todos os dias. As douradas e as raras têm luz própria e dão prémios melhores.
- Nas portas aparece um vizinho que dá doces ou prega uma partida. Os sustos em ecrã inteiro desligam-se por jogador com
/sustos.
#Zombies, fantasmas e ambiente
Config.Zombies.windows: janelas de horas reais ('HH:MM', podem passar da meia-noite) em que há vaga na zona. Com{}a vaga só começa pelo staff.- Os zombies são criados pelo servidor e só contam as mortes verdadeiras (zombies duplicados ou longe não contam).
Config.Ghosts: fantasmas à noite (horas do jogo) que se apanham com E, com limite por hora.Config.AmbienceeConfig.Ambient: relâmpagos, luzes a piscar, corvos e nevoeiro.
#Missões e moedas
Config.Quests.daily: missões por dia (8 por defeito), de tipos diferentes; só saem missões que dá para fazer nesse dia.Config.Quests.activities: quantas atividades com história entram, no mínimo, em cada dia.Config.Quests.bonus: moedas extra por acabar todas as diárias.Config.Quests.maxCoins: nenhuma missão dá mais do que isto (o servidor corta e avisa).- O separador Evento tem as missões da temporada toda.
Nota
No arranque, a consola avisa se as moedas das missões não chegarem para trocar todos os prémios com limite até ao fim do evento.
#Atividades com história
| Atividade | Como funciona |
|---|---|
| Carrinha de doces | Começa na "Loja de Doces" (ícone no mapa) e levas a carrinha até à entrega. O servidor confirma a carrinha e o tempo mínimo |
| Mapa do tesouro | 4 peças em zonas marcadas no mapa e depois o baú |
| Poção da bruxa | 3 ingredientes e a entrega à bruxa |
A loja e o lugar da carrinha vêm de Config.Activities. O staff muda a entrega e a bruxa no menu.
#Prémios
{ id = 'sanctus', label = 'Mota Sanctus (fantasma)', icon = 'motorcycle', rarity = 'legendary', cost = 2500, type = 'vehicle', model = 'sanctus', limit = 1 },Tipos: item, weapon, money (account cash/bank), vehicle (vai para Config.RewardGarage) e custom (função Config.CustomReward, devolve true se correu bem). As moedas são tiradas antes de entregar e devolvidas se falhar.
#Comandos
| Comando | Quem | O quê |
|---|---|---|
/halloween | todos | Menu: missões, evento, prémios, caderneta, ranking (e staff) |
/sustos | todos | Liga/desliga os sustos para ti |
halloweencoins [id] [n] | staff / consola | Dar moedas |
halloweenfog | staff / consola | Estado do nevoeiro |
#Para programadores
Exports do servidor:
exports.drs_halloween:AddCoins(src, 100, 'motivo')
exports.drs_halloween:AddQuestProgress(src, 'zombie', 1)
local coins = exports.drs_halloween:GetCoins(src)
local on = exports.drs_halloween:IsEventActive()Com o DRS Battle Pass, cada missão acabada dá progresso do tipo halloween (Config.BattlePass).