Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 03/31/12 em todas áreas

  1. Exp Por Hit v3.0 - Oficial XotservX

    RenanPhellip reagiu a Apocalypse por uma resposta no tópico

    1 ponto
    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 sistema ainda não tem suporte á Stages. e é muito importante o rateExperience tiver como 0, pois ela sera configurada, em outro local agora. 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: -- CONFIGURAÇÕES DE EXPERIENCIA -- useStages = true -- 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 -- function CalculeExp(monsterhp, exptotal, hit) hit = hit <= monsterhp and math.ceil(exptotal * hit / monsterhp) or 0 return hit < 0 and 0 or hit end function isSummon(uid) return uid ~= getCreatureMaster(uid) or false end function onStatsChange(cid, attacker, type, combat, value) if getCreatureStorage(cid, 50001) ~= 1 then doCreatureSetStorage(cid, 50002, getMonsterInfo(getCreatureName(cid)).experience * rateExp) doCreatureSetStorage(cid, 50001, 1) end if type == STATSCHANGE_HEALTHLOSS then if isMonster(cid) then if isSummon(cid) then return true end if isCreature(attacker) then local _cid = isSummon(attacker) and getCreatureMaster(attacker) or attacker if isPlayer(_cid) then if useStages then for strstage, experience in pairs(stages) do tabstage = string.explode(strstage, "-") if getPlayerLevel(_cid) >= tabstage[1] and getPlayerLevel(_cid) <= tabstage[2] then ultimateExp = experience end end experienceRate = ultimateExp else experienceRate = rateExp end local expgain = CalculeExp(getCreatureMaxHealth(cid), getMonsterInfo(getCreatureName(cid)).experience * experienceRate, value) local ringexp = 1 for idring, expring in pairs(rings) do if getPlayerSlotItem(_cid, 9).itemid == idring then ringexp = expring break end end local premiumMultipliqueExp = isPremium(_cid) and premiumMultipliqueExp or 1 expgain = expgain * ringexp * premiumMultipliqueExp if getCreatureStorage(cid, 50002) > 0 then if getCreatureStorage(cid, 50002) - expgain < 0 then expgain = getCreatureStorage(cid, 50002) end doCreatureSetStorage(cid, 50002, getCreatureStorage(cid, 50002) - expgain) local party = false if isInParty(_cid) then local partyMembers, expParty = getPartyMembers(getPartyLeader(_cid)), expgain / 100 * partyPorcent for indice, partyMember in pairs(partyMembers) do attackerLevel, partyLevel = getPlayerLevel(_cid), getPlayerLevel(partyMember) attackerPos, partyPos = getThingPos(_cid), getThingPos(partyMember) x = false if math.abs(attackerLevel - partyLevel) > levelBlockParty then x = true elseif math.abs(attackerPos.x - partyPos.x) > expShareRadiusX then x = true elseif math.abs(attackerPos.y - partyPos.y) > expShareRadiusY then x = true elseif attackerPos.z ~= partyPos.z then x = true elseif _cid == partyMember then x = true end if x then partyMembers[indice] = nil end end if #partyMembers ~= 0 then expParty = math.ceil(expgain / 100 * partyPorcent) expmember = math.ceil(expParty / #partyMembers) for _, member in pairs(partyMembers) do if member ~= _cid then doPlayerSendTextMessage(member, 12, "You received "..expmember.." party exp.") doPlayerAddExp(member, expmember) end end doPlayerSendTextMessage(_cid, 12, "You gain "..expgain.." exp. (" ..partyPorcent.."% send to party)") doPlayerAddExp(_cid, expgain - expParty) party = true else party = false end end if not party then doPlayerSendTextMessage(_cid, 12, "You gain "..expgain.." exp.") doPlayerAddExp(_cid, expgain) end end end end end end return true end function onCombat(cid, target) if isMonster(target) and not isSummon(target) and not isPlayer(target) then registerCreatureEvent(target, "ExpGain") end return true end 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 = true -- 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 : Log V3.0 ( 03/02/2013 ) :
  2. Arena dos Pixels #6 Ed.

    Zathao reagiu a 3visan por uma resposta no tópico

    1 ponto
    Tema: Bows e Crossbows (escolha 1) Para fazer Críticas, dúvidas e sugestões para AdP, vá no link. Regras Todos poderão participar do concurso Arena dos Pixels. A sprite deve ser no tamanho máximo de 32x32 pixels. Edits serão desclassificados. Só pode postar 1 trabalho por pessoa, mas pode colocar em gif para que ele se mexa, se vire, etc. Aconselho que não hospede suas sprites em sites como Photobucket e Deviantart, pois elas costumam a falhar, e se falhar não vai puder editar, aconselho que hospede no imgur ou tinypic e nas extensões de png, bmp e gif. É proibido reaproveitar trabalhos antigos. Se o post for editado após 5 minutos depois de ter postado o membro será desclassificado. Em caso de comprovação de RIP (Cópia total ou parcial de um trabalho) o membro será suspenso por 3 dias e desclassificado. Uma sprite fora do tema será ignorada e o membro será desclassificado. Sprites entregues depois da data de término do concurso serão ignorados. A sprite deverá ser postada no tópico da edição, sprites enviadas por PM ou em outro tópico serão descartadas! Recompensa Primeiro colocado: Troféu de primeiro lugar e 3 REP+ Segundo colocado: Troféu de segundo lugar e 2 REP+ Terceiro colocado: Troféu de terceiro lugar e 1 REP+ Calendário Início da AdP: 31/03/12 - 01:06 Término da AdP: 07/04/12 - 15:00 Início da Votação: 07/04/12 Termino da Votação: 10/04/12 - 20:00 Resultado da AdP: 10/03/12 Um tema diferente dessa vez, isso será bacana vamos ver se o pessoal entende de arcos e flexas, sorte a todos. Edit: Só para vocês saberem, todas as duvidas ou criticas que estiverem nesse tópico serão excluidas e o autor negativado, postem sua duvida sobre o evento no local correto.
  3. Arena dos Pixels #6 Ed.

    Zathao reagiu a EddyHavoc por uma resposta no tópico

    1 ponto
    Lover Ice Sou iniciante, mais é na força e na fé que me dedico e com isso faço oque eu faço. Honestidade Honra
  4. Bbot Regredindo? 0.0 Que ta acontecendo mega?

    Renato reagiu a Lyaaan por uma resposta no tópico

    1 ponto
    Verção... verção... verção... verção...
  5. Key Do BBot sms !

    arturo123 reagiu a MegaNo0body por uma resposta no tópico

    1 ponto
    Minha conta MOIP já foi validada e passou nos testes de pagamento automatico, estarei ativando o sistema provavelmente amanha, após alguns testes. Pagamento por boleto (^.^) Preço justo e pouco imposto!
  6. Antigo Horse Update

    3visan reagiu a CorvoAnarcoPunk por uma resposta no tópico

    1 ponto
    Bom galera como vocês veem eu fiz uma edição do meu antigo horse, mas para doação para vocês que tem servidores, esse horse é antigo, mas podem pegar, só se virem com as costas é os movimentos (: Atenciosamente Corvo.
  7. [PEDIDO] Pokemon pegar level

    fokeloke reagiu a jussara por uma resposta no tópico

    1 ponto
    Removido!
  8. 1 ponto
    Olá todos KingTibianos! Venho trazer um tutorial de como fazer trovejar a cada 3 dias (no Tibia). Comece criando um arquivo .lua em globalevents/scripts cujo nome seja trovao.lua e bote isso nele: function onThink(interval, lastExecution) pos1 = {x = 17, y = 223, z = 7} -- Cordenadas de onde vai sair o trovão pos2 = {x = 18, y = 223, z = 7} -- Altere Como eu alterei, para parecer realmente que está trovejando pos3 = {x = 17, y = 224, z = 7} pos4 = {x = 18, y = 224, z = 7} pos5 = {x = 17, y = 225, z = 7} pos6 = {x = 18, y = 225, z = 7} pos7 = {x = 17, y = 226, z = 7} pos8 = {x = 18, y = 226, z = 7} pos9 = {x = 17, y = 227, z = 7} pos10 = {x = 16, y = 224, z = 7} pos11 = {x = 15, y = 223, z = 7} pos12 = {x = 23, y = 227, z = 7} pos13 = {x = 22, y = 226, z = 7} pos14 = {x = 21, y = 225, z = 7} pos15 = {x = 22, y = 225, z = 7} pos16 = {x = 23, y = 225, z = 7} pos17 = {x = 21, y = 221, z = 7} pos18 = {x = 22, y = 221, z = 7} pos19 = {x = 21, y = 222, z = 7} pos20 = {x = 22, y = 222, z = 7} pos21 = {x = 23, y = 223, z = 7} doSendMagicEffect(pos1,40) doSendMagicEffect(pos2,40) doSendMagicEffect(pos3,40) doSendMagicEffect(pos4,40) doSendMagicEffect(pos5,40) doSendMagicEffect(pos6,40) doSendMagicEffect(pos7,40) doSendMagicEffect(pos8,40) doSendMagicEffect(pos9,40) doSendMagicEffect(pos10,40) doSendMagicEffect(pos11,40) doSendMagicEffect(pos12,40) doSendMagicEffect(pos13,40) doSendMagicEffect(pos14,40) doSendMagicEffect(pos15,40) doSendMagicEffect(pos16,40) doSendMagicEffect(pos17,40) doSendMagicEffect(pos18,40) doSendMagicEffect(pos19,40) doSendMagicEffect(pos20,40) doSendMagicEffect(pos21,40) end Depois vá em globalevens.xml e coloque esta linha de codigo: <globalevent name="trovao" interval="129600" script="trovao.lua"/> Caso queira alterar o tanto de dias, como no tibia 12 horas é equivalente a 1 dia. Então fiz 36x3600 = 129600. Pra você mudar basta fazer o tanto dias x 12 x 3600 e colocar em interval! Caso goste +REP please! (: Ou então só comente, já é o suficiente! Abraços! Work ScreenShot:
Líderes está configurado para São Paulo/GMT-03:00

Informação Importante

Confirmação de Termo