Ir para conteúdo
Entre para seguir isso  
Mock

Sistema de refinamento perfeito.

O que você achou do script?  

228 votos

  1. 1. O que você achou do script?



Recommended Posts

Mock    32
Mock

@Meco2181

 

TFS 0.3.4, tfs 0.3.3... até TFS 0.3.1

Compartilhar este post


Link para o post
peterson123    0
peterson123

Affz aqui não funcionou...:(

eu uso allisow ots 3.6 tentei de tudo 1 pouco mas não adiantou

tem como vc postar o script pra download aqui nu forum

pra nois principiantes fica mais simples e facil de entender:D

 

obrigado

Compartilhar este post


Link para o post
fauxtaum    0
fauxtaum

To com uma dúvida mock.

Como eu faço se eu quiser tipo

 

+1,+2,+3 Seja 100%

+4 Seja 80%

+5 Seja 70%

+6 Seja 60%

+7 Seja 50%

 

Se puder me responder, no mais o script É SHOW !

 

Outra coisa : Fiz isso no meu server, fiz 20 pedras, consegui encantar 20 vezes, nao tem limite e na arma só fica +1

Editado por fauxtaum

Compartilhar este post


Link para o post
Mock    32
Mock

@fauxtaum

Ai vc tem q ser bom em matematica e bolaru ma formula cara :S

Compartilhar este post


Link para o post
fauxtaum    0
fauxtaum

E a segunda dúvida, de não ter limite, porque a demon legs que eu fiz chegou a 100 de def e nao parou, e nela só tava demon legs +1

Compartilhar este post


Link para o post
Spyk3    0
Spyk3

Então Mock, estou querendo implementar o seu sistema no meu servidor, só que sempre que eu vou refinar o item, ele está funcionando, sem chance de falhar, aparece o seguinte:

 

17:46 Your item has been upgrated to +1.

 

Em seguida:

17:47 You see a demon armor +1 (Arm:24).

It weighs 80.00 oz.

 

Além de não ter as chances de falhar, ele aparece +1 e ultrapassa o limite como aparece ai está em +8.

Se tiver como dar uma mãozinha, vou agradecer, ^^

Abraços.

 

 

 

Edit: a versão do servidoré o "[8.50-8.52]Styller Yourots (0.6.1)Rev 02"

http://forums.otserv.com.br/f273/8-50-8-52-styller-yourots-0-6-113769/

Compartilhar este post


Link para o post
Mock    32
Mock

@fauxtaum

qual servidor vc tava usano?

poste sua config

@Spyk3

poste sua config.

Compartilhar este post


Link para o post
Spyk3    0
Spyk3

Se for a configuração do script, eu só copiei o seu e colei xD

Compartilhar este post


Link para o post
fauxtaum    0
fauxtaum

Eu to usando o Snowz.

E também só copiei, tentei mudar algumas coisas aí mas dai fez foi piorar, porque nem chegou a funcionar

Compartilhar este post


Link para o post
peterson123    0
peterson123

aqui ainda não funciona.

pode postar pra download ?

se puder eu agradeço muito..

 

vlw:D

Compartilhar este post


Link para o post
patrickdelfim    0
patrickdelfim

adorei muito bom kk o carinha pode ser um plate armor mas forte que um demon armor ^^

Compartilhar este post


Link para o post
xyto    0
xyto
Então Mock, estou querendo implementar o seu sistema no meu servidor, só que sempre que eu vou refinar o item, ele está funcionando, sem chance de falhar, aparece o seguinte:

 

17:46 Your item has been upgrated to +1.

 

Em seguida:

17:47 You see a demon armor +1 (Arm:24).

It weighs 80.00 oz.

 

Além de não ter as chances de falhar, ele aparece +1 e ultrapassa o limite como aparece ai está em +8.

Se tiver como dar uma mãozinha, vou agradecer, ^^

Abraços.

 

 

 

Edit: a versão do servidoré o "[8.50-8.52]Styller Yourots (0.6.1)Rev 02"

http://forums.otserv.com.br/f273/8-50-8-52-styller-yourots-0-6-113769/

 

Então estou tendo o mesmo problema que o Spyk3 ai, ela refina infinitamente sem falha e passa do limite, pois só fica +1 (e os status continuam a aumentar..) :no: [You see an emerald sword +1 (Atk:84, Def:103 +2)]

 

O error que aparece aqui é na linha 62.

Compartilhar este post


Link para o post
Mock    32
Mock

@xyto

Poste o seu config aqui. ja falei, quando der esse erro poste o config do script aki, vcs n estao ajudando em nada

Compartilhar este post


Link para o post
xyto    0
xyto
--- Perfect refine system by Mock the bear (MTB).

--- Email: [email protected]

local gain = {

gainArmor='&p+1',loseArmor='&p-1',

gainShield='&s+#',loseShield='&s-(#+1)',

gainAttack='&a+#+1',loseAttack='&a-(#+1)-1',

gainDefense='&d+#+2',loseDefense='&d-(#+1)-2',

chance='75/((#*(1/(@/2)))*(@/2))', -- Eu fiz essa equação para variar de +0 a +7 o item

--- Essa equação deve retornar em % a chance do item se refinar (0-100) 100 = sempre, 0 = nunca

maxlvl = 10,

blocked_ids = {2488,8881}

}

-- &a = weapon attack

-- &d = weapon defense

-- &s = shield defense

-- &p = armor defense

-- # = nivel do item

-- @ = max level

function isArmor(uid) -- Function by Mock the bear.

uid = uid or 0

if getItemArmor(uid) > 0 and getItemAttack(uid) == 0 and getItemDefense(uid) == 0 and getItemWeaponType(uid) == 0 then

return TRUE

end

return FALSE

end

function isWeapon(uid) -- Function by Mock the bear.

uid = uid or 0

local f = getItemWeaponType(uid)

if f == 1 or f == 2 or f == 3 then

return TRUE

end

return FALSE

end

function isShield(uid) -- Function by Mock the bear.

uid = uid or 0

if getItemWeaponType(uid) == 4 then

return TRUE

end

return FALSE

end

 

function getWeaponLevel(uid) -- Function by Mock the bear.

uid = uid or 0

local name = getItemName(uid)

local _,_,lvl = string.find(name,'+(%d%d)')

return tonumber(lvl) or 0

end

function doTransform(s,uid) -- Function by Mock the bear.

local c = string.gsub(s,'@',gain.maxlvl)

local c = string.gsub(c,'&a',getItemAttack(uid))

local c = string.gsub(c,'&d',getItemDefense(uid))

local c = string.gsub(c,'&s',getItemDefense(uid))

local c = string.gsub(c,'&p',getItemArmor(uid))

local c = string.gsub(c,'#',getWeaponLevel(uid))

local q,err = loadstring('return '..c)

assert(q,err)

return assert(q())

end

function onUse(cid, item, fromPosition, itemEx, toPosition)

toPosition.stackpos = 255

if isInArray(gain.blocked_ids, itemEx.itemid) == TRUE

or getItemWeaponType(itemEx.uid) > 4

or (getItemWeaponType(itemEx.uid) == 0

and isArmor(itemEx.uid) == FALSE)

or itemEx.itemid == 0 then

doPlayerSendTextMessage(cid, 24,"You cant refine this item.")

return TRUE

end

if isCreature(itemEx.uid) == TRUE then

return FALSE

end

local level = getWeaponLevel(itemEx.uid)

local chance = doTransform(gain.chance,itemEx.uid)

if chance >= math.random(0,100) or item.actionid >= 1000 then

if level+1 > gain.maxlvl then

doSendMagicEffect(toPosition, 2)

return doPlayerSendTextMessage(cid, 24,"Your item is on max level, you can't upgrade it.")

else

setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level+1))

