Jump to content

Olá Tibiano! Notamos que você está com um adblocker ligado... 

Nós promovemos servidores dentro da comunidade, para que eles tenham visibilidade.

Por favor, nos ajude a continuar promovendo esses servidores. Adicione nosso domínio na whitelist de seu adblocker, ok? :)

Search the Community

Showing results for tags 'evento'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Recursos
    • Suporte
    • Pedidos
    • Downloads
  • OFF-Topic

Categories

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Sou

Found 27 results

  1. Opa boa tarde galera, hoje venho trazer a vocês o sistema de evento igual ao do OtPokemon, no qual se define um horario, e sorteia um pokemon para voce matar, quem matar mais pokemons ganha o evento. OBS: Pokemons na tabela podem ser alterados, e os premios também, vamos la. Vá em data/globalevents e crie um arquivo lua com nome Monster Hunter.lua/ depois disso copie o código abaixo e cole no arquivo e salve. local monsters = { "Rattata","Caterpie","Metapod","Raticate","Charmander","Charmeleon","Butterfree","Beautifly","Squirtle","Wartortle","Poliwag","Cubone","Marowak","Diglett","Dugtrio","Sandshrew","Mareep","Beedril","Magnemite","Pikachu","Voltorb","Electrode","Elekid","Gastly","Haunter","Geodude","Machoke","Graveler","Pidgey","Pidgeotto","Weepinbell","Oddish","Gloom","Golbat","Zubat","Drowzee","Abra","Machop","Spearow","Nidoran Female","Nidoran Male","Nidorino","Nidorina","Bulbasaur","Ivysaur","Weedle","Kakuna","Eevee"} -- Monstros que podem ser sorteados local time_min, max = 10, 30 -- Em minutos local premios, gold = {{9020, 1}, {2152, 25}}, 10000 -- {id do item, quantidade} que o jogador ganha e quantia de gold function winMonsterEvent() local max_sto, winner = 0, 0 local monster = getGlobalStorageValue(90904488) for _, pid in pairs(getPlayersOnline()) do local sto = getPlayerStorageValue(pid, 90904487) if sto > max_sto then max_sto = sto winner = pid end end if isPlayer(winner) then local artigo = getPlayerSex(winner) == 0 and "[Derrote o Pokémon]: A jogadora" or "[Derrote o Pokémon]: O jogador" doBroadcastMessage(artigo.." "..getCreatureName(winner).." derrotou "..getPlayerStorageValue(winner, 90904487).." "..monster.."s e venceu o evento. Parabéns!",25) for _, prize in pairs(premios) do doPlayerAddItem(winner, prize[1], prize[2]) end doPlayerAddMoney(winner, gold) else doBroadcastMessage("[Derrote o Pokémon]: O evento terminou e não houve nenhum vencedor.") end setGlobalStorageValue(90904488, 0) end function onTimer() local random = math.random(1, #monsters) local time = math.random(time_min, max) for _, pid in pairs(getPlayersOnline()) do doPlayerSetStorageValue(pid, 90904487, 0) end setGlobalStorageValue(90904488, monsters[random]) doBroadcastMessage("[Derrote o Pokémon]: O evento começou e durará "..time.." minutos. O pokémon sorteado foi "..monsters[random].."! Quem conseguir derrotar mais "..monsters[random].."'s até o fim será o vencedor!",25) addEvent(winMonsterEvent, time*1000*60) return true end Feito isso vá em globalevents.xml e adicione essa tag. <globalevent name="Monster Hunter Event1" time="10:00" event="script" value="Monster Hunter.lua"/> Beleza, feito isso salve e de reload em seu servidor, que ja estara funcionando. Perguntas: "Ah se eu quiser por mais horarios? simples vá na tag copie ela e cole de novo, onde está "Monster Hunter Event1" time="10:00" mude para "Monster Hunter Event2" time="12:00"...lembrando sempre que voce adicionar 1 novo evento o horario também deve mudar. É isso obrigado a todos e até mais. Créditos: PokeZRing (de onde foi retirado) OTP (criador, me corrija caso esteja errado) Eu ( por disponibilizar)
  2. Bem bem bem bem.. venho trazer aqui um sistema/script seja la como quiser chamar que me chamou bema a tenção por ser bem interessante.. Feito pelo Karain (qual pedi autorização para repostar).. inicialmente havia sido feito para 0.4, inspirado num mini game para mc mas com a tendência de mudança e pedidos da comunidade o mesmo foi atualizado.. Não me peçam 0.4 pois ele não disponibilizou.. e bem.. atualizem-se né... eu não suporto 0.4 (para quem não entende, não suporto de não apóio) .~> Sobre o sistema - Como funciona <~. Primeiramente, se o jogador decidir se juntar a lista de espera do evento ele irá utilizar o comando !join hunger games e pronto.. estará na lista de espera. Depois de um tempo e quantidade de players para o evento (ambos configuráveis), assim que o evento começar eles serão teleportados para um local; terão todos seus items removidos de forma segura para um depot (configurável) Em cada mapa haverá chests que tem uma chance (random) de conter alguns items, o player precisa encontrar e coletar com intenção de sobreviver e ser o último player vivo. Premio configurável .~> Mapa<~. o mapa não foi feito pelo Karain, caso você seja dono do mapa e tenha como provar, por favor informe para que seu nome seja colocado nos créditos Download Do Mapa Aqui P.s.: não sei colocar scan nem como faz, se for preciso scan alguém faz por favor que eu edito o post Bug conhecido (mas acho que para server que não fique reiniciando isso não venha a ser um problema..) não testei essa parte para ver o que realmente ocorre.. // [edit]Código para correção do bug (não oficial) após o hunger.lua do global events[/edit] - alguns items podem não retornar ao player após o evento, mesmo que tenha sido carregado no mapa e nos scripts, no entanto, irá funcionar se o player tiver visitado o depot ao menos uma vez, em que o server ficou online Changelog 1.0.0 23 de julho 2015 : Liberado 1.0.1 29 de julho 2015 : Arrumado a atualziaçãod e items no chest após um player o abrir. 1.0.2 30 de julho 2015 : -Corrigido um erro fatal que acontecia quando um player morria ou dava logout enquanto no evento. -Adicionado o comando !ragequit que faz o jogador se matar enquanto no evento. 1.0.3 8 de agosto 2015: Corrigido bug que fazia o evento death ser executado em qualquer situação pvp, arquivos alterados: - creaturescripts/scripts/hunger.lua 1.0.4 9 de agosto 2015: Corrigido um debug no client por conta de broadcasts, obrigado ao silveralol, arquivos alterados: -globalevents/scripts/hunger.lua -creaturescripts/scripts/hunger.lua -creaturescripts/scripts/eventlogout.lua 1.0.5 30 de agosto 2015 (não oficial): Adicionado uma alteração para o problema de recuperação de items -globalevents/scripts/hunger.lua .~> Códigos <~. Em globalevents/globalevents.xml <globalevent type="startup" name="hunger" script="hunger.lua"/> Crie um arquivo chamado hunger.lua em globalevents/scripts e cole isso Em 30/08 o usuário Mokerhamer apareceu com uma solução para o problema que fazia com que alguns players não conseguissem recuperar os items após o evento, adicionando uma função clone, então funciona abrindo ou não o dp antes do evento.. estou sem pc novamente então não pude testar e o Karain até o momento não se pronunciou, de qualquer maneira parece promissor então vou colocar aparte. alterem por conta e risco. Altere a função player:getbackitems do código acima por este Em creaturescripts/creaturescripts.xml <event type="logout" name="eventlogout" script="eventlogout.lua"/> <event type="death" name="hunger" script="hunger.lua"/> Em creaturescripts/scripts/login.lua antes do return true player:registerEvent("hunger") Em creaturescripts/scripts/eventlogout.lua Em creaturescripts/scripts/hunger.lua Em talkactions/talkactions.xml <talkaction words="!join" separator=" " script="join.lua"/> <talkaction words="!ragequit" separator=" " script="leave.lua"/> Em talkactions/scripts/join.lua Em talkactions/scripts/leave.lua Em actions/actions.xml <!-- Hunger Games Chests --> <action fromaid="60101" toaid="60499" script="games/hunger.lua"/> <action fromaid="61101" toaid="61499" script="games/hunger.lua"/> <action fromaid="62101" toaid="62499" script="games/hunger.lua"/> Em actions/scripts/hunger.lua Curtiu da um rep ae né.. não arranca pedaço da mão e incentiva a trazer mais.. se você for sovina e n gostar de dar rep, ao menos um obrigado ja ta bom.. pelo menos mostra que esta valendo a pena ficar procurando sistemas maneiros para trazer, pedir autorização e traduzir as informações... [edit] para evitar problemas façam testes antes, fui informado por pm que as vezes mesmo indo ao dp antes alguns items ainda não retornam.. eu fiz um teste básico no sistema e não tive esse problema.. mas é melhor prevenir, por isso antes de colocar o sistema on no seu server façam stress test .Certamente o Karain esta tentando resolver mas mesmo assim eu fiz um post no seu tópico perguntando sobre informações mais detalhadas sobre e se esta sendo feito algo [edit 08/08] Alteração no script - vide Changelog [edit 09/08] Alteração no script - vide Changelog [edit 30/08] Alteração para o script - vide Changelog
  3. Acesse: www.worthserver.com Saudações, tibianos! É com um imenso prazer que venho anunciar a abertura da semana de testes do Worth! Como todos sabemos, o mapa global geralmente é cheio de erros e bugs, e por ser muito grande, torna-se difícil de encontrar e resolver todos com uma equipe de apenas duas pessoas. Com isso, na semana de testes, qualquer jogador poderá nos ajudar a encontrar bugs em nosso mapa. Por que ajudar? Isso não vai beneficiar apenas o servidor, claro que vocês também irão ganhar uma surpresinha(ou várias). Já avisamos de imediato que as recompensas para os jogadores que nos ajudarem a encontrar bugs serão exclusivas e não poderão ser obtidas após este período. Como reportar um bug: Você poderá usar o nosso sistema de tickets. Para isso, você deverá logar em sua conta e clicar em "Novo Ticket". Feito isso, selecione o personagem com o qual deseja participar da semana de testes, escolha a categoria "Bug Report" e manda brasa! Você pode nos dar tanto coordenadas quanto nos enviar imagens. Cada bug(real) reportado por um jogador, lhe dará um ponto em nossa tabela. As recompensas serão dadas aos 5 jogadores que obtiverem mais pontos durante a semana. Possivelmente deixaremos a tabela em nosso site para que todos possam acompanhar o andamento de suas ações. Durante a semana de testes, a rate de experiência do servidor será de 999x para facilitar a exploração do mesmo. Agora vamos ao que interessa: as recompensas! Depois de tanto esforço, vocês merecem algo legal, não é mesmo?! ▸ 1º Lugar: Bom, para o primeiro lugar reservamos um item "comum", mas que quando equipado a uma certa joia, chega muito perto de se igualar ao lendário Golden Helmet. ▪ Full Helmet of the Ancient(tempo ilimitado) . ▸ 2º Lugar: "O segundo lugar nunca é lembrado" Pfff. Mentira! Para o segundo colocado, reservamos uma arma exclusiva. Ela não possui muito ataque, mas quem sabe não possa servir para algo no futuro? ▪ Lich Staff . Caso não queira o prêmio, o jogador poderá optar por escolher qualquer outfit(inclusive os da store). ▸ 3º Lugar: A terceira posição sempre é a mais comum(pelo menos é a que eu sempre consigo xD), mas para este colocado reservamos um dos escudos menos comuns, porém mais bonitos do tibia. ▪ Eagle Shield. Caso não queira o prêmio, o jogador poderá optar por escolher qualquer outfit(com exceção dos outfits da store). ▸ 4º e 5º Lugar: Procuramos muitos itens para dar para os últimos colocados, mas assim acabaríamos perdendo vários itens que serviriam para eventos futuros. Então para os últimos colocados, um prêmio mais simples(será?). ▪ Golden Bug Trophy . ▪ Present Box(??). Todos os itens irão ter a seguinte mensagem adicional em sua descrição: "Obtido como recompensa da Semana de Testes realizada em 13/04/2018" Os itens serão entregues na inauguração do servidor. É isso. Espero que possamos fazer um belo trabalho juntos! Atenciosamente, Equipe Worth. Acesse: www.worthserver.com
  4. Olá galera. Teria como eu executar uma talkaction "/Castle Start" por uma globalevent numa determinada hora do dia "18:00" sem a presença do god online???? Ajudem, +rep pra qualquer tipo de dicas!!!! Obrigado
  5. Nome: Evento for fun Infos: quem é atingido pelo fogo morre, o último a sobreviver ganha. O evento é automático, mas também possui um comando para dar inicio ao evento, só usar /firestart minutos exemplo: /firestart 1 Fire_Storm_Event.xml <?xml version="1.0" encoding="ISO-8859-1"?><mod name="Fire Storm Event" version="8.6" author="Vodkart" contact="" enabled="yes"><config name="fire_config"><![CDATA[Fire = { storages = {172354, 172355}, -- storage Count players = {min = 2, max = 50}, -- min, max players no evento minLevel = 20, -- level minimo para entrar no event rewards = {{2160,10},{2494,1}}, -- premios que vai receber timeToStartEvent = 30, -- segundos para começar o evento CheckTime = 5, -- time to check event teleport = {{x=158, y=53, z=7}, {x=189 , y=58, z=7}}, -- posição do teleport, posição para onde o jogador vai arena = {{x=186,y=54,z=7},{x=193,y=60,z=7}} -- posição começo e final da area}Fire_Days = { ["Monday"] = {"13:00","18:00","20:00","22:00"}, ["Tuesday"] = {"13:00","18:00","20:00","22:00"}, ["Wednesday"] = {"13:00","18:00","20:00","22:00"}, ["Thursday"] = {"13:00","18:00","20:00","22:00"}, ["Friday"] = {"13:00","18:00","20:00","22:00"}, ["Saturday"] = {"13:00","18:00","20:00","22:00"}, ["Sunday"] = {"13:00","18:00","20:00","22:00"}}function removeFireTp() local t = getTileItemById(Fire.teleport[1], 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(Fire.teleport[1], CONST_ME_POFF)endfunction ZerarStorFire() setGlobalStorageValue(Fire.storages[1], 0) setGlobalStorageValue(Fire.storages[2], 0)endfunction getPlayersInFireEvent() local t = {} for _, pid in pairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), Fire.arena[1], Fire.arena[2]) then t[#t+1] = pid end end return tendfunction getFireRewards(cid, items) local backpack = doPlayerAddItem(cid, 1999, 1) -- backpackID for _, i_i in ipairs(items) do local item, amount = i_i[1],i_i[2] if isItemStackable(item) or amount == 1 then doAddContainerItem(backpack, item, amount) else for i = 1, amount do doAddContainerItem(backpack, item, 1) end end endendfunction doFireInArea(n) if #getPlayersInFireEvent() > 1 then for i = 1, n do local pos = {x=math.random(Fire.arena[1].x, Fire.arena[2].x), y=math.random(Fire.arena[1].y,Fire.arena[2].y), z=Fire.arena[1].z} local m = getTopCreature(pos).uid doSendDistanceShoot({x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, pos, CONST_ANI_FIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_HITBYFIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_FIREAREA) if m ~= 0 and isPlayer(m) then doSendMagicEffect(getCreaturePosition(m), CONST_ME_FIREAREA) doCreatureSay(m, "Ooh Burn Burn", TALKTYPE_ORANGE_1) local corpse = doCreateItem(3058, 1, getPlayerPosition(m)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(m) .. ". He was killed by Fire Field.") doSendMagicEffect(getPlayerPosition(m), CONST_ME_POFF) doTeleportThing(m, getTownTemplePosition(getPlayerTown(m))) doPlayerSendTextMessage(m, MESSAGE_EVENT_ADVANCE, "[Fire Storm Event] You died burned out.") end end local x = 2700-(200*n) addEvent(doFireInArea, x <= 0 and 500 or x, n+1) elseif #getPlayersInFireEvent() == 1 then local cid = getPlayersInFireEvent()[1] doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) getFireRewards(cid, Fire.rewards) doBroadcastMessage("Fire Storm Event have finished. The winner is ".. getCreatureName(cid).. ". Congratulations.", MESSAGE_EVENT_ADVANCE) ZerarStorFire() else doBroadcastMessage("No one Won the Fire Storm Event.", MESSAGE_EVENT_ADVANCE) ZerarStorFire() endendfunction CheckFireEvent(delay) if getGlobalStorageValue(Fire.storages[1]) ~= (Fire.players.max+1) then if delay > 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.max then doBroadcastMessage("[Fire Stortm Event] Starting in " .. delay .. " minutes! The teleport will be closed when the event start!", MESSAGE_STATUS_WARNING) elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.min then for _, cid in pairs(getPlayersInFireEvent()) do doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end removeFireTp() doBroadcastMessage("The Fire Storm event could not start because of to few players participating.\n At least " .. Fire.players.min .. " players is needed!", MESSAGE_STATUS_WARNING) ZerarStorFire() elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) >= Fire.players.min then removeFireTp() doBroadcastMessage("Good Lucky! The event will start on "..Fire.timeToStartEvent.." seconds. get ready!") addEvent(doFireInArea, Fire.timeToStartEvent*1000, 1) end addEvent(CheckFireEvent, 60000, delay-1) endend]]></config><globalevent name="Storm_Fire_Start" interval="60" event="script"><![CDATA[domodlib('fire_config')function onThink(interval, lastExecution) if Fire_Days[os.date("%A")] then local hrs = tostring(os.date("%X")):sub(1, 5) if isInArray(Fire_Days[os.date("%A")], hrs) and getGlobalStorageValue(Fire.storages[2]) <= 0 then local tp = doCreateItem(1387, 1, Fire.teleport[1]) doItemSetAttribute(tp, "aid", 45111) CheckFireEvent(Fire.CheckTime) setGlobalStorageValue(Fire.storages[1], 0) end end return trueend]]></globalevent><event type="login" name="Storm_Fire_Login" event="script"><![CDATA[domodlib('fire_config')function onLogin(cid) registerCreatureEvent(cid, "FireStormBatle") if isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end return trueend]]></event><event type="combat" name="FireStormBatle" event="script"><![CDATA[domodlib('fire_config')if isPlayer(cid) and isPlayer(target) and isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then doPlayerSendCancel(cid, "You may not attack this player.") return falseendreturn true]]></event><movevent type="StepIn" actionid ="45111" event="script"><![CDATA[domodlib('fire_config')function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true end if getPlayerAccess(cid) > 3 then return doTeleportThing(cid, Fire.teleport[2]) end if getPlayerLevel(cid) < Fire.minLevel then doTeleportThing(cid, fromPosition, true) doPlayerSendCancel(cid, "You need to be at least level " .. Fire.minLevel .. ".") doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) return true end if getGlobalStorageValue(Fire.storages[1]) <= Fire.players.max then doTeleportThing(cid, Fire.teleport[2]) setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1) doBroadcastMessage(getPlayerName(cid) .. " entered the fire stortm event! Currently " .. getGlobalStorageValue(Fire.storages[1]) .. " players have joined!", MESSAGE_STATUS_CONSOLE_RED) if getGlobalStorageValue(Fire.storages[1]) == Fire.players.max then setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1) removeFireTp() doBroadcastMessage("The event will start on "..Fire.timeToStartEvent.." seconds. get ready!") addEvent(doFireInArea, Fire.timeToStartEvent*1000, 1) end end return trueend]]></movevent><talkaction words="/firestart;!firestart" access="5" event="buffer"><![CDATA[domodlib('fire_config')if getGlobalStorageValue(Fire.storages[2]) > 0 then doPlayerSendCancel(cid, "The event is already starting.") return trueelseif not param or not tonumber(param) then doPlayerSendCancel(cid, "Use only numbers.") return true endlocal param = tonumber(param) <= 0 and 1 or tonumber(param)local tp = doCreateItem(1387, 1, Fire.teleport[1])doItemSetAttribute(tp, "aid", 45111)CheckFireEvent(tonumber(param))setGlobalStorageValue(Fire.storages[1], 0)setGlobalStorageValue(Fire.storages[2], 1)]]></talkaction><globalevent name="FireDebug-Start" type="start" event="buffer"><![CDATA[domodlib('fire_config')ZerarStorFire()return true]]></globalevent></mod> Baixa esse arquivo e adicione no seu servidor no respectivo lugar.! fire lua.rar fire lua.rar
  6. RESULTADO Olá caros amigos, após uma semana, analisamos as apresentações dos projetos e os votos. Não foi como esperávamos, os projetos estavam em total parte mais preocupados com a impressão das pessoas referente ao que já está pronto e não houve muita ênfase no principal, que era o desenvolvimento. Apesar disso, algumas apresentações chamaram muita atenção de membros. Sabemos que esta é a primeira edição e nas próximas haverá mudanças positivas, para trazer à comunidade apresentações cada vez melhores. Senti que muitos projetos não leram as recomendações publicadas dias antes do prazo para envio das apresentações, o que resultou, não só por este motivo em particular, no banimento de um membro da comunidade e na remoção de seu patrocínio. Gostaria de deixar claro que este membro quebrou várias normas do evento e infringiu pelo menos 3 regras importantes da nossa comunidade, uma delas é referente à ripping. Portanto, peço que dispensem acusações ao fórum, até porque esse mesmo membro tirou horas do seu dia para burlar a votação da maratona e criar provas fakes para atrapalhar os outros projetos, ou seja, não tem moral pra reclamar do evento. Isto serviu de exemplo para nós e para os próximos projetos que vierem a adquirir o nosso patrocínio. Pois pudemos enxergar de modo geral, através da maratona, a maturidade destes integrantes. O que foi avaliado? • Texto • Mídias • Impressão ao público • Presença administrativa (gerar e atender comentários de membros) • Contribuição O projeto vencedor da maratona é Pokemon Global, por @Tony Araujo, com a seguinte premiação: 150 Otservlists.com Coins 150 Xtibia Coins 30 Pontos de Reputação, distribuídos entre os integrantes do time. Em segundo lugar, Pokemon Light, por @Drazyn, com a seguinte premiação: 75 Otservlists.com Coins 75 Xtibia Coins 20 Pontos de reputação, distribuídos entre os integrantes do time. Não faremos 3º lugar devido ao número de participantes. Esperávamos 7 projetos, 2 foram desclassificados por inatividade e 1 desclassificado por infringir regras. (Entrar em contato para retirar os prêmios) Agradecemos a participação de todos os projetos e aos membros que colaboraram comentando e divulgando o evento, esperamos que a próxima edição seja melhor ainda! Comente abaixo.
  7. Maratona de Projetos Está chegando o prazo para entrega das apresentações da maratona de Projetos, alguns projetos estão com o pé atrás referente à isso e entendemos. Esta é a primeira vez que o evento se realiza e não é fácil digerir tudo isso de uma vez. Daremos algumas dicas abaixo para os projetos que estarão entregando a apresentação até este domingo. Se você não sabe do que se trata, leia: DICAS IMPORTANTES PARA PROJETOS Dica 1 - Saiba do que está falando A maratona de projetos tem como principal objetivo incentivar outros desenvolvedores. Você será um exemplo para estes membros, ruim ou bom, será um exemplo. Esqueça seus players, a jogabilidade, os objetivos. Fale de DESENVOLVIMENTO. Dica 2 - Seja objetivo Não canse seu leitor, isso pode forçá-lo a não entender o que você está tentando dizer. Seja objetivo, dispense detalhes inúteis (este mapa é quadrado; essa sprite foi adicionada porque gostamos do estilo ou esse conteúdo foi comprado.). Dica 3 - Organize suas informações Separe e organize as informações da apresentação, para que fique confortável e entendível. Você pode falar das reuniões (em que frequência ocorrem, como ocorrem (objetividade)); Das ferramentas de gerenciamento do projeto (eu e meu colega @Night Wolf utilizamos Trello, por exemplo); Como trocam informações antes ou depois das reuniões? (Como fazem para entrar em acordo em decisões difíceis ou comuns?); Quais prazos utilizam para estas decisões? Qual o compromisso da equipe quanto a isso?; Quais são as limitações que o projeto possui (falta de ferramentas, TFS, bugs, etc...); Como é desenvolvido o conteúdo de cada área?; Quais ferramentas os membros do projeto utilizam para desenvolver? Estes são exemplos de tópicos que formulariam, em parte, a rotina de um projeto em desenvolvimento. Não é necessário, muito menos preferível, que você desenvolvedor tenha essa rotina. Afinal, cada projeto tem sua metodologia, benefícios e malefícios diferentes. Dica 4 - Não se julgue Se você pensa que não está preparado para isto, não siga as instruções e/ou as copiem, seja você. Seja principalmente humilde, nossa comunidade está fraca de desenvolvedores e qualquer desenvolvedor, por menos profissional ou experiente que seja, é honrado por participar do evento. Então por mais julgado que seja, saiba que um projeto poderá perder o patrocínio não por estas questões levantadas, mas sim pelo caráter, linearidade e compromisso para com o projeto, sabendo reconhecer seus defeitos e suas qualidades. Dica 5 - Seja seu leitor Leia, releia e se possível atue sua apresentação, com essa repetição você adquire experiência no que está fazendo, assim como a segurança de que está fazendo algo certo. Saiba ser paciente, a paciência é um dos pilares que mantém projetos fortificados. Projetos que confirmaram a apresentação: Pokémon Hp Pokémon Global Heroes Valley Pokemon Light (PokéLight) Apresentações enviadas: 0
  8. MEMBRO DO MÊS Mais um mês se foi e aqui estamos novamente, desta vez para premiar o membro @Yan Liima, que teve grande influência na comunidade este mês, dando suporte, criando conteúdo e estando sempre presente. Parabéns @Yan Liima! Quer ser o próximo membro do mês? Participe ativamente da comunidade, estaremos observando-o. Fiquem ligados no Xtibia.com!
  9. Ola, sou novo aqui no forum, gostaria de saber se alguem sabe fazer algum scrip, lib (ou algo do tipo) de um monstro, que não se mova (uma torre no caso) que ataque somente certos players... pode ser somente players que usem tal outfit, ou cor de bota... algo do tipo... agradeço desde ja!
  10. O conflito entre os Coelhos da Páscoa e os Coelhos Malvados chegou a um ponto que não há mais como voltar atrás. A Varinha da Páscoa foi usada por muitos anos para conter a maldade dos Coelhos Malvados, mas o Senhor Coelho que fornecia o poder para a varinha já está com uma idade avançada e não tem mais como ajudar. Para piorar, o Krampus - que foi derrotado no natal - resolveu emprestar seu poder para os Coelhos Malvados e com esse poder eles conseguiram descobrir onde fica a Ilha Pascal - local onde os Coelhos da Páscoa ficam enquanto não é Páscoa. E agora?! Ilha Pascal. Os jogadores poderão escolher ajudar um dos dois lados: Coelhos da Páscoa (Senhor Coelho) ou Coelhos Malvados (Demoniac Bunny). Surgirão Coelhos Malvados e Coelhos da Páscoa em qualquer respawn de monstros que dão 700+ de exp (1x). Para cada coelho que um personagem matar ele receberá ponto individual. Se ele matar: - Coelhos Malvados receberá pontos no rank do Senhor Coelho e perderá pontos com o Demoniac Bunny. - Coelhos da Páscoa receberá pontos no rank do Demoniac Bunny e perderá pontos com o Senhor Coelho. Ou seja, o jogador deverá matar sempre o mesmo tipo de coelho para subir no rank. Utilizando o comando !pascoa, é possível acompanhar a própria pontuação durante o evento. O evento funcionará em Duskwood (exceto nas invasões). Além disso, haverá um rank global entre os Coelhos da Páscoa vs Coelhos Malvados que será divulgado no fim do evento. O jogador que fizer parte do rank vencedor (e tiver ao menos 300 pontos) ganhará um prêmio extra, veja mais detalhes na parte de premiação. Todos os coelhos têm chances de dropar os ovos de páscoa que são descritos mais abaixo, além disso, tem uma pequena chance de dropar o item Rabbit's Foot , que serve para domar o Emerald Waccoon (VIP). Os ovos não aparecem no loot dos coelhos, eles vão diretamente para a backpack (aparece uma mensagem na tela), porém o Rabbit's Foot irá para o corpo. Nem sempre os coelhos dropam os ovos. Todos os dias às 19h haverá invasões do Senhor Coelho (e seus Coelhos da Páscoa) e o Demoniac Bunny (e seus Coelhos Malvados) na Ilha Pascal (local no-pvp). O acesso será por um teleport que surgirá somente no horário do evento, na antiga casa do Senhor Coelho (em uma montanha a sudoeste de Wisland). Cuidado, eles são consideravelmente fortes! Invasão - Ilha Pascal. Invasão - Ilha Pascal. Premiação: Para o jogador que fizer mais pontos (um único jogador para todos servidores): The Epic Wisdom. Maior quantidade de pontos (independente do rank, serão três ganhadores por servidor): 1º - 60 Barras de Ouro. 2º -40 Barras de Ouro. 3º -20 Barras de Ouro. Todos que conseguirem 300 pontos ganharão: Montaria Steelbeak (FREE)​. + 10 dias de VIP (no dia 11/04, apenas se os pontos forem no rank com maior pontuação no rank global). Efeito dos ovos de páscoa: Verde, regenera 1/4 de vida. Roxo, regenera 1/5 de mana. Azul, aumenta 5 de ml por 2 horas (apenas para Sorcerers, Druids e Infernalists). Vermelho, aumenta 15 de distance e fist por 2 horas (apenas para Paladins e Knockers). Amarelo, aumenta 15 de melee por 2 horas (sword, axe e club) (apenas para Knights e Drunous). * Os ovos existentes antes deste evento continuarão dando o mesmo prêmio do ano passado. * Em caso de empate, vencerá quem matou o último coelho primeiro. * Os efeitos dos ovos não são cumulativos. CUIDADO ao comprar ovos de outros jogadores: Para identificar se o ovo tem efeito deste evento ou de um evento anterior, basta dar look, na descrição do item que mostrará se o ovo tem efeito do evento de 2014 (apenas experiência), 2015 ou se tem efeito deste evento de 2016 (os efeitos citados acima). O evento será ativado dia 24/03/2016 e encerrado às 06:00 do dia 13/04/2016. Desejamos uma boa páscoa a todos! Atenciosamente, Equipe RadBR
  11. Marfito

    Update!

    Novos monstros, nova deusa, novas hunts, novas quests e muito mais! "Eu estava procurando pela minha aliança que havia caído na areia. Me deparei com um escorpião e usei minha pá para matá-lo, como sou desajeitado, errei alguns golpes com a pá antes de acertá-lo... E notei que logo ao lado do escorpião morto havia um local escondido pela areia..." Nova cave no deserto de Tanaris. Foi criada uma hunt free de Chakal com restrição de 35 resets e idade 3. Neste local foi criada uma nova quest. Nova cave no deserto de Tanaris. Nova cave no deserto de Tanaris. "Minha nossa! Veja quantas aranhas! Quanto mais mato, mais surgem... Será que não tem fim?!" Hunt de Crystal Spider Champion. Novos monstros: Crystal Spider Champion & Glacie Spinne . Hunt de Glacie Spinne. Nova hunt free de Crystal Spider Champion. Possui restrição de 5 resets (tem conexão com a hunt de Glacie Spinne). Nova hunt (também para jogadores free) de Glacie Spinne. Possui restrição de 10 resets e idade 1 (tem conexão com a nova expansão de Everfrost). "Estávamos caçando Abomináveis em um grupo de 7 fortes pessoas, sentimos um arrepio estranho, e quando percebemos, estávamos cercados por dezenas de Abomináveis. Nós corremos e eu senti um frio muito intenso. Olhei para trás e vi os cadáveres dos meus companheiros cobertos por neve... 'Vocês são fracos. Congelarei não só suas carnes e ossos... Como suas almas!' Era o que ela gritava enquanto eu fugia. Não pode... Ela não pode ser humana." Expansão da Hunt de Abominável de Everfrost. Expansão da "cave grande" de Abominável de Everfrost. Essa expansão é free e pode ser acessada pela nova hunt de Glacie Spinne. A restrição para jogadores free é de 30 resets e idade 4. Para jogadores VIPs é de 20 resets e idade 3. Expansão da Hunt de Abominável de Everfrost. Expansão da Hunt de Abominável de Everfrost. Nova quest: Annihilator 3. Possui restrição de 35 resets.​ Annihilator III. Nova invasão: Skadi (), a deusa do inverno. Novo set para Sorcerers e Druids: Glacier Set: . Skadi, a deusa do inverno. Nova montaria: Ursagrodon () [VIP]. O item para domar essa criatura é o Melting Horn (). Medidas para conter a desvalorização do gold no jogo: ​Mudanças em algumas criaturas:Loot de platinum coins da Rotworm Mãe reduzido em 30%. Removido loot de crystal coins da Rotworm Mãe [ * ]. Reduzido loot do Anubis. Personagens com 5 ou mais resets pagarão 4 vezes mais pelas passagens de barco (exceto para a cidade de Southshire). Jogadores VIPs continuarão pagando metade do preço. Sistema de sorteio aleatório de crystal coins removido do jogo. Redução na premiação do evento Desafio dos Monstros:Nivel 1: 100k. Nivel 2: 250k. Nivel 3: 350k. Nivel 4: 500k. Valor do aluguel das houses foi dobrado para os jogadores free e vip account. Preço de algumas runas e alimento foram aumentados:​Super UH aumentado de 25k para 50k. NPCs free:Destroy Field de 5gps para 25gps. Fire Bomb de 58gps para 78gps. Magic Wall de 58gps para 78gps. Paralyze de 350gps para 460gps. Brown Mushroom de 17gps para 21gps. NPCs vip:Destroy Field de 5gps para 23gps. Fire Bomb de 56gps para 76gps. Magic Wall de 55gps para 75gps. Paralyze Rune de 360gps para 450gps. Brown Mushroom de 17gps para 20gps. Novidades no site:Jogadores que estiverem com cast aberto, aparecerá um icone na página do site. Nova condição ao comprar conta:"Houve transferência de personagens nas contas envolvidas a pouco tempo. Verifique os personagens e tente comprar novamente mais tarde". Quando uma conta for trocada e/ou excluída, todos os tickets serão excluídos por motivos de segurança. Novidades em NPCs:NPC Jockey alugará cavalos por pacotes semanais. NPCs Ruppert e Ema aprimoraram seus estudos e agora conseguem levar os jogadores até os Anubis de Tanaris. NPC Yuki possui novos desafios para jogadores com altos resets:Chakal [bOSS]. Lagarto Escolhido [bOSS]. Abominável [bOSS]. Novos NPCs foram implantados: Visconde & Almulk Alttijara. O que será que eles fazem? Modificações em criaturas:Loot do Ferumbras melhorado. Loot do Marte melhorado. Marte está mais forte. Alterações em eventos:Jogadores com skill melee 150+ ou ml 135+ não poderão mais participar do Evento do Castelo em Tanaris. Não é mais permitido entrar com Winter Dragon Boots no Evento Bomberman. Configurado para Drunous poderem usar Armadura de Flamas . Desintegrate Rune não funcionará mais em corpos. Melhorias em algumas magias:A magia transeamus! passou a alcançar 4 sqm ao invés de 3 sqm para a área de alcance. As magias exevo flam hur, exevo frigo hur e exevo gran frigo hur tiverem seus danos aumentados. Mudanças no shopping:Duração da stamina up extendida de 30 horas para 40 horas (não aumenta stamina bônus). Diminuído preço de 7 barras para 5 barras. Mudanças no Phoenix:Ethershreck e Dhonatello foram adicionados ao sistema de recompensa (apenas os que não são de invasão ou respawn). Confira mais informações sobre o sistema de recompensa clicando aqui. Criado uma enquete in-game que apenas jogadores acima do level 100 poderão participar. Para responder, basta seguir as instruções da mensagem ao logar. Criada restrição de 1 reset para jogadores free alugarem house. Possibilidade de remover MW e rush wood ("gravetos") jogadas por personagens nulos de PvP, não sendo possível remover as próprias mws ou de um jogador PvP ativo. Além disso, ao dar look na Magic Wall ou Rush Wood aparecerá qual personagem jogou. Novidades na equipe:Saída do (Moderador) Departures. Agradecemos pela ajuda prestada durante este período. Promoção do (Senior Tutor) Shakkatsun a nível 1 de Senior Tutor. Promoção do (GM) Puppets a nível de 1 de GM. Novo membro da equipe: (Sub-Moderadora) Wendy. Seja bem-vinda a equipe RadBR e esperamos que a sua estadia seja longa e próspera! Fórum:Foram criadas algumas sub-seções referentes as cidades do RadBR na seção Spoilers para melhor organização. Proibido spoilers deste patch por 6 meses. O inverno terminou no hemisfério norte e com isso, o gelo de Wisland foi derretido e a cidade voltou ao normal. Adicionado exhausted nos comandos do Mercado. Passagem para os Anubis em Tanaris foi aumentada para evitar alguns problemas. Agora não é mais possível ficar preso dentro da King Shield Quest quando não houver 5 personagens para seguir adiante. Erros reportados foram arrumados, dentre eles, a dragon scale boots que não estava protegendo contra fogo, algumas houses de Wisland que não dava para colocar cortinas e alguns locais de Garath que impossibilitava de abrir corpses. ▬ Loteria RadBR: "Tente a sua sorte! A vida é feita de oportunidades. O homem que vai mais longe é quase sempre aquele que tem coragem de arriscar." - Dale Carnegie Quer ganhar um Ornate Shield ? Então participe da loteria do RadBR! NPC Moros (Wisland). O NPC Moros, que fica localizado em Wisland, estará vendendo bilhetes que servem para concorrer a este item valioso. Todos os jogadores a partir do level 8 poderão participar do sorteio. Quando o jogador comprar o bilhete, ele estará participando automaticamente do sorteio e receberá um item (), que servirá somente para consulta. Apenas serão sorteados bilhetes comprados diretamente com o NPC. O Moros sabe exatamente para quem ele vendeu os bilhetes e entregará o prêmio somente para quem comprou o bilhete diretamente com ele, portanto, o bilhete recebido poderá ser comercializado normalmente entre os jogadores, porém não terá utilidade. A troca de nome do personagem não interfere no sorteio. O 1º sorteio da loteria RadBR será realizado no dia 24 de Abril, às 21h (horário de Brasília). O nome do vencedor de cada loteria será anunciado via broadcast (mensagem vermelha) no respectivo servidor. Caso o personagem migrar de um servidor para outro e/ou o personagem for deletado ele não estará mais participando da loteria. Se ocorrer a venda e/ou a troca do personagem, o bilhete continuará sendo válido, ou seja, quem comprou o personagem terá direito ao prêmio caso seja sorteado. ▬ Matador de aluguel: "Cansado dos power abuser? Não pode sair do depot que te matam? Um carinha não foi com a sua cara e agora você está hunted? Quer sacanear aquele seu amigo que fala que é imortal? Te mataram red skull e você dropou as baga? Quer se vingar? Então o Matador de Aluguel resolve o seu problema!" NPC John The Killer (Moonglade). Agora quem quiser pode colocar uma recompensa pela cabeça de outro personagem. Se vingar ficou muito mais fácil! Você pode colocar uma recompensa para que alguém mate um inimigo seu (pode ser em barras de ouro ou em gold). O NPC cobra uma pequena taxa pelo serviço (10% se for em barras e 15% se for em crystal coins). Caso ninguém mate o personagem em até 7 dias, a recompensa (- valor da taxa) é devolvida para quem criou. A mudança de nome, quests e participantes da mesma guild não interfere durante o período de hunteds. É possível ver os personagens com a corda no pescoço através de uma página exclusiva para o sistema em nosso site. Para pegar a recompensa, basta falar com o NPC e posteriormente matar o personagem da lista de caçados. Mais informações, fale com o NPC John The Killer, que fica localizado em Moonglade. Lista dos hunteds no site. ▬ Descongelando o Ursagrodon: Para descongela-lo, é necessário usar Melting Horns (). Existem 3 fases de descongelamento: . Basta dar "use with" no Melting Horn, o item irá sumir cada vez que for usado, podendo falhar e não descongelar o Ursagrodon. Após o descongelamento total das 3 fases, aparecerá o monstro. É necessário reduzir a vida e usar um outro Melting Horn para domá-lo. Para conseguir um Melting Horn você precisa de um Fireproof Horn () e procurar um local extremamente quente. ▬ Watering Can: Já pensou ter sua própria planta no RadBR e ainda cuidar delas para que elas se tornem um objeto valioso no futuro e ainda valorizá-la esteticamente? Dentro de algumas semanas será possível! Se você quiser saber como obter algumas das plantas abaixo, consulte a NPC Hortencia, que estará disponível no jogo em breve. Ela poderá pedir que o jogador realize algumas tarefas antes de conseguir o watering can. A aparição dela será aleatória, surgindo em alguns locais do mapa, como em Nighthaven, Everfrost e em Zanknore. Ela também estará vendendo algumas plantas (que não tem relação com o sistema watering can) para o jogador. → →→ →→ →→ →→ →→ →→ → Estágio das plantas. Existem 4 estágios das plantas, os dois primeiros são idênticos de todos os tipos de plantas. Quando o jogador conseguir o Watering Can () através da NPC Hortencia, é necessário que o jogador regue as suas plantas usando o mesmo. Ao regar a planta, existe a possibilidade dela mudar de estágio ou morrer (), caso ela não seja regada poderá morrer após um tempo, portanto, tomem cuidado!. Atenciosamente, Equipe RadBR
  12. Parabéns RadBR! É com enorme prazer que convidamos todos os jogadores para participar do oitavo aniversário do RadBR! → Do dia 07/02 até o dia 14/02 estarão com chances 3x de invasões automáticas e 4x de surgir criaturas [*], além disso teremos Eventos Bomberman aleatoriamente durante esse período... Mas não para por aqui! → Evento do bolo: O tradicional e gigantesco bolo de aniversário do RadBR está com risco de não ser apreciado pelos Radbianos! Um esfomeado grupo de Gulosos ficou sabendo do nosso delicioso bolo de aniversário e resolveu atacar... Eles descobriram onde é a cozinha do RadBR e devoraram o bolo todo! Agora precisamos da ajuda de todos os jogadores para reunir novos ingredientes para fazer um bolo novo. 1ª Parte do Evento - Coletando os ingredientes: Dia 12/02 (sexta) surgirão ingredientes (monstros) por todo mapa do RadBR durante o dia todo, para coletar os ingredientes basta matar as criaturas. Os ingredientes não tem loot, mas dão experiência. Os ingredientes fazem parte de uma Task Global. Existe uma quantidade mínima de ingredientes a serem coletados: Massa de Bolo → Coletar 500 Massa de Chocolate → Coletar 500 Cereja → Coletar 100 Coco → Coletar 200 Barra de Chocolate → Coletar 200 Framboesa → Coletar 200 Leite → Coletar 200 O servidor que conseguir coletar a quantidade mínima de todos os ingredientes terá uma premiação melhor na parte 2 do evento (caso vença). Durante o evento estará disponível o comando !ingredientes, onde mostra o andamento da Task Global e a pontuação do seu personagem. Os jogadores que conseguirem coletar o maior número de ingredientes (por servidor) serão recompensados com: 1º Lugar 40 Barras de Ouro. 2º Lugar 30 Barras de Ouro. ​3º Lugar 20 Barras de Ouro. Segunda parte do evento - Comer o bolo: Dia 13/02 (Sábado), às 18:00 (horário de Brasilia), teremos a parte que todos aguardam da festa... Comer o Bolo! O bolo surgirá em uma ilha afastada que poderá ser acessada através de um portal no templo de Wisland. Ao comer um pedaço do bolo o jogador ganhará pontos de experiência, podendo ganhar uma valiosa Cake Backpack . Para comer o bolo basta dar Use nas "paredes" do bolo. Durante o evento os Gulosos (criaturas) surgirão para atrapalhar os participantes do evento, eles dão experiência e loot. Não há restrição de level: Qualquer jogador poderá participar, não perde level, aol, skill (etc) ao morrer no local e o jogador poderá voltar. Todo o servidor estará no-pvp no momento do evento. O evento durará até todo o bolo ser comido. O servidor que terminar de comer o bolo primeiro, ganhará dois dias de Double Exp, caso o server vencedor tenha conseguido coletar a quantidade mínima de ingredientes, então terão dois dias de Triple Exp! → Evento de Invasão: Ocorrerá no dia 14/02 (Domingo), às 18:00. Todos os jogadores podem participar, não perde nada (incluindo level, skills, magic level, experiência, bless e AOL), ao morrer na arena do evento. O evento será acessado por um teleport no templo de Wisland. "Digam suas últimas palavras...". Isso mesmo, Korzus está confirmado para o Evento de Invasão! Mais informações no nosso fórum, ou pelo site: www.RadBR.com
  13. Fala galera, tudo bem? Então, eu li o sot#01 alguns dias atrás e achei bem legal a história no qual ele gira em torno. Tive algumas idéias e, mesmo o evento não tendo acontecido por falta de inscritos, resolvi fazer pra lembrar algumas coisas, afinal tinha uns 7 anos que não mexia com scripts para otserv. O resultado, que vou mostrar abaixo, é um evento global (mas que pode muito bem ser adaptado para uma quest ou outra finalidade). Como parte da recompensa do evento, fiz de bonus uma spell baseada na frozenOrb do whitewolf. Bom vamos lá. O Evento Basicamente é um evento estilo aquela brincadeira antiga de criança "dança das cadeiras". Como assim? Bom, na área do evento o número de espaços vazios vai ser sempre o número de players restantes no evento -1. Isso implica que, em cada turno, pelo menos um player deixará o evento. Contexto Luna é uma estrela endeusada pelos elfos e muito poderosa. De tempo em tempo ela se desperta todos os players onlines são convocados para tentarem domar a sua ira. Aquele que sobreviver à ira de Luna sem se congelar será capaz de controlar seu poder até o próximo despertar. editado: Esqueci de avisar que coloquei para ele ignorar o tile central na contagem de tiles livres pois no tile central, do meu mapa, eu coloquei um frozen starlight representando a luna e, a cada round, há uma animação na luna só para ficar bonitinho. Crie um arquivo chamado lunaevent.lua dentro de scripts e coloque o código abaixo nele: Em globalevents.xml coloque a tag: <globalevent name="Luna" interval="18000000" script="lunaevent.lua" /> A recompensa do evento é uma souvenir, um frozen starlight com o nome do vencedor do evento e x horas (no caso 5) podendo utilizar o poder de luna. Bom, eu criei uma spell para ilustrar o poder de luna e como utilizar o storage que foi preenchido para o vencedor do evento para controlar o uso de uma spell. Luna Strike Primeiramente adicione a tag abaixo em spells.xml: <instant name="Luna Strike" words="exori luna" lvl="100" manapercent="5" prem="0" range="6" casterTargetOrDirection="1" blockwalls="1" exhaustion="10000" groups="1,4000" icon="156" needlearn="0" event="script" value="attack/luna strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> Crie um arquivo chamado luna strike.lua dentro de scripts/attacks e coloque o código abaixo nele: Essa magia tem duas peculiaridades: 1. Ela tem uma chance de 1/15 para cada hit que ela dá de congelar o alvo e tornalo imóvel por 1.8 segundos, o que já está implementado nesse script e já funciona. 2. Em pvp, isso é, ao atacar um player, ela tem uma chance de 1/18 de liberar a Benção de Luna e tornar o caster imune aos ataques daquele player por 3 segundos (atenção, não são de todos os players da área, somente do player que liberou a benção de luna ao receber um hit). Para implementar essa segunda parte, precisamos ir em creature scripts. Adicione as tags abaixo a creaturescripts.xml: <event type="attack" name="NoAtt" event="script" value="luna.lua"/> <event type="cast" name="NoSpell" event="script" value="luna.lua"/> <event type="target" name="NoTgt" event="script" value="luna.lua"/> Crie um arquivo chamado luna.lua dentro de scripts e coloque o código abaixo nele: Pronto, o seu evento está configura e sua magia 'Luna Strike' poderá ser castada pelo último vencedor do mesmo. Espero que gostem, os scripts estão comentados e são bem auto-explicativos, mas qualquer dúvida podem me perguntar. Abraços,
  14. Anunciamos o início do Evento de Natal e as novidades do Patch de Dezembro: Patch Balanceamento das vocaçõesPaladin: Hit melhorado em 10%; Ataque do Infernal Bolt e Assassin Star melhorados; aumento da força das magias: Exevo Mas San e Exori San (modificado a fórmula, agora skill influencia). Knight : Criação da magia Exura Gran Ico que heala 4x mais que o Exura Ico, com 60s de cooldown e ao custo de 200 de mana; Reduzido o cooldown da magia Exori Ico para 2 segundos. Knocker: Vida e Mana regenerando mais lentamente; Cura levemente diminuída; Só é possível usar Mana Drain com skill alto. A quantidade de Anubis de Tanaris foi aumentada. Anúbis teve um aumento de 20% na experiência. Magic Teleport passa a custar 1kk e no servidor Andrômeda apenas Black e Red Skulls podem utilizar. Personagens com cast público aberto avançam mais rapidamente idade: A cada 60 segundos com cast aberto o personagem recebe +15 segundos de idade, ou seja, se o personagem ficar 4 minutos logado com cast aberto ele receberá 5 minutos de idade, 4 minutos é o normal por estar logado +1 minuto bônus por estar com cast público ativado. (Em casos de abuso o personagem poderá ser punido, inclusive ter a idade zerada) Criado o comando !task que mostra o progresso das tasks ativas do personagem, assim como o tempo máximo para entregar (apenas para jogadores VIP): ​ Implantação do novo Guia de Iniciantes. Atualizado a imagem dos itens King na Biblioteca. Mensagem automática de venda no canal Publicidade agora não divulga mais ofertas que o player selecionou para vender como anônimo no Market. Adicionado mais camas nas houses de Iceforge. Alterado o tipo de dano de Drowning para Físico das criaturas: Crawler, Spidris e Kollos. Zanknore agora está de cara nova! Treinadores de Zanknore. Sub-solo Zanknore. Sub-solo Zanknore. Depot de Zanknore. Aumentada a distância entre os personagens para Shared Party, agora é possível ficar até 4 SQMs. Erro do addon Wizard (que estava com itens invertidos) arrumado. Agora é possível comprar e vender contas no servidor Phoenix através do site. O sistema do Phoenix é um pouco diferente dos outros pois é necessário aprovação por Ticket para colocar um personagem à venda. Somente quem tem os dados cadastrados na conta poderá coloca-la a venda, isso deixa o sistema mais seguro. As tasks de Hydra, Demodras e Medusa foram liberadas no servidor Phoenix, mas a premiação não é experiência como os demais servidores. Não é mais possível comprar um personagem que esteve online nos últimos 10 minutos, melhorando a segurança na compra e evitando golpes. Ajustes internos.Registro de mensagens entre personagens aprimorado. Aperfeiçoamento do sistema de Tickets. Maior facilidade de acesso as informações de skills personagens por membros da equipe. Arrumados pequenos erros de ortografia. Reforma no Labirinto de Darkforest: Entrada da quest. Labirinto. Criado os itens Divine Bow e Super Divine Bow. A diferença para os Crossbows é na chance de acerto maior, porém tem menos poder de ataque. Para comprá-los basta usar o comando: !comprar divine e !comprar divine bow. Todas as Super Divine e Divine tiveram sua força aumentada, principalmente a Staff. Não é mais possível personagens free comprarem as montarias do Shopping, pois as montarias só podem ser usadas por personagens VIP. Arrumado BUG de personagens free que conseguiam usar montarias VIP. Aluguel da montaria Cavalo de Guerra aumentado o valor para 120k/dia. Nova montaria para venda no shopping: Black Stag (speed +30). Para comprar use o comando !comprar montaria black stag (30 barras). Novo Outfit para venda no Shopping: Puppeteer Outfit (Full / Male + Female). Para comprar use o comando !comprar roupa puppeteer (30 barras). Criada nova hunt em DragonWorld (Nighthaven) para personagens Hight Resets:Dragon Circle é um local perigoso e esconde alguns mistérios, cuidado ao andar por lá. Novos monstros: Draptor, Thunder Draptor, Shadow Draptor e Equipped Shadow Draptor. Adicionado respawns de Thunder Dragon em uma cave de DragonWorld. Dragon Circle (DragonWorld). O que será que esse Dragão faz? Dragon Circle. Dragon Circle Quest. Nova montaria: Draptor. Nova quest: Dragon Circle Quest. NPCs DragonFly e DragonLordFly recolocados no mapa de Nighthaven, agora é possível chegar até DragonWorld mais facilmente. O tão esperado Evento de Natal está de volta! E junto com o evento a Wisland de Inverno! Wisland de Inverno. Casa do Papai Noel. Ué, mas onde está o Papai Noel? Oh não! O terrível Krampus sequestrou o Papai Noel! O que será do Natal?! Ajude a salvar o natal no RadBR, enfrente o Krampus e suas renas negras, salve nosso querido e bom velhinho! Todas as criaturas estão com chances de dropar Brinquedo de Natal, que poderá ser trocado por um Presente de Natal com o Papai Noel, em Wisland. Os itens do presente foram revisados. == ? Aberta passagem para área de White Deer em Iceforge. Chances de surgir um Krampus nos respawns de qualquer criatura... Mas cuidado! Ele é forte e surge em 5 níveis diferentes, dependendo do local. Diariamente surgirá uma invasão do Krampus mais forte junto com suas Black Stag e com ele estará o Papai Noel Ferido. Mas como curar o Papai Noel? Vocês precisam descobrir para salvar o Natal! O Krampus e as Black Stag dropam Christmas Tokens que podem ser trocados com o NPC Ajudante do Papai Noel pelos itens: Santa Backpack (100 CT) Leaf Golem Santa (150 CT) Gorro do Papai Noel (70 CT) Carpacosaurus (Speed 64 - Aluguel de 15 dias por 100 CT) Emperor Deer (Free - 500 CT) Bless: Solitude Charm (bless Ommni) 40 CT Sun charm (bless Tiny) 40 CT Spiritual Charm (bless Phonny) 40 CT Phoenix Charm (bless Wzolah) 40 CT Unity Charm (bless Eduard) 80 CT O evento de Natal será encerrado no dia 23/01/2016 às 06:00. Equipe RadBR 2015. Desejamos a todos um Feliz Natal e um próspero Ano Novo!
  15. Luna, a estrela mais amada pelos elfos, vista como um ponto azul e brilhante, ilumina a terra mais que a lua nas noites escuras. Na fortaleza leste da grande floresta, encontra-se a floresta azul, mais conhecida como Lui. Um lugar hábil e sagrado para elfos em treinamento; Yulai é uma jovem elfa que recém formou-se na academia de elfos jovens. Todas as noites, Yulai costumava sentar em um tronco de uma árvore-base (são as maiores da fortaleza), e permanecia por horas olhando para a estrela Luna. Certo dia, Yulai estava deitada olhando para Luna, até notar que a luz da estrela se desfazia no vazio do céu. No mesmo instante, uma luz cegante caiu sobre a floresta e transformou todos os elfos, animais e até mesmo as menores criaturas, em cristais azuis petrificados, com exceção de Yulai. Ela procurou desesperadamente por alguém que não tivesse sido petrificado pela estrela, mas sem sucesso, desistiu. Yulai não conseguia parar de pensar em alguma forma de concertar isto, afinal, porque a estrela mais venerada pelos elfos, Luna, faria isso? Ou não fora ela?" Clique aqui para participar
  16. Funcionamento • Cada edição do AoM abriga um tema específico de um mapa, uma primeira imagem é adicionada ao tópico; • Os membros devem tentar adivinhar qual é o tema do Mapa; • As sugestões são, geralmente, palavras como: Depot, Casa, Templo, Cachoeira. Dependendo da edição; • Se forem acumuladas 10 sugestões e ninguém acertar, é postado uma segunda imagem com mais itens no mapa; • Caso acumular mais 10 tentativas na segunda imagem, é adicionado a terceira imagem; • Consequentemente, a quarta imagem e a última, a quinta imagem; • Se ninguém acertar após a quarta dica, é levado em consideração a pessoa que mais chegou perto do acerto; • A premiação muda conforme a quantidade de dicas que foram dadas. • Somente vence quem falar a resposta correta, se o tema for "BAR", quem falar taverna não acertou; • Os participantes podem dar várias sugestões, mas apenas 1 por post: você deve esperar outra pessoa comentar para comentar novamente; Premiação Acerto DICA 1 20 Pontos de Reputação + Acerto DICA 2 15 Pontos de Reputação + Acerto DICA 3 10 Pontos de Reputação + Acerto DICA 4 5 Pontos de Reputação + Acerto DICA 5 3 Pontos de Reputação + DICA 1 DICA 2 DICA 3 DICA 4 DICA 5
  17. Funcionamento • Cada edição do AoM abriga um tema específico de um mapa, uma primeira imagem é adicionada ao tópico; • Os membros devem tentar adivinhar qual é o tema do Mapa; • As sugestões são, geralmente, palavras como: Depot, Casa, Templo, Cachoeira. Dependendo da edição; • Se forem acumuladas 10 sugestões e ninguém acertar, é postado uma segunda imagem com mais itens no mapa; • Caso acumular mais 10 tentativas na segunda imagem, é adicionado a terceira imagem; • Consequentemente, a quarta imagem e a última, a quinta imagem; • Se ninguém acertar após a quarta dica, é levado em consideração a pessoa que mais chegou perto do acerto; • A premiação muda conforme a quantidade de dicas que foram dadas. • Somente vence quem falar a resposta correta, se o tema for "BAR", quem falar taverna não acertou; • Os participantes podem dar várias sugestões, mas apenas 1 por post: você deve esperar outra pessoa comentar para comentar novamente; Premiação Acerto DICA 1 20 Pontos de Reputação + Acerto DICA 2 15 Pontos de Reputação + Acerto DICA 3 10 Pontos de Reputação + Acerto DICA 4 5 Pontos de Reputação + Acerto DICA 5 3 Pontos de Reputação + DICA 1 DICA 2 DICA 3 DICA 4 DICA 5
  18. • O que é? Adivinhe o Mapa (AoM) é um evento divertido de mapping onde são dadas imagens evolutivas de um determinado mapa, a pessoa que acertar receberá prêmios. Funcionamento • Cada edição do AoM abriga um tema específico de um mapa, uma primeira imagem é adicionada ao tópico; • Os membros devem tentar adivinhar qual é o tema do Mapa; • As sugestões são, geralmente, palavras como: Depot, Casa, Templo, Cachoeira. Dependendo da edição; • Se forem acumuladas 10 sugestões e ninguém acertar, é postado uma segunda imagem com mais itens no mapa; • Caso acumular mais 10 tentativas na segunda imagem, é adicionado a terceira imagem; • Consequentemente, a quarta imagem e a última, a quinta imagem; • Se ninguém acertar após a quarta dica, é levado em consideração a pessoa que mais chegou perto do acerto; • A premiação muda conforme a quantidade de dicas que foram dadas. • Somente vence quem falar a resposta correta, se o tema for "BAR", quem falar taverna não acertou; • Os participantes podem dar várias sugestões, mas apenas 1 por post: você deve esperar outra pessoa comentar para comentar novamente; Premiação Acerto DICA 1 20 Pontos de Reputação + Acerto DICA 2 15 Pontos de Reputação + Acerto DICA 3 10 Pontos de Reputação + Acerto DICA 4 5 Pontos de Reputação + Acerto DICA 5 3 Pontos de Reputação + DICA 1 DICA 2 DICA 3 DICA 4 DICA 5
  19. • O que é? Adivinhe o Mapa (AoM) é um evento divertido de mapping onde são dadas imagens evolutivas de um determinado mapa, a pessoa que acertar receberá prêmios. Funcionamento • Cada edição do AoM abriga um tema específico de um mapa, uma primeira imagem é adicionada ao tópico; • Os membros devem tentar adivinhar qual é o tema do Mapa; • As sugestões são, geralmente, palavras como: Depot, Casa, Templo, Cachoeira. Dependendo da edição; • Se forem acumuladas 10 sugestões e ninguém acertar, é postado uma segunda imagem com mais itens no mapa; • Caso acumular mais 10 tentativas na segunda imagem, é adicionado a terceira imagem; • Consequentemente, a quarta imagem e a última, a quinta imagem; • Se ninguém acertar após a quarta dica, é levado em consideração a pessoa que mais chegou perto do acerto; • A premiação muda conforme a quantidade de dicas que foram dadas. Regras Premiação Acerto DICA 1 20 Pontos de Reputação + Acerto DICA 2 15 Pontos de Reputação + Acerto DICA 3 10 Pontos de Reputação + Acerto DICA 4 5 Pontos de Reputação + Acerto DICA 5 3 Pontos de Reputação + DICA 1 DICA 2 DICA 3 DICA 4 DICA 5 Resposta: Labirinto Vencedor: @Danihcv
  20. • O que é? Adivinhe o Mapa (AoM) é um evento divertido de mapping onde são dadas imagens evolutivas de um determinado mapa, a pessoa que acertar receberá prêmios. Funcionamento • Cada edição do AoM abriga um tema específico de um mapa, uma primeira imagem é adicionada ao tópico; • Os membros devem tentar adivinhar qual é o tema do Mapa; • As sugestões são, geralmente, palavras como: Depot, Casa, Templo, Cachoeira. Dependendo da edição; • Se forem acumuladas 10 sugestões e ninguém acertar, é postado uma segunda imagem com mais itens no mapa; • Caso acumular mais 10 tentativas na segunda imagem, é adicionado a terceira imagem; • Consequentemente, a quarta imagem e a última, a quinta imagem; • Se ninguém acertar após a quarta dica, é levado em consideração a pessoa que mais chegou perto do acerto; • A premiação muda conforme a quantidade de dicas que foram dadas. Regras Premiação Acerto DICA 1 20 Pontos de Reputação + Acerto DICA 2 15 Pontos de Reputação + Acerto DICA 3 10 Pontos de Reputação + Acerto DICA 4 5 Pontos de Reputação + Acerto DICA 5 3 Pontos de Reputação + • • Tema: Igreja Vencedor: @Wo11ven Acerto DICA 1 20 Pontos de Reputação + • • DICA 2 DICA 3 DICA 4 DICA 5
  21. • O que é? Adivinhe o Mapa (AoM) é um novo evento de mapping onde são dadas imagens (dicas) de um determinado mapa, a pessoa que acertar receberá prêmios. Funcionamento • Cada edição do AoM abriga um tema específico de um mapa, uma primeira imagem é adicionada ao tópico; • Os membros devem tentar adivinhar qual é o tema do Mapa; • As sugestões são, geralmente, palavras como: Depot, Casa, Templo, Cachoeira. Dependendo da edição; • Se forem acumuladas 10 sugestões e ninguém acertar, é postado uma segunda imagem com mais itens no mapa; • Caso acumular mais 10 tentativas na segunda imagem, é adicionado a terceira imagem; • Consequentemente, a quarta imagem e a última, a quinta imagem; • Se ninguém acertar após a quarta dica, é levado em consideração a pessoa que mais chegou perto do acerto; • A premiação muda conforme a quantidade de dicas que foram dadas. Para ler as regulamentações e participar, clique aqui!
  22. • O que é? Adivinhe o Mapa (AoM) é um evento divertido de mapping onde são dadas imagens evolutivas de um determinado mapa, a pessoa que acertar receberá prêmios. Funcionamento • Cada edição do AoM abriga um tema específico de um mapa, uma primeira imagem é adicionada ao tópico; • Os membros devem tentar adivinhar qual é o tema do Mapa; • As sugestões são, geralmente, palavras como: Depot, Casa, Templo, Cachoeira. Dependendo da edição; • Se forem acumuladas 10 sugestões e ninguém acertar, é postado uma segunda imagem com mais itens no mapa; • Caso acumular mais 10 tentativas na segunda imagem, é adicionado a terceira imagem; • Consequentemente, a quarta imagem e a última, a quinta imagem; • Se ninguém acertar após a quarta dica, é levado em consideração a pessoa que mais chegou perto do acerto; • A premiação muda conforme a quantidade de dicas que foram dadas. Regras • Não é obrigado postar apenas a sugestão, você pode deixar frases com sua análise do mapa ou outros tipos. Mas lembre-se de sempre destacar a sua sugestão. (Se não houver destaque, a primeira palavra sugerida será a resposta aceita) Exemplo: Fulano Postou: Levando em consideração o pilar utilizado com as velas, eu imagino que seja um lugar fechado para algum tipo de ritual, eu acredito que a resposta seja: "Templo" • Cada membro só pode dar uma sugestão por post (se não houver uma resposta destacada, o post é desconsiderado); • Você pode dar outras sugestões, mas sempre depois de outro post; Exemplo: Fulano: Eu acho que é um Circo Ciclano: Pode ser um Teatro, por causa das cortinas Fulano: Deve ser um Concerto, espero que tenha instrumentos atrás das cortinas • Somente vence quem falar a resposta correta, se o tema for "BAR", quem falar taverna não acertou; • É proibido editar posts; • Posts fora das regras serão ignorados/excluídos; Premiação Acerto DICA 1 20 Pontos de Reputação + Acerto DICA 2 15 Pontos de Reputação + Acerto DICA 3 10 Pontos de Reputação + Acerto DICA 4 5 Pontos de Reputação + Acerto DICA 5 3 Pontos de Reputação + DICA 1 DICA 2 DICA 3 • • • • MEMBRO VENCEDOR: @ RESPOSTA CORRETA: Restaurante Acerto DICA 3 10 Pontos de Reputação + Quem quiser ver quais seriam as próximas dicas, está abaixo: DICA 4 DICA 5
  23. Fala galerinha linda do XTibia, hoje estou trazendo um evento que andei modificando e otimizando, é o evento City WAR, este evento tem no servidorglobalwar e outros. A autoria vem de um membro da otland, portante havia o mesmo aqui em um datapack e decidi otimizar este evento para vocês do XTibia. Observação: É um pouco parecido com o evento do meu amigo e scripter DuH, porém com mais funções e regras, mas o objetivo é praticamente o mesmo. Como funciona: Quando um GM executar o comando para abrir o evento, abrirá um teleport no lugar configurada onde os membros entraram em uma arena onde não perde level nem skills, o evento terá o tempo de 20 minutos (configurável), caso o player morra poderá voltar novamente pelo teleport que estará localizado no lugar até o termino do evento, a regra é clara produção, quando der os X minutos, o que mais matou levará para a casa backpack o prêmio do evento. Vamos lá; Primeiramente, em sua pasta data/lib crie um arquivo com o nome de city war.lua e dentro do mesmo coloque: configCW = {timetostart = 500, -- tempo para iniciar o evento em segundos telpos = {x=32340, y=32213, z=7}, -- onde aparecerá o teleport stats = 201201201701, kill = 201201201702, death = 201201201703, ostime = 201201201704, evttime = 20, -- quanto tempo irá rolar o evento topleftPos = {x=32722, y=31336, z=6}, -- canto esquerdo superior botrightPos = {x=32791, y=31384, z=6}, -- canto direito inferior templepos = {x=32369, y=32241, z=7}, -- posição do templo principal arenapos = {{x=32722, y=31340, z=6}, {x=32786, y=31336, z=6}, {x=32722, y=31380, z=6}, {x=32783, y=31374, z=6}}, -- posição dos 4 tronos times = 8, -- não precisa mexer finaltime = 300 -- não precisa mexer } function configCW:new() local newevt = {} setmetatable(newevt, self) self.__index = self doBroadcastMessage("The City War will be open in " .. self.timetostart .. " seconds.") setGlobalStorageValue(self.stats, 0) addEvent(function () newevt:start() end, self.timetostart*1000) end function configCW:start() if getGlobalStorageValue(self.stats) == 0 then setGlobalStorageValue(self.ostime, os.time()) local teleport = doCreateItem(1387, self.telpos) doItemSetAttribute(teleport, "aid", 5540) setGlobalStorageValue(self.stats, 1) doBroadcastMessage("The City War is starting...") for _, posi in pairs(self.arenapos) do local item = getTileItemById(posi, 1387) if(item.uid ~= 0) then doRemoveItem(item.uid) end end addEvent(function () self:preclose() end, self.evttime*1000*60) addEvent(function () self:announce(0) end, (self.evttime/self.times)*1000*60) end end function configCW:announce(times) if times < self.times then if #self:getTopFrags(true) >= 1 then doBroadcastMessage("Top City War fraggers: " .. self:getTopFrags()) end addEvent(function () self:announce(times+1) end, (self.evttime/self.times)*1000*60) end end function configCW:preclose() if getGlobalStorageValue(self.stats) == 1 then setGlobalStorageValue(self.stats, 2) doBroadcastMessage("The City War will end in " .. self.finaltime .. " seconds.") addEvent(function () self:close() end, self.finaltime*1000) local item = getTileItemById(self.telpos, 1387) if(item.uid ~= 0) then doRemoveItem(item.uid) end end end function configCW:close() if getGlobalStorageValue(self.stats) == 2 then if #self:getTopFrags(true) >= 1 then doBroadcastMessage("The City War has ended. The winners are: " .. self:getTopFrags()) else doBroadcastMessage("The City War has ended. There were no winners.") end doRemovePlayersFromArea(self.topleftPos, self.botrightPos, self.templepos) for _, posi in pairs(self.arenapos) do doCreateTeleport(1387, self.templepos, posi) end for place, info in ipairs(self:getTopFrags(true)) do if place > 5 then break end local cid = getPlayerByName(info) doPlayerSendTextMessage(cid, 4, "Congratulations, you were the " .. place .. "º place in the City War.") doPlayerAddItem(cid, 6571, 1) end setGlobalStorageValue(self.stats, -1) end end function configCW:isPlayerInEvent(cid) if getPlayerStorageValue(cid, self.stats) == -1 or getPlayerStorageValue(cid, self.stats) - os.time() <= -5 or getGlobalStorageValue(self.stats) < 1 then return false end return true end function configCW:getTopFrags(tab) local frag = {} for _, pid in pairs(getPlayersOnline()) do if (getPlayerStorageValue(pid, self.kill) ~= -1 or getPlayerStorageValue(pid, self.death) ~= -1) and self:isPlayerInEvent(pid) then local kill = getPlayerStorageValue(pid, self.kill)+1 local death = getPlayerStorageValue(pid, self.death)+1 print(getCreatureName(pid), kill-death) table.insert(frag, {getCreatureName(pid), kill-death}) end end print(#frag) local frag, str, n = doOrderTab(frag, 0), nil, 5 print(#frag) if tab then return frag else if #frag < 5 then n = #frag end for i = 1, n do local cid = getPlayerByName(frag[i]) local kill = getPlayerStorageValue(cid, self.kill)+1 local death = getPlayerStorageValue(cid, self.death)+1 str = str and str .. ", " .. frag[i] .. "[" .. kill .. "/" .. death .. "]" or frag[i] .. "[" .. kill .. "/" .. death .. "]" end end return str end function doOrderTab(tabela, value) local max, index = {}, nil for i = 1, #tabela do valor = value for a, b in ipairs(tabela) do if b[2] > valor then valor = b[2] valor2 = b[1] index = a end end table.remove(tabela, index) if valor ~= value then table.insert(max, valor2) end end return max end Configuração do arquivo: telpos = {x=32340, y=32213, z=7}, -- POSIÇÃO ONDE NASCE O TP DO EVENTO! topleftPos = {x=32722, y=31336, z=6}, -- AQUI COLOQUE A POSIÇÃO DO CANTO ESQUERDO LA EM CIMA DO MAPA botrightPos = {x=32791, y=31384, z=6}, -- AQUI A POSIÇÃO DO CANTO DIREITO EM BAIXO DO MAPA templepos = {x=32369, y=32241, z=7}, -- POSIÇÃO DO TEMPLO ONDE OS JOGADORES NASCERAM PÓS A MORTE arenapos = {{x=32722, y=31340, z=6}, {x=32786, y=31336, z=6}, {x=32722, y=31380, z=6}, {x=32783, y=31374, z=6}}, -- ATENÇÃO, NO MAPA QUE ESTAREI DISPONIBILIZANDO VISIVELMENTE TERÁ 4 BASES, VOCÊ TERA QUE COLOCAR A POSIÇÃO DAS BASES AÍ NESSES 3 LUGARES. doPlayerAddItem(cid, 6571, 1) -- AQUI VOCÊ COLOCARÁ O PRÊMIO DO GANHADOR, NO CASO QUEIRA ADICIONAR POR EXEMPLO 1kk, COLOQUE 2160,1 - Primeiro ID depois quantia. Segundo passo, crie um arquivo com o nome de citywarCreature.lua e coloque dentro da pasta creaturescripts/scripts com o seguinte conteúdo: function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if isInRange(getCreaturePosition(cid), configCW.topleftPos, configCW.botrightPos) then setPlayerStorageValue(cid, configCW.death, getPlayerStorageValue(cid, configCW.death) +1) setPlayerStorageValue(lastHitKiller[1], configCW.kill, getPlayerStorageValue(lastHitKiller[1], configCW.kill) +1) end return true end E adicione em creaturescripts.xml a seguinte tag <event type="preparedeath" name="CityWar" event="script" value="citywarCreature.lua"/> Terceiro passo, crie um arquivo em movements/scripts com o nome de citywarMovements.lua com o seguinte conteúdo: function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition) if isPlayer(cid) and getGlobalStorageValue(configCW.stats) == 1 then doTeleportThing(cid, configCW.arenapos[math.random(1, #configCW.arenapos)]) doSendMagicEffect(getPlayerPosition(cid), 28) if not(configCW:isPlayerInEvent(cid)) then setPlayerStorageValue(cid, configCW.stats, getGlobalStorageValue(configCW.ostime) + configCW.evttime*60 + configCW.finaltime) setPlayerStorageValue(cid, configCW.kill, -1) setPlayerStorageValue(cid, configCW.death, -1) end else doTeleportThing(cid, fromPosition) end return true end Em Movements.xml adicione a seguinte linha <movevent type="StepIn" actionid="5540" event="script" value="citywarMovements.lua"/> Quarto e último passo, em talkactions/scripts crie um arquivo com o nome de citywarTalkactions.lua e coloque o seguinte conteúdo: function onSay(cid, words, param) if getGlobalStorageValue(configCW.stats) == -1 then configCW:new() else doPlayerSendCancel(cid, "The event is already running.") end return true end Em talkactions/talkactions.xml adicione a seguinte linha: <talkaction log="yes" words="/citywar" access="3" event="script" value="citywarTalkactions.lua"/> Este mapa é para o evento! Download : http://www.mediafire...ld City War.rar Scan : https://www.virustot...sis/1402539782/ Créditos: Absolute. Collocor.
  24. "... você ouviu os rumores? Este deserto está ficando cada vez mais perigoso, noite passada, cem guerreiros não voltaram… Vou rezar por eles." Nosso update está previsto para Julho/2015. Fiquem atentos. Aproveite para participar do evento "Adivinhe a data e a hora do update" em nosso fórum! Atenciosamente, Equipe RadBR
  25. SCRIPT EVENTS ZUMBIE VERSAO: 8.60 MAP: BAIAK YUROTS SCRIPT: ATUALIZADO Acesso Rapido: Quer conhecer Outros Conteudos da HARD? 1- Praia? [Tibia] Scripts De Verao No Xtibia - Hard Corporation Tags: Praia, Deusa do Mar,Pacote Summer, Marinheiro, Montaria Maritima,Bar do Eks, Barril de Rum. 116 visualizações. 2 - [Tibia] Scripts De Natal No Xtibia - Hard Corporation Tags: Presentes de Natal, Enfeites, Carta, Duende Askasleikir,Montaria Natalina, Tarefas de Natal, Toca Natalina (Gorro), Esquilo da Neve, Fireworksrocket. 446 visualizações. 3 - [Tibia] System Zumbi - Hard Corporation Tag: Funcionamento 100% | 2405 visualizações. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- TOPICO VISUALIZADO PELO ADMINISTRADOR DA HARD: Dia 30/01/2012. LEIA O TOPICO COMPLETO, CASO NAO QUEIRA FECHE O NAVEGADOR E DESISTA, POIS NAO IRA CONSEGUIR. Algumas informações sobre o Script Abaixo primeiramente, Quando o evento está começando você terá certos minutos para Entrar no teleport antes que desapareça. Quando o teleport desaparece, acontece o zombie spawn após 20 segundos. Os Zombies irão aparecer 1 de cada vez, a cada 20 segundos. Os players que morrerem no evento, serão teleportados para o templo. O vencedor do evento, recebe algumas recompensas e um cale-se dourado com seu nome. Lembrando a area do evento DEVE SER NO-PVP PARA os PLAYERS NAO SE MATAREM. Usaremos como Referencia as Seguintes TAGS: Tags Disponiveis: # Como Colocar o Horario para Iniciar o Evento? # Configurando o Horario? # Adicionando corretamente no Arquivo Login? # Criando o Monster Zombie. # Download do Mapa? Como Usar: Basta COPIAR A TAG Desejada Apertar Crtl+F e Procura-la que encontra-la no Topico. GLOSARIO: *Evento = Sera o Nome do Script *Plataforma = Espaço do Quadrado de Nascimento dos ZOMBIE # Como Colocar o Horario para Iniciar o Evento? VERIFIQUE se seu otServer Possui a Maioria dos Scripts contendo esta particula: [ interval="1635" OU time="16:35" ] Isso Vai Determinar Qual Dos Scripts USAR: ABRA OTserv\data\globalevents\globalevents.XML Adicione Isto: Adicione [1] Apenas o Compativel com seu OTSERVER! Salve e Feche *Este Vai Ser o HORARIO que o Evento ira se Iniciar Sozinho TODO DIA 15:00 (Voce pode trocar). # Configurando o Horario? 1000 Segundos = 16 minutos e 39,6 segundos 1 hora = 3600 segundos Um dia tem 86.400 Segundos, que são equivalentes à 1440 Minutos ou 24 Horas. Uma semana tem 604.800 segundos, que são equivalentes à 10.080 Minutos ou 168 Horas. Um Mês tem 2 milhões e 592 mil segundos, que são equivalentes à 43.200 Minutos ou 720 Horas. Um ano tem 31 Milhões e 536 segundos, que são equivalentes à 525.600 Minutos ou 8.760 Horas. Fonte: froog.com.br - Tudo sobre o Tempo. Agora Vamos ao Arquivo: OTserv\data\Globalevents\scripts\ Crie o Arquivo zombie.lua Usar para as 2 Formas DE OTSERVER Usado Linguagem Portuguesa Para LOCAIS Que Queira EDITAR o Valor. Salve e Feche Configurando A Base do Script: O Arquivo SALVO ACIMA é Necessario para: 1- o Evento Acontecer 2- Os Zumbie Nascerem 3- O Teleporte Ser Aberto e Fechado 4- Contagem de Players. 5- o Nome do Zombie, caso altere. MUDE AQUI TAMBEM 6- QUANTIDADE DE PLAYERS NECESSARIO, Maior que 2. 7- ID Do teleporte, ESPAçO DA PLATAFORMA. Caso ACONTECA ERROS NESTAS FUNCOES PEçA AJUDA E SAIBA ONDE CORRIGI-LAS. fromPosition = {x = 1186, y = 1072, z = 7}, -- possicao esquerda onde ira nascer os zumbi toPosition = {x = 1195, y = 1081, z = 7}, -- posicao direita onde ira nascer os zumbi O Local onde os Zombie irao Nascer deve Ser na area de Attack, ou seja, Se colocar no mar o Inicio da PLATAFORMA Os Zombie poderam nascer no MAR. Significa Como Apresentado na Imagem: VAMOS DIZER UM QUADRADO e os zumbie irao nascer SOMENTE dentro daquele LOCAL. 01:DIREITA - PARTE DE CIMA 02: ESQUERDA - PARTE DE BAIXO DESCONSIDERAR O TELEPORTE DA IMAGEM NUNCA COLOQUE TELEPORTE POIS IRA BUGAR O SCRIPT, NAO CONTANDO O PLAYER. A HARD NAO disponibiliza o MAP ou parte Deste conteudo para outro LOCAL. a Copia Parcial é CRIME e sera incarada como tal. Use o Createscripts para as 2 Formas de OTSERVER OTserv\data\creaturescripts\Creaturescripts.XML Adicione Isto: Salve e Feche Este arquivo ABAIXO é ESSENCIAL PARA O FUNCIONAMENTO DESTE: OTserv\data\creaturescripts\scripts\ Abra o Arquivo login.lua , Dentro Adicione: *Lembre-se de Adiciona-lo Na Linha ABAIXO dos outros, Sempre Com Paragrafos novos. Salve e Feche # Adicionando corretamente no Arquivo Login? Sempre por Paragrafos, LEMBRANDO que seu otserver Pode ser Por exemplo por Espaço, assim Tente configura-lo conforme ele se apresenta. registerCreatureEvent(cid, "XXXX") registerCreatureEvent(cid, "XXXXX") registerCreatureEvent(cid, "XXXX") registerCreatureEvent(cid, "zombieevent") registerCreatureEvent(cid, "XXXX") AINDA TAMBEM Alguns OTSERVERS Podem Possuir os Arquivos: Login.lua Login1.lua Login2.lua ..... Saiba onde configurar. CORRETAMENTE. Vamos Agora Para o Arquivo: OTserv\data\creaturescripts\scripts\ Crie um Aquivo .LUA Chamado zombie.lua , Dentro Adicione: Salve e FECHE. * CONFIGURANDO CREATESCRIPTS: RECORDANDO: Caso Aconteca PROBLEMAS ou ERROS Neste Arquivo TEMOS: 1- storage dos Players Registrados 2- PLATAFORMA Do Local dos Zombie Irao Nascer, deve ser Igual ao do GlobalEvents. 3- PREMIOS do Player Vencedor(a). Vamos Agora Para o Arquivo: OTserv\data\movements\movements.XML Adicione Isto: Salve e FECHE. ACTION 2000 Se Refere a Action do TELEPORTE, ou seja AQUELA QUE IRA CONTAR OS PLAYERS. ABAIXO voce Vai Enterder Um Problema que pode Acontecer com o SCRIPT, dependendo do Seu OTserver. PRESTE MUITA ATENçAO: PROCURE NA PASTA OTserv\data\actions\ actions.XML Tente Localizar algum Arquivo que possua a ACTION 2000 >>>Ctrl+F<< >>CASO NAO EXISTA PODE CONTINUAR O SCRIPT.. (Pule Esta Parte) >>CASO EXISTA TERA QUE MODIFICAR 2 COISAS NESTE SCRIPT: DELETE O ARQUIVO ACTIONS 2000 QUE VOCE ACHOU, na Maioria dos OTSERVER ele se chama Quest.lua ou Quests.lua Pois Este FARA INTERFERENCIA com o Script DO ZOMBIE. Quando e Como? Caso ele Esteja configurado como Disse no action 2000, é o ID de Quests, ou seja, ao passar por cima de um BAU Vai aparecer a MSG que o player entrou no Evento, sem ele Estar COMECANDO OU ACONTECENDO. ENTAO DELETE, e Adote outro MODELO ou Action para QUESTS. Salve e FECHE CASO TENHA MUDADO NO ACTIONS. PULE PARA Cá, CASO NAO EXISTA O PROBLEMA ACIMA. Vamos Agora Para o Arquivo: OTserv\data\movements\scripts\ Crie um Aquivo .LUA Chamado zombie.lua , Dentro Adicione: Salve e FECHE. CASO ACONTEçA PROBLEMAS OU ERROS, saiba o que este script CONTEM: 1- conta o Numero de Player no evento 2- conta o maximo de Players que poderam entrar no Evento. # Criando o Monster Zombie. Lembrando: Vamos Agora Para os ULTIMOS Arquivos: OTserv\data\monster\monsters.XML Adicione Isto: Salve e FECHE. Vamos Agora Para Arquivo do Monster: OTserv\data\monster\ Crie um Aquivo .XML Chamado event zombie , Dentro Adicione: Salve e FECHE. CONFIGURANDO MONSTER ZOMBIE: NAO MUDE O NOME . <flag attackable="0"> = NAO PODE ATACAR O MONSTER <immunity invisible="1"> = IMUNE A INVISIBLE E OUTROS PARA NAO ACONTECER DESVANTAGENS. # Download do Mapa? * O Mapa pode ser construido por Cada Usuario, Mas configurando as Plataformas, NAO ADIANTA FAZER O DOWNLOAD DO MAPA Pensando que a Plataforma é igual. NAO! é Necessario MUDA-LA pois OS IDs do chao de seu MAPA pode ser diferente. o Mapa nao é de Propriedade da Hard e Nao Foi Postado Por Esta para Download, pois Infringe Nossas Leis de Conduta. DOWNLOAD DO MAPA *a HARD apenas Disponibiliza o Conteudo para Acrescentar em seu OTserv, Retirar os Creditos do Desenvolvidor deste sera Encarado como Plagio a esta Obra. ENTENDENDO: *Esta Imagem Mostra que o Player Entrou Dentro do Evento. EU como (GOD) entrei 6 Vezes para Mostrar. MAS os Players Irao Entrar 1 VEZ SOMENTE e vai aparecer: PLAYER Entered the Zombie Event! Currently X Players have Joined! X: numero de players que estao no Evento PLAYER: Seu nome NAO DEIXE PORTAIS PARA VOLTA, POIS se o Player entrar novamente no Portal Sera Registrado como +1 e os Zumbie Irao nascer Para procurar este Player que (Nao existe , pois ele voltou e entrou novamente). Foi Adicionado ao Monster o Poder de Atacar Players INVISIBLE, Pois quando um Player ficava Invisivel Nao era Atacado. Este é o Exe do seu Otserver e as Msgs que aparecerao para Todos Players. EXEMPLO: * Este foi Retirado do script. DEVE SER ENCARADO COMO UM EXEMPLO APENAS POIS existem 2 maneiras diferentes. <globalevent name="zombieevent" interval="15000" event="script" value="zombie.lua"> o Erro de Execuçao foi Arrumado. 16:35: o Evento Foi aberto, o teleporte ira sumir em 5 minutos 16:40:Aqui o Teleporte ja Fechou.. 16:40:E os Zumbie irao começar a nascer em 20 segundos. Mostra o Nome do Player que Foi Infectado e Foi para o Templo.. LEMBRANDO O CORPO NAO SIGNIFICA QUE O PLAYER MORREU, POIS O LOCAL é NO-PVP 16:44 Numero de Zumbies SUMONADOS ate o momento.. Muito Obrigado por Adicionar este Evento em Seu OTserv e Torna-lo Famoso. DUVIDAS, PROBLEMAS, ERROS, ELOGIOS, RECLAMACOES E OUTROS COMENTE! e Obrigado
×
×
  • Create New...