Ir para conteúdo
Banner com Efeitos

Eremes

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Eremes deu reputação a xWhiteWolf em Magnus Challenger   
    oque parece? me manda um print do erro.. é 1.0 né?
  2. Gostei
    Eremes deu reputação a xWhiteWolf em Magnus Challenger   
    vc precisa achar a função que removeItem no 1.0, parece que tiraram ela em 1.0 e substituiram por outra.. o mesmo vale pra onCreatureSay 
  3. Gostei
    Eremes deu reputação a xWhiteWolf em Magnus Challenger   
    Fala galera, hoje vim trazer o projeto pronto do Magnus Challenger pra vocês instalarem no servidor de vocês!   

    Pra quem não conhece é um sistema de Tasks baseado no Zezenia onde você pode escolher entre tasks de matar monstros ou de coletar certos items para o npc Magnus, um guerreiro famoso da cidade que está atolado de tarefas e precisa da sua ajuda!

    Peguei os aspectos que eu julguei serem os principais do modelo do Zezenia e editei com algumas coisas que eu achei que ficariam melhores.
    Quem quiser pode ver um vídeo comentado de como o sistema funciona:




    Dito isso vou ensinar vocês como instalar isso no server:
    Pra começar vá em data\creaturescripts\scripts e procure login.lua, agora vá até o final do arquivo e antes do último return true coloque essas linhas abaixo

    ainda em creaturescripts procure creaturescripts.xml e adicione essa linha junto com as outras que já estão lá (seguindo o padrão)
    <!-- TASK SYSTEM --> <event type="kill" name="tasksystem" script="tasksystem.lua"/> Agora crie um arquivo em creaturescripts\scripts com o nome de tasksystem.lua e adicione o seguinte à ele:




    Terminada a parte da contagem de kill vamos ao NPC em si.
    Crie um arquivo chamado Magnus.xml em data\npc e coloque isso dentro dele:




    Agora em data\npc\scripts crie um arquivo chamado zezeniaa.lua e adicione esse conteúdo dentro do arquivo:





    ~~~~~~~~~~~~~~~~ FEITO ISSO ESTÁ TERMINADO ~~~~~~~~~~~~~~~~~~

    Agora aprendendo a configurar:
     
    No tasksystem vc pode editar isso daqui:
    Eu fiz um sistema onde se vc estiver em party com alguém e a pessoa matar os bixos conta como se você tivesse matado; Assim incentiva o pessoal a ir numa cave de Dragon e ao invés de matar quem está lá pra ficar sozinho na cave, eles vão chamar party pra fazerem a task juntos.. assim fazer amigos fica mais fácil e com maiores laços é maior a chance do povo não abandonar o seu server.

    Apenas digite "true" ou "false" pra ativar/desativar esse sistema e em baixo temos a distancia máxima pro monstro estar do cara que está fazendo a task pra contar o kill. Se a distancia entre o monstro e a pessoa for maior que 7 não vai contar pra ele a kill.


    No zezeniaa.lua as coisas que dão pra configurar são maiores mas são igualmente simples:
    Toda vez que vc pedir uma task short (curta) vc vai ter de 100 a 400 monstros pra matar, ele gera um número de 0 a 6 e multiplica por 5 e soma com os 100 iniciais.. o mesmo vale pra todos os outros valores.

    levelcollect é o level mínimo pra fazer tasks do tipo collect.
    time é o tempo em segundos que você vai ficar sem poder falar com o npc caso desista de alguma task, o padrão é 8 * 60 * 60 (8 horas)
    bonus é por quanto vai multiplicar caso vc permita que o npc escolha aleatoriamente entre todas as opções.. o padrão é 20% de bonus (1.2)
    multiplicador é uma coisa que eu adicionei pra ficar mais fácil mexer na fórmula sem cometer cagadas, se vc tá ganhando 10% de exp e quer ganhar 80% é só colocar 8 no multiplicador.

     
    Isso daqui é o banco de dados principal do sistema de kill, toda vez que vc escolher uma task do tipo fácil, médio, dificil ele vai acessar essas tabelas contendo o nome das criaturas.. vc pode facilmente adicionar novos nomes, o npc já está programado pra lidar com isso, apenas siga o padrão e mantenha sempre o último sem vírgula!

    Ex: adicionando Morgaroth na tabela de hard
    local hard = { [1] = "Giant Spider", [2] = "Dragon Lord", [3] = "Grim Reaper", [4] = "Demon", [5] = "Crystal Spider", [6] = "Demon Skeleton", [7] = "Juggernaut", [8] = "Destroyer", [9] = "Hand of Cursed Fate", [10] = "Morgaroth" } atente-se também pra não repetir o número no index.. se o anterior era [9] use [10].

    O restante das tabelas são separadas para o banco de dados das tasks de collect:
     
    segue a mesma lógica da de kill só que aqui você tem o id dos itens que serão usados... aquela count não tem nada a ver com o item pois ele vai gerar tanto o item aleatoriamente quanto à count;
    Ex: 
    [1] = {id = 5880, count = 20}, -- iron ore isso não significa que se cair iron ore (id 5880) irá cair sempre 20.. até porque eu poderia escolher uma task long e easy e pegar a task de trazer até 50 iron ores, apenas tente manter os padrões que são os intervalos definidos.
    No easy ele varia de 10 a 20, no medium ele varia de 20 a 35 e no hard de 40 a 50.



    Espero que vocês tenham curtido, é um sistema grande mas bem simples de se mexer... se tiverem quaisquer problemas podem comentar aqui. Deu trabalho fazer isso então se você gostou deixe o seu comentário aí e o seu "Gostei" que vai me incentivar a trazer mais coisas desse tipo pra cá. Abraços do lobo.


    PS: Pra sumonar o npc digite com o GOD: /n Magnus ou coloque ele pelo map editor.
  4. Gostei
    Eremes deu reputação a Wise em PK ao Atacar Summon de Outro Player   
    Serei breve, já que o próprio título já diz sobre o sistema.
    É um creaturescript bem simples, porém pode ser útil.



    onattacksummon.lua (data/creaturescripts/scripts):
    local stime = 10 -- tempo de pk (minutos) local condition_infight = createConditionObject(CONDITION_INFIGHT) setConditionParam(condition_infight, CONDITION_PARAM_TICKS, stime * 60 * 1000) function onAttack(cid, target)     if getCreatureSkullType(cid) < 3 and isPlayer(getCreatureMaster(target)) then         doCreatureSetSkullType(cid, SKULL_WHITE)         doAddCondition(cid, condition_infight)         doPlayerSetPzLocked(cid, true)     end     return true end


    No mesmo diretório, adicione o registro ao arquivo login.lua (data/creaturescripts/scripts):
    registerCreatureEvent(cid, "onAttackSummon")

     
    Adicione a tag - creaturescripts.xml (data/creaturescripts):
    <event type="attack" name="onAttackSummon" event="script" value="onattacksummon.lua"/>
    Créditos: Suicide (aprendiz de xWhiteWolf).
  5. Gostei
    Eremes recebeu reputação de Texau em MOTW #22   
    Só achei que a data está longe demais, dia 2 vai cair na quinta que vem. '-'
  6. Gostei
    Eremes deu reputação a xWhiteWolf em Magnus Task Project   
    Falaí galerinha tibiana, eu to trabalhando num sistema de task baseado no Zezenia (na vdd já terminei mas to testando o sistema antes de postar pra sair perfeito)

    Aqui tem um vídeo curtinho (ou pelo menos era pra ser).. Eu editei bem nas pressas porque tenho aula agora e tava bem lag, o vídeo saiu travado mas dá pra ter uma idéia.





    Espero que vocês tenham gostado.. tem um pessoal já acompanhando o projeto e esse tópico é pra conseguir mais gente pra acompanhar antes de eu postar o script. Peço que assistam o vídeo e votem na enquete acima. Abraços do lobo.

    Se vocês gostaram acho que nem preciso dizer que é só clicar em "Gostei"... assim eu tenho uma noção do tipo de coisa que vocês querem que eu traga pro fórum.

    EDIT: Sistema já postado, visualizar aqui: http://www.tibiaking.com/forum/topic/44760-magnus-challenger/
  7. Gostei
    Eremes deu reputação a Wise em Aprender Spells   
    Essa talkaction consiste em fazer com que o player que possui determinada quantidade de um item, aprenda uma spell em troca do mesmo.


    Exemplo de uso (do parâmetro):
    !learnspell exori frigo



    Se preferir apenas uma determinada quantidade de um único item por spell:


    learnspell.lua (data/talkactions/scripts):
    local tab = { ["exori frigo"] = {spell = "Ice Strike", item = {1234, 5}}, -- ["nome da spell"] = {spell = "nome da conjuração da spell", item = {itemid, quantidade}}, ["exori mort"] = {spell = "Death Strike", item = {1234, 5}}, ["exori vis"] = {spell = "Energy Strike", item = {1234, 5}}, ["exori flam"] = {spell = "Flame Strike", item = {1234, 5}}, ["exori tera"] = {spell = "Terra Strike", item = {1234, 5}}, ["exori san"] = {spell = "Divine Missile", item = {1234, 5}} } function onSay(cid, words, param, channel)     local sparam = string.lower(param)              if(param == "") then             return doPlayerSendCancel(cid, "Enter the name of the spell you want to learn.")         end                  if not (tab[sparam]) then                 return doPlayerSendCancel(cid, "Spell not found.")             end                  if(getPlayerLearnedInstantSpell(cid, tab[sparam].spell)) then             return doPlayerSendCancel(cid, "You already have learned this spell.")         end              if(getPlayerItemCount(cid, tab[sparam].item[1]) >= tab[sparam].item[2]) then         doPlayerLearnInstantSpell(cid, tab[sparam].spell)         doPlayerRemoveItem(cid, tab[sparam].item[1], tab[sparam].item[2])         doSendMagicEffect(getThingPos(cid), CONST_ME_GIFT_WRAPS)         doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have learned the spell!")     else         doPlayerSendCancel(cid, "You need "..tab[sparam].item[2].." "..getItemNameById(tab[sparam].item[1]).." to learn this spell.")     end              return true end

     
    Se quiser 2 itens por spell, use este script (mesmo arquivo):
    local tab = { ["exori frigo"] = {spell = "Ice Strike", item = {1234, 5}, item2 = {5678, 9}}, -- ["nome da spell"] = {spell = "nome da conjuração da spell", item = {itemid, quantidade}, item2 = {itemid, quantidade}}}, ["exori mort"] = {spell = "Death Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori vis"] = {spell = "Energy Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori flam"] = {spell = "Flame Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori tera"] = {spell = "Terra Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori san"] = {spell = "Divine Missile", item = {1234, 5}, item2 = {5678, 9}} } function onSay(cid, words, param, channel)     local sparam = string.lower(param)              if(param == "") then             return doPlayerSendCancel(cid, "Enter the name of the spell you want to learn.")         end                  if not (tab[sparam]) then                 return doPlayerSendCancel(cid, "Spell not found.")             end                  if(getPlayerLearnedInstantSpell(cid, tab[sparam].spell)) then             return doPlayerSendCancel(cid, "You already have learned this spell.")         end              if(getPlayerItemCount(cid, tab[sparam].item[1]) >= tab[sparam].item[2] and (getPlayerItemCount(cid, tab[sparam].item2[1]) >= tab[sparam].item2[2])) then         doPlayerLearnInstantSpell(cid, tab[sparam].spell)         doPlayerRemoveItem(cid, tab[sparam].item[1], tab[sparam].item[2])         doPlayerRemoveItem(cid, tab[sparam].item2[1], tab[sparam].item2[2])         doSendMagicEffect(getThingPos(cid), CONST_ME_GIFT_WRAPS)         doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have learned the spell!")     else         doPlayerSendCancel(cid, "You need "..tab[sparam].item[2].." "..getItemNameById(tab[sparam].item[1]).." and "..tab[sparam].item2[2].." "..getItemNameById(tab[sparam].item2[1]).." to learn this spell.")     end              return true end Se quiser um script com mais de 2 itens para uma spell, peça no tópico que eu faço.




    Adicione a tag ao arquivo talkactions.xml (data/talkactions/scripts):
    <talkaction words="!learnspell" event="script" value="learnspell.lua"/>
     
    Não se esqueça de "ativar" a obtenção da spell, para que os players não aprendam ela ao criar o character.
    Basta mudar o valor na tag da spell, para 1, onde está needlearn. Ficando então:
    needlearn="1"

    Créditos: Suicide.
  8. Gostei
    Eremes recebeu reputação de Wingardium em Humilde tópico   
    A grama eu achei perfeita.
    O Golem ficou bem feito até, mas creio que ele ficaria melhor ainda se o "passo" dele fosse um pouquinho de nada mais longo, (tipo a distância de uma perna aberta para a outra).
     
    REP+
  9. Gostei
    Eremes deu reputação a MichaelH em Humilde tópico   
    Olá galera, estou aqui para mostrar meus rascunhos, ideias e sprites acabados, espero que gostem
    Estarei disponibilizando alguns sprites, o resto estará sobre a meu domínio.. então chega de conversa haha.
     
    Golem de cristal: (disponível, porém inacabado)

     
    Coroa para o Spriter King: (disponível)

     
    Grama:

     
    Rascunhos:

     
    Bem, estes são os mais recentes, embora não sejam nenhuma obra de arte ><
  10. Gostei
    Eremes recebeu reputação de Cat em (Sugestão) Notificação ao receber REP+   
    Seria legal se a pessoa que foi reputada soubesse quem à reputou.
     
    Flw / Vlw.
  11. Gostei
    Eremes recebeu reputação de Cat em MOTW #21 - Resultado   
    Parabéns pra geral que participou, os mapas estão muito bons.
    Esse tema foi bem pensado.
     
    @Kod:
    Sobre os livros embaixo das estantes é que eu fui seguindo exatamente o que eu via nas imagens de inspiração; uma biblioteca bagunçada.
  12. Gostei
    Eremes recebeu reputação de Wend em (Sugestão) Notificação ao receber REP+   
    Seria legal se a pessoa que foi reputada soubesse quem à reputou.
     
    Flw / Vlw.
  13. Gostei
    Eremes recebeu reputação de Thiago Mapper em [Link Quebrado] Mapa Heroserv Loucoserv ORIGINAL   
    Já joguei muito esse OT quando mlk.
    Rep+ por disponibilizar o conteúdo.
  14. Gostei
    Eremes deu reputação a Thiago Mapper em [Link Quebrado] Mapa Heroserv Loucoserv ORIGINAL   
    Fala Galera Aqui Tou Com Mapa Heroserv,Loucoserv Original Nao Gosto De Colocar Ot online Mais o Heroserv e Loucoserv Pra mim Falio Entao vou Postar Esse Mapa pra voces Colocar Online Pra Nois Jogar quem Colocar Online Me Passa o IP: pq Noa Aguanto Mais Ficar Sem Jogar Heroserv rs ot 8:60 
    mapa 85%heroserv com as caves espalhadas xp do ot 200 unica coissa que tem que mudar e so a vida e mana do player que esta editada mais isso e com vcs esse mapa tem os 2 eventos do heroserv o "evento zombie, arena evento capture fregs" tem tbm o castle mais esta so 30%igual heroserv o resto esta tudo otimo pronto pra ficar online 
     
    account: god
    password: god
     
    DOWNLOAD
    LINK ARRUMADO \/
    https://www.4shared.com/rar/6t_zQOf9ce/Heroserv_BY_Thiago_Mapper.html?
     
    Mapa original feito por mim, nao esquece de me passar o ip.
    OBS: sem o bug do GOD.
     
     
     

     

     

     

     

     

  15. Gostei
    Eremes deu reputação a luanluciano93 em [Gesior2012] Latestnews.php Modificado   
    Vasculhando aqui na net, achei esse latestnews em outro fórum, e achei bem interessante, portanto decide repassar pra vocês ...
     
    Latestnews.php
     
    OBS: IMAGENS EM ANEXO!
     
    Créditos: Nevix
    images.zip
  16. Gostei
    Eremes deu reputação a D i M i T r E s C u em !Esconder   
    Galera tava fazendo uma script pra mim usar no meu server só que falta algumas coisas mais testei aqui já da pra usar
    Testado em: 8.6
    Finalidade: Se esconder de pessoas
    No meu caso coloquei pra transformar em arvores ou pedras
    Pode ser qualquer coisa que queiram.
    ele se transformar e fica nos items desejados aleatórios e você fica imóvel por 7 segundos, se quiserem mudar é so mudar essas linhas
     
    doSetItemOutfit(cid, math.random(2701, 2704), 7000) --tempo 7 segundos
                  addEvent(doCreatureSetNoMove, 7000, cid, false)
     
    obs2: Deixe no mesmo tempo para ficar bom
     
    vamos lá:
    1º va na pasta data/talkactions/script copie qualquer arquivo e coloque um nome desejado
    e coloque isso:
    function onSay(cid, words, param) if getPlayerLevel(cid) >= 1 then     doCreatureSetHideHealth(cid, true)       addEvent(doCreatureSetHideHealth, 7000, cid, false)     doSetItemOutfit(cid, math.random(2701, 2704), 7000)--tempo 7 segundos           doSendMagicEffect(getCreaturePosition(cid),13)             doCreatureSay(cid, "Voce se Escondeu", TALKTYPE_ORANGE_1) -- mensagem               doCreatureSetNoMove(cid, true)                 addEvent(doCreatureSetNoMove, 7000, cid, false) end return true end Tag:
    <talkaction words="!esconder" event="script" value="arquivo.lua"/> Obs: essa parte math.random(2701, 2704) -- sao os items que irao se transformar
     
    se já existe um assim não sei , só sei que eu que fiz esse 
    Bom uso 
    erros comentem aqui pff
     
    (ARRUMADO) 100%
    credito também ao Xwhitewolf 
     
  17. Gostei
    Eremes recebeu reputação de Kmdsp Server em (Resolvido)Source?   
    O que é source?
    Source é o nome dado ao conjunto de códigos que futuramente será um programa, em otserv nem sempre conseguimos esta source, mesmo sendo uma lei sua liberação, o servidor mais usado atualmente que no caso é o “TFS”, tem os seus códigos liberados e podemos conseguir na seção de Download OT Serv procurando a versão desejada.
  18. Gostei
    Eremes recebeu reputação de Kmdsp Server em (Resolvido)Source?   
    Esse conjunto de códigos póde ser transformado em um programa executável, "um arquivo .exe".

    Não sei te responder direito com detalhes mais precisos, mas a definição eu creio que seja essa que eu disse alí em cima.
  19. Gostei
    Eremes recebeu reputação de sviniciusimoes em Recentes Trabalhos - Mapping   
    Lindo mapa em cara, bem detalhado.
    Só não curti o chão branco no qual a personagem está.
  20. Gostei
    Eremes recebeu reputação de sviniciusimoes em Recentes Trabalhos - Mapping   
    Zombie Event do mal. ;p

  21. Gostei
    Eremes deu reputação a buddha em Criador de magias InGame   
    Bom, comentei essa ideia em outro tópico e me indicaram de criar um tópico para a mesma. A ideia é sobre a criação de magias para players comuns que desejam uma magia nova. Vou tentar explicar detalhadamente: Existe uma parte no mapa chamada "Ilha do conhecimento" por exemplo e ela é mais ou menos assim:



    me digam o que acharam do meu mapping Mas o que são essas caixas? Elas servem para serem botadas nessas placas de pedra, formando a área da magia. Como nesse exemplo:



    não repare que agora tem uma estátua no meio A área da magia é a coisa mais importante depois do script da magia, um Hell's Core sem área seria inútil. Então tá, entendi, mas eles vão poder botar quantas caixas quiserem então? Não, o dano(veremos como será definido na próxima imagem), a área e todos os outros detalhes vão precisar de Magic Level para serem criados, assim como uma runa. Obs: Ele não vai abaixar seu nível de Magic Level a cada magia criada. O custo para fazer cada magia será em dinheiro ou soul points.



    E agora finalmente chegamos no livro que você provavelmente estava se pergunta pra que servia ou não, o livro serve para definir como a magia será, atirável, quanto de dano, nome de conjuração que eu esqueci de botar no exemplo, etc. (não sei se é possível checar certa linha de um livro, se não for possível a solução seria vários livros com "tags" diferentes)
     
    Quando a magia está pronta é só puxar a alavanca e deu, você recebe a magia(depois do server save) em custo de algum dinheiro/soul points. A ideia aqui é que cada um tenha sua própria magia, então a variedade vai ser infinita. Aliás, como vão ser definidos os efeitos: Pelo dano, de dano 1-100 é efeito EXPLOSIONHIT(se a magia for de fogo), 101-200 é FIREAREA, etc. (Tenho que criar uma lista depois para ajudar vocês)
     
    Bom, é isso, eu faria se eu fosse capaz, mas acabei de começar a aprender de como fazer scripts. Qualquer dúvida poste ai, já que essa ideia é só um rascunho e provavelmente há várias falhas.
  22. Gostei
    Eremes recebeu reputação de rafaelpoke em [DÚVIDA] Mudando a Exp do meu Servidor   
    Creio que você esqueceu de mexer nas stages.
     
    Vaí no config.lua e procure isso:
    experienceStages Se tivér experienceStages = true, vá em Data/XML/Stages.xml e vai editando a XP.
    É coisa simples.
  23. Gostei
    Eremes deu reputação a Vodkart em [Sistema] Battlefield Event! V.1   
    Mapa BattleField Feito Por AnneMotta :

    Mapa Battlefield.rar

    Scan: https://www.virustot...sis/1346548669/


    Imagens do mapa



    Descrição:

    - O evento é automático e acontece em determinado dia e hora da semana
    - Logo após é aberto um teleport então apenar um número limitado de players entra no evento
    - São formados por dois times, os "Black Assassins" e os "Red Barbarians"
    - Os times são balanceados automaticamente, quando o último jogador entra, esse teleport é fechado e depois de 5 minutos o evento começa, os 5 minutos são para os players ter tempo de planejar um ataque.
    - O sistema tem por finalidade matar todos do time inimigo, e os players que sobreviverem recebem um prêmio.

    Bônus:

    - Durante o evento é mostrado na tela somente dos jogadores que estão no evento um placar de times.

    - Até o último player entrar no evento, ficam mandando broadcast dizendo quanto players faltam para dar inicio ao jogo.

    - Se o evento abrir e não atingir a meta de players colocada, o evento é finalizado e os players voltam para o templo.




    Lembre-se:

    - De colocar Pvp Tool na área
    - De colocar área NoLogout


    Imagens:




    Instalação:

     
    Data > Lib       Data > CreatureScript > Script     Data > GlobalEvents > Scripts       Data > Movements > Script             Configurações do evento
  24. Gostei
    Eremes deu reputação a BeTroll em [MOD] Sounds   
    Se Eu não me engano, Audacity (editor de audio) tem um plug-in que permite vc salvar seu audio em ogg
  25. Gostei
    Eremes deu reputação a Klauguns em Fire Storm Event "Tempestade de fogo" Automatico   
    Como eu tinha dito no post , os que eu encontrei não funcionava no meu tfs e esse funcionou

Informação Importante

Confirmação de Termo