Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 06/29/11 em todas áreas
-
Extreme Baiak Yourots
FehSky e um outro reagiu a SkyDangerous por um tópico no fórum
Otserv Retirado por SkyDangerous Se quiser o otserv que faça ou procure em outro forum. Até +2 pontos -
Alissow OTs 4.11! Esta versão 4.11 foi meio apressada, só adicionamos as features novas do 8.6. Aproveitem. Créditos: Alissow Comedinha Luis Nirk TFS Team Viniply Xedegux Sobre o OT/Mapa: Principais quests: -Annihilator -Inquisition Quest -Pits of inferno -Demon Oak -Solar axe quest -HOTA -MPA quest -The Challenger Monstros: -Total monstros: 10292 -Total spawn: 5587+ Cidades: -12 Cidades -200 Houses+- Raids/Invasões: -Rat -Orshabaal -Ghazbaran -Giant spider/The old window -Ferumbras -Morgaroth Spells: -Magias editadas para balanceamento das vocações Changelog Atualização [3.4 BETA]: - Removido áreas não usadas no mapa, diminuindo o tamanho em MBs - Adicionado Anti Magebomb System - Corrigido bugs no npc addon - Adicionado sistema onde os npcs falam sozinhos (Igual como foi adicionado no global). First ;] - Adicionado Elf village em Venonh ( bem parecida com a do global ;]) - Potions desaparecem quando usadas - Corrigido sistema de Up - Corrigido sistema de Monster Counter - Nova dragon lair em Mirand Theraan (Subsolo) - Adicionado porta de level, que protege leveis baixos acessarem os demons da cidade de Flam - Ampliado deserto da cidade de Mirand Theraan - Adicionado Ilha de Goroma - Adicionado Forbidden islands - Ampliado floresta da cidade de alfon e colocado área de macacos parecida com Banuta. - Ligação de alfon com Mirand Theraan - Corrigido bugs reportados nas portas das casas - Corrigido posição dos buracos e escadas - Adicionado beds em todas as casas - Corrigido bugs em casas de yalahar - Adicionado Blue legs quest ( Koshei The Deathless global) - Corrigidas quase todas as areas de Yalahar - Teleports em Yalahar substituidos por NPCs de teleport do global - Corrigido pequenos erros no npc Capitao Coruja, e adicionado viagem à goroma - diminuido ataque do Eye of the seven - Ice rapier agora quebra - Corrigido npc Banker - Adicionado quase todos os items 8.5 - Adicionado medusa - Adicionado Todos os outfits novos - Corrigido NPC Banker (que dava dinheiro) Script By Ta4e - Corrigido Annihilator Quest - Adicionado Notice System - Adicionado novo distro, compilado por Comedinha Atualização nº 2 [3.4]: Otserv atualizado... Corrigido debugs frequentes Corrigido debugs na magia exevo pan Corrigido bugs nos npcs Roy e Firewalker Adicionados mais novos items 8.5, agora temos 90% dos items novos... Atualização 3.5 [06/08/2009]: - Cidade principal (dorion) totalmente reformada - corrigido blue legs quest - Corrigido alavancas de compra de potions - Adicionado alavancas de compra de runas - Corrigido npc Bank - Adicionado NPC King Arthas, que vende promotion - Adicionado npc Rashid, que vende items. - Arrumado Wild Growth rune - Arrumado Utani Hur - Magias reajustadas - Novo estilo de server save - Ilha de mystic reformulada (by Nirk) - Adicionado nova magia para knights "Exkordium". - Adicionado nova magia para mages (promoted) "Exura Seil". - Adicionado nova magia para mages (promoted) "Exevo Gran Frigo". (arrumar -> sem exhausted nem gasta mana) - Adicionados novos monstros. - Adicionado quest challenge (lvl 250) - Corrigido bug do Dead Cyclops - Bug aol Arrumado - Poi Modificada - Corrigido teleports ghouls yalahar - Modificada demon helmet quest, assim como o premio da quest - Corrigido nome do Hallowed axe - Corrigido bug das houses - Corrigido bug dos items andaveis Atualização Patch 3.5.1 [07/08/2009]: - Corrigido erro na inicialização do Ot - Bug das potions corrigido - Bug do aol corrigido (pelomenos pra mim) - Bug dos outfits corrigido - Corrigido erros nas escadas na ilha PvP - O monstro The Fastest Turtle agora não morre, se tornando um monstro apenas para atrapalhar - Retirada suposta quest dos 3 hellhounds e 1 minishabaal - Adicionado teleport de retorno na Ferumbras Tower - Corrigido posições da raid de The old widow - Corrigido bug das escadas nas minas de demons - Corrigido alguns bugs vistos no mapa Atualização 3.6 [10/08/2009]: - Arrumado bugs criticos - Arrumado comando !promote/!demote - Atualizado Items.xml - Bug das Beds arrumado - Modificações na cidade, como, nature e caves - Nova sala de treino - Adicionado comando !highscores Atualização 3.7! Beta [18/12/2009]: - Guildhall support (Elf) - Nova deathlist(Elf, OpenTibia SVN) - Frags funcionando (Elf) - Atualizado monstros e items (slawkens, KaczooH, Elf) - Novas talkactions: /commands, /wp, /storage, /config, /promote & /demote. (slawkens) - Novas funções lua - Novos creatureevents (slawkens, Elf) - Novos configuráveis (Elf, slawkens) - Modificado ataque de monstros existentes (especialmente outfits e velocidade) (Elf) - Monstros reorganizados & atualizados (Nem todos) (slawkens) - Melhorado sistema de banimentos (Elf) - Reescrita janela de Rule Violation (Elf) - Arrumado Stamina (Elf, OpenTibia SVN) - Casas agora são salvas nas modificações do dono (Elf) - Escadas de yalahar funcionando perfeitamente (Elf, Talaturen) - Sistema de nado & waterball completo (slawkens) - Monstros invisiveis não são mais mandandos ao client (anti bot) (OpenTibia SVN) - Anti-dash (OpenTibia SVN) - Sistema de leilão de casas, possibilidade de usar site para vender casas (house_actions table) (OpenTibia SVN, Elf) - Salvando bot actions para /logs/bots por cada player. Por exemplo, bot pode enviar mensagem com mais de 255 caracteres (slawkens) - Novos raid events- item spawning & disappearing and more (Elf) - Modificações no NPC system (Elf) - NPCs OutfitModule (Elf) - Completo 8.53 support, com wars (Elf) - Completo 8.54 support (Elf) - Arrumado NPC voices (Elf) - Players serão informados quando o Gamemaster logar ou ficar invisivel (slawkens) - Arrumado Player Deaths (Elf, slawkens) - Arrumado Abuso de PZ (slawkens) - Portas agora não ajudam players a entrar em PZ (slawkens) - Magic level formula (OpenTibia SVN, KaczooH) - Memory leaks (Elf) - Queries optimization (Talaturen) - Janelas podem ser abertas do lado de fora da casa- agora apenas GMs podem fazer isso (slawkens) - arrumado Efeitos para o Ghost (GM)- configuravel (slawkens) - Corrigido >> Ghost debugging players (OpenTibia SVN, Elf) - Corrigido erro na promotion (Elf) - Corrigido vários erros no console. (slawkens) - Corrigido Spam de magias (Elf) - Corrigido stamina premium (Elf) - Corrigido Clean (Elf) - Corrigido vários outfits (Elf) - Corrigido Ghost (Elf) - Todas as correções no OpenTibia SVN (Open Tibia SVN, Elf) - Corrigido Todos os crashes possiveis (Elf) - Npcs Corrigidos (Comedinha) - Distro Reformulado (comedinha) - Bugs de reports arrumados (Comedinha) - Novos outfits (Alissow) - Actions Arrumadas (Comedinha) - Libs trocadas (Comedinha) - Talkactions bugadas arrumadas (Comedinha) - Reforma na área Sul da cidade Dorion (Alissow) - Adicionado monstros 8.54 (Alissow) - Corrigido bug das potions infinitas (Alissow) Atualização 3.7 Patch 1 [27/12/2009]: - Rampa na frente da loja de foods retirada (Alissow) - Arrumado bugs de mapa em anknor (Alissow) - Bug na Lib dos npcs corrigido (Alissow) - Bug do acc manager arrumado! (Alissow) - Magias "Exkordium" e "Ice Storm" arrumadas (Alissow) - Monstros 8.54 funcionando (Alissow) - 2º Addon Yalaharian arrumado (Alissow) - Addons Warmaster adicionados no NPC Addoner (Alissow) - Pequenas modificações na cidade principal, Dorion, para melhora da jogabilidade (Alissow) - Comando /Deathlist retirado (Alissow) - Magic Wall Rune arrumada (Alissow) - Quest Annihilator arrumada (Alissow) - "Your depot contain x items" Arrumado (Alissow) - Addons reorganizados, mais facil aggora (Alissow) - Tempo de Red skull e Black skull reduzidos para 24 e 42 horas (Alissow) - Reduzida porcentagem de morte (Alissow) - Acrescentado chance de critical hits (Alissow) - ShowHealingDamage Adicionado (Alissow) - Várias partes do mapa remapeadas (Alissow) - NPCs para recarga de Soft boots & Firewalker boots arrumados [Não testado] (Alissow) - Comando !frags arrumado! (Alissow) - Agora é possivel fazer addons sem precisar do comando !buypremium (Alissow) Atualização 3.8 [17/01/2010]: - Arrumado bug nas escadas do Dlair (Alissow) - Todos os bugs nos NPCs arrumados (Comedinha) - Novas talkactions [a pedidos] (Comedinha) - Deathlist arrumada (Comedinha) - Novo Distro (Comedinha) - MySQL Atualizada (Comedinha) - Firewarker boots não é mais gasta quando não está usando (Comedinha) - Problemas com items no Rashid arrumados (Alissow, Comedinha, Comunidade) - O NPC Banker foi corrigido, mas achei mais seguro retira-lo, visto que ninguem usava e poderia causar outro tipo de bug - Ilha (Sim aqui é uma ilha) de Zao adicionada (Alissow, Barker) - Monstros 8.54 aperfeiçoados (Alissow, Markithu, Zkum) - Reduzido danos da magia Exkordium (Alissow) - Os npcs Dark Rodo e Rachel vendem Blank Runes (Alissow) - Magias que não hitavam anteriormente foram arrumadas (Alissow) - Comando !buypremium arrumado (Alissow) - Arena PVM - Mais conhecida como Arena Svargrond - FUNCIONANDO!!! (Alissow) - Magia LightChain Retirada (Alissow) - Adicionado um sisteminha legal no templo (Alissow) - NPC Rashid retirado (Alissow) Atualização 3.8 Minor Patch 1 [17/01/2010]: - Comando Deathlist retirado novamente, fizemos testes equivocados. Se você é uma das 16 pessoas que baixou a versão anterior (3.8) não precisa baixar esta, basta retirar o comando !deathlist e /deathlist do seu Talkactions.xml, Os comandos causam quedas no servidor. Atualização 3.9 [15/02/2010]: - Cidade principal (Dorion) reformada, novo templo, novo depot, novo porto, novos npcs :] (Alissow) - Adicionado Reputation System (Comedinha, Cybermaster) - Adicionado !bless system (Comedinha) - /info melhorado (Comedinha) - Jail System (Comedinha) - Bug chatinho nos tiles pretos arrumado. - Magic Wall Funcionando! (Alissow) - Agora você pode fazer bolos e pães :] (Comedinha, Jean, Ojani) - Adicionado sistema de casamento (Comedinha, ScorpiOOn93, Alissow) - Loot The Fastest Turtle diminuido (Alissow) - Loot e experiencia do Feromous mais baixo (Alissow) - Sistema de parceis para Dorion funcionando (Alissow) - Guildwar System (Comedinha) - Anti MageBomb System (Comedinha, Huggen) - Adicionado Anti Nuker - Esse funciona! (Comedinha) - Adicionado Map Marks, para os players novos (Alissow, Comedinha) Atualização 4.0 [15/02/2010]: - Cidade Mountain totalmente reformada (Alissow) - Montanha de Goblins de Dorion reformada (Alissow) - Demonic Castle de Dorion reformado (Alissow) - Cidade de Venonh modificada (Luis) - Distro atualizado, funcionando nos clients 8.54, 8.55, 8.56 e 8.57 (Comedinha) - Comando !bless retirado (Alissow) - O NPC Ermes não vende mais items de decoração (Alissow) - Arrumado bugs na Ferumbras Tower (Alissow) - O comando !AFK on agora mantem o player parado (Comedinha) - Arrumado bugs nas escadas da área de DeathFans (Alissow) - Comando !Deathlist funcionando! (Alissow, Doidinmapper, GT Thionix) - Sistema de REP atualizado (Comedinha) - Sistema de Polls (Comedinha) - Banco por comandos (Comedinha) - Novos comandos de addon e accounts (Comedinha) - Sistema de futebol completo! (Comedinha) - Sistema Antibot (Comedinha) - Magia Spared Hur modificada (Alissow, Orzeleagle) - Adicionado sistema de montaria (Alissow, unknown666) - Adicionado Canivetes (Alissow, Siramix) - Nova hunt Subaquatica (Luis) Atualização 4.11! [11/07/2010]: - Versão 8.6, todos os items, outfits e monstros novos (Comedinhasss, Fireelement) - Adicionados os novos monstros 8.6 (Alissow) - Bug das potions arrumado (Comedinha, Matheusmkalo, Gabriel linhares, Fireelement) - Erros das runas arrumado (Comedinha, Gabriel linhares, Matheusmkalo, fireelement) Download Servidor: 4shared Tamanho: 17,416 KB Download: http://www.4shared.com/file/ez8XKrju/860_Alissow_Ots_411.html Link protegido: http://lix.in/-8d4bc0 Scan VirusTotal: http://www.virustotal.com/pt/analisis/983abb574dbb957a75aa1fd29eb804065f775e6a0c43216aa277686d32bce22a-1263702373 Atenção - Acc do God: god/god - LEIA o tópico antes de postar qualquer coisa ou duvida - Reportem se houver algum bug - A database fica na pasta schemas+Database - Proibido o uso do nosso distro sem o nosso consenso, obrigado. Andei percebendo que há muitos mapas feitos por mim em outros servidores postados aqui no xtibia, eu não sei se vocês sabem, mas isso é PLÁGIO. Eu não sou uma pessoa egoista, tudo que eu posto aqui no XTibia é para ser compartilhado, mas desde que mantenham os devidos créditos. Será denunciado qualquer tipo de "roubo" sem minha autorização para beneficio próprio. Eu sei que vocês não se importam muito com isso, eu também não deveria me importar, mas é o tempo e a dedicação de outra pessoa que vocês estão roubando, então peço gentilmente aos que tem conhecimento desses mapas, que me apontem. Não tem graça trabalhar horas e horas e ser roubado em dois minutos.1 ponto
-
Como Criar Quest Pelo Rme
Smoucs reagiu a locosporot por um tópico no fórum
Ola Xtibianos Vou mostrar como fazer com o Remere's map editor. Clique com o botão direito no Chest da quest e selecione properties. Em ActionID coloque 2000 Em UniqueID coloque qualquer outro storageID que você não esteja usando Por exemplo: No meu usamos um sistema como este e todas as quests tem UniqueID 20000+ Quest 1: UniqueID = 20001 Quest 2: UniqueID = 20002 E assim por diante... Imagem: XXXX = StorageID Depois de feito isso, você pode colocar quais itens quiser na sua quest. Como esta: -Você pode adicionar um item, vários itens, ou um recipiente cheio de itens. -É um sistema muito bom e fácil de usar, se você souber como funciona. -O quest system só funciona em TFS versão 0.3+ -Lembrando que a quest com esse sistema não funciona com GMs+, ou seja, só funciona com players normais. Creditos: Caio Felipe Msn para contato: caio_games_10@hotmail.com1 ponto -
Sistema De Owner Para Equips.
ChockerrGamer reagiu a MatheusGlad por um tópico no fórum
Bem o sistema é basicamente isso: Fazer com que so um player possa equipar determinado item. Eu fiquei em duvida se botava ou nao botava para aparecer o nome do owner no item, por isso fiz uma enquete para esse topico, a que vencer eu faço. Youtube: O script esta em mod, voce nao precisa nem mexer no mod. Crie um arquivo.xml na pasta mods do seu ot e nomeie-o de ownersystem (é extremamente importante que o nome seja esse.) e bote esse script: <?xml version="1.0" encoding="UTF-8"?> <mod name="OwnerSystem" enabled="yes" author="MatheusMkalo" credits="Cezar (Patterns)"> <config name="OwnerLib"><![CDATA[ function getSlotIds(tag) local file = "mods/ownersystem.xml" local input = assert(io.open(file)) local content = assert(input:read("*a")) local tag = content:match("(<movevent[^>]*slot=[\"']".. tag .."[\"'][^>]*>)") local itemid = tag:match("itemid=[\"'](.-)[\"']") input:close() return itemid:explode(";") end function writeId(tag, id) local file = "mods/ownersystem.xml" local input = assert(io.open(file)) local content = assert(input:read("*a")) local tag = content:match("(<movevent[^>]*slot=[\"']".. tag .."[\"'][^>]*>)") local itemid = tag:match("itemid=[\"'](.-)[\"']") input:close() if(itemid:match(tostring(id))) then return true end if(itemid == "") then itemid = id else itemid = itemid .. ";" .. id end local ntag = tag:gsub("itemid=[\"'](.-)[\"']", "itemid=\"" .. itemid .. "\"") local content = content:gsub(tag, ntag) local output = assert(io.open(file, "w")) output:write(content) output:close() addEvent(doReloadInfo, 1000, 22) end function getItemType(itemid) local slottypes = {"head", "body", "legs", "feet"} local arq = io.open("data/items/items.xml", "r"):read("*all") local attributes = arq:match('<item id="' .. itemid .. '".+name="' .. getItemNameById(itemid) ..'">(.-)</item>') local slot = "" for i,x in pairs(slottypes) do if attributes:find(x) then slot = x break end end if slot == "body" then slot = "armor" end return slot end function isHandedWeapon(itemuid) local typee = getItemWeaponType(itemuid) or 0 if typee >= 1 and typee <= 6 then return TRUE end end function isPlayerOwnerItem(cid, itemuid) return not getItemAttribute(itemuid, "ownerguid") or getItemAttribute(itemuid, "ownerguid") == getPlayerGUID(cid) end function setItemOwner(itemuid, cid) if isHandedWeapon(itemuid) then local equips = getSlotIds("hand") if not table.find(equips, getItemIdByName(getItemName(itemuid))) then writeId("hand", getItemIdByName(getItemName(itemuid))) end doItemSetAttribute(itemuid, "ownerguid", getPlayerGUID(cid)) elseif getItemType(getItemIdByName(getItemName(itemuid))) then local equips = getSlotIds(getItemType(getItemIdByName(getItemName(itemuid)))) if not table.find(equips, getItemIdByName(getItemName(itemuid))) then writeId(getItemType(getItemIdByName(getItemName(itemuid))), getItemIdByName(getItemName(itemuid))) end doItemSetAttribute(itemuid, "ownerguid", getPlayerGUID(cid)) end end ]]></config> <movevent type="Equip" itemid="" slot="head" event="script"><![CDATA[ domodlib("OwnerLib") if not isPlayerOwnerItem(cid, item.uid) then addEvent(doPlayerSendCancel, 1, cid, "You are not the owner of this item.") else return TRUE end ]]></movevent> <movevent type="Equip" itemid="" slot="hand" event="script"><![CDATA[ domodlib("OwnerLib") if not isPlayerOwnerItem(cid, item.uid) then addEvent(doPlayerSendCancel, 1, cid, "You are not the owner of this item.") else return TRUE end ]]></movevent> <movevent type="Equip" itemid="" slot="legs" event="script"><![CDATA[ domodlib("OwnerLib") if not isPlayerOwnerItem(cid, item.uid) then addEvent(doPlayerSendCancel, 1, cid, "You are not the owner of this item.") else return TRUE end ]]></movevent> <movevent type="Equip" itemid="" slot="armor" event="script"><![CDATA[ domodlib("OwnerLib") if not isPlayerOwnerItem(cid, item.uid) then addEvent(doPlayerSendCancel, 1, cid, "You are not the owner of this item.") else return TRUE end ]]></movevent> <movevent type="Equip" itemid="" slot="feet" event="script"><![CDATA[ domodlib("OwnerLib") if not isPlayerOwnerItem(cid, item.uid) then addEvent(doPlayerSendCancel, 1, cid, "You are not the owner of this item.") else return TRUE end ]]></movevent> </mod> Agora vá na pasta libs e abra o arquivo.lua que tem o nome de functions ou 050-functions (pode variar de ot pra ot) e adicione essa funçao: function setItemOwner(itemuid, cid) domodlib("OwnerLib") return setItemOwner(itemuid, cid) end Agora vá em data/talkactions/scripts e abra o arquivo createitem.lua e mude o script para esse: function onSay(cid, words, param, channel) if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") return true end local t = string.explode(param, ",") local ret = RETURNVALUE_NOERROR local pos = getCreaturePosition(cid) local id = tonumber(t[1]) if(not id) then id = getItemIdByName(t[1], false) if(not id) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Item wich such name does not exists.") return true end end local amount = 100 if(t[2]) then amount = t[2] end local item = doCreateItemEx(id, amount) if(t[3] and getBooleanFromString(t[3])) then if(t[4] and getBooleanFromString(t[4])) then pos = getCreatureLookPosition(cid) end ret = doTileAddItemEx(pos, item) else doPlayerAddItem(cid, id, amount) ret = RETURNVALUE_NOERROR end if(ret ~= RETURNVALUE_NOERROR) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Couldn't add item: " .. t[1]) return true end doDecayItem(item) if(not isPlayerGhost(cid)) then doSendMagicEffect(pos, CONST_ME_MAGIC_RED) end return true end É de extrema importancia que voce mude o script do /i, pois o i que vem nos ots contem um bug que arruina com o sistema de owner. Pronto agora você so precisa juntar a minha funçao setItemOwner(itemuid, cid) com qualquer outro script de quest whatever. Lembre-se se voce quizer algum script que use esse meu sistema, peça-o na sessao de pedidos de scripts, não aqui.1 ponto -
Bom pessoal vim postar aqui porque tive muitas dificuldades em conseguir por meu servidor on-line pois não conseguia encontrar um tutorial sobre esse roteador, o Tp-Link TL-WR340G, e acredito que não só eu tive essa dificuldade como outras pessoas. Então está aqui o Tutorial(serve para outros roteadores também, mas está mais bem explicado de como fazer no TP-Link em questão): 1º- Descobrindo seu Gateway padrão Você deve abrir o CMD (Win XP - vá em executar, digite CMD e de enter| Win vista/7 - Abra o iniciar, digite CMD em pesquisar la em baixo e de enter) Em seguida digite ipconfig no CMD e de Enter. Ficara assim: (Alguns números tampados para minha própria segurança) Você pegara o seu gateway padarão (no meu caso 192.168.1.1) e digitara no seu browser(IE, mozzila, safari, google chrome...) Em seguida pedira uma senha. No meu caso a senha é admin/admin, mas há varias formas como admin/[vazio] [vazio]/admin administrador/administrador administrador/[vazio] [vazio]/administrador Tente essas, se não der procure no manual do roteador ou no Google ^^. Após entrar, você vera isso: 2º Desbloqueando as portas Vá em Forwarding no canto direito, e na pagina que abrir clique em add new... Em Service Port você coloca a porta que quer liberar (7171) Em Ip Adress coloque o Ip do IPV4 (Volte ao cmd e veja) Em protocol coloque TCP Em Status deixe Enable Em Common Service Port deixe como está Clique em Save! Em seguida faça a mesma coisa, mas usando o Service Port 7172. Se você quer ter um site em seu ot faça novamente a mesma coisa pondo 8080 no Service Port. Ficara assim: (Alguns números tampados para minha própria segurança) Pronto, as portas do seu rotedor estão desbloqueadas, basta agora criar seu OT e ser feliz (: Ajudei? da um Rep+ ae ^^ Critiquem meu tutorial para saber em que melhorar pls (: Valeu galera1 ponto
-
New Naruto V3
irandasilvaalve reagiu a syshuy por um tópico no fórum
DE uma olhada no topico: Formaçao New Naruto v4 voltei a fazer os narutibias Map editor corrigo >> .Map editor ele ja tem npcs e monster da ultima atualizaçao. a v4 esta 30% pronta, esta demorando pq estou fazendo bem caprichado. Sobre os monster a exp do 4 kage vai ser diminuida, as areas do 2andar do templo sera liberada ,o monster Raikage sera adicionado. #infelizmente algumas das orgs citadas a baixa nao sera criadas por falta de sprites, mais serao 2,3. os errors que dao nos itens sera arrumado , 90%dos bugs sera corrido ,porque alguns eu nao sei arrumar como por exemplo '/n ' naao sei se dara para adicionar o comando /r mais vou tentar. !cmot3416 e !promotesex serao alterados para players nao poderem uzar. #MAPA o mapa nao tera grandes mudanças,mais vo tentar deixar as coisas legalzinha, nao sei mt sobre mapping intao se ficar feio voces que arrumen ao gosto . #previsao nao tem previsoes,estou bastante ocupado ultimamente graças a escola. pode ser que demore, pode ser que seja rapido. ----COMUNICADO---- encerro as atualizaçoes para o naruto v3. ----sem previsao---- Postarei a update v4 com muito mais organizaçoes, muito mais hunts.... so um pequeno preview .... Naruto Kage HAnzou salamandra Danzou Ginkaku e Genkaku Kakashi Anbu Itachi Anbu Chouza( pai do chouji ) Shikaku ( pai do shikamaru ) shibi ( pai do shino ) inochi ( pai da ino ) Killer Bee Momochi zabuza Gamas... Kurenai Sarutobi azuma( o verdadeiro sem ser o sensei) UZUMAKI kushina RIKUDOU SANNIN tsunade sannin Uchiha Fugaku ( pai do sasuke) uchiha sishui ( amigo do itachi ) Entre Outras O templo sera 100% modificado. As Hunts 80% modificadas Tera sala com Bosses. Sala de eventos. EM baixo do templo antes dos Gennins tem um espaço grande livre. Se alguem poder me dar dicas para o que fazer ali agradeçeria. Mapa que foi uzado no refugianaruto.servegame.com orgs existentes: ANBUS(MEDININ OININ LIDER)/ NUKENIN/TAKA/AKAT/KAGE/SENSEI/SHIPPUDEN/MADARA/IZUNA/SANNINS (NAO TEM TSUNADE)/NARUTO SENNIN E MAIS 2 ORGS FEITA POR MIN. ps: o npc naruto sennin ele nao muda a outfit do player intao pessa para ele uzar o comando !cmot3416 12 scan:SCAN SS: Creditos 50%Caio vilela ( pegamos as spells e npcs ) 10%a equipe do slim(por ter feito uma editada no mapa) 40%adm calish( editamos spell's balanceamos alguns clans ex:puppeter,criamos npcs,hunts,e uma leve editada no mapa) se for postar o server em outro lugar nao se esqueça dos creditos DOWNLOAD DO SERVER >>>>>>>>>> ---DOWNLOAD--- o arquivo esta comprimido em 9.74 mb. MAP EDITOR UZADO: map editor client recomendado AQUI Gostou? da rep+ ai nao gostou? da rep+ tmb porfavor comentem a respeito do server .. o que esta ruim o que pode melhorar vlw . Client recomendado >> Aqui -----------BUGS ATUAIS--------- trap do yondaime derruba o server mais isso sera corrido(---CORRIGIDO---) o comando /n buga os adms -----------------EDIT-------------- ATUALIZAÇAO 9-JUNHO 2011 NOVO MONSTER ADICIONADO (MVP WHIT WOLF).QUE DERRUBA ITEM UNICO BUG DO "UP DOIS CORRIGIDO" NOVAS SPELLS ADICIONADAS. MVP ATACK ( ATK DO NOVO MONSTER) MVP MANA ( ATK DO NOVO MONSTER ) MVP TRAP(ATK DO NOVO MONSTER) - ATACK ADM- UMA SPELL SO PARA ADM QUE POSSUI AREA PEQUENA E HIT ENORME. NOVA SPELL DO YONDAIME = RASENGAN SUPREMO 2 NOVAS ORGS ADICIONADAS MECHA E SOLDIER ( N EXISTEM NO ANIME ) MECHA= ATAQUES DE LONGA DISTANCIA GASTA MANA MODERADA E HIT MODERADO. SOLDIER= ATAQUES CURTA DISTANCIA GASTA MUITA MANA E ATAQUE DEVASTADORES.(nao e bom para upar mais otimo em pvp) Se algum spriter quiser me ajudar nesse projeto sera bem vindo SUGESTOES PARA NOVAS ATUALIZAÇOES ORGS SPELL MONSTER SAO BEM VINDAS. desculpem pelo meu analfabetismo duvidas me add msn: pedro.hlv@hotmail.com ouuuu kuchikibyakuya30@hotmail.com << esse de preferencia aew galera nao fale que o server e seu .passei um bom tempo fazendo o server nao roube meus creditos JA QUE NAO SEI FAZER ENQUETE VAI AQUI MESMO KKKK VOCE É A FAVOR DE CRIAÇAO DE ORGANIZAÇOES NAO EXISTENTES NO MANGA/ANIME? #SIM #NAO votem porfavor e se alguem souber cria enquete me avisa1 ponto -
Barco Que Anda Por Uma Rota.
edu6279 reagiu a MatheusGlad por um tópico no fórum
Preview: Va na pasta mod crie um arquivo XML com o nome de boatsystem e bote isso: <?xml version="1.0" encoding="UTF-8"?> <mod name="BoatSystem" enabled="yes" author="MatheusMkalo" forum="XTibia.com"> <config name="BoatSystemLib"><![CDATA[ mydirs= { [1] = {type = 1, ids = {3587, 3590, 3591}, xy = {0, -1}}, [2] = {type = 2, ids = {3592, 3595, 3596}, xy = {1, 0}}, [3] = {type = 1, ids = {3587, 3590, 3591}, xy = {0, 1}}, [4] = {type = 2, ids = {3592, 3595, 3596}, xy = {-1, 0}} } allids = {3587, 3590, 3591, 3592, 3595, 3596} function newEndb(endb, dir) local xx = endb.x local yy = endb.y for i = 1, #dir do xx = xx+mydirs[dir[i]].xy[1] yy = yy+mydirs[dir[i]].xy[2] end return {x=xx, y=yy, z=endb.z} end function doMoveBoat(post, dir, cid) local newboat = {} for i,s in ipairs(post) do local backu = getThingPos(s) doRemoveItem(s, 1) doCreateItem(mydirs[dir].ids[i], 1, {x=backu.x+mydirs[dir].xy[1], y=backu.y+mydirs[dir].xy[2], z=backu.z}) table.insert(newboat, getThingFromPos({x=backu.x+mydirs[dir].xy[1], y=backu.y+mydirs[dir].xy[2], z=backu.z, stackpos=1}).uid) end if mydirs[dir].type ~= post.type and mydirs[dir].type == 1 then doCreateItem(getThing(newboat[1]).itemid, 1, {x=getThingPos(newboat[1]).x+1, y=getThingPos(newboat[1]).y-1, z=getThingPos(newboat[1]).z}) doRemoveItem(newboat[1], 1) doCreateItem(getThing(newboat[3]).itemid, 1, {x=getThingPos(newboat[3]).x-1, y=getThingPos(newboat[3]).y+1, z=getThingPos(newboat[3]).z}) doRemoveItem(newboat[3], 1) elseif mydirs[dir].type ~= post.type and mydirs[dir].type == 2 then doCreateItem(getThing(newboat[1]).itemid, 1, {x=getThingPos(newboat[1]).x-1, y=getThingPos(newboat[1]).y+1, z=getThingPos(newboat[1]).z}) doRemoveItem(newboat[1], 1) doCreateItem(getThing(newboat[3]).itemid, 1, {x=getThingPos(newboat[3]).x+1, y=getThingPos(newboat[3]).y-1, z=getThingPos(newboat[3]).z}) doRemoveItem(newboat[3], 1) end if cid then doTeleportThing(cid, {x=getCreaturePosition(cid).x+mydirs[dir].xy[1], y=getCreaturePosition(cid).y+mydirs[dir].xy[2], z=getCreaturePosition(cid).z}, false) end end function getPosBoat(cid, pos) local pcid = not pos and getCreaturePosition(cid) or pos local check = getThingFromPos({x=pcid.x, y=pcid.y, z=pcid.z, stackpos=1}).itemid == mydirs[1].ids[2] and 1 or 2 if check == 1 then return {getThingFromPos({x=pcid.x, y=pcid.y-1, z=pcid.z, stackpos=1}).uid, getThingFromPos({x=pcid.x, y=pcid.y, z=pcid.z, stackpos=1}).uid, getThingFromPos({x=pcid.x, y=pcid.y+1, z=pcid.z, stackpos=1}).uid, type = check} elseif check == 2 then return {getThingFromPos({x=pcid.x-1, y=pcid.y, z=pcid.z, stackpos=1}).uid, getThingFromPos({x=pcid.x, y=pcid.y, z=pcid.z, stackpos=1}).uid, getThingFromPos({x=pcid.x+1, y=pcid.y, z=pcid.z, stackpos=1}).uid, type = check} end return false end function reverse(t) local result = {} for i = #t, 1, -1 do table.insert(result, t[i] == 1 and 3 or t[i] == 2 and 4 or t[i] == 3 and 1 or t[i] == 4 and 2) end return result end ]]></config> <movevent type="StepIn" actionid="6616" event="script"><![CDATA[ domodlib("BoatSystemLib") local t = {4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2} local postart = {x=968, y=1001, z=7, stackpos=1} local posback = {x=994, y=978, z=7, stackpos=1} local delay = 350 if toPosition.x == posback.x and toPosition.y == posback.y then doCreatureSetNoMove(cid, true) for i = 1, #reverse(t) do addEvent(function() doMoveBoat(getPosBoat(cid), reverse(t)[i], cid) end, i*delay) end addEvent(doCreatureSetNoMove, delay*#reverse(t)+100, cid, false) addEvent(function() doItemSetAttribute(getThingFromPos(postart).uid, "aid", 6616) end, delay*#t+100) elseif toPosition.x == postart.x and toPosition.y == postart.y then doCreatureSetNoMove(cid, true) for i = 1, #t do addEvent(function() doMoveBoat(getPosBoat(cid), t[i], cid) end, i*delay) end addEvent(doCreatureSetNoMove, delay*#t+100, cid, false) addEvent(function() doItemSetAttribute(getThingFromPos(posback).uid, "aid", 6616) end, delay*#t+100) end ]]></movevent> <movevent type="StepIn" actionid="6617" event="script"><![CDATA[ domodlib("BoatSystemLib") if not isInArray(allids, getThingFromPos({x=toPosition.x, y=toPosition.y, z=toPosition.z, stackpos=1}).itemid) then doTeleportThing(cid, fromPosition, false) end ]]></movevent> </mod> Agora configurando o script: No local t, sao todas as direçoes que o barco vai andar, em sentido horario: 1 = norte 2 = leste 3 = sul 4 = oeste No local postart eh a posiçao que o meio do barco vai estar quando ele estiver indo para algum lugar. No local posback eh a posiçao que o meio do barco vai estar quando ele estiver voltando. O delay eh o tempo em milesegundos que demora pra o barco andar. Adicionando no Map editor: Faça 3 sqms do id 4820. Adicione o actionid 6617 nesses sqms. Faça 3 ids de barco, voce escolhe se eh o virado para cima ou para o lado. Bote o actionid 6616 no meio do barco. Fica assim: O vermemlho indica que tem o id 4820 e o actionid 6617. O verde indica o actionid 6616 Na pos que ele vai chegar soh faça o negocio na agua, nao precisa fazer outro bote. OBS: PONHA OS SQMS DA ROTA PARA NAO PODER LOGA SE ALGUEM LOGA NO BARCO VAI DAR BUG1 ponto -
[8.6] Remere's Map Editor
GuuhTorres reagiu a luisfe23 por um tópico no fórum
Eae XTibianos O RME lançou a versão 2.0, compativel com a versão do Tibia 8.6, com todos os novos itens. Imagens: Download: www.remeresmapeditor.com/rmedl.php?file=RME-win-2.0.msi Créditos: Remere1 ponto -
[Tutorial] Criando Portraits
deathstar007 reagiu a Ciffer por um tópico no fórum
Bom galera hoje dia 28/06 (ontem foi meu niver dai nem entrei), vou ensinar uma maneira facil e rapida de criar portraits para OT's de Pokemon (PokeTibia ou PokeOT) OBS: Se existe algum tutorial assim EU NAO VI entao peço que fechem Agora sem inrolação... Creditos: Eu (Ciffer) Criador do Noxitu Criador do Paint (Microsoft) Criador do Click Pic O que vai ser ultilizado? Click Pic Noxitu Item Editor (dat editor) Sprite Edior Paint Já vem no PC Se alguma imagem nao carregou aqui vai o Album do tutorial 1° Passo 2° Passo 3° Passo 4° Passo 5° Passo .::Edit::. Qualquer duvida me da um toque que eu tento dar uma explicação melhor PEÇO QUE COMENTEM, SE NAO NUNCA SABEREI SE ESTOU INDO BEM1 ponto -
[Dev C++] Como Compilar Um Otserv
maelvip reagiu a comedinhasss por um tópico no fórum
Fala ae galera do xtibia.... Venho Aqui comigo postar meu mais novo tutorial... Como compilar um servidor The Forgotten Server em Windows(xp,vista,7) Antes de começarmos gostaria de fazer um breve FAQ: O Que é Compilação? É a transformação de um programa em código fonte (programa escrito pelo programador) em linguagem de máquina (programa executável). Existem centenas de linguagens de programação diferentes umas das outras, cada uma oferece recursos específicos para atender melhor uma necessidade ou características particulares, algumas são voltadas para bancos de dados, outras somente para a criação de interfaces comunicação (front-ends), aprendizado, etc. Cada linguagem de programação possui comandos específicos que desempenham alguma função, mas todas trabalham com variáveis de memória para a manipulação de dados de entrada/processamento. O Que é C++? O C++ (em português lê-se "cê mais mais") é uma linguagem de programação multiparadigma e de uso geral. A linguagem é considerada de médio nível, pois combina características de linguagens de alto e baixo níveis. Desde os anos 1990 é uma das linguagens comerciais mais populares, sendo bastante usada também na academia por seu grande desempenho e base de utilizadores. O Que é Programação? Uma linguagem de programação é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. Uma linguagem permite que um programador especifique precisamente sobre quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias circunstâncias. O conjunto de palavras (tokens), compostos de acordo com essas regras, constituem o código fonte de um software. Esse código fonte é depois traduzido para código de máquina, que é executado pelo processador. Uma das principais metas das linguagens de programação é permitir que programadores tenham uma maior produtividade, permitindo expressar suas intenções mais facilmente do que quando comparado com a linguagem que um computador entende nativamente (código de máquina). Assim, linguagens de programação são projetadas para adotar uma sintaxe de nível mais alto, que pode ser mais facilmente entendida por programadores humanos. Linguagens de programação são ferramentas importantes para que programadores e engenheiros de software possam escrever programas mais organizados e com maior rapidez. Linguagens de programação também tornam os programas menos dependentes de computadores ou ambientes computacionais específicos (propriedade chamada de portabilidade). Isto acontece porque programas escritos em linguagens de programação são traduzidos para o código de máquina do computador no qual será executado em vez de ser diretamente executado. Uma meta ambiciosa do Fortran, uma das primeiras linguagens de programação, era esta independência da máquina onde seria executada. Bom vamos começar com os downloads: Dev C++ para tfs 0.2 e 0.3: 32 & 64 Bit?: http://www.speedyshare.com/files/19724008/TheForgottenDevCpp.7z Dev C++ para tfs 0.4: 32 Bit: http://www.2shared.com/file/10390970/56443f7c/Stians_Repack_Dev-Cpp.html Mirror: http://rapidshare.com/files/329023838/Stian_s_Repack_Dev-Cpp.rar.html 64 Bit: http://www.megaupload.com/?d=ZO7WZHY9 Mirror: http://www.2shared.com/file/11221888/7c824fd3/Stians_Repack_Dev-Cpp_02_64bit.html Tortoise Svn (baixe em ingles): http://tortoisesvn.net/downloads Legenda: Passo 1 - Configurando Dev C++ Passo 2 - Baixando sources pelo Tortorise Svn Passo 3 - Compilando Passo 1: Abra o seu Dev C++: Se for sua primeira vez ira aparecer uma janela para configurar o seu Dev Cpp, Se não for sua primeira vez vá para o passo 2. Configure com a linguaguem Portugues(Brasil) pois com ela que vou fazer o tutorial... Escolha o estilo que você quiser de imagem pois o Dev C++ é seu... Passo 2: Após baixar o Torise Svn crie uma pasta vazia, clique com o botão direito nela e em SVN Checkout, em URL of repositroy adicone o link da tfs que você quer compilar: Veja a versão que você quer neste link (Recomendo a tfs 0.3.6pl1) http://svn.otland.net/public/forgottenserver/tags/ No site, clique na versão que você quer copie o link em cima do navegador Exemplo: http://svn.otland.net/public/forgottenserver/tags/0.3.6pl1 e cole no local em branco abaixo do URL of repositroy Aperte ok e espere baixar as sources para a pasta (Quando aparecer a mensagem done é que está pronto) Passo 3: Com o Dev Cpp Aberto, vá em Abrir - Abrir Arquivo ou Projeto - (A pasta Vazia que você criou) - dev-cpp - (e abra o arquivo) - TheForgottenServer.dev Para você editar alguma informação alguma coisa, Clique na source que quiser e edite so o que esta entre Aspas "" (em vermelho dentro delas) Para compilar vá em Executar - Compilar, Espere Aparecer Done, vá em (A pasta Vazia que você criou) - dev-cpp e terá o arquivo TheForgottenServer.exe Pronto você compilou seu The Forgotten Server Creditos: stian - Dev C++ Tortoise Svn Team - Tortoise Svn Eu - Tutorial Wikibooks - FAQ [O Que é Compilação] Wikipedia - FAQ [O Que é C++, O Que é Programação] Desculpe a todos que baixaram, aqui o dev que eu uso para 0.4 funciona para 0.3 não sei como... mais ja postei o novo.. caso você baixou e deu erro favor deletar tudo o que tem na pasta do dev para 0.4 e por nela os arquivos que tem no dev 0.3 ...1 ponto -
Removedor de Frags! Fala galera olha eu aqui de novo, a um tempo atrás eu postei um script aqui e falaram que eu tinha "ripado" ele, portando eu retirei aquele script mesmo sem ter copiado nada para não dar maiores problemas e resolvi criar outro com a mesma função. Não venham com esse papo de plágio, okay! Ta vamos parar de papo e vamos logo ao Script que é o que interessa né!? =) Vá até a pasta "Actions" entre na pasta "Script" e crie um arquivo com o nome de RemoveFrags.lua com isto dentro dele: -- [( Script created by Doidin for XTibia.com )] -- function onUse(cid, item, fromPosition, item2, toPosisition) local rskulls = {green = SKULL_GREEN, red = SKULL_RED, black = SKULL_BLACK} if isInArray(rskulls, getPlayerSkullType(cid)) then doPlayerSendCancel(cid,"You don't remover your frags and skulls.") doSendMagicEffect(getPlayerPosition(cid), 2) else db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")") doCreatureSetSkullType(cid, 0) doCreatureSay(cid, "Your frags and skulls is cleaned!", 19) doSendMagicEffect(getPlayerPosition(cid), 26) doRemoveItem(item.uid, 1) return TRUE end end Agora volte até a pasta "Actions" e abra o arquivo "Actions.xml" e adicione esta Tag nele: <action itemid="5468" event="script" value="RemoveFrags.lua"/> Pronto galera é isso ai, divirtam-se! :nuts:1 ponto
-
[Download]Quest Maker E Como Usar
ALLan162 reagiu a MatheusGlad por um tópico no fórum
Fikei em duvida se postava na aprovaçao de tutorial ou downloads, pois o meu contem os dois. Quest Maker Download: 4shared Virus Scan Virus Total Ps: So 1 antivirus achou, acho que inofensivo. Como usar: Ele e um programa muito simples de se usar porem algumas pessoas nao sabem, irei explicar. Apos baixar o Quest Maker bote-o na pasta "actions/scripts" do seu otserver. Em seguida,abra-o e espera carregar. Preencha todos os campos do quest maker. Use a ss como exemplo 1 - Nome do Arquivo.lua onde ficara o script (dentro da pasta aonde botou o Quest Maker) 2 - Comentarios (Nao ira modificar em nada seu script) 3 - Unique ID que voce vai botar no bau da quest.(Sempre botar um numero qualquer que n tenha em actions.xml) 4 - Storage ID. (Pode ser o mesmo do Unique ID, mais nao afetara se for diferente) 5 - Mensagem que ira aparecer apos completar a quest. 6 - Botao que cria o script em sua pasta. 7 - ID do item que ira dar na quest. 8 - Apaga todas as suas configuraçoes feitas no programa. 9 - Cria Tag que voce ira botar em actions.xml 10 - NAO USE ESTA BUGADO ELE TE DA OS IDS ERRADOS 11 - Aonde aparece sua tag criada pelo botao numero 9 Criando o Bau: Agora abra o seu mapa com o seu Map Editor e crie um bau. Adicione o UniqueId que voce colocou no Quest Maker. Salve e aproveite! Quest Criada com Sucesso Tutorial by MatheusMkalo, exclusivo para o Xtibia Copia Ilegal,PROIBIDA Sugestoes,Duvidas,Elogios aceitados nesse topico ou via MP.1 ponto -
Sistema M1-M12 Como Prometido
jhonnyyakato reagiu a Jeffer000 por um tópico no fórum
Nome do sistema: M1 ~M12 Autor : Editado por min , retiado do server Pokemon EX 2.0 Descrição : Como prometido resolvi postar o meu sistema de move, é o mesmo que vem no pokemon EX 2.0 , porem arrumei a maioria dos bug que encontrei como o de o trainer falar "m7" e a falta de ataque em alguns pokemons, não tive tempo de add pokemons shinys porque estou add pokemons johto no meu OT, mas assim que eu colocar os shinys posto aqui novamente. Alterações feitas: Add magia strafe, metronome,eggbomb e aluma otra que não lembro, enfim que add foi poucas, mas a grande modificação esta na parte de não estar faltano nenhum ataque em nenhum pokemon, como antes q exeggcute so tinha m2. Link para download Aqui Instalação : Extraia os 12 arquivos em sua pasta data\talkactions\scripts e depois na pasta data\talkactions abra o arquivo talkactions.xml e coloque o seguinte : <talkaction words="m1" case-sensitive="no" event="script" value="move1.lua"/> <talkaction words="m2" case-sensitive="no" event="script" value="move2.lua"/> <talkaction words="m3" case-sensitive="no" event="script" value="move3.lua"/> <talkaction words="m4" case-sensitive="no" event="script" value="move4.lua"/> <talkaction words="m5" case-sensitive="no" event="script" value="move5.lua"/> <talkaction words="m6" case-sensitive="no" event="script" value="move6.lua"/> <talkaction words="m7" case-sensitive="no" event="script" value="move7.lua"/> <talkaction words="m8" case-sensitive="no" event="script" value="move8.lua"/> <talkaction words="m9" case-sensitive="no" event="script" value="move9.lua"/> <talkaction words="m10" case-sensitive="no" event="script" value="move10.lua"/> <talkaction words="m11" case-sensitive="no" event="script" value="move11.lua"/> <talkaction words="m12" case-sensitive="no" event="script" value="move12.lua"/> Ainda não tive tempo de congirar tambem os CD's e o ataque max e min, então o mais facil fica por parte de vocês ^^ Qualque duvida postem aqui que tentarei ajudalos.Abraços1 ponto -
War Arena System.
dully reagiu a MatheusGlad por um tópico no fórum
Todos os scripts foram testados em um ot 8.6 Bem o script é auto-explicativo, e ainda tem um video do sistema, acho que nao preciso explicar o que faz ne? AGORA EM MOD, MUITO MAIS PRATICO DE INSTALAR. SE FOR USAR O MOD VA ATE O FINAL DO POST, É EXATAMENTE IGUAL A VERSAO NORMAL, SO QUE MAIS PRATICO. FUNCIONA DO MESMO JEITO. Video: obs: Veja em fullscreen para ver melhor as msgs que retornam. Vá em data/lib e adicione esse script.lua com o nome de WarArenaLib: -- [[ Area and Positions Infos ]] -- areaplayersteam = { {1,1,1,1}, {1,1,1,1}, {1,1,1,1}, {1,1,1,1}, {1,1,1,1} } areateam1ext = {x=80, y=305, z=7} -- Ponta superior esquerda da area do time um areateam2ext = {x=87, y=305, z=7} -- Ponta superior esquerda da area do time dois leaderteam1pos = {x=83, y=307, z=7, stackpos=255} -- Posição do lider do time um (que puxara a alavanca) leaderteam2pos = {x=87, y=307, z=7, stackpos=255} -- Posição do lider do time dois (que puxara a alavanca) newplayersposteam1 = {x=67, y=300, z=7} -- Posição para onde os players do time um serao teleportados newplayersposteam2 = {x=67, y=330, z=7} -- Posição para onde os players do time dois serao teleportados team1leverpos = {x=84, y=307, z=7, stackpos=1} -- Posição da alavanca que o lider do time um puxara team2leverpos = {x=86, y=307, z=7, stackpos=1} -- Posição da alavanca que o lider do time dois puxara leverafter, leverbefore = 9825, 9826 -- Ids das alavancas antes de puxadas e depois, consecutivamente (9825 = antes; 9826 = depois) posbenterteam1 = {x=78, y=307, z=7} -- Posiçao do sqm antes de entrar na arena do time 1 posbenterteam2 = {x=92, y=307, z=7} -- Posiçao do sqm antes de entrar na arena do time 2 backteampos = {x=77, y=307, z=7} -- [[ Storage Infos ]] -- team1leverstorage = 123497 -- Storage que sera usado quando puxarem a alavanca do time 1 team2leverstorage = 123498 -- Storage que sera usado quando puxarem a alavanca do time 2 haveteaminarena = 123499 -- Storage que sera usado para ve se tem algum time lutando na arena storageteam1death = 123500 -- Storage usado para ver quantos morreram do time 1 storageteam2death = 123501 -- Storage usado para ver quantos morreram do time 2 storageteam1 = 123502 -- Storage usado para ver quantas pessoas entraram na arena no time 1 storageteam2 = 123503 -- Storage usado para ver quantas pessoas entraram na arena no time 2 storageleader1 = 123504 -- Storage onde ficara guardado o uid do lider do time 1 storageleader2 = 123505 -- Storage onde ficara guardado o uid do lider do time 2 storageplayersteam1 = 123506 -- Storage que todos os players do team 1 iram ter. storageplatersteam2 = 123507 -- Storage que todos os players do team 2 iram ter. -- [[ Player Infos ]] -- needlevelarena = 20 -- Level que os outros jogadores sem ser o lider teram que ter. leaderlevel = 4000 -- Level que o lider tera que ter. onlyguildwars = true -- Se os membros de um time tem que ser da mesma guild do lider. (Nesse caso somente o lider da guild podera puxar a alavanca.) needplayers = 2 -- Quantidade de players que cada time tem que ter. -- [[ Functions ]] -- function getUidsFromArea(firstpos, area) local result = {} for i,x in pairs(area) do for s,z in pairs(x) do if isPlayer(getThingFromPos({x=firstpos.x+s-1, y=firstpos.y+i-1, z=firstpos.z, stackpos=255}).uid) then table.insert(result, getThingFromPos({x=firstpos.x+s-1, y=firstpos.y+i-1, z=firstpos.z, stackpos=255}).uid) end end end return result end function teleportUidsToPos(uids, pos) for i,x in pairs(uids) do doTeleportThing(x, pos) end end function isAllUidsSameGuild(uids, guildid) for i,x in pairs(uids) do if not (getPlayerGuildId(x) == guildid) then return false end end return true end function isAllUidsLevel(uids, level) for i,x in pairs(uids) do if not (getPlayerLevel(x) >= level) then return false end end return true end function haveQuantPlayersInArea(firstpos, area, quant) local result = 0 for i,x in pairs(area) do for s,z in pairs(x) do if isPlayer(getThingFromPos({x=firstpos.x+s-1, y=firstpos.y+i-1, z=firstpos.z, stackpos=255}).uid) then result = result+1 end end end return result >= quant end function addStorageToUids(uids, storage, value) for i,x in pairs(uids) do setPlayerStorageValue(x, storage, value) end end function checkPoses(pos1, pos2) if pos1.x == pos2.x and pos1.y == pos2.y and pos1.z == pos2.z then return true end return false end function startArena() setGlobalStorageValue(storageleader1, getThingFromPos(leaderteam1pos).uid) setGlobalStorageValue(storageleader2, getThingFromPos(leaderteam2pos).uid) addStorageToUids(team1uids, storageplayersteam1, 1) addStorageToUids(team2uids, storageplayersteam2, 1) teleportUidsToPos(team1uids, newplayersposteam1) teleportUidsToPos(team2uids, newplayersposteam2) setGlobalStorageValue(storageteam1, #team1uids) registerCreatureEventUids(team1uids, "DeathTeam1") registerCreatureEventUids(team2uids, "DeathTeam2") setGlobalStorageValue(storageteam2, #team2uids) setGlobalStorageValue(haveteaminarena, 1) setGlobalStorageValue(team1leverstorage, 0) setGlobalStorageValue(team2leverstorage, 0) doTransformItem(getThingFromPos(team1leverpos).uid, leverafter) doTransformItem(getThingFromPos(team2leverpos).uid, leverafter) end function haveTeamInArena() return getGlobalStorageValue(haveteaminarena) == 1 and true or false end function isSqmFromArea(firstpos, area, sqmpos) for i,x in pairs(area) do for s,z in pairs(x) do if sqmpos.x == firstpos.x+s-1 and sqmpos.y == firstpos.y+i-1 and sqmpos.z == firstpos.z then return true end end end return false end function registerCreatureEventUids(uids, event) for i,x in pairs(uids) do registerCreatureEvent(x, event) end end Agora vá em data/actions/scripts e adicione um script.lua com o nome de WarArenaLever: function onUse(cid, item, fromPosition, itemEx, toPosition) team1uids = getUidsFromArea(areateam1ext, areaplayersteam) team2uids = getUidsFromArea(areateam2ext, areaplayersteam) if haveTeamInArena() then return doPlayerSendCancel(cid, "Already have a team in arena.") end if checkPoses(toPosition, team1leverpos) then if checkPoses(getCreaturePosition(cid), leaderteam1pos) then if getGlobalStorageValue(team1leverstorage) == 1 then setGlobalStorageValue(team1leverstorage, 0) return doTransformItem(getThingFromPos(team1leverpos).uid, leverafter) end if onlyguildwars and getPlayerGuildLevel(cid) < 3 then return doPlayerSendCancel(cid, "You need to be the leader of your guild.") end if onlyguildwars and not isAllUidsSameGuild(team1uids, getPlayerGuildId(cid)) then return doPlayerSendCancel(cid, "All of your team need to be in your guild.") end if not isAllUidsLevel(team1uids, needlevelarena) then return doPlayerSendCancel(cid, "All of your team need to be level " .. needlevelarena .. " or more.") end if getPlayerLevel(cid) < leaderlevel then return doPlayerSendCancel(cid, "You, the leader of the team, need to be level " .. leaderlevel .. " or more.") end if not haveQuantPlayersInArea(areateam1ext, areaplayersteam, needplayers) then return doPlayerSendCancel(cid, "Your team need " .. tostring(needplayers) .. " players.") end setGlobalStorageValue(team1leverstorage, 1) doTransformItem(getThingFromPos(team1leverpos).uid, leverbefore) if getGlobalStorageValue(team2leverstorage) >= 1 then startArena() end else doPlayerSendCancel(cid, "You must be the leader of the team to pull the lever.") end elseif checkPoses(toPosition, team2leverpos) then if checkPoses(getCreaturePosition(cid), leaderteam2pos) then if getGlobalStorageValue(team2leverstorage) == 1 then setGlobalStorageValue(team2leverstorage, 0) return doTransformItem(getThingFromPos(team2leverpos).uid, leverafter) end if onlyguildwars and getPlayerGuildLevel(cid) < 3 then return doPlayerSendCancel(cid, "You need to be the leader of your guild.") end if onlyguildwars and not isAllUidsSameGuild(team2uids, getPlayerGuildId(cid)) then return doPlayerSendCancel(cid, "All of your team need to be in your guild.") end if not isAllUidsLevel(team2uids, needlevelarena) then return doPlayerSendCancel(cid, "All of your team need to be level " .. needlevelarena .. " or more.") end if getPlayerLevel(cid) < leaderlevel then return doPlayerSendCancel(cid, "You, the leader of the team, need to be level " .. leaderlevel .. " or more.") end if not haveQuantPlayersInArea(areateam2ext, areaplayersteam, needplayers) then return doPlayerSendCancel(cid, "Your team need " .. tostring(needplayers) .. " players.") end setGlobalStorageValue(team2leverstorage, 1) doTransformItem(getThingFromPos(team2leverpos).uid, leverbefore) if getGlobalStorageValue(team1leverstorage) >= 1 then startArena() end else doPlayerSendCancel(cid, "You must be the leader of the team to pull the lever.") end end return TRUE end E em actions.xml bote essa linha: <action actionid="12349" event="script" value="WarArenaLever.lua"/> Agora vá em data/creaturescripts/scripts e adicione dois scripts.lua com esses nomes: WarArenaDeathTeam1: function onDeath(cid) setPlayerStorageValue(cid, storageplayersteam1, 0) setGlobalStorageValue(storageteam1death, getGlobalStorageValue(storageteam1death) >= 0 and getGlobalStorageValue(storageteam1death)+1 or 1) if getGlobalStorageValue(storageteam1death) >= getGlobalStorageValue(storageteam1) then if onlyguildwars then doBroadcastMessage("The Team 2 won the war, guild " .. getPlayerGuildName(getGlobalStorageValue(storageleader2)) .. ".") else doBroadcastMessage("The Team 2 won the war, team leader name is " .. getCreatureName(getGlobalStorageValue(storageleader2)) .. ".") end setGlobalStorageValue(storageteam1death, 0) setGlobalStorageValue(storageteam2death, 0) setGlobalStorageValue(haveteaminarena, 0) end return TRUE end WarArenaDeathTeam2: function onDeath(cid) setPlayerStorageValue(cid, storageplayersteam2, 0) setGlobalStorageValue(storageteam2death, getGlobalStorageValue(storageteam2death) >= 0 and getGlobalStorageValue(storageteam2death)+1 or 1) if getGlobalStorageValue(storageteam2death) >= getGlobalStorageValue(storageteam2) then if onlyguildwars then doBroadcastMessage("The Team 1 won the war, guild " .. getPlayerGuildName(getGlobalStorageValue(storageleader1)) .. ".") else doBroadcastMessage("The Team 1 won the war, team leader name is " .. getCreatureName(getGlobalStorageValue(storageleader1)) .. ".") end setGlobalStorageValue(storageteam1death, 0) setGlobalStorageValue(storageteam2death, 0) setGlobalStorageValue(haveteaminarena, 0) end return TRUE end Agora abra o creaturescripts.xml e adicione essas linhas: <event type="death" name="DeathTeam1" event="script" value="WarArenaDeathTeam1.lua"/> <event type="death" name="DeathTeam2" event="script" value="WarArenaDeathTeam2.lua"/> Agora vá em data/movements/scripts e adicione tres scripts.lua com esses nomes: WarArenaMovement1: function onStepOut(cid, item, position, fromPosition) local team = (fromPosition.x == leaderteam1pos.x and fromPosition.y == leaderteam1pos.y and fromPosition.z == leaderteam1pos.z) and "team1" or (fromPosition.x == leaderteam2pos.x and fromPosition.y == leaderteam2pos.y and fromPosition.z == leaderteam2pos.z) and "team2" if team == "team1" then if getGlobalStorageValue(team1leverstorage) == 1 then setGlobalStorageValue(team1leverstorage, 0) doTransformItem(getThingFromPos(team1leverpos).uid, leverafter) end elseif team == "team2" then if getGlobalStorageValue(team2leverstorage) == 1 then setGlobalStorageValue(team2leverstorage, 0) doTransformItem(getThingFromPos(team2leverpos).uid, leverafter) end end end WarArenaMovement2: function onStepIn(cid, item, position, fromPosition) local team = isSqmFromArea(areateam1ext, areaplayersteam, fromPosition) and "team1" or isSqmFromArea(areateam2ext, areaplayersteam, fromPosition) and "team2" if team == "team1" then if getGlobalStorageValue(team1leverstorage) == 1 then if not haveQuantPlayersInArea(areateam1ext, areaplayersteam, needplayers) then setGlobalStorageValue(team1leverstorage, 0) doTransformItem(getThingFromPos(team1leverpos).uid, leverafter) end end elseif team == "team2" then if getGlobalStorageValue(team2leverstorage) == 1 then if not haveQuantPlayersInArea(areateam2ext, areaplayersteam, needplayers) then setGlobalStorageValue(team2leverstorage, 0) doTransformItem(getThingFromPos(team2leverpos).uid, leverafter) end end end if getGlobalStorageValue(team1leverstorage) == 1 then if checkPoses(fromPosition, posbenterteam1) then doTeleportThing(cid, fromPosition) return doPlayerSendCancel(cid, "You can't enter now.") end elseif getGlobalStorageValue(team2leverstorage) == 1 then if checkPoses(fromPosition, posbenterteam2) then doTeleportThing(cid, fromPosition) return doPlayerSendCancel(cid, "You can't enter now.") end end end WarArenaMovement3: function onStepIn(cid, item, position, fromPosition) if getPlayerStorageValue(cid, storageplayersteam1) >= 1 then setPlayerStorageValue(cid, storageplayersteam1, 0) doTeleportThing(cid, posbenterteam1) setGlobalStorageValue(storageteam1death, getGlobalStorageValue(storageteam1death) >= 0 and getGlobalStorageValue(storageteam1death)+1 or 1) if getGlobalStorageValue(haveteaminarena) >= 1 then if getGlobalStorageValue(storageteam1death) >= getGlobalStorageValue(storageteam1) then if onlyguildwars then doBroadcastMessage("The Team 2 won the war, guild " .. getPlayerGuildName(getGlobalStorageValue(storageleader2)) .. ".") else doBroadcastMessage("The Team 2 won the war, team leader name is " .. getCreatureName(getGlobalStorageValue(storageleader2)) .. ".") end setGlobalStorageValue(storageteam1death, 0) setGlobalStorageValue(storageteam2death, 0) setGlobalStorageValue(haveteaminarena, 0) end end elseif getPlayerStorageValue(cid, storageplayersteam2) >= 1 then setPlayerStorageValue(cid, storageplayersteam2, 0) doTeleportThing(cid, posbenterteam2) setGlobalStorageValue(storageteam2death, getGlobalStorageValue(storageteam2death) >= 0 and getGlobalStorageValue(storageteam2death)+1 or 1) if getGlobalStorageValue(haveteaminarena) >= 1 then if getGlobalStorageValue(storageteam2death) >= getGlobalStorageValue(storageteam2) then if onlyguildwars then doBroadcastMessage("The Team 1 won the war, guild " .. getPlayerGuildName(getGlobalStorageValue(storageleader1)) .. ".") else doBroadcastMessage("The Team 1 won the war, team leader name is " .. getCreatureName(getGlobalStorageValue(storageleader1)) .. ".") end setGlobalStorageValue(storageteam1death, 0) setGlobalStorageValue(storageteam2death, 0) setGlobalStorageValue(haveteaminarena, 0) end end end return TRUE end E adicione essas linhas em movements.xml: <movevent type="StepOut" actionid="12350" event="script" value="WarArenaMovement1.lua"/> <movevent type="StepIn" actionid="12351" event="script" value="WarArenaMovement2.lua"/> <movevent type="StepIn" actionid="12352" event="script" value="WarArenaMovement3.lua"/> Pronto acabou rairiaria. Adicionando os Actions IDS: Nas 2 alavancas, adicione o actionid 12349. Nos 2 sqms que os players vao estar antes de entrar na arena adicione o actionid 12351. Nos 2 quadrados aonde os lideres irao ficar (na frente da alavanca) bote o actionid 12350. No sqm de sair da arena bote o actionid 12352. NA AREA DOS TIMES E NA ARENA, BOTE PELO MAP EDITOR PARA NAO PODER LOGAR. (Se voce nao fizer isso pode haver bugs.) Bem, se voce souber ler o script da lib, vai saber configura-lo para seu otserver. Versão MOD: (Abra o spoiler) O modo de configurar é exatamente igual ao normal. Flws. By MatheusMkalo1 ponto -
Demonbholder Pra Coodernador.
TeamSky reagiu a Henrique Moura por um tópico no fórum
lol cara se acha q aqui é forumeiros?1 ponto -
Olha acho que respondi todas as duvidas, mais alguma?1 ponto
-
Uma dica que dou é toda ads terminada em 5 e 0 ser freestyle, pra dar uma quebrada xP1 ponto
-
Hmmm se intendi "BEM" eh simples, abra o confing.lua da pasta do seu OT de Ctrl+f e coloque o nome do seu mapa atual. Agora mude para o nome do mapa que voce deseja substituir, mas tem um porem na hora de criar um novo char seu account manage vai ta lahhh longe bem nos quintos dos infernos (talvez nem logue) Eh facil entre no SQL e procure posy posx e posz e coloque aonde seu acc manager vai logar Recomendo o Temple E Tambem tem o newplayer pode estar ateh numa area de um monster bem foda pra um lvl 8, mas eh facil entaum vai resolver no confing.lua logo no inicio vai ter: newPlayerSpawnPosX = xxxx newPlayerSpawnPosY = xxxx newPlayerSpawnPosZ = xxxx newPlayerTownId = x Mude para a posiçao X, Y e Z para a do seu templo da pra ver no rme mesmo! E esse newplayertowid eh a cidade que o player vai ser cidadao coloque se eh a cidade 1, 2, 3...1 ponto
-
Não. Resposta curta. Mais se o que você quer, é jogar global e jogar ot serv de outras versões, você pode instalar as duas versões no seu pc.1 ponto
-
Opa "Pirokudoo", vamos lá. Para subir de versão, não é só alterar no editor, ali é para ele reconhecer a versão com os itens já atualizados (Como assim?), sendo mais específico: O editor reconhece apenas os arquivos, não manipula o que tem dentro deles, apenas a versão. Para subir a versão, você deve pegar o itens.otbm de uma versão superior (Pode ser baixado de outro ot qualquer), e substituir da versão do seu ot, localizado em "Pasta do ot"\data\itens. Não se esquecendo de também passar o mapa. (Não é preciso importar nada pelo editor, apenas mover os arquivos). Lembrando que: Pelo fato de subir a versão, você provavelmente vai precisar mover e substituir o arquivo itens.xml, caso contrário, no mapa editor ficará de um jeito, e no ot de outro. Isso é devido por que os números de ids são diferentes (O que varia de ot para ot). Caso não entendeu/não conseguiu, só postar aqui novamente que eu volto a te ajudar. Abraçs. --------------------------------- -- kamui_lg@hotmail.com -- --------------------------------- --------------------------------- -- kamui_lg@hotmail.com -- --------------------------------- --------------------------------- -- kamui_lg@hotmail.com -- ---------------------------------1 ponto
-
Barco Que Anda Por Uma Rota.
tonynamoral reagiu a MatheusGlad por um tópico no fórum
Gente peçam coisas adicionais baseadas no meu sistema no topico de pedidos de scripts porfavor.1 ponto -
[Encerrado] Mapa
Demonbholder reagiu a DexpironFox por um tópico no fórum
Amigo, area errada! Quando for fazer um tópico deste tipo, antes procure na area Tutoriais de Mapping. Se não achar, peça na area Dúvidas sobre Mapping. Reportado para Moverem :button_cancel:1 ponto -
Primeiramente deve postar qual System de Reset você usar. E outra que si você procura-se acharia. Alexx Pirado lol postou em uma dúvida minha sobre isso. - http://www.xtibia.com/forum/topic/158769-rank-reset-gesior/ Lembrando dê REP++ a ele no comentário do tópico pois ele teve trabalho para fazer tal script.1 ponto
-
1 ponto
-
vê se você configurou o funcpokemon e o bpslot certinho na gymlib.lua, veja se adicionou os monstros Brock Geodude, Brock Graveler e Brock Golem na pasta monsters, e verifique se o seu npc brock está escrito certinho (digo, abra o xml e vê se o nome do npc é "Brock", com letra maiuscula etc)1 ponto
-
É Permitido Postar Blog Com Conteudo Adulto?
hellnoob reagiu a ultimate1996 por um tópico no fórum
KKKK /\ Minha voz é feia, sou timido, e por isso nao falo no Skype. Se der 21:00 e não vier ninguem aqui, irei postar.1 ponto -
1 ponto
-
Talkaction
Fir3element reagiu a joaohd por uma questão
Tente: function onSay(cid, words, param, channel) local w = { item = 9971, count = 10 } local pid = getPlayerGUID(cid) local id = { ["club"] = {vocation = {1}, id = 1}, ["sword"]= {vocation = {2}, id = 2}, ["axe"] = {vocation = {2}, id = 3}, ["distance"] = {vocation = {3}, id = 4}, ["shield"] = {vocation = {1, 2, 3}, id = 5} } if (param == '') then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Como usar: !comprar club.") return true end if(id[param:lower()]) then if(getPlayerSkill(cid, id[param:lower()]) < 350) then if(isInArray(id[param:lower()].vocation(getPlayerVocation(cid)))) then if doPlayerRemoveItem(cid,w.item,w.count) then doRemoveCreature(cid, true) db.executeQuery("UPDATE `player_skills` SET `value` = `value` + ".. w.count .." WHERE `player_id` = ".. pid .. " and `skillid` = ".. id[param:lower()].id ..";") else doPlayerSendCancel(cid, "You do not have the required item.") end else doPlayerSendCancel(cid, "Voce não pode comprar este skill.") end else doPlayerSendCancel(cid, "Skill's limit reached.") end else doPlayerSendCancel(cid, "Unknown skill.") end return true end flw1 ponto -
Level Para Usar Pokemon - Poketibia
Guilhermelima reagiu a GMRaphael por um tópico no fórum
Po Consigo Só o Sistema De Ataque Passo do M1 Até o M12 Se Quiser. Vou Anexar o Arquivo Lá em Baixo. Vamos Lá: 1º Passo: Anexe o Arquivo Na Sua Area de Trabalho e Extraia o Arquivo. 2º Passo: Copie do M1 Até o M12 e Cole Em: DATA/TALKACTIONS/SCRIPTS 3º Passo: Vá em DATA/TALKACTIONS e Abra o Arquivo Talkactions.XML (XML) e Coloque isto Dentro: <talkaction words="m1" case-sensitive="no" event="script" value="move1.lua"/> <talkaction words="m2" case-sensitive="no" event="script" value="move2.lua"/> <talkaction words="m3" case-sensitive="no" event="script" value="move3.lua"/> <talkaction words="m4" case-sensitive="no" event="script" value="move4.lua"/> <talkaction words="m5" case-sensitive="no" event="script" value="move5.lua"/> <talkaction words="m6" case-sensitive="no" event="script" value="move6.lua"/> <talkaction words="m7" case-sensitive="no" event="script" value="move7.lua"/> <talkaction words="m8" case-sensitive="no" event="script" value="move8.lua"/> <talkaction words="m9" case-sensitive="no" event="script" value="move9.lua"/> <talkaction words="m10" case-sensitive="no" event="script" value="move10.lua"/> <talkaction words="m11" case-sensitive="no" event="script" value="move11.lua"/> <talkaction words="m12" case-sensitive="no" event="script" value="move12.lua"/> Bom é isso Espero Ter Ajudado Um Pouco. Valeu Não Esquece de Pegar os Arquivo Anexados Aqui em Baixo. M1 Até o M12.rar1 ponto -
Soldados ~ Outfit
magooart reagiu a NatsuMcDonald por um tópico no fórum
Eai Pessoal Estou aqui de novo para postar outra outfit. Dessa vez de um soldado. - Ferramentas: Fakerlabe Wardrobe Paint - Personagem: Soldado - Criação Eu -- UPDATED --1 ponto -
1 ponto
-
Teaser #3 – Novos outfits e… cavalos! O test server está online mas os teasers ainda não acabaram! Vamos conhecer mais algumas das novas 'quests', novos outfits e mais algumas criaturas/montarias. Febre do Pântano Ottokar, a alma da casa dos pobres em Venore, luta desesperadamente contra a febre do pântano no local. Para manter tudo sob controle e prevenir que se espalhe pela cidade, ele precisa de um certo número de medicine bags (bolsa de medicamentos) todos os dias. Swamp trolls parecem carregar com eles alguns, mas Ottokar não pode deixar as pessoas que sofrem sozinhas. Em troca das bolsas de medicamentos, ele vai lhe dar os pertences dos pacientes falecidos. Quem sabe você é sortudo o suficiente para conseguir slug drug, que dizem ser necessário para domar slugs (lesmas)? Se a febre se espalhar pela cidade, entretanto, cidadãos enlouquecidos pela febre irão atacar Venore. Se você conseguir alguns pedaços de suas roupas, você poderá se vestir como eles. Enfim, você vai ajudar Ottokar ou esperar que a febre se espalhe? A Voz do Mestre Uma torre mágica apareceu ao leste de Edron. Um mad mage sem nenhuma conexão com a Academia criou este edifício e conduziu diversos experimentos – e alguns deles falharam horrivelmente. O mago não está por lá, mas as cavernas parecem cheias com seus servos. Eles carregam resíduos de slimes, que serão úteis para você conseguir seu elementalist outfit. Matando todos os servos, irá provocar o mago a aparecer e você poderá lutar com ele. Entretanto, se todos os servos morrerem, fungus irão se espalhar por toda a torre e só poderão ser removidos com a ajuda de um slime gobbler. Os servos e o mago só voltarão após todos os fungos serem comidos. Overhunting Você já ouviu falar do white deer da floresta de Ab’Dendriel? Estas lindas criaturas são amadas e reverenciadas pelos elfos, apesar de que comerciantes escrupulosos estão mais interessados em sua valiosa pele e chifres. Então, para conseguir dinheiro, aventureiros caçam este veado, e assim, colocam a espécie em extinção. Além disso, matando white deers irá perturbar o delicado equilíbrio ecológico de seus inimigos naturais, os lobos, que começarão a passar fome. Então, se a população de veados cair muito, o número de lobos famintos vai aumentar. Sendo assim, você pode ajudar os elfos a restaurar o equilíbrio natural lurando lobos em armadilhas especiais, e entregando seus corpos para que a população de veados possa crescer novamente. Cavalos Finalmente, cavalos chegaram ao Tibia! As novas estações de cavalos perto de Thais e Venore não só conectam a cidade através de um serviço de carruagem, mas permitem jogadores de alugar um cavalo por uma pequena taxa diária. Algumas vezes, os cavalos irão fugir, e o serviço será suspendido até que um número suficiente de cavalos sejam perseguidos novamente até o celeiro. Rumores dizem que você pode tentar domar outros tipos de cavalos, enquanto os cavalos do celeiro estão soltos. Invasão de Insectóides Estranhos insectóides foram vistos em Greenshore. Se você não matar um número suficiente deles, eles acabarão comendo as folhas e a grama deixando para trás um deserto. Mate o suficiente dessas criaturas rastejantes para parar a invasão e deixar a terra ficar verde novamente. No Summer Update, não vai faltar lugares para explorar e suas decisões serão muito importantes. Continue de olho no Portal Tibia para mais informações direto do test server! Atenciosamente, Mophus&PortalTibia0 pontos