Ir para conteúdo

jcfd.joao

Membro
  • Registro em

  • Última visita

Tudo que jcfd.joao postou

  1. é 1.3 tbm, desculpa. eu que não notei que era o mesmo. mas vc está precisando dessa configuração no seu ot ou ainda esta tentando me ajudar?
  2. MUITO BOM. eu manjo pouco de scripts/programação. no meu caso, eu pego sempre o que ja esta pronto e faço modificações a partir dali. pq sempre leio o que esta dentro e a imaginação flui. cada vez que abro um script que ja existe as ideias fluem, até armadura que reflete o dano estou conseguindo fazer. kkkkkkkkkkkk controle de damage por diferença de lvl (para +)., etc, etc vc foi muito bom em criar esse do zero, parabéns. só nao consigo dizer pra vc se tem erro ou nao pq eu uso o tfs diferente desse que vc postou... um abraço!
  3. Vou fazer um resumo pq precisaria criar um tutorial ou post pois envolve varias modificações; Basicamente é necessário criar um script com a função "onGainExp", que esse script tera a condição se a xp vier de players nesse mesmo script setar o storage value para cada morte baseado na ID (getGuid) do player. dai vem a condição de controlar a quantidade de kills assim que ele ganhe exp de players (a cada ganho de xp um storage value). logo se acontecer de chegar o limite configurada, exp = 0 No caso do "reset" eu peguei o proprio "autoSave" e coloquei a função em SQL para setar = 0 o storageValue que estiver no range (BEETWEEN X AND Y). e colocar o intervalo de 4 horas, por exemplo. PS¹: é necessario habilitar no config.lua "expfromplayers" e colocar um rage elevado (ex: 200) e depois no script "onGainExp" que será feitas as modificações das condições para ganhar exp. PS²: desisti de tentar criar com a função "onkill" pq se houvessem mais de 1 ou varios players batendo a exp era apenas para quem "ganhava a kill". Em breve poderei postar, Talvez eu poste minhas configs e modificações num server completo, caso alguém queria deixar ele online. Abraço!
  4. Já consegui de outra forma, quem quiser abrir um hardcore e precisar colocar controle de kills eu estarei disposto a ajudar. podem fechar obrigado.
  5. No caso, vc inseriu o "addEvent" ok. porem eu preciso saber como faço para que esse esse "event" só inicie depois que o storage de frags estiver >= 3, e apos 2 horas o contador "timeFrag" modifique o storage "fragid" para 0 novamente... e que quando o player deslogar nao der erro ou pare de contar, como acontece com os "familiar summons". muito obrigado pela força. em resumo: o script que preciso é um controle de kill para o servidor hardcore-pvp onde os players só consigam obter xp apenas 3 vezes no mesmo player. estou estudando um pouco sobre SQL para nao precisar usar storagevalues, pois percebi uma tabela chamada: player_kills. onde fica registrado quem matou, o tempo e quem morreu. porem nao tem a coluna. irei estudar como consigo pegar a quantidade de vezes que o registro se repete na tabela para assim fazer o "controle". caso vc tenha um outro metodo (pois sei que o meu script ta uma bagunça), e se for possivel fazer com database, me avise. obrigado pela atenção!
  6. utiliso TFS 1.3 no caso, eu estava tentando concluir o script porem nao sei usar o "Addevent". Conseguir fazer a restrição de quantidade de kills. ainda coloquei 2 storagevalue (um para a quantidade de kills e o outro seria o countdown). mas nao sei como configurar para o player que fica impossibilitado de ganhar xp, voltar a ganhar xp depois de 1 ou 2 horas a ganhar novamente. sei que alem desse script sendo ele "onKill" irei precisar tambem acrescentar no "onLogin" o evento que será criado e uma a verificação do tempo(storage). peço a ajuda de vcs, e agradeço desde já! pedido de ajuda para concluir script Está surgindo algum erro? Se sim coloque-o aqui. local playerOnKill = CreatureEvent("PlayerOnKill") function playerOnKill.onKill(player, creature, lastHit) if not creature:isPlayer() then return true end for cid, damage in pairs(creature:getDamageMap()) do local fragid = (20000000 + (creature:getId())) local timefrag = (30000000 + (creature:getId())) local participant = Player(cid) if participant and participant:isPlayer() then local difer = (creature:getLevel() - player:getLevel()) local difer2 = (player:getLevel() - creature:getLevel()) local ExpLow = math.ceil((creature:getExperience()*0.05)/(difer2+1)) local ExpHigh = math.ceil((creature:getExperience()*0.01)*((difer*0.5)+1)) if creature:getLevel() <= participant:getLevel() and participant:getStorageValue(fragid) <= 3 then participant:addItem(2152, 10) --participant:addExperience(ExpLow,true) participant:sendTextMessage(MESSAGE_EVENT_ADVANCE, 'You gained ' .. ExpLow .. ' experience points.') participant:setStorageValue(fragid,(participant:getStorageValue(fragid))+1) participant:setStorageValue(timefrag, os.time() + 60) elseif participant:getStorageValue(fragid) >= 3 then participant:sendTextMessage(MESSAGE_STATUS_WARNING, 'This player cant give experience for you.') end if difer >= 1 and participant:getStorageValue(fragid) <= 3 then participant:addItem(2152, (difer*5)+10) --participant:addExperience(ExpHigh,true) participant:sendTextMessage(MESSAGE_EVENT_ADVANCE, 'You gained ' .. ExpHigh .. ' experience points.') participant:setStorageValue(fragid ) participant:setStorageValue(timefrag ) elseif participant:getStorageValue(fragid) >= 3 then player:sendTextMessage(MESSAGE_STATUS_WARNING, 'This player cant give experience for you.') end end end return true end playerOnKill:register() Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.

Informação Importante

Confirmação de Termo