Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 11/25/13 em %

  1. GuhPk

    Ice Quest - PxG

    Olá pessoal! Um membro aqui do fórum heavy2, havia pedido para mim, o mapa da Ice Quest da PxG. Então, eu resolvi tentar recriar um pouco pelo menos seguindo o vídeo que eu tinha visto. Deu no que deu, eu fiz e agora to postando aqui pra vocês baixarem, se quiserem podem usar para hunt, quest, ou para qualquer outra coisa... Fiquem ligado ai que qualquer coisa eu posto v2, adicionando os detalhes no mapa, talvez a ilha ACIMA do que eu já fiz... Então sem mais enrolar, está ai o mapa! >.< SS's Download PS: Caso você tenha algum vídeo que de para mim ver melhor a Ice Quest da PxG, poste o vídeo ai ou o link para ele... Isso já ajudará muito para vir uma próxima versão do mapa! ^^ Obs: Sim, o mapa está sem detalhe. Se tiver muita gente pedindo logo mais eu faço um upgrade nele e coloco detalhes, adiciono a parte da ilha em cima, e todo o resto! >.<
    3 pontos
  2. ScythePhantom

    [Mapping] Mostre suas Idéias

    "Coroa de Flores"
    3 pontos
  3. Seagull

    [Algoritmos] Aula 3

    Aula 2 Aula 4 Variáveis <nome da variável>:<tipo de dado> Exemplos de Variáveis sexo:caracter //m ou f nome:literal anoDeNascimento:inteiro altura:real ativo:logico Então os tipos de variáveis possíveis são: carácter, literal, inteiro, real e logico. Carácter: Basicamente quando a "resposta" ou "saída de dados" for uma letra, exemplo M pra masculino e F para feminino. Literal: Quando a saída de dados for um nome por exemplo, literal é quando é mais de uma letra. Inteiro: Quando a saída de dados for um número inteiro, exemplo 1. 2. 3. 56464. Real: Quando a saída de dados for um número decimal, fracionario, exemplo: 1,25. 8,2545 Lógico: Quando for verdadeiro ou falso. Regra para nome das “coisas” Sendo “coisas”:nome de variáveis nome de algoritmo nome de arquivo Caracteres válidos:a..z A..Z 0..9 _ Operadores Atribuição<- -- Atribui um valor, MUITO utilizado! Logo mais entenderãoAritméticos^ -- potência raiz quadrada -- não existe o operador raiz quadrada no VisualG mod -- resto da divisão 7 / 3 = 1 \ -- divisão inteira - 5 / 2 = 2 / -- divisão * -- multiplicação + ​-- soma - -- subtração Relacionais> -- maior que >= -- maior ou igual a < -- menor que <= -- menor ou igual a = -- igual <> -- diferente Lógicose ou nao -- não Prioridade entre operadores Parênteses Aritméticos parênteses potência e raiz quadrada multiplicação, divisão, divisão inteira e resto da divisão soma e subtração Relacionaisparênteses maior que, maior ou igual a, menor que, menor ou igual a, igual e diferente Lógicosparênteses não e ou Tabela Verdade Operação lógica Se não gostarem ("digam o que faltou, expressem sua opinião, mas lembrando sempre com coerência e educação") fimse
    2 pontos
  4. Animal Pak

    [WODBO] DBWarrior (Re-up)

    Informações - Novo Mapa; - Novas Vocações; - Novas Magias; - Novos Monstros; - Novos Comandos e Sistemas; - !aol / Transform / Revert / Fusion /!spells/ Reborn 100%; - Novos Itens; - Novos Monstros; - Missões 100%; - Novas Quests; - Servidor 100% estável; - E Mais! Imagens: Download Server e Cliente Mediafire Scan Server e Cliente Virustotal ta uma ##!!, tem 44MB de arquivo, acredito que não seja necessário! Créditos DBWarrior Team ediberto23 BT SmoOkeR
    1 ponto
  5. LekoDS

    PokeShow - Contribuição para Comunidade

    Por aqui mais uma vez! Hoje trazemos uma lista de contribuições que já trazemos para a comunidade, como ainda estamos trazendo para todos! Pokémons & Sprites Remakers Pokemon Walls Market RME & Extenções de Mapa Extensões - Lava / Grounds [ Pokemon ] Clan PXG Websites Layout PokeXGames Tutoriais Tutorial de FTP Em breve mais conteúdo para vocês!
    1 ponto
  6. Omega

    Tour Mod

    Informações Apresento-lhes um mod simples, mas muito útil para servidores com mapas próprios. Ele faz com que o jogador passe por certos locais, sem poder se mexer nem entrar em combate, recebendo caixas de diálogo com informações sobre cada local Basta adicionar o código na pasta mods do seu servidor como tourMod.xml O comando é ativado in-game usando /tour ou !tour Só pode ser ativado em PZ A duração de cada posição é configurável Caso haja algum erro, GMs podem usar o comando /tour debug para finalizar o tour de todos os jogadores online Código Configuração As posições para as quais o jogador será levado e o tempo pelo qual ele ficará em cada posição são configuráveis em tourLocations, seguindo o padrão Depois de cada duração, você deve configurar a mensagem que o jogador irá receber em tourDesc, usando a mesma numeração
    1 ponto
  7. Bom galera, essa aqui é a seçao do Arton, de contribuiçoes ao Xtibia. Scripts \/ [sPELL] Blood Suck [TALKACTION] Duel System [TALKACTION] Selling System [TALKACTION] Send System [ACTION] Magnifying Glass Servers \/ [8.54] The Forgotten Server (V. OrochiElf) Progamming \/ [C++] doPlayerSetSkillLevel(cid, skillid, value) [C++] doPlayerSetMagicLevel(cid, ammount) Curta-nos no Facebook! Estarei atualizando assim que eu for criando os conteudos.
    1 ponto
  8. Omega

    Enciclopédia de Tutoriais de Scripting

    Última Atualização: 14/03/2014 Aqui serão organizados os tutoriais da área, divididos por nível de conhecimento (básico, intermediário e avançado) e conteúdo (spells, monsters, ...). Também separei tópicos com material de consulta para scripters, as listas organizadas anteriormente e um adicional de alguns scripts de destaque. Recomendações: Para os que querem aprender e editar scripts e estão começando, não usem o bloco de notas, muitas vezes destrói a organização do código e torna o scripting muito mais trabalhoso. Para começar, usem o Notepad++. Outra boa ideia para aprender é sempre exercitar-se lendo e criando códigos. Tente procurar por códigos que você consiga entender na pasta do seu otserver e vá aumentando o nível de dificuldade, tentando reproduzi-los por conta própria, à sua maneira. Além disso, você deve criar códigos do zero para se exercitar devidamente. Leia o segundo tutorial (lógica, algoritmos e organização, por iuniX) e aprenda o que é identação antes mesmo de pensar em aprender o resto. 1. Módulo Geral - Tutoriais focados na linguagem LUA e nas bases do scripting Nível 0 - Tutoriais focados no desenvolvimento da lógica e contato inicial com a linguagem LUA Lua, o que é? - Por iuniX Lógica, algoritmos e organização - Por iuniX Variáveis e Tipos de Dados - Por iuniX Funções e Return - Por apocarai Aulas Iniciais da Escolinha de Scripting - Por Roksas Strings e Numbers em Lua - Por caotic Nível 1 - Tutoriais básicos sobre a linguagem e scripting Introdução e Convenções Léxicas - Por apocarai Tutorial de Action - Por BoppreH (postado aqui por Brabo) Editando o config.lua - Por buster287 Aulas da Escolinha de Scripting - Por Roksas Quer aprender a ser scripter? - Por Sir Picaralhos Tutoriais 1-4 da Enciclopédia da Pasta Data - Por tibiaa4e Como funcionam os scripts - por MaXwEllDeN Como Criar Seu Monstro - Por VitorHugoFerreira Como Adicionar Seu NPC no Mapa - Por megaplis Revisão de Monsters, NPCs e Spells - Por Lucas Rap Estruturas de Controle - Por apocarai Nível 2 - Tutoriais intermediários sobre a linguagem e scripting A Coisa Mais Importante em um Código - Por Skyen A Partir do Tutorial 5 da Enciclopédia da Pasta Data - Por tibiaa4e Tutorial Sobre Arrays (Tables) - Por Tprocheira Matemática e LUA - Por Demonbholder Como Editar Magias - Por MatheusMkalo Tutorial Creaturescripts - Por Jhon992 Utilização de Loops - Por caotic Loopings - Por Demonbholder Editando Itens - Por Fronick Escrevendo em um arquivo - Por SkyDangerous Lib - O Que É e Como Usar - Por caotic Como usar o AddEvent - Por Killua Nível 3 - Tutoriais avançados sobre a linguagem e scripting Tutorial sobre Patterns - por MaXwEllDeN LUA Orientado a Objetos I - Por SkyDangerous LUA Orientado a Objetos II - Por LuckOake Tutorial de Queries para OTServers - Por shutup Utilizando Arquivos XML - Por caotic Queries e SQL para OTServers - Por mim Simulando IF/ELSE com AND/OR - Por River Material de Consulta - Tópicos que podem ser de ajuda quando se está criando códigos (para relembrar como usar aquela funçãozinha que você esqueceu) Algumas Funções do TFS com Explicação - Por tibiaa4e Operadores e Bibliotecas - Por Roksas Mais Funções do TFS sem Explicação - Por sukx Manual LUA - Por Roberto Ierusalimschy et al Biblioteca de Funções LUA (poucas funções, mas bem explicadas) - Por Benefactor Lista de Atributos para Itens - Por Oneshot Lista de Efeitos 8.54 - Por antharaz Algumas Fórmulas Úteis para OTServers - Por Oneshot 2. Módulo Específico - Tutoriais variados separados por assunto Monsters Editando a aparência das criaturas - Por Nickelback Criando seu monstro - Por VictorHugoFerreira NPCs Criando Seu NPC - Por Eventide A Magia dos NPCs - Por tibiaa4e Como Adicionar NPC no seu Mapa - Por Megaplis Spells Criando Magias - Por Kimoszin Criando Magias Para Monstros - Por 139 Entendendo e Configurando a Área das Magias - Por Krhiegen Criando Runas Novas - Por mxlr14 Spells e suas Grandes Funções - Por tibaa4e Actions Criando Quests - Por tibiaa4e Como Fazer um Baú de Quest Simples - Por DarkAlvaro Editando Potions - Por RarTne Actions - Por tibiaa4e Movements Criando Pisos Especiais - Por FoDoX Movements - Por tibiaa4e Itens Criando Armas Especiais - Por theflammer Tornando Munição Infinita - Por TheSleeper Lista de Atributos para XML - Por amoeba13 Como Fazer um Item Se Tornar Stackable - Por notle2012 Criando Wands e Rods - Por Castiello XML Configurando o Quest Log - Por Luiz Vitor Editando Exp Por Stages - Por Schiavinato Tutorial Sobre Outfits - Por Oneshot Configurando as Vocações - Por Flash001 Adicionando Vocações ao Account Manager - Por profelezio Outros Criando Exhaustion Com Storage - Por Roksas Resolvendo o Problema de Anti-Idle - Por cs007 Como Usar LUA Para Editar o Quest Log - Por MaXwEllDeN Como Usar addEvent adequadamente - Por skymagnum Como Adicionar Level Máximo - Por McTyn Tutorial Sobre Storages - Por caotic Como usar o os.date - Por Demonbholder 3. Scripts de destaque Pacote de Actions Simples e Úteis - Por mim NPC Lutador - Por mim Weapon Hit Rank - Por Vodkart NPC Auction - Por Vodkart War Arena - Por MatheusMkalo Castle Guild War - Por DrakyLucas Barco Que Anda Por Uma Rota - Por MatheusMKalo Simple Task v3.0 - Por Vodkart Fly System - Por Mock Character Market System - Por LuckOake Autoloot - Por Mkalo e Vodkart 4. Listas antigas Os Melhores Tutoriais - Por Luckituz X-Find Scripting - Por HenriqueMoura 5. Pedidos de Tutoriais Aqui é a lista de tutoriais pedidos para complementar o acervo do XT. Quem fizer algum deles e este for aprovado, me avise e ganhará 3 rep+. Para pedir um tutorial aqui, basta comentar no tópico especificando o conteúdo. Tutorial detalhado sobre a criação de mods Tutorial sobre mounts Por fim, deixe sua sugestão de tutorial ou sobre o tópico, denuncie links quebrados e, se o conteúdo do fórum te ajudou, procure devolver contribuindo de volta.
    1 ponto
  9. meubk

    Evil Spirit v2.0

    - versão sem bugs e você pode configurar do teu jeito local configSpell = { exaust = 40, -- tempo de exaustão st = 19020, -- não mexe level = 150, -- level para usar min = 1000, -- ataque minimo max = 2000, -- ataque maximo voc = {1, 5}, -- vocações mana = 800, -- mana } -- SPELL EVIL SPIRIT BY: XOTSERVX -- function isWalkable(pos, creature, proj, pz)-- by Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function getPosDirs(p, dir) return dir == 1 and {x=p.x-1, y=p.y, z=p.z} or dir == 2 and {x=p.x-1, y=p.y+1, z=p.z} or dir == 3 and {x=p.x, y=p.y+1, z=p.z} or dir == 4 and {x=p.x+1, y=p.y+1, z=p.z} or dir == 5 and {x=p.x+1, y=p.y, z=p.z} or dir == 6 and {x=p.x+1, y=p.y-1, z=p.z} or dir == 7 and {x=p.x, y=p.y-1, z=p.z} or dir == 8 and {x=p.x-1, y=p.y-1, z=p.z} end function posIgual(pos1, pos2) return pos1.x == pos2.x and pos1.y == pos2.y and pos1.z == pos2.z and true or false end effect = 34 distance = 31 damage = COMBAT_DEATHDAMAGE evilspirit = { walk = function (cid, min, max, pos, rounds, ultimapos) if rounds == 0 then return true end if not isCreature(cid) then return true end posdisp = {} for _, dir in pairs({1, 5, 7, 3}) do if isWalkable(getPosDirs(pos, dir)) and not posIgual(getPosDirs(pos, dir), getThingPos(cid)) and not posIgual(getPosDirs(pos, dir), ultimapos) then table.insert(posdisp, getPosDirs(pos, dir)) end end if #posdisp < 1 then return true end posesc = posdisp[math.random(1, #posdisp)] ultimapos = pos doSendDistanceShoot(pos, posesc, distance) if min > 0 then min = -min max = -max end doAreaCombatHealth(cid, damage, posesc, 0, min, max, effect) addEvent(evilspirit.walk, 140, cid, min, max, posesc, rounds - 1, ultimapos) end } function onSay(cid, word) if getPlayerAccess(cid) < 3 then if getPlayerLevel(cid) < configSpell.level then return doPlayerSendCancel(cid, "You need level " .. configSpell.level .. " to use this spell.") end if not isInArray(configSpell.voc, getPlayerVocation(cid)) then return doPlayerSendCancel(cid, "Your vocation dont use this spell.") end if exhaustion.check(cid, configSpell.st) then return doPlayerSendCancel(cid, "You is exhausted.") end if getCreatureMana(cid) < configSpell.mana then return doPlayerSendCancel(cid, "You dont have mana.") end doCreatureAddMana(cid, -configSpell.mana) exhaustion.set(cid, configSpell.st, configSpell.exaust) end evilspirit.walk(cid, configSpell.min, configSpell.max, getThingPos(cid), 40, {x=1, y=1, z=1}) for i = 1, 13 do addEvent(evilspirit.walk, i * math.random(300, 500), cid, configSpell.min, configSpell.max, getThingPos(cid), 40, {x=1, y=1, z=1}) end return true end talkaction: <talkaction words="evil spirit" filter="word-spaced" event="script" value="evilspirit.lua"/>
    1 ponto
  10. Zaruss

    Erro nos monstro

    Spectral lord: Medusa spectral Dre val disposer: spectral assasin spectral dragon:
    1 ponto
  11. GuhPk

    Ice Quest - PxG

    Vlw ai cara... HAUSAHUSA' Espero que mais gente goste também! >.<
    1 ponto
  12. GuhPk

    Action, Unique ID

    Reportado para moverem!
    1 ponto
  13. KincaJr

    Sistema de Miss

    Não.. O skill do shield é 5 se não me engano.. Vê a lista ai: SKILL_FIRST = 0 SKILL_CLUB = 1 SKILL_SWORD = 2 SKILL_AXE = 3 SKILL_DISTANCE = 4 SKILL_SHIELD = 5 SKILL_FISHING = 6 SKILL__MAGLEVEL = 7 SKILL__LEVEL = 8 SKILL__EXPERIENCE = 9 você encontra em data\lib\000-constant.lua no seu ot^^, espero ter ajudado
    1 ponto
  14. GuhPk

    Recompensa Quest

    Qualquer coisa me envie PM, que ai nos falamos e tento te ajudar se não conseguir arrumar! >.< Reportado para moverem.
    1 ponto
  15. JonatasLucasf

    Banner

    cara to começando agora e fisso esse aqui num sei se ta bom olha ai
    1 ponto
  16. 1 ponto
  17. Não, este "75" é o level que poderá usar ele... Quando usar a Pokedex falará qual level ele pode ser usado por player, sakas? xD O gender é na outra tag... "gender = 875"! Para editar é em uma escala de 0 até 1000. Onde o 0 = Female e 1000 = Male... Ou seja, se você colocar 500 será 50% de chance de vir Female/Male. Ai no caso, ta 875, então está mais facil vir male do que female! ^^
    1 ponto
  18. GuhPk

    Recompensa Quest

    1º - Vá em data/actions/scripts, crie um arquivo chamado questvip.lua e coloque isto dentro: Verde - Storage que o baú irá adicionar no player para ele não fazer mais a quest. Roxo - Unique ID que você colocou no baú pelo Remere's. Vermelho - Storage do VIP. Laranja - Quantidade de dias VIP que a quest vai dar. Depois, em data/actions/actions.xml adicione está tag: Roxo - Unique ID que você colocou no baú pelo Remere's. Rosa - Diretório/Nome do arquivo.lua. 2º - Vá em data/movements/scripts, crie um arquivo chamado viptile.lua e coloque isso dentro dele: Vermelho - Storage do VIP. Após em data/movements/movements.xml adicione está tag aqui: Cinza - ActionsID do piso para entrar na área VIP. Marrom - Nome do arquivo.lua. 3º Vá em data/actions/script, crie um arquivo chamado vip.lua e cole isso dentro: Vermelho - Storage do VIP. Azul Claro - Quantos VIP Days o item vai dar. Agora em data/actions/actions.xml adicione está tag: Azul - ID do item que dá vip days. PS: Scripts não fui eu que fiz, apenas estou repassando para você. Caso precise de ajuda é só avisar que vejo o que posso fazer! >.<
    1 ponto
  19. Kluivert

    Dúvidas Sobre As Regras

    Creio que e proibido sim maninho ! Da uma olhada aqui!
    1 ponto
  20. Coloquei ele e tal, até funfa os comandos e diz que add, mas quando abro o depot ele não tem nada '-' @edit Retiro o que disse Funfou aqui xD Valeu mesmo
    1 ponto
  21. Killua

    Passa por tile e manda msg

    Entendi vou fazer agr pra vc -- Edit data/movements/scripts cria invadircity.lua e coloca local storage = 123456 function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) if not isPlayer(cid) then return false end if getPlayerStorageValue(cid, storage) < 1 and getPlayerGuildId(cid) ~= 5 then doPlayerSetStorageValue(cid, storage, 1) doBroadcastMessage(" " .. getCreatureName(cid) .. " da nacao " .. getPlayerGuildName(cid) .. " acaba de invadir a cidade. Capturem ele!") elseif getPlayerStorageValue(cid, storage) == 1 and getPlayerGuildId(cid) ~= 5 then doPlayerSetStorageValue(cid, storage, 0) doBroadcastMessage(" " .. getCreatureName(cid) .. " da nacao " .. getPlayerGuildName(cid) .. " saiu da cidade.") end return true end Em data/movements/movements.xml vc coloca <movevent type="StepIn" actionid="4312" event="script" value="invadircity.lua"/> No piso vc coloca a actionid 4312 Em data/creaturescripts/scripts cria morreucity.lua e coloca local storage = 123456 function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if getPlayerStorageValue(cid, storage) == 1 then doPlayerSetStorageValue(cid, storage, 0) doBroadcastMessage(" " .. getCreatureName(cid) .. " morreu tentando invadir a cidade.") end return true end Em data/creaturescripts/creaturescripts.xml coloca <event type="preparedeath" name="MorrerCity" event="script" value="morreucity.lua"/> Em login.lua vc coloca registerCreatureEvent(cid, "MorreuCity")
    1 ponto
  22. Eskylo

    Potion

    troca essa linha doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE) por doSendMagicEffect(getThingPos(itemEx.uid), isInArray({7620,7589,7590}, item.itemid) and CONST_ME_MAGIC_BLUE or CONST_ME_MAGIC_RED)
    1 ponto
  23. LekoDS

    PokeShow W.O

    Dar uma resposta sobre este post. Estamos cientes do que você postou. Estamos procurando um meio 'de contribuir com a comunidade'. Obrigado!
    1 ponto
  24. caotic

    Opa

    não imagino como o preioso acho esta foto.
    1 ponto
  25. Projeto realmente promissor pela criatividade do fundador. Arvore das vocações ficou excelente mesmo caro amigo. Muita boa sorte e empatia ao seu servidor, paz!
    1 ponto
  26. De nada rapaz.. @Tópico Estamos trabalhando firme com o mapa, e com as sprites, o servidor vai ter uma ligação extraordinária com o anime, e uma fidelidade impressionante, coisa que não vimos muitos em qualquer servidor de Pokémon com plataforma em Tibia que já existiu. NOTA: Vou tentar explicar a todos. Sou o BielSullivan, e esta é minha antiga conta que tinha perdido no Xtibia. Agora voltei, e tentei recuperar, consegui como podem ver. E é tão antiga, que contem o meu projeto DarknessPO de 2010, que eu havia falado, eu não troquei ainda porque a Mundo Pokémon Virtus, nada mais é do que a nova DarknessPO.
    1 ponto
  27. Bom vejo que muitos membros novos estão com duvidas de como criar novos pokemon no PDA... bom vim ensinar como.(Essa dúvida é comun depois de vc seguir este tutorial que lhe mandei sigua este) 1º Vai em Data/monsters e Crie o novo pokemon.xml e depois adicione ele no monsters.xml 2º Vai em Lib/Configuration e faça isso: Em movestable onde ficam os ataques dele so colocar os ataques vou dar exemplo dos ataques: ["NOME DO POKEMON NOVO"] = {move1 = {name = "Dragon Claw", level = 85, cd = 15, dist = 1, target = 1, f = 60, t = "dragon"}, move2 = {name = "Ember", level = 85, cd = 10, dist = 10, target = 1, f = 42, t = "fire"}, move3 = {name = "Flamethrower", level = 85, cd = 20, dist = 1, target = 0, f = 80, t = "fire"}, move4 = {name = "Fireball", level = 85, cd = 25, dist = 10, target = 1, f = 75, t = "fire"}, move5 = {name = "Fire Fang", level = 85, cd = 20, dist = 1, target = 1, f = 65, t = "fire"}, move6 = {name = "Raging Blast", level = 85, cd = 35, dist = 1, target = 0, f = 100, t = "fire"}, move7 = {name = "Fire Blast", level = 85, cd = 60, dist = 1, target = 0, f = 115, t = "fire"}, move8 = {name = "Wing Attack", level = 90, cd = 35, dist = 1, target = 0, f = 75, t = "flying"}, move9 = {name = "Magma Storm", level = 95, cd = 90, dist = 1, target = 0, f = 95, t = "fire"}, move10 = {name = "Scary Face", level = 90, cd = 50, dist = 1, target = 0, f = 0, t = "ghost"}, move11 = {name = "Rage", level = 85, cd = 40, dist = 1, target = 0, f = 0, t = "dragon"}, Ae se coloca os ataques que desejar, lembrando que f é força pra quem não sabe. e em Status Pokemon Kanto ou Johto mesmo pode add coloque isso: ["NOME DO NOVO POKEMON"] = {offense = 8.5, defense = 7.8, specialattack = 11, vitality = 7.8, agility = 167, exp = 209, level = 85, type = "TIPO DELE", type2 = "2 TIPO DELE"}, Ae vc balanceia ele de acordo a seu gosto. Depois em Fotos add ele: ["NOME DO NOVO POKEMON"]= XXXX, Em XXXX você coloca o id do portrait dele. Depois em Pokescatch add ele: ["NOME DO NOVO POKEMON"] = {chance = XXXX, corpse = YYYY}, Em XXXX a chance de capturar ele e em YYYY o Id do Corpse dele. Depois em Newpokedex add isso ele: ["NOME DO NOVO POKEMON"] = {gender = 875, level = XXXX, storage = 100, stoCatch = 666006}, Em XXXX coloca o level dele. Em OldPokedex add ele: {"NOME DO NOVO POKEMON", XXXX, 1006}, Em XXXX o level dele. E se for add alguma habilidade nele fica la no final, vou dar um exemplo de ele atravessando (GhostWalk) parede vc coloca isso: ["ghostwalk"] = {"Gastly", "Haunter", "Gengar", "Shiny Abra", "Shiny Gengar", "Misdreavus", "NOME DO NOVO POKEMON"}, Bom é isso... sei que é simples, mais fiz um tutorial basico para os iniciantes não ficarem com duvida.
    1 ponto
  28. Ué, só adicionar as sprites no cliente, e criar novos de acordo com as oitfits. Alguns tutoriais de add sprs : 1 2 E criando monstros: 1 2 Não ficou muito claro nesses tutoriais, mas o looktype é a roupa do monstro vc coloca de acordo com o numero que vc colocar nas sprites.
    1 ponto
  29. zipter98

    [Ajuda] Reset [Pedido]

    Tenta assim:
    1 ponto
  30. LooL como tu acho sendo que o Jacolos(o criador do DBZTIBIA) não tinha a não ser que alguem tenha feito ou ele msm '-' passa para nos aew xD
    1 ponto
  31. gonorreiaswat

    Showoff - Resident Evil

    Resolvi postar sobre o meu Projeto de Resident Evil, baseado no Client Gráfico de Tibia. Que recebeu o nome de "ResidenTibia". Comecei ainda há pouco tempo e estou ainda criando os Items e o Mapa, ou seja, tem muita coisa para fazer... mas aí vai umas previews. @@@ EDIT ( 04/08/2011 - 01:56 ) Imagens em Spoiler abaixo: Uma casa abandonada na cidade zombie. A plantação dentro da cidade principal. Vasos Sanitários e Piso - Sprites. Alguns items e monstros já editados. Sanitário da Cidade Improvisada. Templo. Outro tipo de Piso e Novo Monster e seus Corpses - Sprites. Uma outra Sprites (Ainda será editada). ------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------- ~~> NOVO EDIT' <~~ Bom dia galera que seguiu o Tópico do ShowOFF de "ResidenTibia" (Resident Evil em Tibia)... Estou feliz em anunciar que estou de volta ao Projeto' E dessa vez não vou parar... é um compromisso que tenho com vocês' Preview do Client' (postado em: 09/02/2012 às 22:18) Preview do Client' (ANTIGO) (postado em: 07/02/2012 às 10:45am) CONTINUAÇÃO do Preview do Client' (postado em: 20/02/2012 às 09:40) Atualizado' Imagens da Tradução do Client' ~~> Entrada do Jogo' ~~> Configuração do Jogo' ~~> InGame (no Jogo') Abraços & obrigado a quem acompanha' Atenciosamente, Adriano Swatt
    1 ponto
  32. Hoje vamos dar continuidade as aulas. Aprenderemos Lógica, Algorítimos e Organização, que para mim são as coisas básicas que TODO programador deve conhecer. Lógica de Programação O que é Lógica de Programação? é uma sequencia de pensamentos com fim de atingir determinado resultado. E esses pensamentos, podem ser usados para construir uma sequencia lógica, afim de executar uma ação da maneira mais simples o possível. Isso é o conceito básico de lógica de programação. Algorítimos Agora começa a parte divertida. Algorítimo é uma sequencia de comandos(instruções) para executar tal ação, como uma receita que sua mãe usa para fazer bolos. Quaisquer sequencias de instruções podem ser consideradas algorítimos. "Algorítimo de Chupar uma bala". • Pegar a bala • Retirar o papel • Chupar a bala • Jogar o papel no lixo Todos algorítimos devem ser simples e objetivos. Organização Essa é uma parte realmente "importante": (O Mock deveria ler isso todo dia, falo mesmo) Endentação: Endentação, identação ou edentação, é o espaçamento no inicio de qualquer paragrafo, afim de diferenciar e melhorar a visualização dos escopos do algorítimo. Código sem indentação (Na verdade ele tem, mas eu tirei para usar de exemplo) function doPlayerAddAchiev(cid, achievid) local pid = getPlayerGUID(cid) local value = tonumber(getPlayerAchievById(cid, achievid)) if value == -1 then return true end if value == 0 then db.executeQuery("INSERT INTO `achievements` (`player_id`, `achievement_id`, `value`) VALUES ('"..pid.."', '"..achievid.."', '1');") end if (tonumber(getPlayerAchievById(cid, achievid)) >= achievs[achievid].qt) then doPlayerSendTextMessage(cid,22, 'Você recebeu a conquista "'..achievs[achievid].name..'"') db.executeQuery("UPDATE `achievements` SET `value` = ".. -1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") doPlayerAddAchievPoint(cid, achievs[achievid].pt) else db.executeQuery("UPDATE `achievements` SET `value` = ".. (tonumber(getPlayerAchievById(cid, achievid))) + 1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") end doPlayerSave(cid) return true end Código com identação: function doPlayerAddAchiev(cid, achievid) local pid = getPlayerGUID(cid) local value = tonumber(getPlayerAchievById(cid, achievid)) if value == -1 then return true end if value == 0 then db.executeQuery("INSERT INTO `achievements` (`player_id`, `achievement_id`, `value`) VALUES ('"..pid.."', '"..achievid.."', '1');") end if (tonumber(getPlayerAchievById(cid, achievid)) >= achievs[achievid].qt) then doPlayerSendTextMessage(cid,22, 'Você recebeu a conquista "'..achievs[achievid].name..'"') db.executeQuery("UPDATE `achievements` SET `value` = ".. -1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") doPlayerAddAchievPoint(cid, achievs[achievid].pt) else db.executeQuery("UPDATE `achievements` SET `value` = ".. (tonumber(getPlayerAchievById(cid, achievid))) + 1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") end doPlayerSave(cid) return true end Dá para perceber uma diferença bem grande na parte de visualização, certo? Nomenclatura: Essa é outra parte importante que poucos prestam atenção. Você deve criar os códigos para os OUTROS (mesmo que você não for liberar ele), e você deve imaginar que TODO mundo não entende nada de programação. Por isso, você deve usar nomes simples e sugestivos. Você NUNCA deve usar nomes assim: local var_que_solta_raio_lasers_e_panz = 12 Tente sempre ser sugestivo, nomes mais simples: local quantidade_de_stones = 12 Comentários: Essa é uma das partes mais importantes, na minha opinião. Sempre que for começar alguma ação ou escopo, comente no final da 1º Linha o que ele faz, como ele faz e por que ele faz. Como eu já disse, você deve pensar que está programando para pessoas leigas. Sem comentário: function doPlayerAddAchiev(cid, achievid) local pid = getPlayerGUID(cid) local value = tonumber(getPlayerAchievById(cid, achievid)) if value == -1 then return true end if value == 0 then db.executeQuery("INSERT INTO `achievements` (`player_id`, `achievement_id`, `value`) VALUES ('"..pid.."', '"..achievid.."', '1');") end if (tonumber(getPlayerAchievById(cid, achievid)) >= achievs[achievid].qt) then doPlayerSendTextMessage(cid,22, 'Você recebeu a conquista "'..achievs[achievid].name..'"') db.executeQuery("UPDATE `achievements` SET `value` = ".. -1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") doPlayerAddAchievPoint(cid, achievs[achievid].pt) else db.executeQuery("UPDATE `achievements` SET `value` = ".. (tonumber(getPlayerAchievById(cid, achievid))) + 1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") end doPlayerSave(cid) return true end Com Comentário: function doPlayerAddAchiev(cid, achievid) local pid = getPlayerGUID(cid) -- declaração da variavel com GUID do player. local value = tonumber(getPlayerAchievById(cid, achievid)) -- Declaração da váriavel que irá conter o valor do Achiev. if value == -1 then return true end -- Se o valor for 0, então ele irá retornar true e irá parar o código aqui. if value == 0 then db.executeQuery("INSERT INTO `achievements` (`player_id`, `achievement_id`, `value`) VALUES ('"..pid.."', '"..achievid.."', '1');") end -- Se ele for 0, então ele irá mudar o valor para 1. if (tonumber(getPlayerAchievById(cid, achievid)) >= achievs[achievid].qt) then -- Se o valor for maior ou igual ao valor da tabela, então ele irá executar o escopo. doPlayerSendTextMessage(cid,22, 'Você recebeu a conquista "'..achievs[achievid].name..'"') db.executeQuery("UPDATE `achievements` SET `value` = ".. -1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") doPlayerAddAchievPoint(cid, achievs[achievid].pt) else -- Se não, ele executará esse escopo. db.executeQuery("UPDATE `achievements` SET `value` = ".. (tonumber(getPlayerAchievById(cid, achievid))) + 1 .." WHERE `player_id`= " .. pid .. " AND `achievement_id`= " .. achievid .. ";") end doPlayerSave(cid) return true end Finalização Espero que tenham gostado dessa aula, tentei ser direto e simplório. Porém eu falei só sobre o básico, só a ponta do iceberg. Quem tiver mais interesse, o google tem milhares de apostilas sobre Algorítimos de Lógica de Programação. Link da primeira aula: http://www.xtibia.com/forum/topic/201079-aulas-basicas-com-o-sr-iunix-1-lua-o-que-e
    1 ponto
  33. Bom, para quem não me conhece, meu nick é iuniX. Sou programador faz uns 2 anos. Minha linguagem principal é Lua, porem domino algumas outras. Ok, agora vamos para a aula. O que é Lua? Lua é uma linguagem interpretada e comparada a outras linguagens interpretadas, ela é bem leve e versátil. Lua tem uma sintaxe bem simples de entender e ela é MUITO útil. Ela também é uma linguagem TOTALMENTE brasileira, feita na PUC-Rio. Mas por que usar Lua? Como eu disse acima, Lua é uma linguagem simples e poderosa. Isso a torna perfeita para aplicativos que requerem edições constantes (Como nosso Open Tibia). E também pelo fato de Lua ter um manual realmente completo e bem explicado. Sem contar que Lua é uma linguagem livre (Pode ser usada para qualquer coisa ou pessoa) O que é uma linguagem interpretada? Linguagens interpretadas, são linguagens de programação que precisam de um interpretador, também conhecidas como linguagem de scripting. Algo que "traduza" ela para a máquina (No nosso caso, usamos o distro do Open Tibia). Elas não precisam ser compiladas, isso geralmente as tornam mais eficientes para pequenas e rápidas edições. Onde arrumar um interpretador para Lua? O próprio site da linguagem tem um pequeno interpretador: http://www.lua.org/demo.html, mas para algo mais "sério", eu aconselho vocês a usarem o Scite (postarei o link abaixo). Finalização Queria agradecer a todos que leram tudo. E espero que com esse tópico eu desperte interesse em alguns, fazer essa grande linguagem que eu gosto tanto crescer. Gostaria que vocês me ajudassem com um feedback, dicas e que postem duvidas para eu responder. Download Scite: http://sourceforge.n...=ufpr&download=
    1 ponto
  34. HidekiKty

    Golden Survival Arena System

    Desculpe, identifiquei o erro era no aMeowthDealer.lua, já arrumei e editei no post principal, subistitua o seu no .lua do NPC (data/npc/scripts): Se seu erro for outro, poste por favor, pois agora testei no PDA e PCO:
    1 ponto
  35. Stigal

    [Tutorial] Como Recortar Sprites

    Vlws, Espero Que Aprovem '-' Abraço.
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...