Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 12/23/10 em todas áreas
-
V4M0S C0L4B0R4R M3RM40!!!! T4 L1G4D0q Wazzzzuuuuuuuuuup! Estou postando aqui mais um trabalho meu, isso era pra um ot de pokemon, mas agora é do povaoq! Avaliem e reparem o bug das escadas que eu não organizei , tem bastante coisa non-sense como os crystals mas eles tinham relação a alguma missão. Espero que gostem! ) Link Easy-Share:Aqui Link Megauploadd:Aqui Link Direto: FAIL REP+ ?2 pontos
-
Uma montanha ae pra quem precisar, ae vai: Imagens: (eu ja havia mostrado ela aki no forum) http://www.4shared.com/file/2aiRsMZD/Cyc_Montain_-_XTibia.html Vlws, abrass, Quem gostou da um agradeço ae, qm n gosto n precisa Curtiu D+? > REP++2 pontos
-
Oi galera do xtibia, alguns já me conhece , posto scripts na seção de actions/talk/move! Aqui está a versão 3.0 do PokeServer TFS 0.3.6pl1, ~~( O que contém na versão 3.0? ) ~~ ~~>Fly System - Bug corrigido ~~>Ride System- Bug corrigido ~~>Catch System- Bug corrigido ~~>Go/back System- Bug corrigido ~~>Stones System - Bug corrigido ~~>Npc Heal - Bug arrumano ~~>Todos os 151 pokemons (50% configurados) ~~>Skill System - Para cada tipo de pokemon é um poder difirente! ~~>Mapa Svke 70% ~~>Todas as outfits Stones,Go/back,Npc,Fly,Ride,Skill, foram testados, então não venha encher o saco falando merda <--! Download !--> Server 3.0 Client (È extremamento necessario para poder entrar no server!) Versão 3.0 do server de pokemon Faça você mesmo! Créditos ao Drakylucas por me ajuda a fazer os scripts! Não se esqueça de clicar ali no icone verde1 ponto
-
[8.54] The Forgotten Server 0.3.6Pl1 (Crying Damson)
victorbeico reagiu a Alissow por um tópico no fórum
The Forgotten Server Versão: 0.3.6 Patch Level 1 (Crying Damson) As modificações podem ser encontradas em doc/CHANGELOG no arquivo aqui baixado ou Neste Link. Esta é a quinta e ultima versão da famosa Crying Dansom e agora, o lançamento primário do TheForgottenServer, e todos que estiverem usando qualquer versão abaixo desta são aconselhados a atualizar. Sexta (Sex) vem com uma quantidade incontável de mudanças, e a principal delas é o protocolo 8.54. Se você encontrar qualquer erro, por favor acalme-se e em vez de fazer "spam", apenas reporte-nos ao nosso bug tracker, assim estaremos concertando o mais rápido possivel e incluiremos a correção no próximo patch. Por favor, não nos culpe se você não fizer uma atualização completa do seu diretório de dados, porque é só a sua culpa. Patches: DLLS: OpenTibia DLLs (V1.4b) Source code: - Browse - SVN Client Download: http://www.speedysha.../633718469.html Em nome da Equipe de Desenvolvimento TheForgottenServer, Elf.1 ponto -
(8.60) Global Mapa Com Npc Death Igual Ao 8.40
joaovitorjoia reagiu a devotti2 por um tópico no fórum
(8.60) mysql serv. :withstupidsmiley: rep+ por mim restaurar esse belo trabalho. |!buyvip uniqueid 13700 Ot igual ao 8.40 de bekman que atualizei para 8.60 e agora com armas vip. tah mto legal baixem ae. xtreme wand xtreme sword xtreme axe xtreme arrow xtreme bow InvaSOES POR COMANDO /mr. punish /dracola /massacre /handmaiden /orshabaal /demodras /necropharus /the old widow /zarabustor /xenia /yalchal /ferumbras /morgaroth /ghazbaran Cidades: ____________________ * Carlin * AB'Dendriel * Kazordoon * Port Hope * Edron * Ankrahmun * Venore * New Island * Svargrond * Ilha Dos Eventos * Thais * Yalahar ____________________ Quest's: ____________________ * Banshee Quest -- (LV 60) * Demon Helmet -- (LV 100) * Anihilator -- (LV 100) * Ancient Helmet -- (LV 100) * DSM -- (LV 95) * Demona Quest -- (LV 80) * RH -- (LV 30) * Behe Quest -- (LV 80) * Ring of the sky -- (LV 85) * Bright Sowrd -- (LV 45) * Banshee Quest -- (LV 60) * Crown Legs -- (LV 8) * Blue <> BOH <> SS -- (LV 60) * Warlock Quest -- (LV 70) * Knight Armor -- (LV 8) * Teddy Bear -- (LV 135) * Mms and Giant Sword -- (LV 100) * Fire Sowrd -- (LV 20) * Warrior Helmet -- (LV 8) * 4 Itens Raros -- (LV 210) <> Crystal Arrow <> Gold Ring <> Dragon Scale Legs <> Great Shield * 4 Itens Raros -- (LV 220) <> Magic Plate Armor <> Great Axe <> Horned Helmet <> Golden Boots * POI (Pits of Inferno) -- (LV 100) Descrição breve: A melhor quest do serv a mais demorada a mais aventurada a melhor =D. <> Avenger <> 100 platinum coins <> Frozen Starlight <> Boots of Waterwalking <> Stuffed Dragon <> Sprite Wand <> Arbalest * The Inquisition Quest. -- (LV 100) <> Royal Crossbow <> Warsinger Bow <> Spellbook of Dark Mysteries <> Emerald Sword <> Hellforged Axe <> Obsidian Truncheon <> Master Archer's Armor <> Fireborn Giant Armor <> Robe of The Underworld Credito: Natan beckman (90%) a mim(10%) a senha do god voce poem no sql studio. link para download: http://www.4shared.c...lobal_full.html :XTibia_smile: Nao sou obrigado a postar scans malz. Net lerda Para o bug das potions é só baixar este arquivo e por em scripts actions substituindo a que ja tem la >link > http://www.4shared.c...nE/Potions.html em actions.xml: <!-- Potions --> <action itemid="7439" script="liquids/berserk_potion.lua"/> <action itemid="7440" script="liquids/mastermind_potion.lua"/> <action itemid="7443" script="liquids/bullseye_potion.lua"/> <action itemid="7588" script="liquids/strong_health.lua" allowfaruse="1"/> <action itemid="7589" script="liquids/strong_mana.lua" allowfaruse="1"/> <action itemid="7590" script="liquids/great_mana.lua" allowfaruse="1"/> <action itemid="2281" script="liquids/mana rune.lua" allowfaruse="1"/> <action itemid="7591" script="liquids/great_health.lua" allowfaruse="1"/> <action itemid="8472" script="liquids/great_spirit.lua" allowfaruse="1"/> <action itemid="8473" script="liquids/ultimate_health.lua" allowfaruse="1"/> <action itemid="7618" script="liquids/health_potion.lua" allowfaruse="1"/> <action itemid="7620" script="liquids/mana_potion.lua" allowfaruse="1"/> <action itemid="8704" script="liquids/small_health.lua" allowfaruse="1"/> <action itemid="8474" script="liquids/antidote_potion.lua" allowfaruse="1"/> REP + AE E COMENTEM OQUE ACHRAM OU OQUE FLTA MUDAR.1 ponto -
Item Ou Potion De Double Exp.
Bluetooth reagiu a MatheusGlad por um tópico no fórum
Item ou potion de double exp. By: MatheusMkalo Primeiramente vamos ver oque o script tem de diferente dos outros: Se voce sair com o efeito da exp potion o tempo da potion continuara passando, se voce logar antes que ele acabe voce ainda vai poder aproveitar umpouco da double exp. Voce pode escolher varias opçoes, como escolher se so premium accounts podem usar o item, quanta mana vai gasta, se vai remover quando usar e outros AGORA O SCRIPT SOH ESTA DISPONIVEL EM MOD: Vá na pasta mods e adicione um arquivo.xml com o nome de ExpPotion.xml e bote isso: <?xml version="1.0" encoding="UTF-8"?> <mod name="AdvancedExpPotionSystem" enabled="yes" author="MatheusMkalo" forum="XTibia.com"> <!-- Configs and Functions --> <config name="PotionExpConfigs"><![CDATA[ ------ CONFIGURE SEU SCRIPT ------ TRUE ou FALSE configs = { time = 1, ---- TIME IN MINUTES needpa = TRUE, needlvl = {TRUE, level = 50}, costmana = {TRUE, mana = 300}, addrate = 20, -- Exp que vai adicionar em % removeonuse = TRUE } function getTime(s) local n = math.floor(s / 60) s = s - (60 * n) return n, s end CreatureEventChecker = function(event, ...) -- Colex if isCreature(arg[1]) then event(unpack(arg)) end end creatureEvent = function(event, delay, ...) -- Colex addEvent(CreatureEventChecker, delay, event, unpack(arg)) end function getPlayerExtraExpRate(cid) -- By MatheusMkalo return (getPlayerRates(cid)[8]-1)*100 end ]]></config> <!-- exppotion.lua --> <action itemid="7440" event="script"><![CDATA[ domodlib('PotionExpConfigs') if getPlayerStorageValue(cid, 62164) >= 1 then return doPlayerSendCancel(cid, "You are already taking effect from this item.") end if configs.needpa and not isPremium(cid) then return doPlayerSendCancel(cid, "You need to be a premmium account to use this item.") end if configs.needlvl[1] and getPlayerLevel(cid) < configs.needlvl.level then return doPlayerSendCancel(cid, "You need to be level " .. configs.needlvl.level .. " to use this item.") end if configs.costmana[1] then if getCreatureMana(cid) < configs.costmana.mana then return doPlayerSendCancel(cid, "You need " .. configs.costmana.mana .. " mana to use this item.") else doCreatureAddMana(cid, -configs.costmana.mana) end end if configs.removeonuse then doRemoveItem(item.uid, 1) end for i = configs.time*60, 1, -1 do local a = math.floor(i/60) .. ":" .. i - (60 * math.floor(i/60)) if #a < 4 then a = string.sub(a,1,2) .. "0" .. string.sub(a, 3) end if i == configs.time*60 then creatureEvent(doPlayerSendCancel, configs.time*60*1000, cid, "The effect of the exp potion end.") end creatureEvent(doPlayerSendCancel, (configs.time*60-i)*1000, cid, "The effect of the exp potion will end in "..a..".") end doPlayerSetExperienceRate(cid, (1+(configs.addrate/100))+(getPlayerExtraExpRate(cid)/100)) creatureEvent(doPlayerSetExperienceRate, configs.time *60*1000, cid, 1+(getPlayerExtraExpRate(cid)/100-(configs.addrate/100))) doPlayerSendTextMessage(cid, 22, "Agora voce ira receber mais exp por matar os mosntros.") setPlayerStorageValue(cid, 62164, os.time()) creatureEvent(setPlayerStorageValue, configs.time *60*1000, cid, 62164, 0) return TRUE ]]></action> <creaturescript type="login" name="ExpPotion" event="script"><![CDATA[ domodlib('PotionExpConfigs') local time = configs.time if os.time()-getPlayerStorageValue(cid, 62164) < time *60 then doPlayerSetExperienceRate(cid, (1+(configs.addrate/100))+(getPlayerExtraExpRate(cid)/100)) creatureEvent(doPlayerSetExperienceRate, (time*60-(os.time()-getPlayerStorageValue(cid, 62164))) * 1000, cid, 1+(getPlayerExtraExpRate(cid)/100-(configs.addrate/100))) creatureEvent(setPlayerStorageValue, (time*60-(os.time()-getPlayerStorageValue(cid, 62164))) * 1000 , cid, 62164, 0) for i = (time*60-(os.time()-getPlayerStorageValue(cid, 62164))), 1, -1 do local a = math.floor(i/60) .. ":" .. i - (60 * math.floor(i/60)) if #a < 4 then a = string.sub(a,1,2) .. "0" .. string.sub(a, 3) end if i == (time*60-(os.time()-getPlayerStorageValue(cid, 62164))) then creatureEvent(doPlayerSendCancel, (time*60-(os.time()-getPlayerStorageValue(cid, 62164)))*1000, cid, "The effect of the exp potion end.") end creatureEvent(doPlayerSendCancel, ((time*60-(os.time()-getPlayerStorageValue(cid, 62164)))-i)*1000, cid, "The effect of the exp potion will end in "..a..".") end end return TRUE ]]></creaturescript> </mod> Tudo pronto, exp potion funcionando! O ID da potion usada no script foi o: 7440 (Mastermind Potion) Para usa-lo voce precisa tirar a linha no actions.xml da potion porque se nao vai bugar. Para trocar o id da potion eh so mudar essa linha: <action itemid="7440" event="script"><![CDATA[ Resposta para o Topico: Aew Galera Preciso Scripting Da Double Exp Potion1 ponto -
PokeBall System! Ola Xtibianos, Vim hoje postar um Famoso Script de Pokeball System feito pelo Genioso Nahruto, claro pedi a autorização dele para postar. A Todos que forem pegar Scripts de outras Pessoas, lembre-se de sempre pedir autorização e claro colocar os creditos. Para Tfs: 0.34 , 0.35 e 0.36 Essas Forao Testadas E Funfo. Versoes: 8.42 - 8.50 - 8.52 - 8.54 - 8.6. Ots Testados: Snowz Yurots - Alissow Server - Styller Yurots Primeiramente Vamos Fuçar em Function.lua, se voce nao Sabe onde fica vá em: Data>Lib>Function.lua Abra e Coloque Isto: _warpzone = 2147483648 -- start storing strings here (THIS IS THE ABSOLUTE MAXIMUM VALUE FOR THIS) _maxlength = 1024 -- multiply by 3 to get the true length. setPlayerStorageInteger = setPlayerStorageValue getPlayerStorageInteger = getPlayerStorageValue function setPlayerStorageString(cid, key, value) if #value > (_maxlength-1) * 3 - 1 then -- Last word is reserved for 0 termination of the string. error("Storage string is too long") end if key > _warpzone / _maxlength then error("Storage string key is too large (" .. key .. ")") end key = _warpzone + key * _maxlength local word = 0 local wordwrap = 0 local wordcount = 0 local i = 1 while i <= #value do local byte = string.byte(string.sub(value, i, i)) word = bit.bor(word, bit.lshift(byte, wordwrap)) wordwrap = wordwrap + 8 if wordwrap == 24 then --[[ In the ideal world we would be able to store 4 characters per word, however, as the default return value for getPlayerStorageValue is -1, we cant use the last bit. ]]-- setPlayerStorageInteger(cid, key + wordcount, word) word = 0 wordwrap = 0 wordcount = wordcount + 1 end i = i + 1 end -- store the last word setPlayerStorageInteger(cid, key + wordcount, word) end function getPlayerStorageString(cid, key) if key > _warpzone / _maxlength then error("Storage string key is too large (" .. key .. ")") end key = _warpzone + key * _maxlength local wordcount = 0 local str = "" while true do if wordcount >= _maxlength then break end local word = getPlayerStorageInteger(cid, key + wordcount) if word == -1 then -- end of string break else -- Extract the 3 characters from the value byte = bit.band(word, 255) if byte == 0 then break else str = str .. string.char(byte) end byte = bit.rshift(bit.band(word, 65280), 8) if byte == 0 then break else str = str .. string.char(byte) end byte = bit.rshift(bit.band(word, 16711680), 16) if byte == 0 then break else str = str .. string.char(byte) end end wordcount = wordcount + 1 end return str end E Isso! function doConvinceSummon(cid, creature, amount, pos) summonplayerpos = {x=pos.x, y=pos.y, z=pos.z, stackpos=253} summonplayer = getThingfromPos(summonplayerpos) if(summonplayer ~= nil and summonplayer.itemid > 0) then doPlayerSendCancel(cid,"There is not enough room to summon here.") ret = 0 else convince = doSummonCreature(creature, pos) doConvinceCreature(cid, convince) ret = 1 end return ret end Agora Vamos Fazer o Script Vá em Pasta do Seu Ot > Data > Actions > Scripts Crie uma Pasta chamada pokeball.lua e bote isso dentro local notAllowed = {"Ferumbras", "Demon"} local storage = { status = 25650, pokeName = 25651 } local actionid_used = 7510 function onUse(cid, item, fromPos, item2, toPos) local pokeballStatus = getPlayerStorageValue(cid, storage.status) local pokeName = getPlayerStorageString(cid, storage.pokeName) pos = getPlayerPosition(cid) pos.stackpos = 0 if pokeballStatus == -1 then toPos.stackpos = 253 local pokeThing = getThingfromPos(toPos) if isCreature(pokeThing.uid) == TRUE then if isPlayer(pokeThing.uid) == FALSE then local pokename_ = getCreatureName(pokeThing.uid) if item.actionid ~= actionid_used then -- local maxHealth = 400 -- local creatureHealth = getCreatureHealth(pokeThing.uid) -- local divNum = (string.len(maxHealth)-1)^2 -- local result = math.floor((creatureHealth/divNum)/10) -- local chance = math.random(1, math.random(4, math.random(7, math.max(result, 7)))) -- if chance == result then if isInTable(notAllowed, pokename_) == TRUE then doPlayerSendCancel(cid, "You cannot catch this creature") else setPlayerStorageString(cid, storage.pokeName, pokename_) doRemoveCreature(pokeThing.uid) doSendDistanceShoot(fromPos, toPos, 37) setPlayerStorageValue(cid, storage.status, 1) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") doSetItemActionId(item.uid, actionid_used) end -- else -- doSendMagicEffect(fromPos, 2) -- doPlayerSendCancel(cid, "The Pokemom Escaped") -- end elseif item.actionid == actionid_used and pokename_ == pokeName then doPlayerSay(cid, pokeName .. " Back!!", TALKTYPE_SAY) doRemoveCreature(pokeThing.uid) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") setPlayerStorageValue(cid, storage.status, 1) doSendDistanceShoot(fromPos, toPos, 37) else doSendMagicEffect(fromPos, 2) doPlayerSendCancel(cid, "This pokeball is already used") end else doPlayerSendCancel(cid, "You cannot catch this creature") end else doPlayerSendCancel(cid, "Creature not found") end elseif pokeballStatus == 1 then summons = getCreatureSummons(cid) -- if #summons >= 2 then -- doPlayerSendCancel(cid, "You cannot call more pokemons") -- else doConvinceSummon(cid, pokeName, 0, toPos) doSendDistanceShoot(fromPos, toPos, 37) doPlayerSay(cid, pokeName .. " Go!!", TALKTYPE_SAY) setPlayerStorageValue(cid, storage.status, -1) doSetItemSpecialDescription(item.uid, "it is empty.") -- end end else return 1 end function isInTable(t, val) for _, v in pairs(t) do if v == val then return TRUE end end return LUA_ERROR end para TFS local notAllowed = {"Ferumbras", "Demon"} local storage = { status = 15244, pokeName = 15212 } local actionid_used = 7510 function onUse(cid, item, fromPos, item2, toPos) local pokeballStatus = getPlayerStorageValue(cid, storage.status) local pokeName = getPlayerStorageString(cid, storage.pokeName) pos = getPlayerPosition(cid) pos.stackpos = 0 if pokeballStatus <= 0 then toPos.stackpos = 253 local pokeThing = getThingfromPos(toPos) if isCreature(pokeThing.uid) == TRUE then if isPlayer(pokeThing.uid) == FALSE then local pokename_ = getCreatureName(pokeThing.uid) if item.actionid ~= actionid_used then -- local maxHealth = 400 -- local creatureHealth = getCreatureHealth(pokeThing.uid) -- local divNum = (string.len(maxHealth)-1)^2 -- local result = math.floor((creatureHealth/divNum)/10) -- local chance = math.random(1, math.random(4, math.random(7, math.max(result, 7)))) -- if chance == result then if isInTable(notAllowed, pokename_) == TRUE then doPlayerSendCancel(cid, "You cannot catch this creature") else setPlayerStorageString(cid, storage.pokeName, pokename_) doRemoveCreature(pokeThing.uid) doSendDistanceShoot(fromPos, toPos, 37) setPlayerStorageValue(cid, storage.status, 1) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") doSetItemActionId(item.uid, actionid_used) end -- else -- doSendMagicEffect(fromPos, 2) -- doPlayerSendCancel(cid, "The Pokemom Escaped") -- end elseif item.actionid == actionid_used and pokename_ == pokeName then doCreatureSay(cid, pokeName .. " Back!!", TALKTYPE_SAY) doRemoveCreature(pokeThing.uid) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") setPlayerStorageValue(cid, storage.status, 1) doSendDistanceShoot(fromPos, toPos, 37) else doSendMagicEffect(fromPos, 2) doPlayerSendCancel(cid, "This pokeball is already used") end else doPlayerSendCancel(cid, "You cannot catch this creature") end else doPlayerSendCancel(cid, "Creature not found") end elseif pokeballStatus == 1 then -- summons = doCreatureSummons(cid) -- if #summons >= 2 then -- doPlayerSendCancel(cid, "You cannot call more pokemons") -- else doConvinceSummon(cid, pokeName, 0, toPos) doSendDistanceShoot(fromPos, toPos, 37) doCreatureSay(cid, pokeName .. " Go!!", TALKTYPE_SAY) setPlayerStorageValue(cid, storage.status, 0) doSetItemSpecialDescription(item.uid, "it is empty.") -- end end return 1 end function isInTable(t, val) for _, v in pairs(t) do if v == val then return TRUE end end return LUA_ERROR end Agora Vamos Adicionar as Tags, vá em Data>Actions.xml e Adicione as Tags Corretas´ <action itemid="xxxx" script="pokeball.lua" allowfaruse="1" blockwalls="1" /> [font-"Georgia"]em <action itemid="xxxx" nos 4 X voce coloca o Number Id Do seu Item que Será como uma "Pokeball"[/font] Oque o Script Faz Realmente: - Guarda monstros dentro de objetos e salva seu status, você pode colocar pra salvar em qlqr objeto.. seria ótimo para projetos pokemons.. Creditos: Nahruto Print Screen's: Snorlax Saindo da Pokeball: Snorlax Voltando para a Pokeball Look da Pokeball ( o Player so Ve assim You See a Pokeball , Have Snorlax )] Lembrando que eu nao Adicionei o Efeito da Pokeball Abrindo e Jogando o Monstro. Para fazer este Tipo de efeito voce vai ter que saber direitinho o LookType da Pokeball Fechando e Saindo, e transformar para um efeito e depois modificar no Script, aqui no xtibia Existe varios Tutoriais explicando isto, é so procurar! Gostou? Clica no Ali em Baicho para me Ajudar! Abraços..1 ponto
-
Colocar Otserver Online Com Di-524
Felypou7 reagiu a therockiss por um tópico no fórum
Tutorial Net Compartilhada DI-524 Olá não sei se já tem esse Tuto mais vo manda pra vocês como deixar servidor online com internet compartilhada com Dlink DI-524 1° PASSO: Baixe o servidor de sua preferençia Servidores 2° PASSO: - *Crie um ip fixo entre no site Site No-ip cadastre-se faça seu login. *Como fazer IP Fixo? *1° Clique na aba - * Hosts/Redirects *Depois clique em - *Add Host *Aonde está escrito Hostname você coloca o nome do ser Otserver e na frente clique na setinha para baixo e escola qualquer um que esteja abaixo do No-ip Free Domains por exemplo se você escolher Servegame.com seu ot fica assim Otserver.servegame.com ou se você escolher no-ip.org ficará Otserver.no-ip.org feito isso lá em baixo clique em Creat Host pronto ip fixo já está criado, Agora baixe o No-Ip, No mesmo site que você criou o IP Fixo é só ir em downloads. 3° PASSO: *Entre no site Meu IP copie o numero que está em vermelho, vá na config.lua do seu Otserver abra e procure por "ip = 127.0.0.1" e Substitua pelo ip que você copiou, pronto agora salve e feche. 4° PASSO: *Agora vamos liberar as portas 7171 do d-link, no seu navegador lá aonde você coloca as URL's ou onde você digita o nome do site coloque Site D-Link, Irá abrir um janela pedindo Usuario e senha coloque, User = Admin Pass = Deixe em branco e dê enter se não der tente a senha 12345, se mesmo assim não entrar peça a senha para o administrador do roteador. 5º PASSO: *Você deverá ir no prompt de comando ou em executar e digitar prompt, digite "ipconfig" <- Exatamente assim e onde está escrito IPv4 vejá qual é os 3 ultimos numeros volte na pagina do d-link e coloque os 3 ultimos numeros em Private Port. 6º PASSO: *Após entrar vá em cima em *Advanced *Virtual Server *Deixe Assim *Enable *Name = Tibia *Private IP = 192.168.0.xxx *Protocol Type = TCP *Private Por = 7171 *Public Port = 7171 *Schedule = Always *Apply 7° PASSO: *Na mesma Aba *Advanced vá em *DMZ e faça a mesma coisa que você fez em *Private port *Coloque *Enable *IP Address 192.168.0.xxx <-- Os mesmo três ultimos numeros do IPv4 8° PASSO: *Agora vai na aba *Home *WAN *Procure por *Connect mode select e coloque *Always-on. 9° PASSO: *Agora sempre que você ligar o computador e for abrir seu Otserver é só abrir o Programa No-ip copiar o numero do seu IP, ou entrar no site Meu IP. *Na carinha, deixe ela com a buchecha vermelhinha como se tivesse com vergonha se não der na primeira tente até ficar, agora é só abrir seu Otserver *Pronto Espero ter ajudado Vocês, 100% Feito por mim "TheRockiss"1 ponto -
Olá,Estou começando na área scripting e estou postando um script. Bom, trouxe hoje aqui para vocês o script Box, para quem ja jogou P.O deve conhecer, você abre por exemplo uma Box 2 e sai um Pokemon. Hoje estou postando um exemplo da Box 3. Que para abrir ela precisa de level 60. Chega de conversar e vamos pro scripting. Adicione isto com o nome de box.lua na pasta data/actions/scripts: function onUse(cid, item, frompos, item2, topos) r1 = math.random(1,3) if getPlayerLevel(cid) >= 60 then if doPlayerRemoveItem(cid,7884,1) == TRUE then if r1 == 1 then doPlayerSendTextMessage(cid,22,"Você ganhou um Porygon.") doPlayerAddItem(cid,2128,1) elseif r1 == 2 then doPlayerSendTextMessage(cid,22,"Você ganhou um Hitmonchan.") doPlayerAddItem(cid,2129,1) elseif r1 == 3 then doPlayerSendTextMessage(cid,22,"Você ganhou um Hitmonlee.") doPlayerAddItem(cid,2130,1) end end end end Agora adicione isto no Actions.xml na pasta data/actions: → Configurando o Script Azul - É a quantidade de Pokemons que terá na Box.Preto - É o level que precisa usar a Box. Laranja - É o ID da Box. Vermelho - É o nome do Pokemon que aparecerá na mensagem quando abrir a Box. Roxo - ID da Pokebola do Pokemon. Obs: Se você for trocar o ID da Box no script terá que trocar na tag também. [/color][/color] Preto - ID da Box. → Adicionando outro Pokemon na Box Preto - Troque pela quantidade de Pokemons que você colocar. Vermelho - Mais um pokemon. Azul - Troque sempre que for adicionar um pokemon. Exemplo: Em cima está 3, no próximo pokemon coloque 4, no próximo pokemon coloque 5 e vai... Cinza - Nome do novo pokemon. Verde - ID da pokebola do novo pokemon. → Script Box, funciona no Go/Back do MatheusMkalo Adicione isto com o nome de box.lua em data/actions/scripts: function onUse(cid, item, frompos, item2, topos) r1 = math.random(1,3) if getPlayerLevel(cid) >= 60 then if doPlayerRemoveItem(cid,7884,1) == TRUE then if r1 == 1 then doPlayerSendTextMessage(cid,22,"Você ganhou um Porygon.") local s = doPlayerAddItem(cid, 2222) doItemSetAttribute(s, "description", "This is Porygon's pokeball. HP = ["..(10).."/"..(100).."]") elseif r1 == 2 then doPlayerSendTextMessage(cid,22,"Você ganhou um Hitmonchan.") local t = doPlayerAddItem(cid, 2222) doItemSetAttribute(t, "description", "This is Hitmonchan's pokeball. HP = ["..(10).."/"..(100).."]") elseif r1 == 3 then doPlayerSendTextMessage(cid,22,"Você ganhou um Hitmonlee.") local r = doPlayerAddItem(cid, 2222) doItemSetAttribute(r, "description", "This is Hitmonlee's pokeball. HP = ["..(10).."/"..(100).."]") end end end end Agora, adicione isto no actions.xml: → Configurando Preto - Quantidade de Pokemons Vermelho - Level que poderá usar a Box Laranja - ID da Box Vinho - Nome do Pokemon que aparecerá na mensagem Roxo - ID da Pokebola que você configurou no script do MatheusMkalo. Verde - Nome do Pokemon Azul - HP do Pokemon e HP maxima do Pokemon Exemplo: Aparecerá in-game [10/100], você tem que colocar o HP de acordo que você configurou no script do MatheusMkalo, coloque [1000/1000], se o pokemon tiver esse HP e o HPMax. → Adicionando um novo pokemon Preto - A quantidade de Pokemons Vermelho - Novo script do pokemon Azul - Mude sempre que for adicionar um pokemon Exemplo: Se o de cima for 10 o próximo pokemon tem que ser 11. Laranja - Nome do novo pokemon que aparecerá na mensagem Cinza - Nome do novo pokemon Vinho - HP do novo pokemon Pronto, acabou. Dúvidas, Bug's e Erros? Poste aqui. Créditos: Aksz - Fazer o script da box Kydrai - Adicionar a função para dar certo o script em uma pokebola só. Att, Aksz.1 ponto
-
1 ponto
-
Olha Man, isso foi causado pq vooc baixo algum OT com keylogger nunca Baixe nenhum Server sem Scan. Pelo Scan vooc pode ve se o arquivo tem virus ou não, aii fica Facil se previnir oo Scan pode ser feito pelo www.virustotal.com Axo q é isso.. Se Ajudei CLika no + Ali Embaixo da minha Assinatura Att1 ponto
-
1 ponto
-
Oi hicke, denovo eu no seu tópico de pedido Vi o script do BielLoks, ele funcionaria mas o problema tá que, não irá sempre add 100 lvl, por exemplo, ele colocou pra add a quantia de exp q precisa pro niv 100, mas no entanto, se o player estiver no niv 200 por exemplo, não ira pro 300. acho q vc sabe pq né?(preguiça de explica) Mas tentei arrumar o script dele, Se alguem ae conseguir explica oq deu errado no meu script(TENTEI DE TUDO E TO VERY MUCH CURIOSO AGORA!) Vejam ele:(seriam 2 scripts, o equip e o deequip, mas só muda o -exp pra exp, e usei botas ao invés de armor)1 ponto
-
Os Goblins do clã Grynch invadiram Tibia, como em todo ano, para tentar roubar os presentes de natal. Ajude Ruprecht a recuperar seus presentes logo! Fonte: Tibia.com1 ponto
-
Para você que já decorou sua casa no clima natalino, participe esse ano da competição de decorações de natal do FotoTibia.com! Confira todos os prêmios e detalhes diretamente no site deles! Fonte: Tibia.com1 ponto
-
[Dúvida] Como Tirar Este Dano Melee?
mininodusinfernu reagiu a matheusstiehleralves por um tópico no fórum
Primeiramente boa tarde,Mininu... Agora sobre o tópico , veja se no seu config.lua (na pasta de seu ot) na parte de multiplicadores (exp ,skills ,etc) procure por , criticaldamage ={1,2} . Explicando : Ai ele dará um critical a cada duas vezes . Ai é só você muda se voce não quer coloque um número impossível, como 1 vez a cada 100000000 vezes . Só lembrando que o seu criticaldamage pode estar diferente so dei um exeplo ... Espero te ajudado se não mudou apenas deiche um recado que estarei pesquisando :smile_positivo: .1 ponto -
1º NÃO FALEI QUE EU QUE FIZ O SERVER 2º JA CITEI QUE O SERVER FOI EDITADO DO FLASH 2.0 3º NAO ROBEI CRÉDITOS DE NINGUEM JA CITEI EM CIMA QUE FOI EDITADO E DENTRO DO OT TEM UM ARQUIVO COM OS CRÉDITOS DE QM FEZ 4º SE NAO VAI BAIXAR PROBLEMA É SEU NAO TO PEDINDO PRA NINGUEM BAIXAR 5º EDITEI E COLOQUEI NO FORUM DE BOA VONTADE 6º SE NAO GOSTOU SAI DO TÓPICO E NAO CRITICA 7º FALOWS1 ponto
-
Amigo, agora se usa o sql, inve de ter pasta dos players, existe um sqlestudio, que provavelmente veio com seu ot, abra ele e fassa isso depois: Escolha a opçao new database - Name: ESCOLHA Pasta: poe pra procurar, dai vc acha o arquivo da database, que estara dentro da pasta schemas+database. Pronto, dai abre as guilds, as contas, os player e talz. Ajudei? De +rep então, o que custa?1 ponto
-
[Talkaction] Teleport Parecido Com Do P.o
willscarlate reagiu a MatheusGlad por um tópico no fórum
Vá em talkactions/scripts e crie um arquivo.lua com o nome de poketeleport e bote o seguinte script dentro: function getTime(s) local n = math.floor(s / 60) s = s - (60 * n) return n, s end function onSay(cid, words, param) local configs = { needpa = TRUE, needlvl = {TRUE, level = 50}, } local cidades = { ["Carlin"] = {x=1000,y=1000,z=7, pokenames = {"Rat", "Bug"}, time = 1}, ["Thais"] = {x=1002,y=1000,z=7, pokenames = {"Rat", "Bug"}, time = 2}, } teleport = FALSE if configs.needpa and not isPremium(cid) then return doPlayerSendCancel(cid, "You need to be a premmium account to use teleport.") end if configs.needlvl[1] and getPlayerLevel(cid) < configs.needlvl.level then return doPlayerSendCancel(cid, "You need to be level "..configs.needlvl.level.." or higher to use teleport.") end if #getCreatureSummons(cid) <= 0 then return doPlayerSendCancel(cid, "You need to have a monster summoned.") end for i,x in pairs(cidades) do for _,z in pairs(getCreatureSummons(cid)) do if isInArray(x.pokenames, getCreatureName(z)) then if param:lower() == "\"" .. i:lower() then if os.time()-getPlayerStorageValue(cid, 64231) <= x.time*60 then minutes,seconds = getTime(x.time*60-(os.time()-getPlayerStorageValue(cid, 64231))) return doPlayerSendCancel(cid, "You need wait " .. minutes .. " minutes and " .. seconds .. " seconds.") else doTeleportThing(cid, x) doTeleportThing(z, x) setPlayerStorageValue(cid, 64231, os.time()) teleport = TRUE break end end end end end if not teleport then return doPlayerSendCancel(cid, "This city don't exists or not is able to go in there with teleport or this monster don't able to use teleport.") end return TRUE end Depois va em talkactions.xml e bote a seguinte TAG: <talkaction words="!teleport" event="script" value="poketeleport.lua"/> Como configurar o script: Mecha nessas partes: Legendas: -- Use TRUE ou FALSE -- Vermelho - Se precisa de premmium account para usar a talkaction. Azul - Se precisa de level, e qual level precisa. Rosa - As informaçoes sao, respectivamente: A pos pra aonde o teleport vai levar, os nomes dos pokes que podem levar para akele local, o tempo em minutos que demorara para usar novamente o teleport para akele local. Como adicionar novos locais para teleport: Copie a ultima linha, no caso: Em seguida cole logo abaixo ficando assim: Depois eh so mudar para as informaçoes que voce queira... Como usar a talkaction in-game: Basta voce falar !teleport "NOMEDOLOCAL Bem nao deu pra explicar muito bem por causa do meu tempo, espero que voces consigam entender. De suas opnioes para as proximas versoes do script... Dica Importante! Se voce for botar o local de uma parte que for PROTECTION ZONE o seu pokemon ou summon nao ira andar e ficara preso, para que isso nao aconteça va em config.lua e procure por isso (CTRL+F): Se estiver false, mude para true para que o summon seja teleportado ate o player quando ele for para longe.1 ponto -
[Monster] Npc Que Manda Mensagem Para Todos Do Ot
kyon14 reagiu a IcarooxDloll por um tópico no fórum
pena que nao [e 8.501 ponto