doPlayerSendTextMessage(cid, 24,"Your item has been upgrated to +"..(level+1)..".")

doSendMagicEffect(toPosition, 12)

if isArmor(itemEx.uid) == TRUE then

local get = doTransform(gain.gainArmor,itemEx.uid)

setItemArmor(itemEx.uid,get)

elseif isWeapon(itemEx.uid) == TRUE then

setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx.uid))

setItemDefense(itemEx.uid, doTransform(gain.gainDefense,itemEx.uid))

elseif isShield(itemEx.uid) == TRUE then

setItemDefense(itemEx.uid, doTransform(gain.gainShield,itemEx.uid))

end

end

else

 

if level == 0 then

doPlayerSendTextMessage(cid, 24,"No effect.")

doSendMagicEffect(toPosition, 2)

elseif level == gain.maxlvl then

doSendMagicEffect(toPosition, 2)

return doPlayerSendTextMessage(cid, 24,"Your item is on max level, you can't upgrade it.")

elseif level > 0 then

if level == 1 then

setItemName(itemEx.uid, getItemNameById(itemEx.itemid))

doPlayerSendTextMessage(cid, 24,"Your item back to normal.")

else

setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level-1))

doPlayerSendTextMessage(cid, 24,"Your item back to +"..(level-1)..".")

