Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 03/12/11 em todas áreas
-
Olá Galera, Sou Novo Aqui no XTibia ... Sou Novo Também em Scripts LUA . Sistema de Plantação V 1.0 Testado em: TFS 0.4 ( 8.60 ) Tive a Idéia após assistir uns 2 videos com este sistema, só que mais completo ! Hoje Vou Postar meu Mini Sistema de Plantação, Script bem basiquinho, porém meu primeiro, Vamos la Video: em Actions.xml Coloque: <action itemid="7734;2552;2147" event="script" value="plant.lua" /> Crie um Arquivo plant.lua na Pasta Actions>Scripts, neste arquivo coloque isso: function onUse(cid, item, frompos, item2, topos, pos) if item.itemid == 2552 and item2.itemid == 103 then doSendMagicEffect(getThingPos(item2.uid), 2) doTransformItem(item2.uid, 806, 1) doPlayerSendTextMessage(cid, 27, ". Você Preparou a Terra, Agora Plante a Semente .") return true elseif item.itemid == 2147 and item2.itemid == 806 then doSendMagicEffect(getThingPos(item2.uid), 45) doTransformItem(item2.uid, 804, 1) doPlayerRemoveItem(cid, 2147, 1) doPlayerSendTextMessage(cid, 27, ". Você Plantou a Semente, Agora Jogue Um Pouco de Água .") return true elseif item.itemid == 7734 and item2.itemid == 804 then doSendMagicEffect(getThingPos(item2.uid), 53) doCreateItem(2785, 1, getThingPos(item2.uid)) doPlayerSendTextMessage(cid, 27, ". A Planta Cresceu, Colha Os Frutos e Depois à Corte Para Plantar Novamente .") return true elseif item.itemid == 2552 and item2.itemid == 2786 then doSendMagicEffect(getThingPos(item2.uid), 34) doTransformItem(item2.uid, 103, 1) doPlayerSendTextMessage(cid, 27, ". Você Cortou a Árvore Sem Frutos, Parabéns .") return true elseif item.itemid == 2552 and item2.itemid == 806 then doSendMagicEffect(getThingPos(item2.uid), 2) doTransformItem(item2.uid, 103, 1) return true elseif item.itemid == 2552 and item2.itemid == 804 then doSendMagicEffect(getThingPos(item2.uid), 2) doTransformItem(item2.uid, 103, 1) return true end end IDs Usados: Pá: 2552 Semente: 2147 Água: 7734 Bom é Isso. Obrigado Créditos: Eu pelo script, e aos amigos que estão me ajudando muuito3 pontos
-
[Talkaction] Rank
Fir3element e 2 outros reagiu a Demonbholder por um tópico no fórum
Faaala pessoal! Esses dias eu estava tentando uma coisa e não estava conseguindo; o meu problema permaneceu por vários dias, até que hoje de manhã eu consegui resolver!!! Aeeee... Bom, é o seguinte, eu estava testando minhas habilidades quando percebi que eu não estava conseguindo criar um rank, que mostra os jogadores e o level deles em ordem do mais forte para o mais fraco; bom, depois de muitas tentativas eu consegui. Servidor Testado: New Styller Yourots 0.7.5 (8.60) Vamos logo ao script: function onSay(cid, words, param) t = {} b = {} n = 0 str = nil str2 = "" for i, pid in ipairs(getPlayersOnline()) do t[i] = getPlayerLevel(pid) end doShowTextDialog(cid, 2160, getString(t)) end function getString(t) b = {} for w, z in ipairs(getPlayersOnline()) do b[w] = order(t) e = getName().. " " .. b[w] str = str == nil and e or str.. "\n" .. e table.remove(t, table.find(t, n)) end return str end function getName() for s, d in ipairs(getPlayersOnline()) do if order(t) == getPlayerLevel(d) and not(string.find(str2, getCreatureName(d))) then str2 = str2 == "" and getCreatureName(d) or str2..getCreatureName(d) p = getCreatureName(d) break end end return p end function order(t) n = 0 for y, x in ipairs(t) do if x > n then n = x end end return n end E a tag: <talkaction words="!rank" script="nomeDoArquivo.lua" /> Da para fazer também um sistema de pontos por storage, se tiver alguém interessado avisa que eu acrescento. De Scripter para Scripter: Depois de várias horas tentando fazer isso, hoje eu consegui. Estava ficando quase sem letras pra usar no ipairs kkkkk. É isso, tive que criar várias funções, mas deu certo. Até mais pessoal.3 pontos -
Funções E Position Recorder
rod_doidim e um outro reagiu a Demonbholder por um tópico no fórum
Faaala galera! Esses dias um parceiro meu me deu uma idéia e pediu para que eu fizesse um script para ele, assim surgiu o script que irei postar agora. Eu coloquei o nome de Position Recorder porque o script faz jus ao nome; ele funciona da seguinte maneira: Você tem um item, no caso o 2359 e quando você clica nele, a sua posição é gravada e o item se transforma para o 2356. Ai você pode usar o 2356 que você será teleportado para a posição que você estava quando usou o primeiro item. Well, como dito no título, eu fiz duas funções para o script funcionar; claro que não era necessário, mas as funções são úteis para outras coisas também. Darei mais exemplos no final. Bom, vamos as funções: Vá em data/lib, abra o arquivo functions.lua, e cole no final dele estas duas funções: function doMarkPos(cid, posx, posy, posz) setPlayerStorageValue(cid, 19000, posx) setPlayerStorageValue(cid, 19001, posy) setPlayerStorageValue(cid, 19002, posz) end function getMarkPos(cid) return {x=getPlayerStorageValue(cid, 19000), y=getPlayerStorageValue(cid, 19001), z=getPlayerStorageValue(cid, 19002)} end Certo, agora vamos ao script do position recorder. Opção 1: Apenas vips usam, Kydrai System Vip. Opção 2: Apenas vips usam, Perfect Vip System. Opção 3: Qualquer um usa. Outras possibilidades para as funções adicionadas: ~Quest: Terminar a quest e ganhar acesso a um lugar especial. Lembrando que o lugar fica gravado no jogador, e não no item. Os itens usados foram 2356 e 2359, no caso; você pode troca-los se souber como. É isso, postem o que acharam, até mais.2 pontos -
[Oficial] Real Global Map hello Galerinha do Xtibia, Venho aqui desponibilizar o mapa do Doidin (8.57 Só que editado com minhas ideias e na versão 8.60 OBS: Para rodar esse servidor No seu pc voce tem que ter 2GB+ de memória ram e em bom estado. ( nao recomendo abrir o otserv com o mapa editor aberto junto). Real Global Map: - Versão do Tibia:8.60 - Mapa global 95% full. - Quase todos os NPC's do Tibia Global. - Servidor com o mínimo de bugs possíveis. - Scripts arrumados. - Entre outros... Cidades: Quest's: Oque tem de melhor que o servidor do Doidin? Quase nada pois ele copio minhas coisas x) Algumas Print Screen: para quem nao conseguiu abrir o spolier e gostaria de ver as SS link abaixo: print screen.txt Créditos: - Doohz Rush - Doidin - Alissow - DoidinMapper - RenanSdc - TFS Team - Styller Team - Alissow Team - Feragon - Viana! - Azevedo ATUALIZADO DIA 28/10/2010 Scan: Arquivo Muito grande para fazer scan. Remeres Mapa Editor 2.0 ( nao use outra versão ou vai bugar o mapa: Download Aqui! Doohz Rush Server : Download Aqui! OBS: FOI ARRUMADO TODOS OS LOOT'S DOS MONSTROS, E FOI ADICIONADO A NOVA AREA DE ZÃO (OS Draken elite etc, todos configurados perfeitamente ) Atualização 2.2; Arrumado os Teleport's dos Drakens; Editado os seal's da POI (+ parecido com global); adicionado 1 npc de runa em northern de ZAO; arrumada as Houses, e bugs de Cormaya; Retirado BUG de money; Arrumado detalhes do mapa. MSN: Doohz_rush@hotmail.com Gostou? REP+ Ali do lado :arrow:1 ponto
-
Opções Do Comando /attr
darkrayfury reagiu a Doidin por um tópico no fórum
É galera eu acho que todos sabem que o comando /attr serve para mudar coisas no server, semprecisar ter que derrubar ele para poder alterar... Para usar ele é bem simples, basta usar virado para o "alvo" que no caso é o player ou algum item, vamos logo as opções do comando: Opções para se usar em items: Opções para se usar em players: Sempre que for usar o comando você deve informar para qual numero você irá alterar, exemplo: /attr group 5 Espero que tenham entendido, abraços...1 ponto -
Otitemeditor
Thiagootrox reagiu a Sukx por um tópico no fórum
Bem alguns gostam muito deste editor, então decidi postar aqui e vou atualizar conforme sairem as novas atualizações. Última versão: 0.5.1 para [8.55 - 8.62] Download Último items.otb (Clique em download na página que abriu, para baixar) Link Versões anteriores 0.3.9 [8.60 - 8.62] Download 0.3.8 [8.55] Download 0.3.7 [8.50 - 8.54] Download 0.3.5 [8.41 - 8.42] Download 0.3.4 [8.40] Download 0.3.1 [8.10] Download 0.3.0 [8.00] Download 0.2.5 [7.92] Download 0.2.4 [7.90] Download 0.2.3 [7.80] Download Como usar? 1- Descompacte o arquivo rar em alguma pasta(ex: 'C:\Arquivos de Programas\otitemeditor\'). 2- Localize a pasta do Tibia, geralmente fica em: 'C:\Arquivos de Programas\Tibia\'. 3- Copie o 'tibia.dat' e o 'tibia.spr' para: 'C:\Arquivos de Programas\otitemeditor\data\'. 4- Renomeie o 'tibia.dat' e o 'tibia.spr' para a versão contida nele. ex: Se você possui o cliente 8.62, renomeie o 'tibia.dat' para 'tibia862.dat' e o 'tibia.spr' para 'tibia862.spr'. Créditos SimOne1 ponto -
(Release) Modern Aac 1.0.1!
gersonthiago reagiu a luan12 por um tópico no fórum
Modern AAC 1.0.1 (Release) Novo Patch do Modern AAC para corrijir alguns bugs e adicionar algumas coisas! Lembrando que a instalação é padrão, passar o site para o gerenciador e abrir a seguinte página no seu navegador (http://127.0.0.1). Por que usar o Modern AAC? 1. Segurança. 2. Atualizações constantes. 3. Alto "poder" de extensão. 4. Várias Funções. 5. Desempenho. 6. Personalização. 7. Painel administrativo. 8. e muito mais! ChangeLog: Download e SVN: Créditos: É isso, té (+REP).1 ponto -
Sistema De Alquimia
felix3d reagiu a Demonbholder por um tópico no fórum
Booooas galera! Eu estava com essa idéia na cabeça já faz um tempo, mas ai tava com um problema e não conseguia arrumar. Well, na madrugada passada, eu fui ver o script e descobri um jeito de consertar, assim, eu criei o sistema de alquimia. Então é isso ai, não quero ficar enrolando muito, vamos logo ao script... Como Funciona: O sistema é composto por uma talkaction e uma action. A talkaction serve para criar novas gemas, ou seja, fundir gemas já existentes e transformá-las em outras. Já a action serve para fundir a arma a gema, sendo que há um hierarquia entre as gemas e armas. A hierarquia é assim: Há as gemas iniciais, que são pérolas, que podem refinar as armas escolhidas para o set1. Há as gemas secundárias e o gold nugget (item dado na fusão das perolas) que podem refinar armas de set2. Há as gemas terciárias e o small diamond (item dado na fusão dos diamantes) que refinam armas de set3. Há as gemas de nível 4, o life crystal e o crystal o Power, que refinam armas do set4. E por fim, há o gold ingot que refina armas do set5. Action: Armas a serem refinadas, facilmente editável. Quanto irá ser adicionado em cada arma, facilmente editável. Efeitos. Talkaction: Funcionamento. Efeitos. Id das gemas editável. Scripts: Action: function onUse(cid, item, fromPosition, itemEx, toPosition) local itens = { set1 = {2434, 7430, 2392, 7408, 2432}, set2 = {7437, 7755, 2451, 7380}, set3 = {7427, 7421, 7402, 2393, 2414, 7434}, set4 = {7429, 7414, 8930, 6528, 2454}, set5 = {2421, 8927, 2408, 2390, 2431, 2415} } local extra = getItemAttribute(item.uid, "extraattack") == nil and 0 or getItemAttribute(item.uid, "extraattack") local extrd = getItemAttribute(item.uid, "extradefense") == nil and 0 or getItemAttribute(item.uid, "extradefense") if isInArray({2143, 2144}, itemEx.itemid) and isInArray(itens.set1, item.itemid) then if math.random(1, 7) > extra/10 + 1 then doItemSetAttribute(item.uid, "extraattack", extra+10) doItemSetAttribute(item.uid, "extradefense", extrd+5) doSendMagicEffect(getPlayerPosition(cid), math.random(1, 32)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if isInArray({2157, 2149, 2146, 2147}, itemEx.itemid) and isInArray(itens.set2, item.itemid) then if math.random(1, 7) > extra/20 + 2 then doItemSetAttribute(item.uid, "extraattack", extra+20) doItemSetAttribute(item.uid, "extradefense", extrd+10) doSendMagicEffect(getPlayerPosition(cid), math.random(1, 32)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if isInArray({2145, 9941, 9942}, itemEx.itemid) and isInArray(itens.set3, item.itemid) then if math.random(1, 7) > extra/30 + 3 then doItemSetAttribute(item.uid, "extraattack", extra+30) doItemSetAttribute(item.uid, "extradefense", extrd+15) doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if isInArray({9980, 7315, 2158, 2153, 2154, 2155, 2156}, itemEx.itemid) and isInArray(itens.set4, item.itemid) then if math.random(1, 8) > extra/35 + 4 then doItemSetAttribute(item.uid, "extraattack", extra+35) doItemSetAttribute(item.uid, "extradefense", extrd+20) doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if itemEx.itemid == 9971 and isInArray(itens.set5, item.itemid) then if math.random(1, 9) > extra/50 + 5 then doItemSetAttribute(item.uid, "extraattack", extra+50) doItemSetAttribute(item.uid, "extradefense", extrd+30) doSendMagicEffect(getPlayerPosition(cid), 65) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end return TRUE end Tag: <action itemid="2434;7430;2392;7408;2432;7437;7755;2451;7380;7427;7421;7402;2393;2414;7434;7429;7414;8930;6528;2454;2421;8927;2408;2390;2431;2415" event="script" value="nomeDoArquivo.lua"/> Comentário: Se for editar as armas a serem refinadas, edite no script e na tag, pois os ids da tag são os das armas. Talkaction: function onSay(cid, words, param) local tab = {2149, 2146, 2147} local t = {2158, 2154, 2155, 2156} local t3 = {{item=7315, msg="Você ganhou um life crystal."}, {item=9980, msg="Você gnhou um crystal of power."}} local maths = math.random(1, 2) if param == '' then doPlayerSendCancel(cid, "Param required.") doSendMagicEffect(getCreaturePosition(cid), 2) end -- PEARL -- if param == 'pearl' then if getPlayerItemCount(cid, 2143) > 0 and getPlayerItemCount(cid, 2144) > 0 then doPlayerRemoveItem(cid, 2143, 1) doPlayerRemoveItem(cid, 2144, 1) doPlayerAddItem(cid, 2157, 1) doPlayerSendTextMessage(cid, 4, "Você fez um gold nugget.") doSendMagicEffect(getPlayerPosition(cid), math.random(1, 32)) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end -- DIAMOND -- if param == 'diamond' then pakaresult = "" for i, itens in ipairs(tab) do if getPlayerItemCount(cid, itens) > 0 then pakaresult = pakaresult ~= "" and pakaresult .. "/" .. itens or "/" .. itens end end local ite = string.explode(pakaresult, "/") if #ite > 2 then doPlayerRemoveItem(cid, ite[2], 1) doPlayerRemoveItem(cid, ite[3], 1) doPlayerAddItem(cid, 2145, 1) doPlayerSendTextMessage(cid, 4, "Você fez um small diamond.") doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end -- CRYSTAL -- if param == 'crystal' then if getPlayerItemCount(cid, 9941) > 0 and getPlayerItemCount(cid, 9942) > 0 then doPlayerRemoveItem(cid, 9942, 1) doPlayerRemoveItem(cid, 9941, 1) doPlayerAddItem(cid,t3[maths].item, 1) doPlayerSendTextMessage(cid, 4, t3[maths].msg) doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end -- GOLD -- if param == 'gold' then pakoresult = "" for n, iten in ipairs(t) do if getPlayerItemCount(cid, iten) > 0 then pakoresult = pakoresult ~= "" and pakoresult .. "/" .. iten or "/" .. iten end end local ite = string.explode(pakoresult, "/") if #ite > 2 then doPlayerRemoveItem(cid, ite[2], 1) doPlayerRemoveItem(cid, ite[3], 1) doPlayerAddItem(cid, 9971, 1) doPlayerSendTextMessage(cid, 4, "Você fez um gold ingot.") doSendMagicEffect(getPlayerPosition(cid), 65) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end return true end Tag: <talkaction words="Words" event="script" value="nomeDoArquivo.lua"/> Comentário: Talkaction funcionando perfeitamente, se desejar, edite o id das gemas. Então é isso galera, demorei 4 horas pra fazer, espero que gostem.1 ponto -
Tutorial Contruções - Biblioteca Salve xtibianos, venho atraves deste mostrar como construir uma biblioteca... Vamos Lá. Biblioteca, o que é uma biblioteca? Wikipédia Também um lugar destinado a leitura e um lugar de encontro de entelectuais ou sábios da época. Por que fazer uma biblioteca? Bom, primeiramente as grandes cidades antigas tinham suas bibliotecas para arquivar os documentos, leis, e para guarda-los ou estuda-los. No seu mapa/otserv pode ter um NPC para uma quest, etc. Chega de conversa e vamos fazer uma biblioteca? 1. Primeiramente começamos com a base da mesma: 2. Quebramos a monotomia e deixamos o ambiente menos "quadrado": 3. Olha só esta ganhando forma, agora vamos colocar o piso. Para o piso eu endico usar esses, mas cada um usa o que preferir. 4. Eu escolhi este piso. 5. Vamos começar a detalhar. -> Algumas mesas para as pessoas estudarem (ID:1619) -> Cadeiras são bem vindas (ID:1650 à 1653) -> As estantes de livros nem preciso falar né (ID:1718 à 1723) -> Eu adicionei isso nos "pilares", mas é um adicional (ID:919) 6. Por fim adicione tochas, espalhe livros. No meu caso eu fiz uma biblioteca destruida, por isso tem, os tufos de grama, musgos, pedrinhas, etc. Atençao: Nao se esqueça de por janelas... Obs: Caso pedirem eu posto o resultado final na seçao downloads de mapa. Um detalhe a mais: Arraste bookcase para cima dando a impressão que o livro esta saindo. ______________________________________________________________________________________________________________________ Bom galera existem outros tipos de biblioteca, se você não gosta de fazer biblioteca você pode fazer uma mini-biblioteca no seu templo. Acredito que é isso, se gostou clique em REP + ali em baixo, Valeu e até o próximo quem sabe. _________________________________________________________________________________________________________________ Este foi um tutorial feito por mim Aund Soul para o Xtibia. Creditos: AundSoul1 ponto
-
Mapa Poketibia[Próprio]
Pasztorzao reagiu a peewee por um tópico no fórum
Olá Galera. Esse mapa era da equipe que eu estava fazendo, mais pelo adm parecer uma criança, sai da equipe e decidi postar. Vale lembrar que mapa foi 100% feito por Min PeeWee, Alguns podem estranhar estar escrito ByShawns, mais sou eu tambem. Download : Scan : Imagens : Créditos : PeeWee1 ponto -
Simples. Quando você cria um mapa, ele gera 3 arquivos: nome.otbm --- Mapa do ot nome-respaw.xml --- Respaw dos monsters e npcs nome-house.xml --- Houses do ot Se você quer colocar em outro ot, o 1° passo é você pegar um ot pronto 8.6, e colar os 3 arquivos na pasta world. Lembrando que: Se você colar eles la, você tem que declarar o nome dos arquivos no config.lua Veja: -- map location map = "data/world/teste.otbm" // Mapa respaw = "data/world/teste.otbm" // Respaw house = "data/world/teste.otbm" // House ; Dúvidas? Mande um e-mail Te ajudei? Rep+ Abraços.1 ponto
-
Faça o seguinte. Reinicie o PC, abra o Xampp Control Panel. Ligue o Apache e o Mysql. E não abra o skype enquanto estiver com o Apache ligado. Caso continue o erro... Mude as portas para 8090. Qualquer duvida, me manda MP.1 ponto
-
Erro No Order.lua
DaNDaNrOxX reagiu a lucashgas por um tópico no fórum
baixe novamente o server e substitua o arquivo 032-position.lua da sua pasta lib. ps: local errado amigo.1 ponto -
Funçao Getuidsinarea(Extr1, Extr2)
Vodkart reagiu a MatheusGlad por um tópico no fórum
Funçao: Pega os uids de criaturas de uma area quadrada. function getUidsInArea(extr1, extr2) local dat = {} for i = 1, (extr2.y-extr1.y)+1 do for s = 1, (extr2.x-extr1.x)+1 do if isCreature(getThingFromPos({x=extr1.x+s-1, y=extr1.y+i-1, z=extr1.z, stackpos=255}).uid) then table.insert(dat, getThingFromPos({x=extr1.x+s-1, y=extr1.y+i-1, z=extr1.z, stackpos=255}).uid) end end end return dat end Como usar: O parametro extr1 e extr2 sao as pos de 2 "vertices" opostos de uma area quadrada. local uids = getUidsInArea({x = 3, y = 5, z = 7}, {x = 17, y = 15, z = 7}) Eu acho que tem uma funçao parecida no tibia, getSpectators, mas essa é mais facil de usar. OBS: Retorna uma table com todas as uids da pos.1 ponto -
[Encerrado] [Fechado] Npc
DaNDaNrOxX reagiu a 1877799 por um tópico no fórum
Eu entendi, ele quer um npc chamado Gary que possa batalhar com você ao falar com ele. Tem um membro do forum que criou um NPC com um sistema tipo o desse mais ele não postou no XTibia e estou tentando conseguir o script para você... A Propósito está na area errada, a area correta seria Pedido de Scripts1 ponto -
Vip System By Mock 100%
HighSaintess reagiu a dragonfight por um tópico no fórum
Esse vip system é pra qual versão?1 ponto -
O Celestial Ot Server E Simplismente O Mapa Demonic Muito Bem Editado. Chega De Bla Bla E Vamos Para O Que Interessa Ja De Começo Vo Colocando Os Devidos Creditos. Site Do Server Owned (EU POR TER EDITADO O MAPA) Woork (POR EDITAR OS MONSTERS ) Carnavotu(PELO MAPA) Subwat (PELO EXE) Imagens Cidade Principal TP's Free E Quest's Algumas Novas Hunts (Todas VIP's) Nova Area De Treiners Vista Da VIP Island Novo Visual Do Templo VIP OBS: Se Voce Quiser Ver As Features. Click Aqui Celestial Server 1.0 O Que Mapper Owned Edito? Area Free Modifiquei O Templo Modifiquei A Cidade Modifiquei A Arena Modifiquei A Area De Teleportes Modifiquei A Area Dos Treiners Modifiquei As Paredes Das Houses Retirei As Gramas Das Houses Todas Criei Uma Sala De Quest's Area VIP Editei Alguns Itens(Fica Como Opção Esses Itens Eu Criei Foi Para Eventos Fiquei No Critério De O Modo De Doar) Celestial Staff Celestial Blade Celestial Axe Celestial Club Modifiquei O Templo (Fico Maior) Mofiquei A Cidade Retirei A Gelo Da City Toda Modifiquei As Parades Das Houses Todas Criei Uma Area De Treiner's No Templo Cada Uma Contem Um Depot Novas Hunt's Que Criei: INFERNATIL ORSHABAAL ACHAD YAKCHAL SCORPION OT Via 4Shared Celestial OT Server Sobre O Scan Peço Que Alguma Membro Que Poste Um Ai Porque Não Esto Mais Conseguindo Entrar No Site. Ajudei,Gosto Da Mais Um Rep Ai :button_ok: Galera Vamos Ai Comentar 215 Visualização E Nenhum Comentário ???1 ponto
-
Olha Achei O Mapa Bem Desenvolvido La Vai A Critica. Critica E Quase Impossível Arruma 10kk A 20kk. A Área De Evento Nem Se Fala Porque Ela Esta Em Cima De Um Telhado Fora Ainda Que O GOD Tem Que Puxa Um Por Um. Sugestão Criar Uma Área De Evento Sem Ser Em Cima Dos Telhados E Um Teleport. Já Que Os Itens São Bem Caros Aumentasse O Valor Dos Itens Que Vende No LOOT SELLER E Adicionasse Um NPC So De Vender Os Itens VIP's. Elogio Como Eu Disse Mais A Cima O Mapa Esta Bem Desenvolvido. Mapa Com Poucos Erros. Então Já Vou Falando REPROVADO.1 ponto
-
Bem ! vo testar aqui assim que terminar dou noticias brigado adiantado ! (:1 ponto
-
Vc ja Liberou as Porta 7171 ? Se nao Liberou Leia em Baixo. Va em Painel De Controle -> Firewall Do Windows -> Na Aba Exceções -> Adicionar Porta. Bote Assim: Nome: Open Tibia Numero da Porta: 7171 Deixe Marcado TCP. Liberando o EXE do seu OT: Va em Painel De Controle -> Firewall Do Windows -> Na Aba Exceções -> Adicionar Programa. Va na pasta do seu OT e selecione o EXE. Ve se Funciona ae. Se Ajudei +REP1 ponto
-
[8.54]Pokeserver Tfs 0.3.6 [V3.0]
927771 reagiu a Fernandinand por um tópico no fórum
Me diz uma coisa, como faz para um PokeServer rodar? Eu não consigo nem entrar na conta god/god nele. '-'1 ponto -
Histórias Das Quests De Rookguard
GODPraquenome reagiu a Mascarado por um tópico no fórum
Amber's Diary Quest Nome: Amber's Diary Quest Localização: Leste Da Ilha Nível Mínimo(Recomendado): 2 Criaturas: Bugs, wolfs, spiders e poison spiders Equipamento necessário: - Recompensa:Amber's Diary História: Uma pequena aventureira estava chegando na cidade quando se deu de frente com monstros horripilantes que os assustaram-a, e, de tanto medo que ela tinha, saiu correndo, pois estava sem suas armas e nessa corrida ela deixa cair seu pequeno diário que guarda com ela desde seus seis anos de idade, naquela epóca ela já se aventurava pelo continente Tibiano.Tinha uma pequena casa na vila de Rookguard, que era aonde seus pais moravam.Hoje, ela possui uma pequena academia de aventureiros para se aventurarem nos mistérios que rondam a ilha que possui a vila de Rookguard. Banana Quest Nome: Banana Quest Localização: Leste Da Ilha Nível Mínimo(Recomendado): 2 Recompensa: Banana História: Como todos sabem a banana só dá em uma época do ano, e nesta época um Mago bem experiente estava colhendo algumas bananas, pois era o meio de vida de sua família e alguns moradores da vila. Assim, ele resolveu que com sua magia, a banana ia aparecer o ano todo. E depois de ter lançada o feitiço não tinha como tirá-lo, pois então agora aventureiros podem se deliciar da banana ou guardá-lá de lembrança daquele humilde Mago. Backpack Quest Nome: BackPack Quest Localização: Perto da Bear Room(Leste) Nivel Mínimo(Recomendado): 4 Equipamento necessário: - Recompensa: Uma backpack, com uma present box, plate, cup e jug. História: Em uma caverna de Rookguard alguém resolveu se aventurar com monstros novos naquela época como: Minotauros e Orcs. Mas Willian Four não sabia que eles eram tão fortes assim, por isso de assutado, guardou sua mochila em um baú e correu, desesperadamente para a vila.Mas, ao chegar na vila lembro que tinha esquecido o presente de seu primo dentro da mochila, ele voltou, mas, infelizmente, falaceu perante os olhos de Minotauros e Orcs. E agora ele conta com você para que você possa recuperar a mochila dele, levar até o irmão dele, que é o bibliotecário e receber uma recompensa de honestidade e coragem, que é, um Legion Helmet. Combat Knife Quest Nome: Combat Knife Quest Localização: Esgoto da cidade Nível Mínimo (Recomendado): 1 Monstros: Rats (número variável) Equipamento necessário: - Recompensa: Combat Knife História: Um certo dia, havia uma luta no esgoto da cidade, dois guerreiros se enfrentavam, mas, como luta é luta, um morreu e tinha em mãos uma Carlin Sword, que era muito rara na época e daí como o outro guerreiro que tinha apenas um Combat Knife, jogou sua arma velha dentro de um baú e fez posse da Carlin Sword. Doublet Quest Nome: Doublet Quest Localização: Subterrâneo da construção abandonada, ao norte do Tom Nível Mínimo (Recomendado): 1 Monstros: Um Rat Equipamento necessário: - Recompensa: Doublet História: Um grande explorador ao descer o bueiro que tem ali no sótão escorregou e deixou sua armadura ali no piso garrado e a queda foi tão feia que ele morreu e os ratos comeram-o inteirinho. Agora a armadura é bem cobiçada pois novos aventureiros não sabem aonde ela está, basta explorar o sótão que descobrirão. Torch Quest Nome: Torch Quest Localização: Subterrâneo da academia de Rookgaard (embaixo da biblioteca) Nível Mínimo (Recomendo): 1 Monstros: 0 - 2 rats Equipamento necessário: - Recompensa: Torch História: É bem simples, é que: A academia está disponibilizando novos objetos para facilitar a caça de seus participantes, por isso disponibiliza a Tocha. Cooper Key Quest Nome: Copper Key Quest Localização: Perto da Bear Room Nível Mínimo(Recomendado): 4 Monstros: Orcs, Minotaurs e Trolls Equipamento necessário: Pick Recompensa: Uma chave de cobre de número 4601, que abre a Bear Room. História: Um velho explorador esqueceu sua chave que conseguiu com seu pai para abrir uma sala cheia de riquezas e agora ela está presa numa velha mesa perto desta sala. Quem será o aventureiro a usar sua picareta(pick) e desvendar esse mistério. Bear Room Quest Nome: Bear Room Quest Localização: Bear Room Nível Mínimo (Recomendado): 4 Monstros: Orcs, Minotaurs e Bears Equipamento necessário: Copper Key #4601 (vinda de "Copper Key Quest") Recompensa: Chain Armor, Brass Helmet e Bag com 12 arrows e 40gp História: Um velho explorador rico morreu ali dentro e contigo estava suas riquezas e um urso vijia-as até hoje, quem será o aventureiro que irá derrotar o urso e pegar a sua riqueza pelo seu mérito? Dragon Corpse Quest Nome: Dragon Corpse Quest Localização: Caverna dos Ursos Nível Mínimo (Recomendado): 4 Monstros: Wolves, e muitos, muitos Bears Equipamento necessário: Pá, no mínimo 5 life fluids (ou muita comida), rope e scythe Recompensa: Copper Shield e Legion Helmet História: Um velho aventureiro chamado Copper Tyw morreu para um dragão nesta mesma caverna, mas, por uma explosão o dragão também faleceu e guarda até hoje seu escudo e seu capacete. Para chegar até lá é necessário enfrentar ursos, cortar trigo, isso mesmo, cortar trigo, passar pelo fogo que ele deixou e abrir o corpo do dragão e fujir rapidamente. Captain Iglue's Treasure Quest (Missão do Tesouro do Capitão Iglue) Nome: Captain Iglue's Treasure Quest (Missão do Tesouro do Capitão Iglue) Localização: Construção invadida por Poison Spiders Nível Mínimo (Recomendado): 4 Monstros: Muitas Poison Spiders, e 2 ou mais Skeletons Equipamento necessário: Rope Recompensa: 4 ou mais Salmons e 1 carta História: O capitão Inglue esqueceu seus alimentos e sua carta de sorte lá naquele lugar, que agora habitam por lá muitas aranhas venenosas e esqueletos horripilantes. Honey Flower Quest Nome: Honey Flower Quest Localização: Wasp Tower Nível Mínimo (Recomendado): 4 Monstros: Talvez orcs e orcs spearmen, e muitas Wasps Equipamento necessário: Rope, life fluids ou muita comida, e antidote runes Recompensa: Honey Flower - Lee'Delle, NPC da parte premium da ilha, troca ela por uma Studded Legs pra você. História: Abelhas bastante venenosas guardam sua flor, a mais perfumuda e a mais esbelde de todas, mas, Lee'Delle é apaixonado por flores e dá uma recompensa para quem traze-lá até ele. Quem será o corajoso de enfrentar essas abelhas? Carlin Sword Quest Nome: Carlin Sword Quest Localização: Minotaur Hell Nível Mínimo (Recomendado): 5 Monstros: Wolves, Orcs e Minotaurs Equipamento necessário: - Recompensa: Fishing Rod, 12 Arrows, 4 Poison Arrows e Carlin Sword História: Um pescador, um arqueiro e um guerreiro resolveram explorar as cavernas de Minotauros da ilha, mas, em uma dessas jornadas acabaram os três falecendo, e os Minoutauros que são gananciosos, guardam como tesouro da vitória, uma vara de pescar, 12 flechas, 4 flechas venenosas e uma Carlin Sword. Será que você é capaz de pegar essa recompensa? Katana Room Quest Nome: Katana Room Quest Localização: Cavernas de Rotworms, embaixo das covas na parte nordeste da ilha. Nível Mínimo (Recomendado): 7 Monstros: Spiders, Poison Spiders, Skeletons, Rotworms, 4 Poison Fields Equipamento necessário: Rope, Shovel, Antidote Runes, Life Fluids, Chave #4603 Recompensa: Katana e Viking Helmet Observações: Primeiro você vai ter que conseguir a chave 4603, que é conseguida em um dos corpos frescos próximos à quest. Depois disso, vá para o sul, desça no buraco, enfrente os Skeletons, abra a porta com a chave e desça a escada - você terá de enfrentar dois Skeletons e uma Rotworm. Existe uma alavanca escondida, axe-a, puxe-a e a porta da sala se abrirá. A continuação da quest fica por sua conta História: Um antigo explorador possuia e ainda possui a chave que abre uma sala da quest, e por incrível que pareça o seu corpo não se decompõe. Uma alavanca escondida guarda a sala da quest, e aí é só enfrentar os monstros e receber sua recompensa. Quests da Área Premmium Small Axe Quest Nome: Small Axe Quest Localização: Área Premium Nível Mínimo (Recomendado): 3 Monstros: Skeletons e Cave Rats Equipamento necessário: Shovel e rope Recompensa: Small Axe História: Existe um buraco atrás de uma árvore, bem ali - use uma shovel, e boa aventura. Conta a lenda que um aventureiro morreu após errar o caminho, ao invés de pegar outro, que tinha um gás venenoso e encontrar o tesouro guardado por magia negra. Goblin Temple Quest Nome: Goblin Temple Quest Localização: Área Premium (use uma shovel no buraco, desça, enfrente alguns trolls e vá para o norte. Desça mais buracos e desta vez vá para o sul. Passe pelo "corredor" dos goblins e desça novamente. Vá pelo segundo caminho à esquerda) Nível Mínimo (Recomendado): 4 Monstros: Spiders, Trolls, Minotaurs, Orcs, Goblins, Orcs Spearmen e Wasp Equipamento necessário: Shovel e rope Recompensa: 50gp, 4 Snowballs, 5 Small Stones, Sandals, Pan e Milk História: Essa quest geralmente é feita em grupos de 5+ pela sua diversidade de monstros poderosos, após ter derrotado todos eles você pode ter o prazer de gritar: Eu sou poderoso, há! Bom, essas histórias foram criadas por mim. Eu coloquei as informações das quests para facilitar a vocês. Lembrando, essa daí é a minha primeira história. Comentem, sugerem, criticam, opinam. :-)1 ponto -
... data/npc/script/bless.lua local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid -- Config local money = 80000 local premium = 'Você não tem {premium} {account}!' local offer = 'Você quer comprar todas {Bless} por {'..money..'} {gps}?' local erromoney = 'Você {não} tem {dinheiro}!' local havebless = 'Você {já} {tem} {Bless}!' local ty = '{Obrigado!}' -- Config player_gold = getPlayerItemCount(cid,2148) player_plat = getPlayerItemCount(cid,2152)*100 player_crys = getPlayerItemCount(cid,2160)*10000 player_money = player_gold + player_plat + player_crys if isPremium(cid) then if msgcontains(msg, 'bless') or msgcontains(msg, 'all') or msgcontains(msg, 'todas') then talkState[talkUser] = 1 selfSay(offer, cid) elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then talkState[talkUser] = 0 if getPlayerBlessing(cid, 1) then selfSay(havebless, cid) else if player_money >= money then doPlayerRemoveMoney(cid, money) doPlayerAddBlessing(cid, 1) doPlayerAddBlessing(cid, 2) doPlayerAddBlessing(cid, 3) doPlayerAddBlessing(cid, 4) doPlayerAddBlessing(cid, 5) selfSay(ty, cid) else selfSay(erromoney, cid) end end end else selfSay(premium, cid) end ------------------------------------------------ confirm no ------------------------------------------------ if msgcontains(msg, 'no') and (talk_state >= 1 and talk_state <= 5) then selfSay('Ok than.', cid) talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Não testei, mas deve funcionar.1 ponto
-
[Arquivado]Como Fazer Um Otserv Dar Certo!
Grillo15 reagiu a Magodasabedoria por um tópico no fórum
Olá amigos do XTibia! Venho aqui mais uma vez lhes encher a paciência e gastar seu precioso tempo com mais um de minhas matérias malucas e mirabolantes. :49_49: - Que tal criar um OTserv? -BRILHANTE IDÉIA!!!!! Vamos correndo no XTibia, baixar um OTsev pronto, fazer nossos GMs e botar ele online! (7 dias depois...) -Mano, enjoei do OT, ninguem entra, ta um saco, desisto. (2 meses depois...) -Cara, vamo forma uma equipe pra fazer um otserv? Olha, vamo lá no XTibia, junta uma equipe e fazer um OTserv do 0 e talz? -Boa mano, demoro, vamo lá! (1 mês depois...) -Fulano, o mapa ta pronto? -Ta quase... é que bateu uma preguiça e eu enjoei de fazer o mapa, ai parei pra descansar um pouco. -Cicrano, como é que vai os monstros? -Pois é, deu certo não! Cheio de bugs. E o hoster? -Ta fora, ele saiu da equipe, ouve problemas e talz! (20 dias depois...) -O Ot deu errado galera, não vai da mais pra continuar! Cenas como essas vem se repetindo com vários jogadores e varias vezes. Mas, finalmente, POR QUE NUNCA DA CERTO??? Calma amigo, não precisa fazer nenhuma reza, ou pedir pro santo de sei la o que não! E também não é nada que você fez de errado que esta sendo "amaldiçoado" pelo sei la o que. É apenas um caso de paciência e organização! Isso mesmo, não vou precisar repetir né? Eu vou explicar porque os OTservs não dão certo, ok? Antes pega um biscoito ai, daqueles bem gostosos, pega sua melhor cadeira que tiver ai, relaxa e vamos ver "Como fazer um OTserv dar certo"! Bom galera, não é nada de outro mundo... as pessoas quando fazem um OTserv, 80% das vezes é pensando em se divertir, que muitas pessoas entrem, por isso fazem rápido e de qualquer jeito. Temos um erro e um acerto ai! O acerto é que a pessoa quer fazer um OTserv, o erro que é pensando em se divertir. O que? Não entendeu? Pois é eu explico. Você não cria um OTserv para se divertir, e sim para vê-lo crescer, se não cresce você fica nervoso e para com o OTserv. -Mas mago, eu to nem ai para o numero de pessoas que vão entrar no meu OT, eu so quero me divertir mesmo. Pois é cara, então jamais seu OTserv vai dar certo! Mas você tera alguns "momentos" de diversão. Então em mente a pessoa deve estar ciente que o OTserv é como um "tamaguche". É tamaguche, aquele trocinho lá que parece um chaveiro e tu fica clicando nos botões para fazer um cachorrinho, ou passarinho ou gatinho, ou sei la o que crescer, ai precisa dar comida, agua, essas coisas. Não gostou do exemplo? ;o Beleza, então é como um time de futebol! Aaaa, agora gostou né? Pois é, você deve primeiro ter em mente do seu time. Quer o que, um time pra zuar ou um time de verdade, pra competir ate com a seleção brasileira? Pois é, vamos pensar alto e vamos querer um time para competir com a seleção brasileira! -Então ta legal! Agora vo reuni uma equipe e o primeiro que aparecer no cargo que quero vou o contratar! Piiii, erro encontrado. Pois é, temos mais uma vez um erro e um acerto. O acerto é a parte de reuni uma equipe, o que erro é contratar o primeiro que achar. Pois é, vamos reuni uma equipe sim, mas uma equipe direito, não vai chama aquele seu amigo noob pra ser GM pelo amor de Gosh! Criem seu Tópico bonitinho no XTibia e saia correndo atrás de pessoas para sua equipe, mas antes dessa pessoa entrar deve fazer um teste. Sei la, peça pra ela mostrar algum trabalho seu, ou fazer um trabalho básico na hora para ver se você gosta. Procure saber também quem é aquela pessoa, vai que ela é ripper ou hacker! Calma amigo, não levanta da cadeira ainda não, você já sabe praticamente o básico, falta pouco, se o biscoito acabou aguenta ai, e se não pego biscoito pega agora e se não come ou não gosta de biscoito paciência. oO -Pronto, tenho minha equipe formada, agora daqui a um mês o OTserv vai estar pronto! Calma ae, calma ae, calma ae! Ta pensando o que? Ta pensando o que? Agora que esta com sua equipe formada com mapper e talz, vamos rever conceitos básicos. Xp, nome do OT, como ele vai ser e talz. Pronto? Calma ae ainda. Lembra de ter um bom hoster, net de 1 MB pelo menos! Não se esqueça que um bom OTserv deve possuir uma historia. De um montro que invadiu a cidade a milhares de anos, ou sei lá o que. Faça uma historia bacana e aquela historia deve refletir no seu OTserv. Agora que ja temos um projeto de nosso OTserv, você vai passar para eles suas idéias, para que essa equipe faça aquilo que tem em sua mente. Não ta trabalhando aquela pessoa? Pode ser seu amigo, vizinho, pai, irmão, tio, mas foi mal, tchau até a próxima pra ele! -Valeu mago, agora eu tenho meu OTserv prontinho e bonitinho aqui! Mas... e agora? Ta tudo pronto, agora eu quero que as pessoas entrem nele! Agora que seu OTserv esta pronto e talz, é hora de anuncia-lo. Existe milhares de lugares para isso! Tanto em sites de Tibia, como o XTibia, como Orkut, msn, escola, etc. Peça para todos da equipe chamarem amigos. Legal, o povo vai entrar, se gostar ira chamar os amigos ou será um jogador "permanente" para você, ou pelo menos ficara um bom tempo. Não se esqueça de limitar regras a GMs, Tutores ou outro da staff. -Agora pronto, acabou, meu OTserv esta perfeito e pronto! Valeu! Ai que você se engana meu caro amigo! Das 20% das pessoas que conseguem chegar a esse ponto, 80% falha. Pois é cara. Ai ta o lance! Isso já é uma idéia pessoal. Os OTservs não dão certos porque ficam chatos e enjoativos. Os GMs e Tutores cansam, os jogadores tambem e ate você. É ai que lhes do essa dica. Eu sei que sua cabeça é cheia de ideias, mas quando lançar seu OTserv lance apenas 5% de suas idéias, e com o tempo lance o resto. Pois é, assim sempre tera uma novidade no OTserv. Quer um exemplo? Um Otserv so começa com Rookgaard e 3 hunts. Passa alguns dias, cria a cidade principal e lá 3 hunts. Passa 2 semana e cria mais 2 hunts e quests novas. Passa mais 1 mês e cria uma nova cidade e coloca novos segredos, quests e hunts. Isso ajuda tambem para que o OTserv seja construído pelo jogador, pois quando começou a jogar não tinha cidade principal, quando ela surgiu ele entrou em um novo mundo de aventura, com segredos que ele tem que descobrir. Cria um rpg legal, não acha? A pessoa tambem conhece o mapa mais facilmente. Já viu aqueles OTservs novos que você não sabe nem onde ta o dp? Pois é, começando aos poucos deicha que os jogadores conheçam seu OTserv completamente (ou não?) sabendo onde fica cada coisa. Essa é minha opinião, mas cada um tem a sua. Isso se chama "temperar" seu Otserv, Ok, os pontos principais acho que passei! Agora é com vocês. Quero ver um monte de OTserv aqui dar certo em! Agora pode parar de comer biscoito SEU GULOSOO!!! =]~ Fica aqui mais uma materia minha. Abraços, Magodasabedoria.1 ponto -
Tutorial Movements
Igor666Nto reagiu a frerety por um tópico no fórum
HiHo! Como prometido, escrevi o tutorial de Movements =) Bom... demorei 5 horas pra escrever isso. Eu sei que o número de pessoas que vai ler isso com intusiasmo e interesse eh quase nulo mas se eu conseguir ajudar uma pessoa apenas já estou feliz =) Provavelmente você não vai intender tudo da primeira vez que você ler (talvez nem da segunda) pois eh muita coisa para aprender. Leia com atenção, com calma, com carinho ( =p ), analise vários scripts/movements (todos que ver na frente de preferência \o/) e o mais importante: tenha persistência Tentei facilitar ao máximo, tentei organizar mais porém se eu sintetizasse mais iria perder conteúdo =x... Se você ainda tiver alguma dúvida me mande uma pm ou poste aki mesmo =p Ficarei feliz em te ajudar a resolver seu problema. Se você não souber programar em lua ou não conhecer direito as funções do SVN(antigo CVS) dê uma olhadinha no tutorial de actions do colex primeiro. Olhar aqui antes de ter experiência com actions provavelmente não irá adiantar muita coisa =) PS .: Faço apenas um pedido, se você for postar esse tutorial em outro lugar me mande uma pm me contando onde que eu mando o tópico até com o BBC pra não precisar reformatar tudo =) Pergunta ~> Tá... Vou ler um tutorial de Movements, mais o que isso faz?!? Resposta ~> Toda vez que você movimentar alguma coisa (itens, você mesmo, outros players - enfim, todo tipo de movimento) ou criar itens em algum lugar (ex. criar firefields) poderá acontecer alguma coisa. Podemos configurar BoH, rings com movements, adicionar damage nos fields, configurar traps e muuuito mais =) Começaremos analizando o movements.xml (data/movements/) Vamos estudá-lo um pouco: Para cada event você vai usar um argumento < (...) >. Por isso vamos estudar movements divididos em seções - events. EVENTS: <movevent event="StepIn" (...) /> Usada quando o player mover para alguma coisa. Corresponde à antiga função de actions OnWalkIn Argumentos: itemid/uniqueid/actionid ~> use apenas um deles, nunca mais de um (se usar itemid não use uniqueid, se usar actionid não use itemid, etc). Quando o player andar em cima de um item com itemid/uniqueid/actionid X, executar o movement. script/function ~> use (também) apenas um deles (se usar script não usar function). Function vai ser explicado mais tarde, não se preocupe =). Script é o caminho do arquivo lua(onde ele está) a ser executado quando o player pisa em algum item de itemid/uniqueid/actionid X Exemplo: <movevent event="StepIn" itemid="1487" script="arquivo.lua" /> <movevent event="StepOut" (...) /> Usada quando o player mover para fora (sair de cima) de um item X. Corresponde à antiga função para actions OnWalkOut Argumentos: itemid/uniqueid/actionid ~> use apenas um deles, nunca mais de um (se usar itemid não use uniqueid, se usar actionid não use itemid, etc). Quando o player mover pra fora de um item com itemid/uniqueid/actionid X, executar o movement. script/function ~> use (também) apenas um deles (se usar script não usar function). Function vai ser explicado mais tarde, não se preocupe =). Script é o caminho do arquivo lua(onde ele está) a ser executado quando o player "sai" de cima de algum item de itemid/uniqueid/actionid X Exemplo: <movevent event="StepOut" itemid="1487" script="arquivo.lua" /> <movevent event="Equip" (...) /> Usada quando o player colocar um equipamento no corpo(pro corpo, não para a bp =p) em algum slot Argumentos: itemid/uniqueid/actionid ~> use apenas um deles (se usar itemid não use uniqueid ou actionid). Quando o player mover um item de itemid/uniqueid/actionid X para o corpo, executar o movement. script/function ~> use (também) apenas um deles (se usar script não usar function). Function vai ser explicado mais tarde, não se preocupe =). Script é o caminho do arquivo lua(onde ele está) a ser executado quando o player "veste" algum item de itemid/uniqueid/actionid X. slot ~> o slot (mão, pé, corpo, etc) que o item deverá ficar pra executar a ação. Pode ser: .: head ~> cabeça .: necklace ~> colar .: backpack ~> slot da backpack .: armor ~> armadura .: right-hand ~> mão direita .: left-hand ~> mão esquerda .: legs ~> calça .: feet ~> pé .: ring ~> rings (anéis) Exemplo: <movevent event="Equip" itemid="2168" slot="ring" script="arquivo.lua" /> <movevent event="deEquip" (...) /> Usada quando o player retirar um equipamento de um certo slot do corpo Argumentos: itemid/uniqueid/actionid ~> use apenas um deles (se usar itemid não use uniqueid ou actionid). Quando o player mover um item de itemid/uniqueid/actionid X para fora do corpo, executar o movement. script/function ~> use (também) apenas um deles (se usar script não usar function). Function vai ser explicado mais tarde. Script é o caminho do arquivo lua(onde ele está) a ser executado quando o player tira algum item de itemid/uniqueid/actionid X do corpo. slot ~> o slot (mão, pé, corpo, etc) que o item deverá ficar pra executar a ação. Pode ser: .: head ~> cabeça .: necklace ~> colar .: backpack ~> slot da backpack .: armor ~> armadura .: right-hand ~> mão direita .: left-hand ~> mão esquerda .: legs ~> calça .: feet ~> pé .: ring ~> rings (anéis) Exemplo: <movevent event="DeEquip" itemid="2168" slot="ring" script="arquivo.lua" /> <movevent event="AddItem" (...) /> Usada quando o player adicionar um item x em algum tile (mover de um tile pro outro, quando o player taca uma runa de field ofensiva em alguém) Argumentos: itemid/uniqueid/actionid ~> use apenas um deles (se usar itemid não use uniqueid ou actionid). Quando o player "criar" um item de itemid/uniqueid/actionid X, executar o movement. script/function ~> use (também) apenas um deles (se usar script não usar function). Function vai ser explicado mais tarde. Script é o caminho do arquivo lua(onde ele está) a ser executado quando o player adiciona/move alguma coisa pro tile. tileitem ~> pode ser 0(false - desativado) ou 1(true - ativado). Se for 0, o script é executado assim que você move/cria o item no chão. Se for 1, o script só é adicionado quando você taca outro item em cima do item de itemid/uniqueid/actionid X Exemplo: <movevent event="AddItem" tileitem="0" itemid="2424" script="script.lua" /> <movevent event="RemoveItem" (...) /> Usada quando o player remover um item x (mover de um tile pro outro, usar destroy field) Argumentos: itemid/uniqueid/actionid ~> use apenas um deles (se usar itemid não use uniqueid ou actionid). Quando o player "remover/tirar" um item de itemid/uniqueid/actionid X de um tile, executar o movement. script/function ~> use (também) apenas um deles (se usar script não usar function). Function vai ser explicado mais tarde. Script é o caminho do arquivo lua(onde ele está) a ser executado quando o player tira algum item de itemid/uniqueid/actionid X do corpo. tileitem ~> pode ser 0(false - desativado) ou 1(true - ativado). Se for 0, o script é executado assim que você move/cria o item no chão. Se for 1, o script só é adicionado quando você tira outro item de cima do item de itemid/uniqueid/actionid X Exemplo: <movevent event="RemoveItem" tileitem="0" itemid="2424" script="script.lua" /> ARQUIVOS.LUA: Nas actions o modelo básico é: Porém em movements o modelo depende do Event adicionado no xml. Cada event tem seu modelo básico... Irei explicar um por um. StepIn Seu modelo básico é: Argumentos: .: cid ~> o UID do player que andou em cima de item; .: item ~> o item que o player cid pisou. Possui: item.uid, item.itemid, item.type, item.actionid .: pos ~> a posição do item que o player cid pisou StepOut Seu modelo básico é: Argumentos: .: cid ~> o UID do player que saiu de cima de item; .: item ~> o item que o player cid saiu. Possui: item.uid, item.itemid, item.type, item.actionid .: pos ~> a posição do item que o player cid saiu Equip Seu modelo básico é: Argumentos: .: cid ~> o UID do player que "vestiu" o item; .: item ~> o item que o player cid "vestiu". Possui: item.uid, item.itemid, item.type, item.actionid .: slot ~> o lugar do corpo que o item foi colocado. Pode ser: .:. 1 ~> cabeça .:. 2 ~> colar .:. 3 ~> slot da backpack .:. 4 ~> armadura .:. 5 ~> mão direita .:. 6 ~> mão esquerda .:. 7 ~> calça .:. 8 ~> pé .:. 9 ~> anel DeEquip Seu modelo básico é: Argumentos: .: cid ~> o UID do player que tirou o item do corpo; .: item ~> o item que o player cid tirou do corpo. Possui: item.uid, item.itemid, item.type, item.actionid .: slot ~> o lugar do corpo que o item foi retirado. Pode ser: .:. 1 ~> cabeça .:. 2 ~> colar .:. 3 ~> slot da backpack .:. 4 ~> armadura .:. 5 ~> mão direita .:. 6 ~> mão esquerda .:. 7 ~> calça .:. 8 ~> pé .:. 9 ~> anel AddItem Seu modelo básico é: Argumentos: .: moveitem ~> O item que está sendo movido. Tem os seguintes atributos: moveitem.uid, moveitem.itemid, moveitem.type, moveitem.actionid. OBSERVAÇÃO: se você marcou tileitem="1" o item que está no xml não vai ser moveitem e sim tileitem. Moveitem será o item que você arrastou em cima do item que está no xml!!! (dêem outra olhada no xml do event AddItem na parte do tileitem para intenderem melhor. Se precisar olhem os exemplos mais em baixo .: tileitem ~> você irá usar isso apenas se marcou tileitem="1" no xml. tileitem é o item que você colocou no xml, o item que os players irão mover outros items em cima (se precisar dêem outra olhada no xml do event AddItem na parte do tileitem para intenderem melhor. Se precisar olhem os exemplos mais em baixo). OBSERVAÇÃO: Por mais que esteja escrito tileitem, o tileitem não precisa ser necessáriamente um tile =) pode ser qualquer item que você possa mover coisas em cima dele. .: pos ~> a posição que o o moveitem foi movido/criado. (posição depois de mover) RemoveItem Seu modelo básico é: Argumentos: .: moveitem ~> O item que está sendo movido. Tem os seguintes atributos: moveitem.uid, moveitem.itemid, moveitem.type, moveitem.actionid. OBSERVAÇÃO: se você marcou tileitem="1" o item que está no xml não vai ser moveitem e sim tileitem. Moveitem será o item que você arrastou de cima do item que está no xml!!! (dêem outra olhada no xml do event AddItem na parte do tileitem para intenderem melhor. Se precisar olhem os exemplos mais em baixo .: tileitem ~> você irá usar isso apenas se marcou tileitem="1" no xml. tileitem é o item que você colocou no xml, o item que os players irão mover outros items em cima (se precisar dêem outra olhada no xml do event AddItem na parte do tileitem para intenderem melhor. Se precisar olhem os exemplos mais em baixo). OBSERVAÇÃO: Por mais que esteja escrito tileitem, o tileitem não precisa ser necessáriamente um tile =) pode ser qualquer item que você possa mover coisas em cima dele. .: pos ~> a posição que o o moveitem foi removido (posição antes de mover). FUNCTIONS vs SCRIPTS: Bom... Quando eu estava explicando os xmls eu falei que você pode usar script ou function. Provavelmente você já está acostumado a usar script. script="arquivo.lua" etc etc =) Mas... pra que serve function e porque eu não uso script quando uso function?!? Em movements você tem algumas funções especiais para fazer seu trabalho "andar mais rápido". Você não precisa criar nenhum aruqivo.lua! Basta saber quais são as funções especiais e como/quando usá-las OBS: Os items que serão usados nas funções especiais precisam estar configurados em data/items/items.xml!!! 1ª função ~> onStepInField Como o próprio nome já diz ela deve ser usada com o event StepIn =p Serve para adicionar damage em fields... Você não precisa de um arquivo.lua, apenas coloque: <movevent event="StepIn" itemid="ID_DO_FIELD" function="onStepInField" /> e seu field já estará dando damage assim que alguém pisa em cima dele =p 2ª função ~> onAddField Usada com o event AddItem =p Serve para adicionar damage quando o player está em um tile e outro player taca um firefield em baixo do player. <movevent event="AddItem" tileitem="0" itemid="ID_DO_FIELD" function="onAddField" /> OBS: Aconselho sempre que você usar onStepInField (1ª função) adicionar onAddField com o mesmo id para dar um ar mais real ao server. 3ª função ~> onEquipItem Usada com o event Equip. Serve para configurar rings, amuletos, etc etc... <movevent event="Equip" itemid="ID_DO_ITEM" slot="ring" function="onEquipItem" /> OBS: é bom você colocar 2 tags, uma com o ID_DO_ITEM não usado e outra com o ID_DO_ITEM usando, gastando tempo. 4ª função ~> onDeEquipItem Usada com o event DeEquip. Serve para quando o player tirar o ekip especial cancelar os efeitos desse equipamento. <movevent event="DeEquip" itemid="ID_DO_ITEM_ATIVO" slot="ring" function="onDeEquipItem" /> OBS: ID_DO_ITEM_ATIVO é o id do item sendo usado... EXEMPLOS: Bom... depois de toooooda essa teoria vamos ao que interessa o/ exemplos =) (tem poucos - até mesmo porque existem vários exemplos na pasta scripts dos ots - mais se eu achar que precisa com o tempo vou adicionando novos exemplos) Exemplo 01 .:. Configurando Stealth Ring Exemplo 02 .:. Como usar tileitem ÚLTIMAS PALAVRAS: Difícil? Talvez =p Se você tiver chegado até aqui e intendido, o que está esperando? vá fazer seus próprios movements \o/ Se você não tiver intendido, levante do pc, dê uma andadinha básica pela casa de uns 10 minutinhos para assimilar as informações e volte para reler o/ Boa sorte =) FlW CyA!1 ponto -
Erro Rme :x !
KamuiHunt2 reagiu a KamuiRunt por um tópico no fórum
E você especificou? Sem contar que se você disse que TENTOU significa que você citou que iria juntar, então minha pergunta está correta. Mas pra quem escreve bls com s, é digno de ter uns 10 anos. Reportado, se continuar será alertado. Tópico será fechado. Obs: E tu ta fudid..... Por que quem responde nessa área aqui sou eu, então não irei te ajudar, e se retornar aqui, será reportado dinovo.0 pontos -
Erro Rme :x !
DaNDaNrOxX reagiu a HighSaintess por um tópico no fórum
"pooq quando eu ""vou"" juntar um mapa pronto com outro mapa ele fecha" quando vou , kem diz que deu certo , arrogancia ? bls liga pra minha preocupação ve se ella atende bls (y) !-1 pontos