Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 08/27/11 em todas áreas
-
Guuh Torres Vs 4.0
Deadpool e 2 outros reagiu a GuuhTorres por um tópico no fórum
Guuh Torres Vs 4.0 *Pessoal,me desculpem pela demora da atualização,pois tinha muitos bugs nesta base,e em pedidos de vários xtibianos,arrumei o "Pokemon Squadium" do brun123...Este server era um bom server,mais tinha muitos bugs,irei listar os que eu arrumei,ou acrescentei: -Catch -Goback -Portrait -Pokedex -Order -Talkactions -!lg para mudar a linguagem (English-Português) -Status sistema -Novos pokemons (Johto-Shinys) -Coloquei mais moves (Johto) -Npc Name (Que coloca um apelido ao pokemon) no ultimo andar do CP -Novo Mapa do Betinhowz666 -Novas quests -Novas Spawns (Eu não sei fazer muito bem,mais dá para usar) -PVP ZONE -Efeito ao upar level -Client na pasta (IP : 127.0.0.1) -Senha do GOD : guuh/torres DOWNLOAD do server: -Guuh Torres vs 4.0 Créditos : -GuuhTorres 25% -Brun123 40% (Caso você ler este tópico,peço que adicione ght-2-@hotmail.com) -Betinhowz666 15% -Xtibia 5% -Victorkta 5% -Ciffer 5% -Italo 5% QUE VENHAM OS REPS :button_ok: ------------------------------------------------------------- PRÓXIMA ATUALIZAÇÃO!!! Na próxima atualização irei fazer sem os BUGS,que vocês falarem...3 pontos -
[8.60] Dark Baiak By: Lukaszg 0.0.1
kriookinha e um outro reagiu a LukaszG por um tópico no fórum
Dark Baiak 8.60 By: LukaszG. Templo renovado,city toda renovada,muitas novidades. Npc que vende set vip, pra mage,pali,kina FAST ATACK ROX OT 100% PRA WAR. BALANCEADO Templo Dark City. City Of War DP. Futebol. !BuyVip. Vip City. Quests. Teleport Vip. Welcome. Teleport Free. Dark City Full. Espero Que Gostem!! :button_ok: DOWNLOAD AQUI Scan. :star: Creditos :star: (Death Core). (Baiak). (LukaszG). Senha Do GOD: god/god SEMPRE INOVANDO SEMPRE TEREMOS UPDATE FIQUE DE OLHO. Se Gostou Da Um REP + Nao Vai Cair A Mão Update. City Of War atualizada agora as houses 100%. SERVER REVIZADO E AGORA ESTA 100% Update para nova verção até o dia 15/08/2011 Update V2 pronto Daki auguns dias estara ai pra download VLW Galerinhaa2 pontos -
Guuh Torres Vs 4.0
david498 e um outro reagiu a GuuhTorres por um tópico no fórum
Resposta: Irei ver,se vai ter muita coisa mudada,ai se tiver vou ver um tanto de REP,que vou precisar para postar a nova atualização...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
-
[ ~> Fazendo Seu Próprio Client <~ ] Fala Tibianos , Pokemianos , WODBOianos do Xtibia, Hoje estou aqui com o meu primeiro tutorial , com o objetivo de explicar tim tim por tim tim como fazer um Client.. Como eh meu primeiro tutorial estou começando com algo facil , espero que todos gostem: 1° passo , criando o executar do seu client com ip proprio : 2° passo , mudando a Pic do Client: 3° passo , mudando o icone do seu client: 4° passo , traduzindo seu client: 5° passo , criando um instalador para seu client: Link dos Programas usados: Então eh isso pessoal , espero ajudar alguem com esse Tutorial. Fico Devendo Imagens , + logo colocarei para facilitar Thx Edit: Imagens Adicionadas , espero que fique + facil de compreender.1 ponto
-
Perfect Vip system 3.0 Última atualização: 14/08/12 Versão Testada:TFS 0.3.6 - 8.54 - 8.6 - 9.6 Créditos pelas modificações: Kydrai,Vodkart e Marcryzius Oque Contém no Sistema vip 3.0? Comandos: Query Primeiro passado execute essa query na sua DB: ALTER TABLE `players` ADD `vipacess` INT(15) NOT NULL DEFAULT 0; Agora vá em Data/lib/050-function e adicione essas funções: function getCharacterAcess(cid) local query = db.getResult("SELECT `vipacess` FROM `players` WHERE `id` = "..getPlayerGUID(cid)) if query:getID() ~= -1 then return query:getDataInt("vipacess") end end function getCharacterDays(cid) local acess = math.ceil((getCharacterAcess(cid) - os.time())/(86400)) return acess <= 0 and 0 or acess end function HaveCharaterAcess(cid) return getCharacterDays(cid) > 0 and true or false end function setAcessTime(cid, time) return db.executeQuery("UPDATE `players` SET `vipacess` = "..time.." WHERE `id` = "..getPlayerGUID(cid)) end function addCharacterAcess(cid, days) local add = (days <= 0 and 1 or days)*86400 local time = getCharacterDays(cid) == 0 and (os.time() + add) or (getCharacterAcess(cid) + add) return setAcessTime(cid, time) end function doRemoveCharacterAcess(cid, days) local remove = days*86400 local time = getCharacterAcess(cid) - remove return setAcessTime(cid, (time <= 0 and 1 or time)) end function getVipAcessDate(cid) if HaveCharaterAcess(cid) then return os.date("%d/%m/%y %X", getCharacterAcess(cid)) end return false end Talkactions agora em talkactions/scripts vipsystemplayer.lua function onSay(cid, words, param) if(words == "!buyvip") then local days = 10 local price = 50000 if not doPlayerRemoveMoney(cid, price) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você precisa de "..price.." gp's para colocar vip.") return true end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados "..days.." dias de VIP no seu character.") addCharacterAcess(cid, days) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem "..getCharacterDays(cid).." dias de VIP, ela acaba em "..getVipAcessDate(cid)) elseif(words == "!vipdays") then return doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem "..getCharacterDays(cid).." dias de VIP. "..(getCharacterDays(cid) > 0 and "ela acaba em "..getVipAcessDate(cid).."." or "")) end return true end vipsystemgod.lua function onSay(cid, words, param) if(words == "/checkvip") then if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.") return true end local player = getPlayerByName(param) if not isPlayer(player) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player "..player.." not found.") return true end return doPlayerPopupFYI(cid, "O jogador tem "..getCharacterDays(player).." dias de VIP no character.") elseif(words == "/addvip") then local t = string.explode(param, ",") if not tonumber(t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player = getPlayerByNameWildcard(t[1]) if(not player)then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") end addCharacterAcess(player, tonumber(t[2])) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você adicionou "..tonumber(t[2]).." dias de VIP no player "..getCreatureName(player)) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Foram adicionados "..tonumber(t[2]).." dias de VIP no seu character.") elseif(words == "/delvip") then local t = string.explode(param, ",") if not tonumber(t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player = getPlayerByNameWildcard(t[1]) if(not player)then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") end doRemoveCharacterAcess(player, tonumber(t[2])) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você removeu "..tonumber(t[2]).." dias de VIP do jogador "..getCreatureName(player)..".") end return true end em talkactions.xml adicione as tags: <talkaction words="!buyvip;!vipdays" event="script" value="vipsystemplayer.lua"/> <talkaction words="/addvip;/delvip;/checkvip" access="4" event="script" value="vipsystemgod.lua"/> Item Vip item que adiciona vip no character actions/script addvipdays.lua function onUse(cid, item, fromPosition, itemEx, toPosition) local days = 15 addCharacterAcess(cid, (days <= 0 and 1 or days)) doRemoveItem(item.uid,1) return doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem "..getCharacterDays(cid).." dias de VIP, ela acaba em "..getVipAcessDate(cid)) end Actions.xml <action itemid="ID DO SEU ITEM" script="addvipdays.lua"/> Vip Door actions/script perfectvipdoor.lua function onUse(cid, item, frompos, item2, topos) if not HaveCharaterAcess(cid) then return doPlayerSendTextMessage(cid,22,"Você precisa ser vip para passar aqui.") end doTransformItem(item.uid, item.itemid + 1) doTeleportThing(cid, topos, true) return true end actions.xml <action actionid="7779" script="perfectvipdoor.lua"/> Tile VIP em movements/scripts crie um arquivo.lua e renomeie para vipe.lua function onStepIn(cid, item, position, fromPosition) if item.actionid == 13700 and not HaveCharaterAcess(cid) then doTeleportThing(cid, fromPosition, true) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"você não é vip.") doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) return true end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"bem vindo.") return true end Em movements.xml adicione a tag: <movevent type="StepIn" actionid="13700" event="script" value="vipe.lua"/> no seu piso coloque ACTIONID 13700 Fim Vip em creaturescript/script endvip.lua function onLogin(cid) if getCharacterDays(cid) > 0 then setPlayerStorageValue(cid, 9898, 1) elseif getPlayerStorageValue(cid, 9898) == 1 and getCharacterDays(cid) <= 0 then doPlayerSetTown(cid, 1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doPlayerPopupFYI(cid, "Sua vip Account acabou.") setPlayerStorageValue(cid, 9898, -1) end return true end em creaturescript.xml adicione a tag: <event type="login" name="CheckVip" script="endvip.lua"/>1 ponto
-
Download fonte usada: Clique Aqui Para Download Download Plugin: Clique aqui para download Para Instalar o plugin e só executar-lo, colocar o serial que ja vem no arquivo, e dar next até o fim Créditos : Image Vision Design Allcohol Gostou? REP +1 ponto
-
Tutorial Adicionando Sprites ao Client. Bom galera, este é um tutorial completissímo sobre criação de outfits, desde a criação até colocar ele no seu ot e poder andar com ele =D Bom o que precisaremos. 1º Paint 2º DatEditor Naum Sabe Onde Baixar o DatEditor Aki Vamos Lá, primeraimente crie um arquivo no paint 32x32. Pinte o fundo de rosa. Assim. NOTA: Para melhor editação dê um zoom 8x na imagem Ai desenharemos nosso outfit. Faça do jeito que quiser, mais lembre-se, outfit tem 12 posições(parado, andando, e segundo passo para todos os lados, NORTE SUL LESTE OESTE). Menber diz: "Terei que desenhar ele nas 12 posição?". R: Sim, terá =/ Não irei mostrar passo a passo de como desenhar um outfit porque tem varios tutoriais de como desenhar ele exemplo esse fixo do Sand Fox Bom, eu peguei o outfit do mage e editei pra ficar estilo AKATSUKI do naruto =D Menber diz: "putz, fico feio pra caralho sem sombraementp nem nada " R: Eu to ligado, mais é pra da uma idéia. Editei ele nas 12 posições NOTA: Salve seu outfit com a extensão .bmp Agora vamos colocar ele no seu OT. Menber diz "Ebaaa" R: =D NOTA: Copie a pasta do seu tibia por segurança, vai que da uma zica né Abra o DatEditor, vá em file > open Em dat coloque o arquivo Tibia.dat e em spr coloque o arquivo Tibia.spr (óóóóó) clique em open e espere... Depois que aparecer "Complete" pode fechar a telinha. Agora vá em file > new > monsters Abriu um espacinho em branco. Mude o "X Div" para 4, "Animation" para 3 e "Cropsize" para 35. Note que lá em cima em "Item Sprites" apareceu 12 zeros. O que será isso? Alguém diz: "Eu sei eu sei eu sei, tááá, naum sei" R: É as 12 posições do outfiiiiiit. (óóóóóóóó) Para preencher elas é facil mais precisa ser na ordem correta. Vá em import > sprites. Mude PNG(*.png) para BMP(*.bmp) selecione os seus 12 arquivos do outfit e abra. Eles vão para "sprites" do lado direito, deve ser os últimos. Agora para preencher os 0 é so clicar no outfit em "sprites" e apertar a tecla "insert" do seu teclado. ATENCÃOOOOOO: voce deve preencher na ordem padrão do tibia. O que seria isso? É simples o primeiro 0 é o seu outfit olhando para o NORTE, o segundo 0 zero é olhando para o LESTE, o terceiro para o SUL, o quarto para o OESTE. O quinto é ele olhando para o NORTE DANDO O PRIMEIRO PASSO, o sexto para o LESTE DANDO O PRIMEIRO PASSO, o setimo para SUL DANDO O PRIMEIRO PASSO, o oitavo para OESTE DANDO O PRIMEIRO PASSO, o nono é olhando para o NORTE dando o SEGUNDO passo e assim sucessivamente. OLHE NA FOTO PARA FICAR MELHOR. Agora tamos quase lá... Anote o Itemtype (mais para a frente voce vai descobrir porque). Ele fica na frente do X Div. Vá em file > save Abrirá a mesma janela do "open". Já deve estar preenchido os campos, mais se não estiver é do mesmo jeito que o "open". Clique em "compile". Pronto, seu outfit está no tibia já =D Agora vamos coloca-lo no seu OT. Abra a pasta do seu OT e vá em data/xml abra o arquivo outfits.xml com o bloco de notas Você pode editar um outfit já existente ou criar um novo. NOTA: Quando você atinge um valor limite de outfits, ele começa a deletar outros para substituir. Me falta a memória de quantos outfits é o maximo, mais sei que adicionar 1 não faz mal =D Para adicionar o outfit é só copiar um linha qualquer do sexo que você criou o outfit(o meu foi male) e substituir pelas informações. outfit type="1" 1 é male 0 é female. looktype="327" aqui é o Itentype que eu mandei voce anotar antes. enabled="1" 1 para habilitar 0 para desabilitar. name="Akatsuki" aqui é o nome que você quer para o addon. premium="0" 0 para free e 1 para só premium usar. Bom prontooooooooooo! Só abrir seu OT e testar ~ Créditos: 50% Meu e Do Shingo , 50% Otserver.com.br1 ponto
-
~NARUTO OPEN WINGS~ Features: Map RPG. organizações.(akatsuki, anbu, sannin, shippuden, etc...) 15 vocações.(Naruto, Sasuke, Sakura, Gaara, Temari, Kankuro, Neji, Lee, Tenten, Haku, Kimimaro, Kurosuki, Kiba, Hinata & Shino) Muitos Jutsus. 3 Villas.(konoha, suna y mist) Sistema MySql Apenas. Y muito mais. Descargas: Creditos: Tfs Team ~ 50% Uffox Otfusion ~ 35% Wono-Cj & OtsBR ~ 15% Qualquer Duvida o resolvido em este assunto. ^^1 ponto
-
# Revolution Website # Nome: Revolution Website Versão: 8.5+ Autor: Bruno333 Coméntario: Bom, eu vi que tem varios Poketibia e nenhum site , então resolvi fazer um bom, leve e pratico! *lembrando que eu,uso como base o site do Nicaw SVN 19b Configurando o site: Primeiro passo e acessar o phpmyadmin (http://localhost/ ou http://localhost:8090) Entre na sua conta do PhpMyAdmin, "Root" "sua senha" Agora cria uma database (coloque um nome mais simples que puder, aconselho coloca o nome de "tibia") agora la em cima no menu tem o butão [iMPORTAR] Clique ele! Depois irar aparecer uma pagina, com um butão chamado PROCURAR, clique e va até a pasta do seu ot.. e importa a database do ot. Caso não tenho pode baixar Clicando aqui[/url] Agora continuando no [iMPORTAR] vc deve importar agora a database no NICAW ACC, que se encontra na pasta xampp/htdocs/documents nome do arquivo eh shema.mysql (database do nicaw) Podemos fechar o internet explorer e configurar logo! va a pasta Xampp/htdocs/config.inc e abra ele! Vamos agora configurar: # Set data directory of your OT server $cfg['dirdata'] = 'C:\otserv\data; $cfg['house_file'] = 'world/map-house.xml'; # MySQL server settings $cfg['SQL_Server'] = 'localhost'; $cfg['SQL_User'] = 'root'; $cfg['SQL_Password'] = '123456'; $cfg['SQL_Database'] = 'tibia'; Configurando: Onde a pasta data do seu ot está localizado entre na pasta data/world do seu ot e ve o arquivo que ta no final com house.xml e coloque no lugar do map-house.xml senha do seu phpmyadmin! Nome da tua database, aconselho colocar a database com nome de tibia!! ai so colocar como está ai em cima! Agora feche e salve.. Va a pasta do seu ot abra config lua e aperte ctrl + f e procure por root la vc encontrara tpw assim: sql_host = "localhost" sql_user = "root" sql_pass = "SUA SENHA" sql_db = "COLOQUE O NOME DA TUA DATABASE" * só lembrando galera que o site eu ia usar em meu servidor então tem certas funções que esta configurada para meu servidor mais quem tem um conhecimento minimo consegue de boa fazer as devidas mudanças! SS Agora o mais importante de tudo o Download e Scan !!! Revolution WebSite Scan !!! Bom galerinha do Xtibia é isso ai, espero que gostem do meu Website qualquer Duvida ou Bug's postem aqui Não se esqueça de quem gostou da um +Repp que não vai cair a mão tbem !!!1 ponto
-
[8.54] Mapa Pokemon Betinhowz666 V1.5
4Espada reagiu a betinhowz666 por um tópico no fórum
Olá, sei que estavam esperando pela v2, mais como aquele mapa estava dando muitos debug's pelas pessoas não usarem aquele cliente, resolvi adapta-lo a outro serve que é mais conhecido e atual do momento que é o PFGuuhTorres, creio eu que este mapa também irá dar certo em pokemons que usem como base o Dash ou mais conhecido como Fight. Esta atualização foi visada em retirar bugs e debug's, para melhorar a jogabilidade. Fiz alterações em algumas áreas mais nada que seja extraordinário. Uma das atualizações que fiz foi apenas o cp da city 1. Que agora está assim. Fiz alterações no PVP que também era alvo de debug's Está faltando muitos detalhes, mais irei melhorar sem dúvidas. O que falta configurar que vocês podem fazer sozinho ? apenas configurar os teleportes do CP para o PVP e vise versa. (fora o spawn) O que estou planejando para a v2 ? 2 ou 3 novas cidades com hunt's e 5 novas ilhas, talvez a v2 virá com o spawn, pois ésta ainda não esta. Informações adicionais. Segue download do mapa e scan. http://www.4shared.c...wz666_v15.html? Peço que algum faça o scan para min, pois não estou conseguindo entrar no site. Usei o cliente do PFGUUHTORRES V4, se você usar outro tera que fazer poucas modificações como por exemplo a mesa do cp que fica envolta da nurse, do mark. Créditos: PeeWee - por fazer a primeira cidade. GuuhTorres - pelas spr, dat, e suporte. betinhowz666 - por estar evoluindo o mapa.1 ponto -
~~ Npc Apelidar Pokemon !
kumamoto2 reagiu a Henrique127 por um tópico no fórum
Aew Galera Tipo EU Editei o Npc Que Apelida O Pokemon ,, Mais Como Eu Nao Sei Mexer Com Sources So Vo Postar o Npc !! Entao Vamos La ''Script Do Pokemon Squadium'' Vai Em Seuot/data/npc E Crie Um Arquivo Chamado name.xml E Adicione Isto ! Depois Vai Em Seuot/data/npc/script E Crie Um Arquivo Chamado NameRater.lua E Adicione Isto Dentro ! E Depois Adicione no Map Editor ,, E Edita Pelo Source "QUE EU NAO SEI MEXER" ,, se eu aprender eu posto um tuto vlw galera1 ponto -
Katana Quest On Rookgaard
Jyu reagiu a Matheuzinhoul por um tópico no fórum
Tipo: Missão normal Nível necessário: 2 Localização: Rookgaard Premium: Não Recompensa: Katana, Viking Helmet (também pode dropar nos skeletons ao longo do caminho) Duração: Curto (< 1 hora) Vai enfrentar: Obs: No fim da quest pode haver respaw de Rottie the Rotworm, se tiver sorte Itens necessários: Shovel e Rope, Key 4603 Itens recomendados: Antidote potion (2 - ida e volta) e/ou uma quantidade boa de Small Potions para conter os poison fileds Saindo do templo de Rookgaard, siga o mapa até achar três tumbas (acredite, este é o caminho mais curto após o update 9.1) Use shovel no segundo buraco, na tumba do meio (Spiders e Poison Spider aqui). Siga o caminho pela esquerda até achar uma escada, desça (Skeletons aqui). Siga para* o lado direito até achar um tile de buraco, use a rope nele mas esteja preparado para fugir dos Rotworms, pois há uma quantidade perigosa para Rookers. Passe pelos poison fields e use uma antidote potion. Subindo, encontrará um lugar cheio de corpses e dois Rotworms. Recomendo que mate um Rotworm de cada vez lurando para um caminho fechado, ou use o modo Defensivo de batalha para correr e pegar a chave (key 4603) que estará dentro de um dos corpses. Os players chatos costumam colocar outros em cima, mas é esse: Use shovel no buraco perto da pedra verde e desça (um único Skeleton aqui). Use a chave na porta e siga pela escada, mas cuidado: players chatos ou distraídos esquecem de fechar a porta e pode ser perigoso descer. O normal é ter dois Skeletons e um rotworm, mas poderá ter respaw do Boss Rottie the Rotworm. Se por acaso a porta estiver fechada, dê use na alavanca escondida pelo pilar (recomendo que solte um monstro de cada vez). Pegue o loot dos corpos frescos e volte pelo mesmo caminho. Aprecie sua recompensa ;P Dica: A quest não é tão boa pra quem vai pra Main. Deixe esta Katana com algum rooker, seja qual for o level e use-a nos seus futuros chars, assim upará bem mais rápido pois a espada é ótima.1 ponto -
vai no rme e ve o numero que esta no piso depois vai em movements.xml e aperta ctrl+f e ve se o nomero esta la dai vc ve o nome da pasta e ve o script nao sei muito dessas coisas mais eu faço assim :smile_positivo: se nao estiver em movements.xml ve en outras pastas depois eu vejo por que tenho mapa alissow no meu pc curto ele1 ponto
-
Comunicacao Entre Dois Servidores
Terun reagiu a Samuel2011 por um tópico no fórum
Provavelmente você tem 1 server só entao desiste se você tem 2 tudo bem se vc tem 3 ai complica mais da de boa. o primeiro passo é você executar a função setLibTables() para que todas as tabelas nesessarias funcionem! segundo abrir as 2 pastas dos seus servidores! vá nas 2 pastas globalevents e nos 2 global events adcione essa tag: Vamos definir Azul como server 1 e Vermelho como server 2 e Verde como ambos. No server 1 vá la em globalevents em scripts crie o comunication.lua dentro dele ponha isso Agora vá em talkactions.xml crie essa tag: Bom agora crie o send.lua e ponha isso dentro: Salve e pode fechar, e abrir seu ot. No server 2 vá em globalevents a diferença do 1º para o segundo são 2 numeros. Agora a sua talk é esta: Creditos: Mock, Aildetico Esquisofrenico1 ponto -
Refugia É Atacada!
fsg reagiu a Fernandinand por um tópico no fórum
Geente, me desculpem pela demora, fiquei sem computador esses dias, por isso não postei a Notícia logo de cara, rs. Bem gente, no dia 24 de Agosto de 2011, um Boss invadiu o servidor Refugia, tentando trazer caos e muito medo à esse mundo. Ao aparecer o aviso de que o Boss invadiu, todos foram correndo com a intenção de tentar proteger seu mundo, e ganhar sua honra. O Boss era Ferumbras, isso mesmo, aquele mago do chapeu muito loco forte pra caramba. Ele apareceu em Kharos. Todo mundo esperando ele nascer, estilo Pacera, euauhauh! ;p Logo que o Ferumbras nasceu, ele mal teve chance de se mover e já foi barrado pelos blockers dos clãs e dos grupos, os Refugianos atacaram com tudo e praticamente voaram pra cima dele. O boss foi morto em menos de 10 segundos! O loot ficou com o jogador Je'ru, como pode ser visto logo abaixo. Nossa, o que aquele demon estava fazendo ali? Tem um ditado que diz: as vezes podemos ser fortes, mas burros também, auah! E como sempre gente, o loot saiu imperdível, só que agora, mais do que nunca! Loot of Ferumbras: Ferumbras' hat, 57 gold coins, a gold ingot, 34 platinum coins, a red tome, a great shield, a velvet mantle, an emerald sword, a jade hammer, 11 small sapphires. Essa Notícia é exclusiva do Xtibia, não pode ser alterada e só com a autorização do autor poderá ser copiada. Este tópico recebeu destaque em nosso portal!1 ponto -
vai la no accountmanagement e procure por: $player->setPosX(0); $player->setPosY(0); $player->setPosZ(0); ai tu coloca as coordenadas do templo da sua city. ex: $player->setPosX(54); $player->setPosY(160); $player->setPosZ(7); ai agora eu vo fazer upload do meu config.php la da pasta: C:\xampp\htdocs\config.php Ai tu troca pelo seu, pq tem q mudar outra coisa q esqueci, mas a minha config é igual a tua, mas a minha ja ta mudada pronto.. da rep+ config.php1 ponto
-
Food // Comida
Henrique Moura reagiu a mdgabrielzim por uma questão
Cola esse no lugar do seu: Se deu certo acrescenta reputação la =>.Qualquer duvida mais add meu msn:gabrieltibia@gmail.com1 ponto -
Food // Comida
Henrique Moura reagiu a LukaszG por uma questão
Cara Terceira duvida de script que vc pergunta seguida. Se n acha melhor baixa um outro ot n. pq pelo visto esse ta cheio de erros1 ponto -
[Oficial] Refugia (8.60) 26/08/2012 0.0.8
Guidorefugia reagiu a Subwat por um tópico no fórum
isso acontece aqui tmbm,só nao meixa nessas partes,q fica tudo sussa.1 ponto -
Guuh Torres Vs 4.0
sosolidkk reagiu a GuuhTorres por um tópico no fórum
@Todos Vou pedindo para vocês ir falando os BUGS,que ainda restaram que não sei todos(se ainda tiver BUGS),ai arrumo eles na VS 5.0... @ThiiaguiimM É,postei no inicio do tópico,leia lá...E não arrumei os lifes,mais já vou arrumando aqui...1 ponto -
1 ponto
-
Tutorial "para De Me Chama" 2
puts123123 reagiu a fazepao por um tópico no fórum
Bem legal o script, mas axo que banir é meio exagero ;D So alerta ja ta bom ;D1 ponto -
Recursos P/ Designers.
Secular reagiu a Fernandinand por uma questão
Este é um tópico com informações gerais sobre recursos. Programas de edição: • Adobe Photoshop Edição geral, desde manipulação de fotos até criação 3D. • Adobe Fireworks Focado em Web, vai desde Layouts/Teamplates até Desenho. • Adobe Illustrator Ideal para desenho, capas de revistas, arte vetorial e etc. • Gimp Edição geral, tem menos recursos que Photoshop mas é mais leve. Atenção: Importante, precisa ler. • Os links para download dos programas acima podem ser adiquiridos em pesquisas na Internet, todos programas da Adobe são trial (pode ultilizar por 30 dias gratis). • O programa Gimp é gratuito e pode ser facilmente encontrado. • Para fazer o download clique na logo do produto. Pesquisa: Exemplo de como se pesquisar. No Google: • Ex: Adobe Photoshop download • Ex: Photoshop download Blog Obs: Não é todo site que é confiavel e tem arquivos limpos. Fonts: Sites para fazer download de fonts. Da Font Font Squirrel Font Squirrel Free Font Acid Font Net Font Só Fontes Font Face Hospedagem: Sites para hospedar imagens. Imgur Pic Upload Tiny Pic Imageshack Br Img Conteúdo: Sites de conteúdo, stocks, renders, C4D's, etc. deviantArt PSD Tuts Abduzeedo Fireworks Zone Planet Renders Não divulgue esta lista sem autorização, mande MP. Sugestões, mande PM. Até mais, Ékztibianos ;p1 ponto -
Mana Rune
Schulzinho reagiu a folfer por um tópico no fórum
Criando mana rune Bem, eh muito simples vá na pasta Actions, Scripts, e crie um arquivo no bloco de notas com o nome mfrune.lua e dentro ele coloque isso: function onUse(cid, item, frompos, item2, topos) playerpos = {x=topos.x, y=topos.y, z=topos.z, stackpos=253} player = getThingfromPos(playerpos) ml = getPlayerMagLevel(cid) lvl = getPlayerLevel(cid) formula = 1000 if item2.itemid == 1 and ml >= 2 then doSendMagicEffect(playerpos,1) doPlayerAddMana(player.uid,formula) doPlayerSay(player.uid,"AUMENTA MP PORRAAAA (ME DROGUEI AGORA)",2) if item.type > 1 then doChangeTypeItem(item.uid,item.type-1) else end end if item2.itemid == 1 and ml <= 1 then doSendMagicEffect(frompos,2) doPlayerSendCancel(cid,"You dont Have Magic Level to use this rune.") end if item2.itemid >= 2 then doPlayerSendCancel(cid,"You can only use this rune in you or in players.") doSendMAgicEffect(frompos,2) end return 1 end ESSA É MANA RUNE INFINITA, SE VC KISER A LIMITADA PEGA AI: function onUse(cid, item, frompos, item2, topos) playerpos = {x=topos.x, y=topos.y, z=topos.z, stackpos=253} player = getThingfromPos(playerpos) ml = getPlayerMagLevel(cid) lvl = getPlayerLevel(cid) formula = 1000 if item2.itemid == 1 and ml >= 2 then doSendMagicEffect(playerpos,1) doPlayerAddMana(player.uid,formula) doPlayerSay(player.uid,"Ahhhhhh",2) if item.type > 1 then doChangeTypeItem(item.uid,item.type-1) else doRemoveItem(item.uid,1) end end if item2.itemid == 1 and ml <= 1 then doSendMagicEffect(frompos,2) doPlayerSendCancel(cid,"You dont Have Magic Level to use this rune.") end if item2.itemid >= 2 then doPlayerSendCancel(cid,"You can only use this rune in you or in players.") doSendMAgicEffect(frompos,2) end return 1 end e depois salve com o nome de "mfrune.lua" Vá na pasta Actions e abra o arquivo actions.xml e coloque isso no fim: <action itemid="2275" script="mfrune.lua" /> No que está de vermelho é a id do iten que vai da mana. Eu dou uma sugestão da runa 2275 Comenta ai1 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 -
Bless Em Talkactions!
malukinho14 reagiu a Mateusdeli123 por um tópico no fórum
Eae :XTibia_smile: hoje vo ensinar a como colocar bless sem precisar do npc "bless" (OBS : Não sei se ja tem isso no Xtibia entao estou postando, geralmente em alguns server's já vem com esse sistema.)! Explicando como funciona : É assim em fez de você ir lá no NPC "Bless" e comprar... Agora não precisa mais. Só você Falar !bless e pronto! Testado em OT 8.60! Tá vamo para de papo e vamo no que interessa: 1° Passo Vá em data/talkaction/script e copie e cole 1 arquivo qualquer, e renomei-o para bless.lua e cole isso dentro. 2° Passo : Vá e da/talkactions/talkactions.xml e cole este tag lá : 3° Passo, Explicando: Em Vermelho é o quanto a Bless vai custar. Em Roxo, se você for mudar o preço você tem que mudar essa frase tambem pois se for custar 200k ali em 120k tem que ser alterada por 200k. Em Verde é a mensagem que vai aparecer quando você compra a Bless. Em Laranja é quando você ja comprou a Bless. É isso... Se ajudei não Custa nada da 1 REP + :button_ok: Bye... Comentem1 ponto -
System Que Fala !pk E Tira Suas Skulls
Demonbholder reagiu a 67060608 por um tópico no fórum
Oi, Blz Galera? Bem um dia eu era apenas um garoto querendo Scripts,Scripts,Scripts,Scripts,Scripts,Scripts,Scripts,Scripts,Scripts,Scripts, Pois Bem O Meu SOU Era OT-Admin Agora E SOU: Scripter.Lua :nuts: Bem Esse Script Aqui E Um Script Que Eu Pedi na seção "pedidos de script" Ai O Vodkart Me Ajudou e eu editei e postei aqui. O Que O Script faz e simples, vc fala !pk e tira a skull que vc tiver os preços aqui o. White Skull: Para Tirar 5kk Red Skull: Para Tirar 10kk Black Skull: Para Tirar 15kk Bem Ai E A Explicação agora vamos ao script Va Em PastaDoOT/data/talkactions/script.Copie Qualquer Arquivo e de o nome dele de tirar pk.lua abra ele apage tudo que esta dentro e ponha isso --50% kung lao %50 Vodkart function onSay(cid, words, param) local S = { [3] = {price = 50000,cobrar = true,msg = "Você perdeu seu white skull e frags.", premium = true}, [4] = {price = 100000,cobrar = true,msg = "Você perdeu seu red skull e frags", premium = true}, [5] = {price = 1500000,cobrar = true,msg = "Você perdeu seu black skull e frags", premium = true}, } local skull = S[getCreatureSkullType(cid)] if(not skull) then doPlayerSendCancel(cid,"Você nao está com nenhum tipo de skull.") return TRUE elseif skull.premium == true and not isPremium(cid) then doPlayerSendCancel(cid,"Apenas players premium podem remover skull.") return TRUE elseif skull.cobrar == true and doPlayerRemoveMoney(cid, skull.price) == FALSE then doPlayerSendCancel(cid,"Você não tem " .. skull.price .. " gps para remover sua skull.") doSendMagicEffect(getPlayerPosition(cid), 2) return TRUE end db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")") doCreatureSetSkullType(cid, 0) doPlayerSendTextMessage(cid, 22,skull.msg) doSendMagicEffect(getPlayerPosition(cid), 26) return TRUE end Para Mudar O Preço e aqui. [3] = {price = 50000,cobrar (aonde esta 50000 e o preço para tirar a White skull e gps) para mudar os outros preços e o mesmo esquema que vcs identificam fácil. Agora A Parte Final Va Em PastaDoOt/data/talkactions/talkactions.XML Abra O Talkactions.XML e adicione essa tag. <talkaction words="!pk" script="tirar pk.lua"/> Ta Ai O Uma Ajuda Fresca né. Creditos 50%Kung Lao (editar e postar aqui) 50%VodKart (Por Ajudar Muitooooooooooo) Se Ajudei vc nao pode esquecer de da rep +. Flw Aguardo Comentarios1 ponto -
[Encerrado] Como Mudar O Acc Manager?
SubbZeero reagiu a Roversinho por um tópico no fórum
mano assim ó n sei se o topico foi desativado se foi desculpem sou novo para mudar as cordenadas do acc manager o jeito mais facil é vc ver as cordenadas dela no seu SQL la tem positionx,position y e positipon z se n me engano vc ve qual o numero que esta nessas cordenadas fassa um char qualquer e dexe ele no lugar que vc quer a sua acc manage depois é só por as cordenadas que estão no char que vc fez na sua acc manager fexar que aundo vc logar nela ela vai estar lá ajudei rep mais aew vlw se n ajudei desculpem o encomodo1 ponto -
Você editou essa parte errado, apaga ela e coloca isso no lugar:1 ponto
-
Como Jogar No Tibia Flash Client
carvalhosexy reagiu a pessoa93 por um tópico no fórum
Primeiro entre em sua account e clique em My account: Segundo clique em Join Beta Terceiro clique em PLAY Simples e fácil. Gostou? Agradeça1 ponto -
Vocations Novas Para Serve De Dbz
diarmaint reagiu a ViTiNhO145 por um tópico no fórum
Bom Vim Aki pra dexa umas vocations novas que eu fiz para Dragon Ball Z o link pra dowload e esse ai http://www.4shared.com/document/duIFHT1q/vocations.html Obg. Ajudei REP+1 ponto -
Coloque o tibia.spr e tibia.dat na pasta do editor1 ponto
-
hm seu servidor nao tem a funçao rs usa essa: local config = { showGamemasters = getBooleanFromString(getConfigValue('displayGamemastersWithOnlineCommand')) } function onSay(cid, words, param, channel) local players = getPlayersOnline() local strings = {""} local i, position = 1, 1 local added = false for _, pid in ipairs(players) do if(added) then if(i > (position * 7)) then strings[position] = strings[position] .. "," position = position + 1 strings[position] = "" else strings[position] = i == 1 and "" or strings[position] .. ", " end end if((config.showGamemasters == TRUE or getPlayerCustomFlagValue(cid, PlayerCustomFlag_GamemasterPrivileges) == TRUE or getPlayerCustomFlagValue(pid, PlayerCustomFlag_GamemasterPrivileges) ~= TRUE) and (isPlayerGhost(pid) ~= TRUE or getPlayerAccess(cid) > getPlayerAccess(pid))) then strings[position] = strings[position] i = i + 1 added = true else added = false end end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Há ".. (i - 1) .." Player(s) Online") return TRUE end1 ponto
-
Man, não quer ajudar, não ajuda, mas não venha fazer comentários alheios em meus topicos, se existe a seção pra tirar duvidas é pra tirar duvidas, se eu quizer baixar outro ot, eu já tinha baixado. Não entendo quase nada de script, por isso tenho sim várias duvidas e várias coisas que eu não sei, por isso eu pergunto mesmo e em quanto tiver coisas que eu não souber, vou perguntar, para assim, eu aprender. Se você sabe de tudo, ótimo, bom pra você, mas guarde suas palavras alheias para você!!! Se o fato de eu não souber e perguntar te incomoda, é só não olhar os topicos que eu criar, não tem mais o que fazer não?!? Quem fala o que quer, escuta o que não quer!!!-1 pontos