end

if isArmor(itemEx.uid) == TRUE then

setItemArmor(itemEx.uid,doTransform(gain.loseArmor ,itemEx.uid))

elseif isWeapon(itemEx.uid) == TRUE then

setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx.uid))

setItemDefense(itemEx.uid, doTransform(gain.loseDefense,itemEx.uid))

elseif isShield(itemEx.uid) == TRUE then

setItemDefense(itemEx.uid, doTransform(gain.loseShield,itemEx.uid))

end

end

doSendMagicEffect(toPosition, 9)

end

doRemoveItem(item.uid,1)

return TRUE

end

está ai a conf.

Compartilhar este post


Link para o post
Mock    32
Mock

@xyto

Bom, pelo que eu vi nao tem nada errado, o problema é que você esta usando alissow e o script funciona em TFS.

Compartilhar este post


Link para o post
xyto    0
xyto

exatamente, =(

não tem como fazer funcionar no alissow (yourots)?

porque eu estou usando servers de protocolo 8.52 e esse foi o melhor que eu achei :P

Compartilhar este post


Link para o post
Mock    32
Mock

@xyto

alisso eu sei derrubar pelo tibia sem ser gm.

troca isso baxa otro server. nao aconselho alissow.

Compartilhar este post


Link para o post
xyto    0
xyto

é, mas o problema é que não saiu o tfs pra 8.52 ;D

e ai tem como dar uma maozinha não? :D

Compartilhar este post


Link para o post
ghost88    0
ghost88

Seguinte.....tive que mudar algumas coisas se você não se importar Mock =P

a chance eu fiz baseado em maxlvl = 10 de modo que

0 -> +1 = 100%

+1 -> +2 = 90%

+2 -> +3 = 80%

+3 -> +4 = 70%

+4 -> +5 = 60%

+5 -> +6 = 50%

+6 -> +7 = 40%

+7 -> +8 = 30%

+8 -> +9 = 20%

+9 -> +10 = 10%

+10 -> +11 = N da pois @=10 e #=10 então @-# = 0 logo 0*10 = 0 "(@-#)*10"

 

Porem tenho uma duvida...O numero em "chance=?" pode ser maior que 100 (caso o resultado da equação de 101 ou 102)? Sei que pode parecer uma pergunta inutil....soh estou tentando fazer um sistema para outros max levels

 

seila, não sei se era de proposito que as armas aumentavam de modo estranho por exemplo: Solar axe +2 o atk era 60 em +3 foi para 64 e em +4 foi para 69

então resolvi deixar simples os gains e losses

 

local gain = {

gainArmor='&p+1',loseArmor='&p-1',

gainShield='&s+1',loseShield='&s-1',

gainAttack='&a+1',loseAttack='&a-1',

gainDefense='&d+1',loseDefense='&d-1',

chance='(@-#)*10'

maxlvl = 10,

tambem tive que mudar o %d%d para %d+ como mostra abaixo

 

local _,_,lvl = string.find(name,'+(%d+)')
Mock tá de parabéns, não posto muito no forum mas sempre to atento nas novidades e esse seu sistema está muito bom. Editado por ghost88

Compartilhar este post


Link para o post
Zudokato    0
Zudokato

Eu tentei usar mas da o mesmo erro q o xyto (ja tinha conseguido uma vez, mas o pc formato e perdi tudo) agora eu testei em Crying Damson (TFS 0.3.5) ja tentei editar, tentei reinstala o script, e nada... se não pega em tfs 0.3.5 fala em qual pega... pq esse foi um dos scripts q mais gostei ^^

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×