Postado Abril 3, 2023 2 anos .Qual servidor ou website você utiliza como base? Canary Qual o motivo deste tópico? Olá a todos. Estou desenvolvendo um mapa próprio 80% original em sua estrutura (mapping), trazendo apenas algumas hunts e quests do global inclusas. Um dos sistemas que vou implementar visando à praticidade para o alcance de alguns bosses do jogo é o sistema de Boss Room diária. Nesse sistema, ocorrerão "raids" de bosses durante todos os dias na Boss Room. A cada momento, será selecionado um boss entre uma lista de 15 - 20 bosses. No momento os bosses estão fixos e estão tbm com horários fixos das raids, seguindo a base de um script de raids do Canary. Coloquei a parte do script relacionada à parte da raid de bossroom abaixo (1). No script, cada arquivo é para um monstro/uma raid. Crandoria é a cidade principal do meu mapa. Todos os arquivos para cada boss seguem a mesma base apresentada abaixo (2): Inseri também o arquivo com os horários e relação das raids no fim do post (3). O PEDIDO: Bom, como vocês podem ver as raids da bossroom ocorrerão todas no mesmo local (bossroom) e estão já determinadas quanto ao boss e seu respectivo horário e dia. Meu pedido, caso seja possível, seria de um script que me permita fazer com que as raids desses bosses seja aleatória quanto ao boss, mantendo os horários fixos e, se possível, que quando já houver um boss dentro da sala, que não ocorra outra raid até que ele seja morto. OBS: Notem que há também raids de Kroazur. O sistema funciona igual o da bossroom, porém com local diferente e sempre o Kroazur. Vou utilizar o script dos bosses para o Kroazur, pra que ele também bloqueie uma outra raid. Você tem o código disponível? Se tiver publique-o aqui: Script Raids Canary (1) - (data/raids) Citar <!-- Crandoria --> <raid name="BossRoom1a" file="crandoria/boss1a.xml" interval2="1440" margin="170" /> <raid name="BossRoom1b" file="crandoria/boss1b.xml" interval2="1440" margin="170" /> <raid name="BossRoom1c" file="crandoria/boss1c.xml" interval2="1440" margin="170" /> <raid name="BossRoom1d" file="crandoria/boss1d.xml" interval2="1440" margin="170" /> <raid name="BossRoom2a" file="crandoria/boss2a.xml" interval2="1440" margin="170" /> <raid name="BossRoom2b" file="crandoria/boss2b.xml" interval2="1440" margin="170" /> <raid name="BossRoom2c" file="crandoria/boss2c.xml" interval2="1440" margin="170" /> <raid name="BossRoom2d" file="crandoria/boss2d.xml" interval2="1440" margin="170" /> <raid name="BossRoom3a" file="crandoria/boss3a.xml" interval2="1440" margin="170" /> <raid name="BossRoom3b" file="crandoria/boss3b.xml" interval2="1440" margin="170" /> <raid name="BossRoom3c" file="crandoria/boss3c.xml" interval2="1440" margin="170" /> <raid name="BossRoom3d" file="crandoria/boss3d.xml" interval2="1440" margin="170" /> <raid name="BossRoom4a" file="crandoria/boss4a.xml" interval2="1440" margin="170" /> <raid name="BossRoom4b" file="crandoria/boss4b.xml" interval2="1440" margin="170" /> <raid name="BossRoom4c" file="crandoria/boss4c.xml" interval2="1440" margin="170" /> <raid name="BossRoom4d" file="crandoria/boss4d.xml" interval2="1440" margin="170" /> <raid name="BossRoom5a" file="crandoria/boss5a.xml" interval2="1440" margin="170" /> <raid name="BossRoom5b" file="crandoria/boss5b.xml" interval2="1440" margin="170" /> <raid name="BossRoom5c" file="crandoria/boss5c.xml" interval2="1440" margin="170" /> <raid name="BossRoom5d" file="crandoria/boss5d.xml" interval2="1440" margin="170" /> <raid name="BossRoom6a" file="crandoria/boss6a.xml" interval2="1440" margin="170" /> <raid name="BossRoom6b" file="crandoria/boss6b.xml" interval2="1440" margin="170" /> <raid name="BossRoom6c" file="crandoria/boss6c.xml" interval2="1440" margin="170" /> <raid name="BossRoom6d" file="crandoria/boss6d.xml" interval2="1440" margin="170" /> <raid name="BossRoom7a" file="crandoria/boss7a.xml" interval2="1440" margin="170" /> <raid name="BossRoom7b" file="crandoria/boss7b.xml" interval2="1440" margin="170" /> <raid name="BossRoom7c" file="crandoria/boss7c.xml" interval2="1440" margin="170" /> <raid name="BossRoom7d" file="crandoria/boss7d.xml" interval2="1440" margin="170" /> Script Raid Boss (2) - (data/raids/crandoria) Citar <raid> <announce delay="1000" type="event" message="There's a new BOSS on the Boss Room!"/> <singlespawn delay="2000" name="Maxxenius" x="31574" y="23147" z="12"/> </raid> Script Raids por horário (3) - (data/scripts/globalevents/spawn) Citar local raids = { -- Weekly --Segunda-Feira ['Monday'] = { ['06:30'] = {raidName = 'Kroazur'}, ['09:00'] = {raidName = 'BossRoom1a'}, ['13:30'] = {raidName = 'BossRoom1b'}, ['14:30'] = {raidName = 'Kroazur'}, ['17:00'] = {raidName = 'BossRoom1c'}, ['22:15'] = {raidName = 'BossRoom1d'}, ['22:45'] = {raidName = 'Kroazur'} }, --Terça-Feira ['Tuesday'] = { ['06:30'] = {raidName = 'Kroazur'}, ['08:45'] = {raidName = 'BossRoom2a'}, ['12:15'] = {raidName = 'BossRoom2b'}, ['14:30'] = {raidName = 'Kroazur'}, ['16:00'] = {raidName = 'Midnight Panther'}, ['18:20'] = {raidName = 'BossRoom2c'}, ['22:40'] = {raidName = 'BossRoom2d'} }, --Quarta-Feira ['Wednesday'] = { ['06:45'] = {raidName = 'Kroazur'}, ['09:00'] = {raidName = 'BossRoom3a'}, ['12:00'] = {raidName = 'Draptor'}, ['14:50'] = {raidName = 'BossRoom3b'}, ['15:15'] = {raidName = 'Kroazur'}, ['19:50'] = {raidName = 'BossRoom3c'}, ['22:50'] = {raidName = 'BossRoom3d'}, ['23:30'] = {raidName = 'Kroazur'} }, --Quinta-Feira ['Thursday'] = { ['07:30'] = {raidName = 'Kroazur'}, ['08:15'] = {raidName = 'BossRoom4a'}, ['12:45'] = {raidName = 'BossRoom4b'}, ['14:30'] = {raidName = 'Kroazur'}, ['19:00'] = {raidName = 'BossRoom4c'}, ['22:30'] = {raidName = 'Kroazur'}, ['22:50'] = {raidName = 'BossRoom4d'} }, --Sexta-feira ['Friday'] = { ['06:30'] = {raidName = 'Kroazur'}, ['09:50'] = {raidName = 'BossRoom5a'}, ['15:15'] = {raidName = 'Kroazur'}, ['15:45'] = {raidName = 'BossRoom5b'}, ['19:50'] = {raidName = 'BossRoom5c'}, ['22:30'] = {raidName = 'Kroazur'}, ['23:20'] = {raidName = 'BossRoom5d'} }, --Sábado ['Saturday'] = { ['07:15'] = {raidName = 'Kroazur'}, ['09:30'] = {raidName = 'BossRoom6a'}, ['14:25'] = {raidName = 'BossRoom6b'}, ['14:45'] = {raidName = 'Kroazur'}, ['20:30'] = {raidName = 'BossRoom6c'}, ['23:00'] = {raidName = 'Kroazur'}, ['23:50'] = {raidName = 'BossRoom6d'} }, --Domingo ['Sunday'] = { ['06:30'] = {raidName = 'Kroazur'}, ['09:00'] = {raidName = 'BossRoom7a'}, ['12:00'] = {raidName = 'BossRoom7b'}, ['14:30'] = {raidName = 'Kroazur'}, ['15:50'] = {raidName = 'BossRoom7c'}, ['21:50'] = {raidName = 'BossRoom7d'}, ['22:45'] = {raidName = 'Kroazur'} }, -- By date (Day/Month) ['31/10'] = { ['16:00'] = {raidName = 'Halloween Hare'} } } local spawnRaids = GlobalEvent("spawn raids") function spawnRaids.onThink(interval, lastExecution, thinkInterval) local day, date = os.date('%A'), getRealDate() local raidDays = {} if raids[day] then raidDays[#raidDays + 1] = raids[day] end if raids[date] then raidDays[#raidDays + 1] = raids[date] end if #raidDays == 0 then return true end for i = 1, #raidDays do local settings = raidDays[i][getRealTime()] if settings and not settings.alreadyExecuted then Game.startRaid(settings.raidName) settings.alreadyExecuted = true end end return true end spawnRaids:interval(60000) spawnRaids:register() Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. Boss Room (31574, 23147, 12 - local de nascimento do Boss) Área da boss room (caso ajude no script): A: 31559, 23135, 12 B: 31587, 23158, 12 O que pensei foi em inserir algumas linhas que digam "se houver um dos seguintes monstros (bosses) na área entre A e B, não ocorrer a próxima raid". Ou algo assim. Infelizmente tudo o que eu faço é pegando modelos já prontos e não encontrei nenhum assim. OBS(2): Este é meu primeiro post aqui. Espero que tenha deixado tudo claro e que esteja no local correto. Peço desculpas caso tenha sido confuso em algum ponto e, se for o caso, peço que me informem para poder melhorar a passagem de informação. Valeu demais, pessoal! Editado Abril 3, 2023 2 anos por gfoschetti Correção dos nomes das raids no primeiro script. (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.