Ir para conteúdo

Posts Recomendados

  Citar
Script: Exp por Hit v4.0

Autor: xOtServx também conhecido como miillerdomingues.

Testado: TFS 0.3.6 ( 8.54 ) e nas versões nova como 9.8

Resumo: Em vez de ganhar a exp final, vc ganha por cada hit.

 

Instalação

 

Primeiramente abra a pasta de seu ot, e procure pelo arquivo config.lua e procure por essas 2 linhas :

experienceStages = false
rateExperience = 50

se o experienceStages tiver ativado mude para false, pois o Stages é configurado no próprio script,

e é muito importante o rateExperience tiver como 0, exemplo:

 

experienceStages = false
rateExperience = 0

agora entre na pasta creaturescripts/scripts e crie um arquivo lua, chamado exphit.lua e cole o seguinte código:

 

para versões mais antigas como 8.54, 8.6 use :

 

  Mostrar conteúdo oculto

 

 

para versões mais novas como 9.8 :

 

 

  Mostrar conteúdo oculto

 

 

na mesma pasta procure pelo arquivo login.lua, e em cima de return true, adc a seguinte linha:

 

registerCreatureEvent(cid, "ExpHit")

volte na pasta anterior creaturescripts, e procure pelo arquivo creaturescritps.xml e cole as 2 tags:

 

<event type="statschange" name="ExpGain" event="script" value="exphit.lua"/>
<event type="combat" name="ExpHit" event="script" value="exphit.lua"/>

para configurar a exp, que era configurada no config.lua está no começo do arquivo exphit.lua , e as configurações da party tbem, dos anéis, e até pode ser usado stages agora, segue abaixo o exemplo:

 

-- CONFIGURAÇÕES DE EXPERIENCIA --

useStages = false -- Usar sistema de Stages , true/false
premiumMultipliqueExp = 2 -- Players Premiums terão exp multiplicada, caso não querer deixe 1.
rateExp = 50 -- Exp caso não for usar stages.


local stages = { -- ["DELEVEL-ATELEVEL"] = EXP, (OBS: NUNCA REPETIR O MSM NUMERO, SEMPRE COLOCAR UM A MAIS.)
["1-50"] = 50,
["51-100"] = 45,
["101-150"] = 40,
["151-200"] = 35,
["201-250"] = 30,
["251-300"] = 25,
["351-400"] = 20,
}
ultimateExp = 15 -- exp que vai usar caso o level do player não tiver mais na tabela .

-- CONFIGURAÇÕES DA PARTY

partyPorcent = 40 -- Quantos Porcento da exp vai para os membros da party
levelBlockParty = 1000 -- Diferença Maxima de Level permitida para membro da party ganhar exp.
expShareRadiusX = 30 -- Distancia maxima permitida no eixo X para membro da party ganhar exp.
expShareRadiusY = 30 -- Distancia maxima permitida no eixo Y para membro da party ganhar exp.
expShareRadiusZ = 1 -- Distancia maxima permitida no eixo Z para membro da party ganhar exp.

-- CONFIGURAÇÕES DE RINGS --

local rings = { -- [ID DO ANEL] = EXP MULTIPLICADA POR X EXP.
[3048] = 2,
[3049] = 4,
[3050] = 6,
}

-- FIM DAS CONFIGURAÇÕES ----

Log V2.0 :

 

 

  Citar
- Monstros dão somente a exp usada no monster.xml vezes a rate do server, ele pode healar toda sua vida, porém se ele ja tiver dado a exp, ele não vai dar mais.

 

- Parte da exp que você ganha vai para os membros da party.

 

Log V3.0 ( 03/02/2013 ) :

 

  Citar

- Sistema de stages, pode ser totalmente configurado no script .

 

- Anéis podem multiplicar a experiencia agora

 

- Premium podem ter beneficios tambem na experiencia

- Monstros sumonados por outros monstros, não vão dar mais experiencia.

 

 

Log V4.0 ( 12/11/2013 ) :

 

  Citar

- Todos bugs da versão 3.0 corrigidos

 

- Suporte a versões mais novas como á 9.8

 

 

Editado por xotservx
Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/
Compartilhar em outros sites

Testei aqui, muito maneiro mesmo... havia visto um usuário aqui do nosso forum pedindo esse Script...muito bom.

 

Só faltou, se fosse possível exibir a EXP que o player está ganhando a cada hit...aí ficaria perfeito!

 

Abraços e já sabe neh.

 

REP+

 

99,8% Aprovado :button_ok:

 

 

sempre me ajuda demais

Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/#findComment-1061546
Compartilhar em outros sites

pra ir subindo a exp no arquivo exphit.lua

 

abaixo da linha:

doPlayerSendTextMessage(sid, 23, "You gain "..expg.." exp.")

 

adc isto:

doSendAnimatedText(getThingPos(sid), expg, 215)

 

resultando:

doPlayerSendTextMessage(sid, 23, "You gain "..expg.." exp.")
doSendAnimatedText(getThingPos(sid), expg, 215)

 

 

fui ;*

Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/#findComment-1061554
Compartilhar em outros sites

  Em 09/07/2011 em 21:42, xotservx disse:

pra ir subindo a exp no arquivo exphit.lua

 

abaixo da linha:

doPlayerSendTextMessage(sid, 23, "You gain "..expg.." exp.")

 

adc isto:

doSendAnimatedText(getThingPos(sid), expg, 215)

 

resultando:

doPlayerSendTextMessage(sid, 23, "You gain "..expg.." exp.")
doSendAnimatedText(getThingPos(sid), expg, 215)

 

 

fui ;*

 

Como eu já suspeitava... você daria um jeito, e funcionaria!

 

Valeu aeeew....

 

OBS: Não sei se reparou, mas exemplo com 10x de EXP, o Ghoul daria 850 de EXP, aqui ele não da um número exato...porém fica sempre perto de 850, as vezes chega até a da 850 certinho, porém na maioria das vezes da 833, 822, 842, 845 de exp... mas tah ótimo o SCRIPT.

 

 

100% Aprovado :button_ok:

 

Abraços :smile_positivo:

Editado por Gonorreia
Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/#findComment-1061640
Compartilhar em outros sites

  Em 10/07/2011 em 00:05, xotservx disse:

sim, eu fiz isso pra não fica tão artificial, fica estranho toda hora 850, ai quis dár uma mudada, se não gostou fala ai, que te ensino mudar...

 

Por mim está tudo bem, eu acho dahora inovar!

Mas se pah fica até interessante deixar postado aqui como mudar para o caso de alguém que decida deixar "globalizado" o seu server!

 

 

OBS: Você viu a Msg que te enviei?

Me da uma mãozinho com uma dúvida lá!

 

 

Abraços, e Obrigado novamente. :thumbsupsmiley:

 

  Em 10/07/2011 em 00:10, Demonbholder disse:

Parabéns pelo script, eu tinha feito um parecido ao thalia.

 

Ta randomizando a exp por causa do math.random, brother.

 

Abraços.

 

Ahh, entendi...

 

Então no caso sei até como arrumar

 

 

 

 

@@@EDIT - OFF TOPIC

:D

Seria pedir demais, pedir para alguém de vocês que entendem mais de Tibia, me tirar uma dúvida nesse tópico!?

 

http://www.xtibia.com/forum/topic/161005-duvida-claridade-dianoite/

 

Abraços...mals ae por algo!

Editado por Gonorreia
Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/#findComment-1061677
Compartilhar em outros sites

script excelente, porem tem um erro.

 

        elseif type == STATSCHANGE_HEALTHGAIN then
               return false

 

se eu registrei o monstro, se o monstro tentar se curar ele nao se cura-rá, isso pode ser bom em relação a ninguem fica curando e atacando + pode ser um bug quando usado para outros propositos.

Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/#findComment-1068901
Compartilhar em outros sites

  Em 19/07/2011 em 21:08, DrakyLucas disse:

script excelente, porem tem um erro.

 

        elseif type == STATSCHANGE_HEALTHGAIN then
               return false

 

se eu registrei o monstro, se o monstro tentar se curar ele nao se cura-rá, isso pode ser bom em relação a ninguem fica curando e atacando + pode ser um bug quando usado para outros propositos.

 

Na verdade isso é propositar para o script não bugar.

Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/#findComment-1068916
Compartilhar em outros sites

  Em 19/07/2011 em 21:25, Demonbholder disse:
  Em 19/07/2011 em 21:08, DrakyLucas disse:

script excelente, porem tem um erro.

 

        elseif type == STATSCHANGE_HEALTHGAIN then
               return false

 

se eu registrei o monstro, se o monstro tentar se curar ele nao se cura-rá, isso pode ser bom em relação a ninguem fica curando e atacando + pode ser um bug quando usado para outros propositos.

 

Na verdade isso é propositar para o script não bugar.

 

 

depende, isso impediria que o monstro se curase e o player ficasse ganhando exp, certo?

porém em outros propositos, se vc precisar o doCreatureAddHealth e a criatura estiver registrada o event, ele nao vai funcionar.

no meu caso estou fazendo o sistema de level nos pokemons do mapa[como ja t flei no msn leo] e isso foi um bug monstro, pois uso mto o doCreatureAddHealth kkk + para alguns fins isso está otimo!

 

rep+ [eskeci de dar eu achu.. se eu nao tiver dado eu do agora ksapoopkas]

Link para o comentário
https://xtibia.com/forum/topic/161056-exp-por-hit-v40/#findComment-1068942
Compartilhar em outros sites

×
×
  • Criar Novo...