Ir para conteúdo
  • Cadastre-se
  1. Biinhow

    Biinhow

  2. Lyon

    Lyon

  3. luanluciano93

    luanluciano93

  4. Cat

    Cat

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Lyu
      'Dodge System 2015' versão com AMULETO & ELEMENTOS DE DEFESA.                                    Testado em OTX Server 8.60 & TFS 0.4 dev 3884.                                                                           Antes de começar, quero avisar às pessoas que estão sem tempo ou com preguiça de ler o tópico inteiro, que eu upei um zip do sistema inteiro. então é só baixar e instalar ai.   Download SCAN   Continuando Tópico..   Cada ponto de Dodge equivale a x% de chance de desviar de um ataque, e ao mesmo tempo, enviar um elemento compatível com o nível de dodge do jogador. Sobre o desvio, quase todo mundo já conhece, mas e esse tal elemento?   Ao desviar do ataque, automaticamente o amuleto contra-ataca com um ataque de distância; sua fonte de energia é o fist fighting, quanto mais alto for o skill, mais alto será o dano; Cada amuleto possui seu próprio elemento e ele será a chave para o funcionamento do dodge, ou seja, sem AMULET, sem Dodge.   1º - Procure a pasta Lib na sua datapack, crie um arquivo 151-dodgesystem.lua e dentro adicione isso :
        2º- abra o arquivo actions.xml e adicione isso : <action itemid="12411" event="script" value="dodge.lua"/> 3º- entre na pasta scripts em actions, crie um arquivo .lua chamado dodge e adicione isso :


        4º- abra o arquivo creaturescripts.xml e adicione isso : <event type="statschange" name="DodgeSystem" event="script" value="dodge.lua"/> 5º- entre na pasta scripts em creaturescripts, crie um arquivo .lua chamado dodge e adicione isso :



        6º- ainda em creaturescripts, abra o arquivo login.lua e adicione isso la no final antes do return true : registerCreatureEvent(cid, "DodgeSystem")   7º- abra o arquivo movements.xml, substitua isso : OTX :


        TFS :
        por isso :
        8º - entre na pasta scripts em movements, crie um arquivo .lua chamado dodgeamulet e adicione isso :
          9º- abra o arquivo talkactions.xml e adicione isso : <talkaction log="yes" words="!dodge;/dodge" event="script" value="dodge.lua"/> 10º- entre na pasta scripts em talkactions, crie um arquivo .lua chamado dodge e adicione isso :
          no arquivo lib.. DODGE_PERCENT é os porcentos que o jogador ganhará por cada ponto adquirido; DODGE_MAX é o máximo de dodge; DODGE_PRICE é o preço de cada pedra; DODGE_ITEMID é o ID da pedra de dodge; DODGE_COMMAND_REMOVE é um comando para remover 1 ponto de dodge e receber 75% do dinheiro que você pagou pela pedra. true = comando disponível, false = comando inexistente; DODGE_ONLY_PREMIUM é para jogadores com premium, true = o dodge só funcionará com premium, false = qualquer um poderá usar; DODGE_TEXT é o texto que aparecerá quando o player desviar de um ataque; DODGE_TEXTCOLOR é a cor do texto;   DODGE_FISTMULTIPLIER é para multiplicar o fist fighting do jogador pelo multiplier configurado. true = multiplica, false = os multipliers serão sempre os mesmos valores;   type é o tipo de elemento; min é o hit mínimo; max é o hit máximo; mana é a quantidade de mana que precisa para contra-atacar com o elemento. se não tiver mana, só vai desviar; shoot é o efeito de distância.   ID dos amulets :  terra amulet      : 7887 glacier amulet    : 7888 lightning pendant : 7889 magma amulet      : 7890   comandos : !dodge; !dodge buy; !dodge remove.   caso você queira que o amulet mude de elemento ao dar use(estilo exp alta), abra o items.xml e substitua isso :
        por isso :
        um exemplo do DODGE_FISTMULTIPLIER : se estiver true, o jogador estiver com o 'magma amulet' e tiver 100 fist fighting, ele terá a chance de acertar um hit entre 400-1000 de dano; se estiver false, ele só vai hitar entre 4-9 de dano, ai você vai ter que editar pra deixar mais alto, só que será o padrão;    algumas imagens : 
        Então pessoal, espero que tenham gostado da minha versão. Eu fiz ela do zero, peguei só a ideia do Dodge System que vi em alguns Ots e mandei bala acrescentando esses elementos com amuleto.   créditos : Halls Santos & o criador do Dodge System, infelizmente não sei o nome dele. comentem ai que eu edito depois.
    • Por xWhiteWolf
      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.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo