Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 08/25/12 em %
-
Olá, novamente galerinha do Xtibia aqui trago-lhes outra função ele soma os valores dentro de um array function math.SumArray(array) local soma,numbers = 0,{} for _, n in pairs(array) do if type(n) == "number" then table.insert(numbers, n) end end for _, i in pairs(numbers) do soma = soma + i end return soma end Exemplo local array = {21,31,23} print(math.SumArray(array)) retornando 75 ~~ Créditos ~~ Eu Vodkar( colocou para somar somente números )2 pontos
-
Getplayersinlevel(Level)
Vodkart e um outro reagiu a Skymagnum por um tópico no fórum
Olá, galerinha do Xtibia vim trazer outra função function getPlayersInLevel(level) local x = {} for _, pid in ipairs(getPlayersOnline()) do if getPlayerLevel(pid) == tonumber(level) then table.insert(x, pid) end end return x end exemplo de uso function onSay(cid, words, param) if tonumber(param) then doPlayerSendTextMessage(cid, 27, "Tem " .. #getPlayersInLevel(tonumber(param)) .. " player's no level " .. tonumber(param) .. ".") return true end return doPlayerSendTextMessage(cid, 28, "Digite !comando é um número válido.") end espero que gostem2 pontos -
Subwat Kamikaze v30
Killingtabom reagiu a rogeriocene por um tópico no fórum
Novo Lançamento!!!! < King Subwat Kamikaze> OMG Oque Ha de Novo no Server? -Sistem Pet /Pet noob,Pet normal,Pet Descente e Pet Foda -Shadow vip -Shadow vocaçao -Shadow coins e Demonic coins -Novos Sets: Brutal set,Demonic Set,Shadow set e o Melhor De todos King Set E Strike Set E Adicionado Apocalypse Set (19/07/2013) -Hard Quest - Dando Brutal Set -Novo Design Do Templo E Das Hunts Sistema De Refinamento de Set Removido o bug Do GOD -Demonic Quest - Dando demonic Set -Shop De Alavanca -Vocaçoes balanceadas -Novas Runas e armas -Comando !maxlvl -Novo Design -Trainer em cima do templo -Novos Monstros Adicionado Sistema De Cassino Nova Moeda De Jogo..Apocalypse Coin (Bugs De loot em monster Removidos) Imagens: Download : http://www.4shared.com/rar/JbURldl7/novo.html? GOSTOU ??/ + REP AE PLIZ !!!!!BUGS RETIRADOS!!!!!!1 ponto -
Bem, eu vim aqui postar a resolução de um problema que eu percebi ser bem comum, o erro que nós vamos consertar é o do Unable to load items.otbVamos lá: Vá na pasta onde ficam as sources do seu executavel e procure por items.ccp, abra ele pelo modo editor(ou pelo seu programa de compilar) e procure por: if(Items::dwMajorVersion == 0xFFFFFFFF) std::clog << "[Warning - Items::loadFromOtb] items.otb using generic client version." << std::endl; else if(Items::dwMajorVersion < 3) { std::clog << "[Error - Items::loadFromOtb] Old version detected, a newer version of items.otb is required." << std::endl; return ERROR_INVALID_FORMAT; } else if(Items::dwMajorVersion > 3) { std::clog << "[Error - Items::loadFromOtb] New version detected, an older version of items.otb is required." << std::endl; return ERROR_INVALID_FORMAT; } else if(Items::dwMinorVersion != CLIENT_VERSION_861) { std::clog << "[Error - Items::loadFromOtb] Another (client) version of items.otb is required." << std::endl; return ERROR_INVALID_FORMAT; e substitua por esse: /*if(Items::dwMajorVersion == 0xFFFFFFFF) std::clog << "[Warning - Items::loadFromOtb] items.otb using generic client version." << std::endl; else if(Items::dwMajorVersion < 3) { std::clog << "[Error - Items::loadFromOtb] Old version detected, a newer version of items.otb is required." << std::endl; return ERROR_INVALID_FORMAT; } else if(Items::dwMajorVersion > 3) { std::clog << "[Error - Items::loadFromOtb] New version detected, an older version of items.otb is required." << std::endl; return ERROR_INVALID_FORMAT; } else if(Items::dwMinorVersion != CLIENT_VERSION_861) { std::clog << "[Error - Items::loadFromOtb] Another (client) version of items.otb is required." << std::endl; return ERROR_INVALID_FORMAT; }*/ e agora é só compilar. Explicação: Foi apenas adicionado a tag /**/ no script para anular essas linhas, ou seja inutilizar elas, fazendo assim com que ao ligar o server o seu distro não verifique a versão do items.otb, (e lembrando que nesses servidores mais recentes já existe uma opção no próprio config.lua que anula a verificação do items.otb) Comentem e postem qualquer problema ou dúvida. OBS: Não olhei se ja existia um tópico com essa explicação. Créditos : Matheus tk ~1 ponto
-
Esse script é um simples sistema de alquimia, porém é diferente dos outros. Alquimia era uma prática antiga que combinava alguns elementos a fim de formar outros. Esse meu sistema, faz com que os itens sejam "misturados" em um caldeirão e se pareça mais como era antigamente. Abaixo, um vídeo de demonstração e de como instalar. Deixei as mesmas posições no script pra que vocês possam se basear ao instalar no seu. Bom, vamos ao script: -- Como funciona: O player deve colocar os itens da receita emcima do counter (balcão de pedra) e puxar a alavanca. Feito isso, os itens serão "misturados" no caldeirão e com a colher (wooden spoon) o player poderá pegar o seu item. Crie um arquivo.xml em data/mods chamado Alchemist.xml e cole isto dentro: <?xml version="1.0" encoding="UTF-8"?> <mod name="Alchemist System" version="1.0" author="Leoxtibia" contact="none" enabled="yes"> <config name="alch_sys"><![CDATA[ counter = {x = 17, y = 56, z = 7} efeitos = {x=17, y=53, z=7} receitas = { {items = {{2160,1}, {2157,2}} , itemgain = {{5878,100}}, storage = 56000}, {items = {{2148,5}, {2155,1}} , itemgain = {{2113,1}}, storage = 56001}, {items = {{2498,1}, {2113,1}} , itemgain = {{2472,1}}, storage = 56002} } function Caldeiron() local B = { {3693,{x=17, y=53, z=7, stackpos = 1}}, {3694,{x=18, y=53, z=7, stackpos = 1}} } for i = 1, #B do doTransformItem(getThingfromPos(B[i][2]).uid,getTileItemById(B[i][2], B[i][1]).uid == 0 and B[i][1] or (B[i][1]-4)) end end function getItemsInPos(items, pos) for i = 1,#items do local stack = getTileItemById(pos, items[i][1]) if stack.uid > 0 and math.max(1, stack.type) >= items[i][2] and i == #items then return true end end return false end function doRemoveItensInPos(items, pos) local items = type(items) == "table" and items or {items} for i = 1, table.maxn(items) do doRemoveItem(getThingFromPos({x=pos.x,y=pos.y,z=pos.z,stackpos=2}).uid) end return nil end function effets(position,delay) local text = {"Ishhh!", "Kaboom", "Tic Tac", "BUM!", "Blop Blop!", "Cronch!"} local effects = {2, 6, 25, 31, 36,40, 54, 51, 65, 66, 67, 68} if delay ~= 0 then doSendAnimatedText(position, text[math.random(1, #text)], math.random(1, 255)) doSendMagicEffect(position, effects[math.random(1, #effects)]) addEvent(effets, 1000, position, delay -1) end end]]></config> <action actionid="4780" event="script"><![CDATA[ domodlib('alch_sys') function onUse(cid, item, fromPosition, itemEx, toPosition) doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945) for _, t in ipairs(receitas) do if getItemsInPos(t.items, counter) then doRemoveItensInPos(t.items, counter) effets(efeitos,6) Caldeiron() return setPlayerStorageValue(cid, t.storage, 1) end end return doPlayerSendCancel(cid, "You must put the correct items in the counter.") end]]></action> <action itemid="2567" event="script"><![CDATA[ domodlib('alch_sys') function onUse(cid, item, fromPosition, itemEx, toPosition) if itemEx.actionid == 4781 then for _, x in ipairs(receitas) do if getPlayerStorageValue(cid, x.storage) >= 0 then for i=1,#x.itemgain do doPlayerAddItem(cid, x.itemgain[i][1], x.itemgain[i][2]) doPlayerPopupFYI(cid, "You have prepared ".. x.itemgain[i][2] .." ".. getItemNameById(x.itemgain[i][1]) ..".") end Caldeiron() setPlayerStorageValue(cid, x.storage, -1) end end end return true end]]></action> </mod> Configuração: Para adicionar mais receitas, é só adicionar mais uma linha, mudando o storage para +1. Lembrando que a última linha não tem vírgula no final. {items = {{2666,1}, {2671,1}} , itemgain = {{2672,1}}, storage = 56003} Ainda pretendo incrementar o sistema com novas funções. Mas, por hoje é isso. Espero que tenham gostado.1 ponto
-
Baiak Infinity By Mayron Lembrando q esse era baiak ice by bryan Bem vamos começar, vamos ao mapa! Modifiquei o templo principal e tbm a city n é mais ice. Modifiquei tbm as area vips. Removi 100% dos bugs. Coloquei aqueles tps falantes mais com efeitos bem melhores. Adicionado Car System. Adicionado /additem. Adicionei loteria systema dando 3kk a cada 20 minutos. Criei novos treiners, eles estão aquentando bem mais pois tem muito mais vida. Criei novo Set Infinity. Criei uma area de evento para evento de bp ou de dados. Staff of baiak, vip wand e rod, infinity wand e infinity rod (Com novos efeitos muito melhores). Novo Npc Infinity Seller. Novo comando: !dance on. Novo evento em uma arena(vou explicar), o god fala, /arena x (x: é o numero de players q poderão ir para a quest) intão fika assim: por exemplo 5 players, /arena 5. Nova quest para os itens infinity. Players começando lvl 50, coloquei fast attack, mais n está tão exagerado, vocações balanceadas. Adicionei 2 novas Outfits para cada sexo, male: Rei e Montaria! Female: Borboleta e Rainha. Criei uma runa de trapar. Infinity prison rune. Todos os itens infinity no npc infinity seller. Acc do god: god/god Então vamos as Fotos do Ot! Novo templo Baiak City Tps Treiners Wands e Rods Novo Set Novo Npc Arena Nova Para Evento Loteria Novo Comando !dance on Car System Novo Comando /additem Bow e Arrow Nova Quest Account do {ADM} Mayron Colokei essas fotos para vcs baixarem para ver melhor: http://www.4shared.c...ens_baiak.html? Novo Download do Server Sem Bugs: http://www.4shared.com/rar/ZKbUat5u/Baiak_Infinity_By_Mayron.html? Vamos aos Créditos: 10% Bryaan pelo Mapa! 10% Xtibia por Algumas Scripts! 80% Pra Mim, Pelo Novo Server! Só não sei fazer scan mais n tem virus n confia ae. Se gostaram da um REP+ ae, pois sou novo e quero melhorar! Galera com certeza quero suas Opiniões! Aceito seus Elogios e suas Criticas. Obrigado a Todos.1 ponto
-
Olá galera, hoje vou postar mais um script para pokemon dash advanced. Bem legal e acho que também é um dos mais procurados... Vamos a ele. Nome: Duel System por Action O que faz? Faz com que dois players duelem com limites de pokemons, escolhido no inicio das configurações da batalha. Primeiro vamos à actions/scripts e criaremos um arquivo chamado duelSystem.lua e dentro vamos colar o código abaixo: Agora vamos a tag, em actions.XML cole a seguinte tag: <action itemid="id do item que vai o player vai usar para o duel" event="script" value="duelSystem.lua"/> Pronto. Vamos a pasta xml/channels.xml e crie as seguintes janelas: <channel id="id decorrente da sua channel" name="1 Pokemon"> <vocation id="51"/> </channel> <channel id=" id decorrente da sua channel " name="2 Pokemons"> <vocation id="51"/> </channel> <channel id=" id decorrente da sua channel " name="3 Pokemons"> <vocation id="51"/> </channel> <channel id=" id decorrente da sua channel " name="4 Pokemons"> <vocation id="51"/> </channel> <channel id=" id decorrente da sua channel " name="5 Pokemons"> <vocation id="51"/> </channel> <channel id=" id decorrente da sua channel " name="6 Pokemons"> <vocation id="51"/> </channel> Depois disso, não mude mais nada. Vamos agora em vocations.xml e vamos colar a seguinte tag dentro: <vocation id="51" name="Duel" description="pokemon trainer" needpremium="0" gaincap="0" gainhp="55" gainmana="0" gainhpticks="0" gainhpamount="0" gainmanaticks="0" gainmanaamount="0" manamultiplier="1.1" attackspeed="-1" soulmax="251" gainsoulticks="-1" fromvoc="1" lessloss="0"> <formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/> <skill fist="2" club="2" sword="2" axe="2" distance="2" shielding="2" fishing="2" experience="1.1"/> </vocation> Obs: Não mude nada nela... Feito isso, vamos a pasta creaturescripts/scripts e vamos criar um arquivo chamado duelSystemChannel.lua e colaremos o código a seguir dentro: Agora vamos colocar duas tags, uma em login.lua e a outra em creaturescripts.xml: CreatureScript.xml: <event type="joinchannel" name="DuelSystemChannel" event="script" value="duelSystemChannel.lua"/> Login.lua registerCreatureEvent(cid, "DuelSystemChannel") Feito isso, vamos a talkactions/scripts e criaremos um arquivo chamado acceptDuel.lua e dentro cole o código abaixo: Agora vamos á talkactions.XML e colaremos as tag a seguir: <talkaction words="yes" event="script" value="duel.lua"/> <talkaction words="sim" event="script" value="duel.lua"/> Agora vamos em lib/ e criaremos um arquivo chamado duelLibSystem.lua e colaremos o seguinte código dentro: Vamos para actions/scripts/goback.lua e vamos procurar por está linha: if item.itemid == usando then Abaixo disso cole isso: doBackPokeballsInDuel(cid) Aindan no mesmo script procure por: elseif item.itemid == pokeballs[btype].on then E abaixo dele cole isso: checkPokeballsInDuel(cid) Vamos agora em creaturescripts/scripts/goback.lua e antes do utimo apague tudo e cole isto dentro: Obs: O script falta duas funções para funcionar perfeitamente. A primeira é para não deixar o player usar o item em cima dele mesmo. A segunda e para não deixar o player deslogar enquanto está no duel. Tentei e tentei mas não consegui... Caso alguém possa ajudar fico muito grato. Como funciona? Você da use em cima do player que quer batalhar, escolhe quantos pokemons querem usar. O outro player fala (“yes” ou “sim”) e começam a duelar. Eu deixei uma função para deixar um player attackar o outro se ele estiver sem pokemon. Porem não perdera nada se morrer. É isso galera espero que gostem. Lembrando vou atualizar este sistema para melhora-lo. Só deixei ele para teste. Caso gostem termino ele.1 ponto
-
Versão: 8.6 Itens: 8.6 Sem vírus Mapa Atualizado Subwat Kamikaze V13 Atualizações -Retirado o bug das Houses -Adicionado vila de houses na city principal -Adicionado super mana,super uh e super bow.Comandos:!superuh,!supermana e !superbow -Adicionado 12 Hunt's novas na área Free -Adicionado 5 Hunt's novas na área Super Vip -Novas houses colocadas na city principal -Dois monsters novos:Bruxa do 71 e Satanas -Retirado bugs de varias hunts -Arrumado o bug da war -Retirado o Sex System -Nova quest adicionada de life scrolls e mana scrolls -Adicionado área para as hunts free Subwat Kamikaze V21 Atualizações -Adicionado o comando /newtypeex.Somente para God's. -Mais houses adicionadas na city principal. -Adicionado o set Really.Somente para Vip's. -Retirado o bug da quest itens absolute. -Adicionado o npc {BRUTAL} Seller.Vende: brutal uh,brutal mana,brutal sword e brutal axe -Adicionado os itens: brutal uh,brutal mana,brutal sword e brutal axe -Set God agora no segundo andar do templo. -Novo npc {REALLY} Seller.Vende: really helmet,really armor,really legs e really boots. -Retirado o bug da área de eventos. -Adicionado 20 new hunts na area free. -Adicionado 8 new hunts na area Vip. -10 Novos monsters chamados: Cientista Maluco,Blu Ray,Supremos Boss,Super Nova,Sindarion,Rad Boss,The Tiger,Nightmare Tiger,Undead Jester e Lord Jetta. -1 New monster na area vip chamado: Super Coin. -Nova quest dando 200 vip coins. IMAGENS: TEMPLO TELEPORTS SUPER VIP NEW MONSTERS DOWNLOAD: http://speedy.sh/3tn...amikaze-V21.rar DOWNLOAD 4SHARED: http://www.4shared.c...mikaze_V21.html SCAN:https://www.virustot...sis/1337546983/ Créditos:Subwat,Adm Kamikaze,PTBREC,Nadotti e Ropp Xeys. Comentem.Da um rep+ ae. Obrigado.1 ponto
-
[8.6] Remere's Map Editor
GuuhTorres reagiu a luisfe23 por um tópico no fórum
Eae XTibianos O RME lançou a versão 2.0, compativel com a versão do Tibia 8.6, com todos os novos itens. Imagens: Download: www.remeresmapeditor.com/rmedl.php?file=RME-win-2.0.msi Créditos: Remere1 ponto -
São funções para retornar quantos slots livres a Bp ou as BP possui. function getContainerSlotsFree(container) -- by vodka return getContainerCap(container)-getContainerSize(container) end function getAllContainerFree(container) -- by vodka local containers,soma = {},0 for i = 0, getContainerSize(container)-1 do local item = getContainerItem(container, i) if isContainer(item.uid) then table.insert(containers, item.uid) end end for _, check in pairs(containers) do soma = soma + getContainerSlotsFree(check) end return (soma + getContainerSlotsFree(container)) end exemplo de talks 1° function onSay(cid, words, param) local item = getContainerSlotsFree(getPlayerSlotItem(cid, 3).uid) return doPlayerSendTextMessage(cid,18,'You have '..item..' slots free in your primary backpack') end nesse talk vai retornar quantos slot livres a primeira backpack tem, no caso á que está no slot dela. 2° function onSay(cid, words, param) local item = getAllContainerFree(getPlayerSlotItem(cid, 3).uid) return doPlayerSendTextMessage(cid,18,'You have '..item..' slots free in your backpack') end nessa talk vai retornar quantos slots livres possui mesmo se tiver backpack dentro de backpack.1 ponto
-
[Tile] Múltiplos Efeitos E Falas!
victormatos reagiu a Newtonnotwen por um tópico no fórum
Esse script é um tile que quando pisa ele faz vários efeitos e varias mensagens animadas, os efeitos e as mensagens, como também suas cores (da mensagem), são escolhidas de acordo com seu gosto. Imagem: Vídeo: Em movements.xml adicione: Em data/movements/scripts crie um arquivo.lua nomeie para supertile e adicione: Editando: -Laranja: Efeitos que vão aparecer onde o player pisar (no tile com o action id) -Verde: Efeitos que aparecerão nas posições declaradas -Vermelho: Mensagem que irá aparecer nas posições declaradas -Marrom: Cor das mensagens (/y) Para ver as cores digite com o GOD /y Pode varias de 1 até 256. Ex: /y 1 /y 2 E por ai vai. -Roxo: Creio que seja a parte mais complicada Aqui vai um tutorial: Todas as funções expressas na cor roxa possuem uma base assim: pos5 = {x=ppos.x, y=ppos.y, z=ppos.z} Essa base deve permanecer inalterada, porem primeiro vamos compreende-la: Considere que tile preto localizado no centro da imagem seja o tile com o action id do script. Para que um efeito e uma fala aconteça nesse tile você deve declarar a posição assim: Efeito: doSendMagicEffect(getThingPos(cid), 30) Mensagem: doSendAnimatedText(ppos,"Lordfire", math.random(150,150)) Para todo efeito e mensagem que for declarado para esse tile se usa a parte em roxo, que é a posição que o player pisou, logo depois editando o efeito (em azul), a mensagem (em vermelho) e a cor (em verde). Efeito e mensagem fora da posição do tile, segue aquela base apresentada: pos5 = {x=ppos.x, y=ppos.y, z=ppos.z} Entendendo ela, observe a imagem: Como pôde observar o eixo das ordenadas (y), faz uma contrariedade com o eixo cartesiano matemático, é assim mesmo, o Tibia é especial :-). Não sabe sobre o sistema cartesiano (caso saiba salte esse passo, se não entender volte a ele)? Editando: pos5 = {x=ppos.x, y=ppos.y, z=ppos.z}, caso queira adicionar um efeito no local -3 a esquerda, no eixo das abcissas (x) declare o seguinte: pos5 = {x=ppos.x-3, y=ppos.y, z=ppos.z} -Vermelho: Veja que foi adicionado o valor -3 (a posição de exemplo) -Azul: Observe que foi declarado em x, não em y) -Verde: Note que y não foi alterado Outro exemplo: pos5 = {x=ppos.x, y=ppos.y+5, z=ppos.z} -Vermelho: Veja que foi adicionado o valor -3 (a posição de exemplo) -Azul: Observe que foi declarado em x, não em y) -Verde: Note que y não foi alterado Qual seria a posição do efeito nesse caso? (x+0 e y+5) Adicionando posições em que x e y não se equivalem a zero: Segue a mesma logica que o anterior, observe a imagem: O quadrado expresso em verde se localiza em que posição? Obviamente x = +2 e y = -1, agora basta apenas declarar: pos5 = {x=ppos.x+2, y=ppos.y-1, z=ppos.z} Entendeu? Caso tenha alguma duvida é só perguntar. E o Z? O Z não altere, ele é o "andar". Como adicionar novas posições, efeitos e mensagens? Script original: Copie as partes em verde e adicione logo embaixo, exemplo: -Vermelho: Parte duplicada Agora edite as posições para uma que não exista ainda: -Laranja: Posição editada Obs: Os números variam até infinito, porem por uma questão de organização siga o exemplo das posições, pos1, pos2, pos3, pos4...Na sequencia. Removendo posições: Segue o mesmo pensamento, porem de ordem contraria a adição, qualquer duvida poste. Duvidas que poder vir a surgir: Oque é esse math.random(30,30))? Esse math.random é para as cores variarem, como o nome diz Random, ou seja aleatório, varia as cores, se quiser por exemplo que venha aleatoriamente todas as cores entre os números 14 e 200 ponha math.random(14,200)) Como faço para colocar que só venha uma cor? math.random(30,30)), repita os números, no caso só vai vir palavras de cores /y 30. Créditos: Newtonnotwen, pelo script, tutorial e ideia. Por favor comente, e lembrando qualquer duvida poste!1 ponto -
Scite - Lua Debugger
Caronte reagiu a Demonbholder por um tópico no fórum
Faaaala galera! A pedido do Gustavo, venho aqui para tentar instrui-los a utilizar o renomado programa editor e debugger de códigos lua, o SciTE. O SciTE é provavelmente o melhor free software para debuggar códigos lua da atualidade, pois ele contém diversas bibliotecas já instaladas consigo. é um utilitário conhecido pela fácil configuração, praticidade, variedade de opções, qualidade, entre outras características que fazem dele o melhor. Aparência: Apesar de não ser o foco do programa, o SciTE lhe permite escolher a cor de fundo e apresenta um layout básico, onde é possível verificar o número de cada linha, bem como apontar as linhas nas quais se encontram uma palavra que você desejar procurar. É possível, também, minimizar cada parte do código, dividindo por blocos, seja uma função ou um if, entre outros. Bibliotecas: O SciTE apresenta diversas bibliotecas já instaladas consigo, tais como wx, socket, luasql, lanes, entre várias outras. Pode-se encontrar alguns exemplos de códigos de cada biblioteca na pasta examples. Debugger: O utilitário conta com um poderoso debugger que aponta com precisão qualquer erro no código. Não contém, porém, as bibliotecas de otserv, portanto, as funções de otserv serão vistas como inexistentes pelo SciTE, acusando erro. Para utilizar o debugger, basta pressionar F5. Por fim, para baixar o SciTE junto com as bibliotecas Lua e todos arquivos necessários para tal funcionando, Clique Aqui. Por enquanto é isso, valeu galera!1 ponto -
Roblox Studio - Criando Jogos Em Lua
caotic reagiu a SkyDangerous por um tópico no fórum
é uma mini apresentação da plataforma que dá pra criar jogos, eu não ensinei nada, apenas quis demostrar como é prático criar, caso se interesse e queira aprender: http://wiki.roblox.com/index.php/Roblox Ele usa funções e bibliotecas tudo em lua, é muito bom pra você aprender LUA. Além disso, você pode criar cenários, criar servidores on-line para os outros jogarem. Muito Bom.1 ponto -
[Encerrado] [Pokemon] Dúvidas? - Pda
FlamesAdmin reagiu a notle2012 por um tópico no fórum
tenta assim local coins = { [12416] = {to = 2148}, [2148] = {to = 2152, from = 12416}, [2152] = {to = 2160, from = 2148}, [2160] = {to = 9971, from = 2152}, [9971] = {from = 2160}, } function onUse(cid, item, fromPosition, itemEx, toPosition) if(getPlayerFlagValue(cid, PLAYERFLAG_CANNOTPICKUPITEM)) then return false end local coin = coins[item.itemid] if(not coin) then return false end if(coin.to ~= nil and item.type == ITEMCOUNT_MAX) then doChangeTypeItem(item.uid, item.type - item.type) doPlayerAddItem(cid, coin.to, 1) elseif(coin.from ~= nil) then doChangeTypeItem(item.uid, item.type - 1) doPlayerAddItem(cid, coin.from, ITEMCOUNT_MAX) end return true end1 ponto -
newton de merda que perde tempo mostrando suas teorias de merda em fóruns de tibia1 ponto
-
olha essa imagem onde ta vermelho é o item type :http://imageshack.us...39/foto6yp.jpg/ Ajudei REP+1 ponto
-
local vocs = { [4] = {looktype = 35}, [6] = {looktype = 25} } function onLogin(cid) if (vocs[getPlayerVocation(cid)]) then local voca = getPlayerVocation(cid) local look = vocs[voca].looktype doCreatureChangeOutfit(cid, {lookType = look}) return true end return true end Agora e so colocar a tag e registrar em login.lua e pronto1 ponto
-
Como Adicionar
SamueLGuedes reagiu a brun123 por uma questão
Aqui, só mudar o 1421 lá embaixo pra outfit que você quiser: SkyLigh, você colocou a checagem fora do function onSay, colocou ends a mais, e inventou um novo parâmetro pra função getCreatureOutfit, além de ter declarado uma local depois de ela ser já ter sido utilizada pelo script.1 ponto -
Função Que Executa Ao Atacar.
othereality reagiu a Vodkart por uma questão
+ou- isso function onStatsChange(cid, attacker, type, combat, value) local damageMin = (getPlayerLevel(cid) * 2) local damageMax = (getPlayerLevel(cid) * 3) if type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS then if getPlayerStorageValue(cid, 23194) == 1 then doTargetCombatHealth(cid, attacker, COMBAT_HOLYDAMAGE, -damageMin, -damageMax, CONST_ME_HOLYDAMAGE) end return true end return true end1 ponto -
Liberando Porta 7171 Modem Zte Zxdsl 831 1/2
Skronos reagiu a danilo9317 por um tópico no fórum
ZTE ZXDSL 831 1/2 Vejo muitas dúvidas a respeito desse modem. Não achei nenhum bom tutorial pelo forum ou pelo google que sanasse por completo as dúvidas sobre ele. Tomei liberdade de criar esse tutorial, com detalhes, para explicar tudo sobre o modem, e ajudar meus colegas tibianos. Passos O tutorial será organizado em 5 passos, para facilitar o reconhecimento: 1 - Introdução 2 - Reconhecendo IP da máquina/modem. 3 - Acessando o Modem 4 - Liberando Porta 7171 5 - Conclusão / Dicas Úteis 1 - Introdução: ( O modelo do modem pode variar de versão ). O ZTE-ZXDSL 831 1 ou 2 é um modem ADSL externo de interface ethernet, funciona nos modos Router e Bridge suportando PPPoA, PPPoE, Routed IP e Bridged IP. ADSL: Tecnologia que usa linha telefônica para acessar a internet. Router: Configurado para rodar em internet compartilhada com várias CPUs. Bridge: Configurado para roda apenas pra um computador (Portas já estão liberadas). Já ouvir boatos que esse modem em si funciona como router, mas são só boatos. 2 - Reconhecendo IP da Máquina / Modem: Cada computador possui um endereço padrão, denominado IP. Você precisará indentificar o seu para prosseguir com o tutorial. 2.1 - Indentificando Endereço pela CMD. Clica em Iniciar / Executar e digite o seguinte comando "cmd", sem aspas. Em seguida aparecera a CMD, você deve digitar agora o comando "ipconfig" para receber informações sobre o Endereço de IP, a Máscara de sub-rede e a Gateway padrão. (Alguns números foram ocultados por motivos de segurança.) Endereço IP: Endereço de IP fixo do seu PC (você deve anotar). Máscara de sub-rede: Divisão de uma rede de computadores. (Não é importante). Gateway Padrão: IP que você irá usar para acessar as configurações do modem (Anote também). Anote o que foi dito e siga para o próximo passo. 3 - Acessando o Modem: Essa parte requer um pouco de atenção, vamos por passos: 3.1 - Primeirante abra seu navegador e no endereço digite o IP da Gateway que você anotou Ex: http://192.168.254.254 3.2 - Ele provavelmente irá pedir um usuário e uma senha, isso pode variar de acordo com as configurações e as versões do seu modem ou roteador. Segue a lista com as senhas padrões. Se essas não funcionarem provavelmente alguem mudou, você terá que pedir pra quem modificou. Usuário: admin Senha: admin (ou tente deixar o campo senha em branco.) Usuário: TMAR#ZTV5.5.0a Senha: ZTV5.5.0a Usuário: ZXDSL Senha: ZXDSL Se tudo foi feito de maneira correta você verá a seguinte interface: 4 - Liberando Porta 7171 Agora vamos a parte mais chatinha, liberar a tão cobiçada porta 7171. 4.1 Na interface do seu modem clique em Advanced do canto superior da tela: 4.2 Clique em NAT / Virtuals Server, vai aparecer a lista de portas já desbloqueadas no modem. Posteriormente clique em Add/Adicionar. 4.3 Vamos agora desbloquear a porta 7171. Para essa parte eu tenho um critério, eu tentei de várias maneiras, fazendo várias combinações e a única que funcionou foi desbloqueando a porta 7171 de 3 maneiras. Vou explicar: Customized Service: Aqui você colocara o nome da porta que quer desbloquear, coloque "Tibia1" para indentificar, a medida de vezes que você for desbloqueando vai colocando "Tibia2", "Tibia3". Protocol: O tipo de protocolo que você quer usar. Você terá que desbloquear de 3 formas, como eu disse, "TCP/UDP", "TCP",e "UDP". External Port/ Internal Port: A porta que você quer desbloquear, no nosso caso "7171". Internal server IP address: Aqui você vai colocar o "Endereço IP" anotado do CMD, o da primeira linha. WAN Interface: Deixe em "all", ou seja, para todos. Posteriormente, quando colocar os dados certos clique em "Apply" para confirmar. DICA: Alguns servidores pedem a porta 7172 desbloqueada, então repita o processo colocando a porta 7172, e usando outro nomes no Customized Service. Ex: "Tibia4", "Tibia5", "Tibia6". 4.5 Com tudo certo sua interface ficará assim: 5 - Conclusão e Dicas úteis 5.1 Em alguns casos o Windows pode bloquear a porta 7171, há inúmeros tutoriais explicando como resolver isso, então não vi necessidade de citar aqui. 5.2 O antivirus também pode bloquear seu servidor, coloque-o em excessões no antivirus. 5.3 "Um bom administrador é aquele que inova seu servidor". Não baixe e simplismente ponha seu servidor online, ele será apenas mais um. Edite com carinho, pense em coisas novas, tente inovar o máximo possível, os servidores de hoje em dia precisam disso, "Novidades". 5.4 Não copie e cole em outro forum. Mas se for, por favor, deixe os créditos. Ele foi 100% Original. E Lembre-se, você vive em um mundo de pessoas iguais e monótonas, faça a diferença! Mais Dúvidas? Msn: dan.reis@live.com1 ponto -
1 ponto
-
X-Find # Mapping
aguinho600 reagiu a Henrique Moura por um tópico no fórum
MAPPING Dica: Pressione CTRL+F e digite o que está procurando! Última atualização: Atualizando Tutoriais Técnicos Instalando Remere's Map Editor - Clique aqui Ainda não sabe instalar seu map editor? Tente visualizar este tutorial. Aprenda a juntar um mapa ao outro - Clique aqui Quer juntar uma hunt de um mapa à outro mapa? Veja este tutorial. Crie novas casas - Clique aqui Para os que não sabem criar casas. Importar mapas - Clique aqui Aprenda a importar os mapas à um mapa aberto. Mude a versão do seu mapa - Clique aqui Quer que seu mapa tenha uma versão nova? Faça o que o tutorial explica. Adicionar novos NPCs e Monstros - Clique aqui Criou um novo monstro ou NPC e gostaria que ele estivesse disponível no seu mapa? Veja isto. Auto Border em Montanhas - Clique aqui Aprenda a utilizar bordas automáticas nas montanhas, facilitando seu trabalho. Abrindo mapa de Pokemon - Clique aqui Edite seu mapa de Pokemon sem erros. Guia geral de construções - Clique aqui Aprenda tudo que precisa saber sobre elas. Portas sem retorno - Clique aqui Crie uma porta onde os jogadores não poderão retornar. Área VIP - Clique aqui Crie sua área VIP sem problemas. Truques e Dicas Gerais - Clique aqui Aprenda mais um pouco sobre mapping. Abra seu map editor sem erro de DAT/SPR - Clique aqui Aprenda a solucionar o problema com este erro pertubador. Converta Imagens para OTBM - Clique aqui Veja esse tutorial de como converter imagens para ".otbm"! Desvendando a Aba "View" do RME - Clique aqui Saiba tudo sobre a aba "view" do RME com esse tutorial! Tutoriais Visuais Tutorial de Natureza - Clique aqui Suas plantas crescem em piso de mármore e você quer mudar isso? Veja este tutorial. Arena PVP - Clique aqui Crie uma arena onde o jogador pode morrer e não perderá nada. Área glacial - Clique aqui Faça uma área de gelo no seu mapa sem dificuldades com a ajuda deste tutorial. Faróis no porto ou cidade - Clique aqui Faça suas "lighthouses" sem problemas. Inverno - Clique aqui Realce o inverno do seu servidor. Pequenas Montanhas - Clique aqui Feira - Clique aqui Crie um comércio de rua na sua cidade mercantil! Loja de Arqueiro - Clique aqui Faça uma loja de arcos, flechas, lanças e munições para arqueiros. Fazendo cidades - Clique aqui Faça suas cidades você mesmo. Área de caça de dragões - Clique aqui Crie sua própria hunt. Construindo barcos - Clique aqui Construa barcos sem dificuldade com este tutorial. Templo de Pedra - Clique aqui Quer construir um templo da idade da pedra? Faça como neste tutorial. Loja de Magos - Clique aqui Teve sucesso na Loja de Arqueiros? Que tal tentar uma de magia, como poções, runas e bastões mágicos? Construir templo - Clique aqui Faça um templo tradicional com a ajuda deste tutorial. Coliseu de Futebol - Clique aqui Diversão e RPG? Sim! Faça um coliseu do famoso futebol com a ajuda deste tutorial. Detalhando montanhas de Terra - Clique aqui - (Segunda opção) Fez aquela montanha, mas ela ficou somente barro? Aprenda a deixá-la agradável. Entrada debaixo da Montanha - Clique aqui Montanhas? Entradas secretas! Nascente de água na Montanha - Clique aqui Incremente o RPG do seu mapa com este tutorial. Natureza nas Montanhas - Clique aqui Faça de sua montanha mais real. Cachoeiras - Clique aqui O título diz tudo. Faça cachoeiras sem problemas. Faça Cavernas - Clique aqui - (Segunda opção) Cavernas belas e realísticas! Formato de Continente - Clique aqui Deixe seu mapa com aspecto continental. Formatos diversos - Clique aqui Diversas dicas de formatos para seu mapa. Realçar RPG nas quests de seu mapa - Clique aqui Acha que suas quests estão muito mortas? Acabe com o mate-e-ganhe das suas quests! Pirâmides - Clique aqui Faça pirâmides egípcias! Estilo Zao - Clique aqui Faça uma hunt no melhor estilo de Zao. Calabouços - Clique aqui Quanto maior o RPG, mais jogadores. Ruínas - Clique aqui Tão necessárias quanto os calabouços. Trainers com RPG - Clique aqui Quer colocar trainers no seu mapa, mas sem que ele perda o RPG do servidor? Passagens secretas - Clique aqui Passagens secretas no seu mapa através de tiles. Criando armadilhas - Clique aqui Com armadilhas, seu mapa fica com maior rpg. Labirintos - Clique aqui Aprenda a criar labirintos com este tutorial. Telhados - Clique aqui Crie telhados ótimos e realísticos. Miragem - Clique aqui Crie uma miragem no deserto. Livros em bibliotecas e estantes e com texto escrito - Clique aqui O título diz tudo, faça de suas bibliotecas as mais reais possíveis! Oasis - Clique aqui O titulo diz tudo, faça um belo oasis. Como Fazer um Templo - Clique aqui Faça um bom templo para sua cidade, um tutorial completo! Criando Forjaria de Lanças - Clique aqui Faça uma boa forja de lanças! Estruturas Underwater - Clique aqui Faça varias estruturas submersas com esse belo tutorial! Criando Fantasmas - Clique aqui Um tutorial bem interessante, você pode usa-lo para iludir os jogadores e dar mais RPG ao mapa! Área De Wyvern - Clique aqui Aprenda a fazer bonitas áreas de wyvern! OBSERVAÇÕES Links quebrados ou tópicos inexistentes devem ser reportados. Comente neste tópico. Tópicos podem ser recomendados por você. Comente neste tópico. Algum conteúdo não lhe foi útil? Comente neste tópico. Algum conteúdo lhe foi útil? Comente neste tópico. O tópico será atualizado e será informado a ultima data de atualização com os novos conteúdos. Este tópico é referente somente à seção de Mapping, não deve se misturar aos outros assuntos. Não conseguiu achar o que procurava? Poste neste tópico pelo que você procura! Este tópico recebeu destaque em nosso portal!1 ponto