Ir para conteúdo

narutomaniacos

Cavaleiro
  • Total de itens

    158
  • Registro em

  • Última visita

  • Dias Ganhos

    1

Histórico de Reputação

  1. Upvote
    narutomaniacos recebeu reputação de mcjefi em Skills stages   
    Vi umas pessoas querendo esse script então como não achei no forum resolvi postar..
    serve para regular os rates do seu server, exemplo: do level 30 até o 49 o Rate ml(dificuldade para UPAR) é 1
     
    primeiro vá em config.lua procure por Rates em rateSkill deixe 1
    Em creaturescript/scripts/skills (caso não tenha pasta skills crie)
     
    copie e cole qualquer script, então o renomeie para "stagesconfig" e cole isso dentro:
     
     
     
    Depois, copie e cole qualquer script, então o renomeie para "skillstageslogin" e cole isso dentro:
     
     
     
    Depois, copie e cole qualquer script, então o renomeie para "skillstagesadvance" e cole isso dentro:
     
     
     
    Depois vá em login.lua e registre as tags:
    registerCreatureEvent(cid, "SkillStagesLogin") registerCreatureEvent(cid, "SkillStagesAdvance") e então em creaturescripts.xml: <event type="login" name="SkillStagesLogin" event="script" value="skills/skillstageslogin.lua" /> <event type="advance" name="SkillStagesAdvance" event="script" value="skills/skillstagesadvance.lua" />  
    Para configurar é simples, basta ir em stagesconfig: por exemplo no fist fight
    {0,3},{30,2} = no level 0 o rate skill sera 3, isso só ira mudar no level 30 que o rate sera 2, configure todas as skills ao seu gosto!
    OBS: Testado em tfs 0.3.6(8.60)
    Creditos: Autor desconhecido(caso você seja o criador do escript informe e colocarei os creditos), eu pelo tópico.
    Espero ter ajudado.
  2. Upvote
    narutomaniacos deu reputação a Caronte em xTibia Recomenda! ROTZ Online   
    Um player falou que antes do beta, o corpse era substituido por um zumbie, se você mata ele, cai o loot...
    só que tá desativado, e não tomaram medidas para não prejudicar os players com isso (como por exemplo ativar os corpses)...
  3. Upvote
    narutomaniacos deu reputação a Administrador em Daniel Spriting   
  4. Upvote
    narutomaniacos deu reputação a jeerenato em Show Off Jeer Pokémon Perspective 45º   
    Golduck







    Victreebel







    Steelix







    ( Vaporeon / Jolteon )







    Venusaur









    Charmander (SmokeScreen)









    Charmander (Scratch)







    Exeggutor Psychic







    Bulbasaur (Take Down)







    Venusaur (Take Down)





  5. Upvote
    narutomaniacos deu reputação a Omega em 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.
  6. Upvote
    narutomaniacos deu reputação a Yan Liima em Adicionar tempo para uso   
    Putz ai você quer forçar a amizade né amigo?
     
    Estou viajando e não tenho um servidor para testar, pois não sei a forma correta de por em minutos por isso precisaria de um servidor para testar antes de mandar para você.
     
    Você poderia mudar a mensagem também para ficar mais fácil "Você pode usar este comando apenas uma vez por 3 minutos." rsrs
     
    Mais creio que adicionando um +param*60... Daria certo.
  7. Upvote
    narutomaniacos deu reputação a Yan Liima em Adicionar tempo para uso   
    Cara so acho que você deveria organizar mais o tópico e a script para facilitar kkkk
     
    Bom estou meio com pressa aqui, então editei a script aqui para você rapidão. Teste ai...
    --[[script By Vodkart]]--function onSay(cid, words, param)if getPlayerStorageValue(cid, 212193) > os.time() then return doPlayerSendCancel(cid, "Espere " .. getPlayerStorageValue(cid, 212193) - os.time() .. " segundos.") endlocal config = {pz = False, -- players precisam estar em protection zone para usar? (true or false)battle = true, -- players deve estar sem battle (true or false)custo = true, -- se os teleport irão custa (true or false)need_level = true, -- se os teleport irão precisar de level (true or false)premium = true -- se precisa ser premium account (true or false)}--[[ Config lugares]]--local lugar = {["depot"] = { -- nome do lugarpos = {x=129, y=54, z=6},level = 5,price = 1000},["templo"] = { -- nome do lugarpos = {x=160, y=54, z=7},level = 10, price = 2000},["arena"] = { -- nome do lugarpos = {x=125, y=351, z=9},level = 15,price = 3000},["area vip"] ={ -- nome do lugarpos = {x=280, y=87, z=4},level = 20,price = 4000}}--[[ Lista de Viagem (Não mexa) ]]--if (param == "lista") thenlocal str = ""str = str .. "lista de viagem :\n\n"for name, pos in pairs(lugar) dostr = str..name.."\n"endstr = str .. ""doShowTextDialog(cid, 6579, str)return TRUEendlocal a = lugar[param]if not(a) thendoPlayerSendTextMessage(cid, 22, "desculpe,este lugar não existe")doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)return TRUEelseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE thendoPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder teleportar.")return TRUEelseif config.premium == true and not isPremium(cid) thendoPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players com premium account podem teleportar.")return TRUEelseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE thendoPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder teleportar.")return TRUEelseif config.need_level == true and getPlayerLevel(cid) < a.level thendoPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..a.level.." level ou mais para ser teleportado.")doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)return TRUEelseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE thendoPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.")doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)return TRUEenddoTeleportThing(cid, a.pos)doSendMagicEffect(a.pos, CONST_ME_TELEPORT)doPlayerSendTextMessage(cid, 22, "" .. getPlayerName(cid) .. " foi teleportado para: \n " .. param .. ".")setPlayerStorageValue(cid, 212193, os.time() + 30) -- tempo em segundos.return TRUEend  
  8. Upvote
    narutomaniacos deu reputação a Skulls em Monstros duelando entre si   
    Boa noite galera
     
    Como levantei no tópico: http://www.xtibia.com/forum/topic/238784-monstros-se-matando/monstros selvagens são todos tratados como amigos e, portanto, não é possível setar target neles com funções de target normal. Além disso, o callBack onTarget() não funciona para monstros.
     
    Desde então estou em busca de uma forma de fazer monstros lutarem entre si sem mexer na source e, com algumas sugestões do Lobo @Night Wolf eu consegui chegar a algo bem satisfatório para o que eu precisava. Portanto, compartilho com você a base do sistema (fiz outras coisas para o meu objetivo que acho bobeira postar aqui, mas a base do sistema de luta está aqui).
     
    Então vamos lá.
    Primeiramente, esse sistema é baseado em dois eventos: onThink (que repete de x em x segundos) e onAttack(para evitar que o monstro ataque players quando estiver atacando monstros.
     
    Vá em creaturescripts e crie as seguintes tags em creaturescripts.xml:
    <event type="think" name="monsters" event="script" value="monsters.lua"/> <event type="attack" name="monstersatt" event="script" value="monsters.lua"/> Feito isso, vá na pasta lib (data/lib) e crie um arquivo chamado monsterslib.lua. La dentro coloque:
     
     
     
    Feito isso, agora crie um arquivo chamado monsters.lua dentro de creaturescripts/scripts, e cole isso dentro
     
     
     
    Pronto é isso, você tem um pequeno framework configurável para fazer seus monstros se matarem.
    Para implementar o script no monstro basta ir no arquivo .xml dos monstros que deseja incluir esse sistema e colocar, logo após as defense, a tag:
    <script> <event name="minionatt"/> <event name="minion"/> </script> Abaixo um exemplo de utilização do framework, simulando uma luta de "raças" entre dwarfs e orcs de diferentes tipos:
     
     
     
    O código está bem auto explicativo. Qualquer dúvida me avisem.
    Espero que gostem.
     
    Abraços,
  9. Upvote
    narutomaniacos deu reputação a Skulls em Galeria de ideias   
    Fala galera, vivo fazendo sisteminhas com base em ideias que tenho.
    Resolvi criar esse post e começar a por tudo aqui.

    Depois vou colocando os que ja postei em outros topicos aqui.
    Por hora, fica essas duas gifs do novo sistema que eu estou fazendo. Batizei de Mouse Cast, infelizmente não da para ver o cursor do mouse nesse gif editor que eu tenho, mas já que eu expliquei da pra entender a ideia.
     
    Teste inicial direita e esquerda:

     
    Versão 8 dir:

     
    Relevem o exori con de terra, eu usei ele de base e como é só teste de implementação tanto faz.
    Mais para frente farei coisas legais com isso.
    Vou viajar 2 semanas, mas quando voltar vou postar os anteriores e tentar manter atualizado isso aqui.
    Não vou divulgar o script agora pois estou sem tempo, mas vou postar os scripts do sistema assim que der (provavelmente quando ele estiver mais maduro e útil). Dessa vez tive que mexer na source e criar um module no OTC para tornar isso possivel. Obrigado @@Aberos @@BananaFight pela paciência e ao @@Night Wolf e o @@Daniel por sempre apoiarem as minhas ideias mirabolantes. xD
     
    Espero que gostem.
     
    Abraços,

    Outro exemplo de como pode ser usado o mouse cast:

  10. Upvote
    narutomaniacos deu reputação a Administrador em [Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!   
    Com perguntas objetivas e divertidas, queremos saber quem é você, player de OTServer! Ah, Participe do "Você, Player!" recebendo prêmios. Veja abaixo:







    Para ganhar 05 Pontos de Reputação + esta conquista :

    Acesse o link clicando na imagem ou aqui.
    Adicione seu nick utilizado no fórum ao começar.
    Responda as outras perguntas.
    Comente neste tópico utilizando o Nickname que preencheu no formulário.
    Tentativas de fraude, resultarão na perda de 10% dos pontos de reputação do membro.
  11. Upvote
    narutomaniacos recebeu reputação de Administrador em Adicionar tempo para uso   
    Preciso de ajuda para adicionar tempo entre usos dessa talkaction.
    Script:
    --[[Script By Vodkart]]--function onSay(cid, words, param)local config = {pz = False, -- players precisam estar em protection zone para usar? (true or false)battle = true, -- players deve estar sem battle (true or false)custo = true, -- se os teleport irão custa (true or false)need_level = true, -- se os teleport irão precisar de level (true or false)premium = true -- se precisa ser premium account (true or false)}--[[ Config lugares]]--local lugar = {["depot"] = { -- nome do lugarpos = {x=129, y=54, z=6},level = 5,price = 1000},["templo"] = { -- nome do lugarpos = {x=160, y=54, z=7},level = 10, price = 2000},["arena"] = { -- nome do lugarpos = {x=125, y=351, z=9},level = 15,price = 3000},["area vip"] ={ -- nome do lugarpos = {x=280, y=87, z=4},level = 20,price = 4000}}--[[ Lista de Viagem (Não mexa) ]]--if (param == "lista") thenlocal str = ""str = str .. "lista de viagem :\n\n"for name, pos in pairs(lugar) dostr = str..name.."\n"endstr = str .. ""doShowTextDialog(cid, 6579, str)return TRUEendlocal a = lugar[param]if not(a) thendoPlayerSendTextMessage(cid, 22, "desculpe,este lugar não existe")doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)return TRUEelseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE thendoPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder teleportar.")return TRUEelseif config.premium == true and not isPremium(cid) thendoPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players com premium account podem teleportar.")return TRUEelseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE thendoPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder teleportar.")return TRUEelseif config.need_level == true and getPlayerLevel(cid) < a.level thendoPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..a.level.." level ou mais para ser teleportado.")doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)return TRUEelseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE thendoPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.")doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)return TRUEenddoTeleportThing(cid, a.pos)doSendMagicEffect(a.pos, CONST_ME_TELEPORT)doPlayerSendTextMessage(cid, 22, "" .. getPlayerName(cid) .. " foi teleportado para: \n " .. param .. ".")return TRUEendProtocolo: 0.3.6 
    up
  12. Upvote
    narutomaniacos deu reputação a zipter98 em Não poder atacar player com x lvl de diferença   
    data/creaturescripts/scripts
    local level_difference = x --Diferença de level. function onTarget(cid, target) if isPlayer(cid) and isPlayer(target) then local level = math.abs(getPlayerLevel(cid) - getPlayerLevel(target)) return level < level_difference end return true end function onStatsChange(cid, attacker, type, combat, value) if isPlayer(cid) and isPlayer(attacker) and type == STATSCHANGE_HEALTHLOSS then local level = math.abs(getPlayerLevel(cid) - getPlayerLevel(attacker)) return level < level_difference end return true end Tags:
    <event type="statschange" name="lv_diff_SC" event="script" value="nome_do_arquivo.lua"/> <event type="target" name="lv_diff_target" event="script" value="nome_do_arquivo.lua"/> Não se esqueça de registrar ambos os eventos em login.lua.
  13. Upvote
    narutomaniacos deu reputação a cristofermartins em Spr Editor [ 8.54/9.81 ][ versão 1.3 ]   
    Olá, meu nome é Cristofer Martins, sou programador e gameDesigner e atualmente faço parte da equipe Digimon Adventure Online. Estou aqui para apresentar o meu Spr Editor, que desenvolvi para a equipe por que outros editores não eram funcionais/simples o suficiente. Alem disso, vi que não há sprite editores para as novas versões do Tibia, dificultando a inserção/remoção/edição/exportação de Sprites dos novos arquivos SPRs.Alem disso, um outro motivo foi que tive uma pessima experiencia com o Demonic Editor, tentei exportar as Sprites do nosso SPR para uma pasta umas 20 vezes e sempre dava algum erro no meio do caminho. Por isso desenvolvi um Editor eu mesmo.
     



     

    Preview:


     
     






     

    Funções( no menu ):


     
    -Add: Adiciona n sprites ao editor. Basta clicar no add que irá aparecer a janela para você seleciona todas as sprites que você quiser( multi seleção ). Essas sprites serão adicionadas no final da lista de sprites. OBS: As imagens devem ser PNG e o fundo das sprites deve ser transparente, e não rosa, como é de costume.
     
    -Replace: Substitui n sprites no editor. Selecione com Ctrl ou até com o Shift as sprites no editor que você quer substituir, depois clique no menu em Replace. Irá aparecer uma janela aonde você seleciona as imagens PNG para serem substituidas. As sprites serão substituidas na sequencia, a primeira Sprite selecionada no editor vai ser substituida com a primeira imagem selecionada na pasta. O progresso do replace pode ser visto na barra de progresso.
     
    -Delete: "Deleta" n sprites da lista.Selecione com Ctrl ou até com o Shift as sprites no editor que você quer deletar, depois clique no menu em Delete. Essas IDs das sprites que são deletadas vão aparecer "" e o ID delas, elas são sprites vazias, sem conteudo que você substiuir com novas imagens e assim aproveitar essas IDS que não estão servindo para nada.
     
    Export: Exporta n Sprites. Basta selecionar com Ctrl ou com Shift ou clicando na sprite que o editor irá exportar essa sprite com fundo transparente. Você pode facilmente exportar todas as sprites para uma pasta ou apenas aquelas que lhe interessam. O progresso da exportação pode ser visto na barra de progresso.
     
    Clear: Limpa a lista de sprites e remove as imagens da memoria. Util para criar um arquivo SPR do zero, por exemplo.
     
    Exemplo multi select( para deletar, substituir ou exportar ):
     
     
     
     
     
     
     



     




    Abas Extract/Compile


     
    Extract: Nessa aba você clica em SPR file para abrir o arquivo SPR, escolhe a versão dessa SPR ali no "menu" do lado daonde tá escrito "version" e clica em Extract. O programa vai começar a extrair as sprites e adiciona-las a lista( as vezes a lista fica estatica basta clicar nela que ela atualiza com as sprites novas ) e o progresso da extração pode ver na barra de progresso.
     
    Compile: Nessa aba você compila as Sprites da lista para um arquivo SPR. Para isso basta clicar em "save" e escolher o arquivo SPR que vai ser salvo, escolher a versão desse arquivo SPR como feito em Extract e clicar em "Compile!". O progresso da compilação pode ser visto na barra de progresso.
     
     
     
     
     
     
     
     
     
     
     
     

    Outros


    Search by ID: Pesquisa uma sprite pelo ID. Caso essa id exista na lista, a lista se move até a a sprite.
     



     

    Download:


     

    SPREditor

     
     

    Scan:



    Virus Total

     



    Caso você encontre algum bug, reporte nesse topico por favor. Aceito sugestões.
    Caso exista alguma versão que não seja aceita no editor e você tem a signiture(assinatura) do arquivo spr, poste aqui que eu atualizo o version.ini.





  14. Upvote
    narutomaniacos deu reputação a jvcasarin em [2015] Compilando o (TFS) 0.4_SVN DEV_r3884 e 0.3.6 (8.60) 32 Bits Testado no WIN7   
    Sim funciona, mas acho que precisa usar a versão 64bits do Dev Cpp++
     
    Eu dei upload do programa:
     
    https://mega.nz/#!41JGULyZ!n5tfky976Wus6sYJ6O3knN8gTe5iXwVpTmB6P__iGJQ
     
     
    Edit.:
     
    Caso durante a compilação apareça algum erro indicando qualquer coisa sobre falta de "OpenSSL", baixe o arquivo(CLICANDO AQUI) e siga os seguintes passos:
     
    1- Abra o Dev Cpp++
    2- Vá em Tools>Package Manager
    3- Abriu uma nova janela chamada Package Manager
    4- Vá em Install
    5- Selecione o Arquivo que você baixou
    6- Clique em Abrir, Next, Next, Install e Finish
    7- Pronto, não aparecerá mais qualquer erro indicando algo sobre OpenSSL
     
    xD
  15. Upvote
    narutomaniacos deu reputação a Vodkart em Matar Monstro Abrir Tp, Remover Parede, Ganhar Storage   
    Creditos:
    Vodkart
    Kydrai
     
    fala galerinha resolvi posta alguns script que acontece quando o player mata algum monstro ...
     
    o primeiro é o script que acontece quando voce mata um Monstro abre o teleport.
    o segundo é matar o monstro e sumir a parede por algum tempo.
     
    Obs: o Nome do monstro deve ser colocado com Letra Maiuscula.
     
     
    [ Matar monstro e abrir Teleport ]
    creaturescript\script
     
     
     
     
     
     
    [ Matar Monstro e parede sumir por determinado tempo ]
     
    creaturescript\script
     
     
     
    [ Matar Monstro e ser teleportado ]
     
     
     
     
     
    [ Matar Monstro e Ganhar Storage ]
     
     
  16. Upvote
    narutomaniacos deu reputação a zipter98 em Spell teleport   
    Se possível, teste essa magia novamente, entretanto a observe em outro personagem que não seja o usuário da magia. Apesar de nunca ter visto em prática as condições que usei, se não me engano o jogador fica invisível apenas para outras criaturas.
    PS: Certifique-se de ter atualizado o código. Há alguns minutos eu fiz umas pequenas modificações nele.
  17. Upvote
    narutomaniacos deu reputação a zipter98 em Spell teleport   
    Fiz bem corrido aqui, talvez não funcione.
     
    local config = { effect = xxx, --Efeito. interval = 500 --Intervalo, em milésimos de segundo, entre os teleportes. } local combat, invisibility, outfit = createCombatObject(), createConditionObject(CONDITION_GAMEMASTER, -1, false, GAMEMASTER_INVISIBLE), createConditionObject(CONDITION_INVISIBLE, -1, false) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function getDamage(cid, level, magic) return -(level * 5 + magic * 12), -(level * 5 + magic * 12 + 55) end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "getDamage") 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 2 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 doSpellTeleport(cid, target, positions, original_position) if not isPlayer(cid) then return true elseif #positions < 1 or not isCreature(target) then doTeleportThing(cid, original_position) doRemoveCondition(cid, CONDITION_INVISIBLE) doRemoveCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE) doPlayerSetNoMove(cid, false) return true end local index = math.random(#positions) local toPos = positions[index] if not isWalkable(toPos) then repeat table.remove(positions, index) index = math.random(#positions) toPos = positions[index] if #positions < 1 then doTeleportThing(cid, original_position) doRemoveCondition(cid, CONDITION_INVISIBLE) doRemoveCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE) doPlayerSetNoMove(cid, false) return true end until isWalkable(toPos) end doTeleportThing(cid, toPos) doSendMagicEffect(getThingPos(cid), config.effect) doCombat(cid, combat, numberToVariant(target)) table.remove(positions, index) addEvent(doSpellTeleport, config.interval, cid, target, positions, original_position) end function onCastSpell(cid, var) local target = variantToNumber(var) if not isCreature(target) then return doPlayerSendCancel(cid, "You need a target.") end local pos = getThingPos(target) local posis = { {x = pos.x + 1, y = pos.y + 1, z = pos.z}, {x = pos.x + 1, y = pos.y - 1, z = pos.z}, {x = pos.x - 1, y = pos.y + 1, z = pos.z}, {x = pos.x - 1, y = pos.y - 1, z = pos.z} } doAddCondition(cid, invisibility) doAddCondition(cid, outfit) doPlayerSetNoMove(cid, true) doSpellTeleport(cid, target, posis, getThingPos(cid)) return true end
  18. Upvote
    narutomaniacos deu reputação a Administrador em [Encerrado]Nebula - Rei Johian   
    versão 10.35 haha
  19. Upvote
    narutomaniacos deu reputação a SkyLigh em Perfect transform com effect   
    Opa é um belo tutorial em si. Mais não está arrumado tente diminuir essas letras, colocar passo como Passo 1 - Passo 2 - Passo 3 e etc...
    Caso queira seu tutorial aprovado basta seguir as dicas que eu acabei de citar, então é isso. Reputado como forma de incentivo.
    Você tem 48 horas para seguir os meus passos caso contrario reprovo o tuto.
  20. Upvote
    narutomaniacos recebeu reputação de SkyLigh em Perfect transform com effect   
    Existem muitos tutoriais no forum com esse assunto mais nenhum explica TUDO que queremos então resolvi fazer o meu tutorial, bom vamos lá.
     
    [+]Tutorial para 8.0


     
    [+] TUTORIAL PARA 8.54 A 8.60


     
     
     
    Creditos:
    Eu 90% organização e ter feito o tutorial.
    10% para o @XJhoow por explicar como configurar as vocações.
  21. Upvote
    narutomaniacos deu reputação a Administrador em [Teaser] xTibia Ip Changer   
    Esse é um teaser do xTibia Ip Changer. Ele vem sido desenvolvido por mim e pelo . Em breve, estaremos disponibilizando à comunidade.
    Suas funções repetem o objetivo de qualquer outro ip changer. Exceto por algumas exclusividades como o botão que leva o usuário até a maior lista de OtServers do Brasil; Você também pode selecionar um client para aplicar uma nova versão.



    Aguardamos feedbacks da comunidade. Espero que tenham gostado =)
  22. Upvote
    narutomaniacos deu reputação a Vodkart em [Talk] Comando Mute Atualizado   
    Em talkactions/script
     
    muteplayer.lua

    local v = {} for k = 1, 100 do table.insert(v, createConditionObject(CONDITION_MUTED)) setConditionParam(v[k], CONDITION_PARAM_TICKS, k*60*1000) end function onSay(cid, words, param) if (words == "/mute") then local t = string.explode(param, ",") if param == '' then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player,time,pid = getPlayerByName(t[1]),t[2],getPlayerByNameWildcard(t[1]) if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player with this name doesn\'t exist or is offline.") return TRUE end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você mutou o jogador "..t[1].." por "..time.." minutos.") doAddCondition(player, v[tonumber(time)]) setPlayerStorageValue(player, 90000, os.time()+time*60) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você foi mutado por "..time.." minutos.") elseif (words == "/desmute") then if param == '' then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player = getPlayerByNameWildcard(param) if(not player)then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end if getCreatureCondition(player, CONDITION_MUTED) == false then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "este jogador não está mutado.") return true end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você desmutou o jogador "..param..".") doRemoveCondition(player, CONDITION_MUTED) setPlayerStorageValue(player, 90000, -1) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você foi desmutado.") end return true end
     
    talkactions.xml

    <talkaction log="yes" words="/mute;/desmute" access="2" event="script" value="muteplayer.lua"/>
     
    Comando:
     
    /mute NOME,MINUTOS
     
    /desmute NOME
     
     
    Em creaturescript/script
     
    mute_check.lua

    local v = {} for k = 1, 100000 do table.insert(v, createConditionObject(CONDITION_MUTED)) setConditionParam(v[k], CONDITION_PARAM_TICKS, k*1000) end function onLogin(cid) if getPlayerStorageValue(cid, 90000) >= os.time() then doAddCondition(cid, v[tonumber(getPlayerStorageValue(cid, 90000) - os.time())]) end return TRUE end
     
    creaturescript.xml

    <event type="login" name="MutePlayer" event="script" value="mute_check.lua"/>
  23. Upvote
    narutomaniacos deu reputação a gabrielbsales em Item de Regen   
    Uma edição do seu script:
    local HP_PERCENT = 25 --% local M_PERCENT = 25 function onUse(cid, item, fromPosition, itemEx, toPosition) ITEM = 2673 local storage = 50000 local wait = 0.7 if fromPosition.x ~= CONTAINER_POSITION and exhaustion.get(cid, storage) == FALSE then REG_HEALTH = math.floor(getCreatureMaxHealth(cid) * (HP_PERCENT/100)) REG_MANA = math.floor(getPlayerMaxMana(cid) * (M_PERCENT/100)) doPlayerAddMana(cid, REG_MANA) doCreatureAddHealth(cid, REG_HEALTH) doCreatureSay(cid, 'Power is back !', TALKTYPE_ORANGE_1) doRemoveItem(item.uid, 1) exhaustion.set(cid, storage, wait) elseif item.itemid == ITEM and exhaustion.get(cid, storage) == FALSE then REG_HEALTH = math.floor(getCreatureMaxHealth(cid) * (HP_PERCENT/100)) REG_MANA = math.floor(getPlayerMaxMana(cid) * (M_PERCENT/100)) doPlayerAddMana(cid, REG_MANA) doCreatureAddHealth(cid, REG_HEALTH) doCreatureSay(cid, 'Power is back !', TALKTYPE_ORANGE_1) doRemoveItem(item.uid,1) exhaustion.set(cid, storage, wait) else doPlayerSendCancel(cid, "You are exhausted.") end return TRUE end Edite as variáveis HP_PERCENT e M_PERCENT.
    O math.floor é pra não ficar valores "quebrados".
  24. Upvote
    narutomaniacos recebeu reputação de Xtudomuito em [Pedido] Como colocar efeito nas transformações?   
    criei um arquivo chamado Effect.lua em Creaturescripts e cole isso dentro
     
     
     
     
    Como configurar:
    Em vermelho ID da vocation
    Em azul ID do effect
     
    Em creaturescript.xml cole essa tag:

     
     
    Depois vá em creaturescripts/scripts abre o arquivo login.lua procure por: function onLogin(cid)
    e coloque esta tag abaixo: registerCreatureEvent(cid, "efe")
     
    Espero ter ajudado.
  25. Upvote
    narutomaniacos recebeu reputação de LeoTK em [Pedido] Como colocar efeito nas transformações?   
    criei um arquivo chamado Effect.lua em Creaturescripts e cole isso dentro
     
     
     
     
    Como configurar:
    Em vermelho ID da vocation
    Em azul ID do effect
     
    Em creaturescript.xml cole essa tag:

     
     
    Depois vá em creaturescripts/scripts abre o arquivo login.lua procure por: function onLogin(cid)
    e coloque esta tag abaixo: registerCreatureEvent(cid, "efe")
     
    Espero ter ajudado.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...