TO
dúvida

Chance em porcentagem de drop item.

Por Tony Araujo, 05 de nov. de 2013 em Scripts

resolvido
28
6.2k
gonorreiaswatG
08 de novembro de 2013 às 15:37

ele quer quando morrer, ter uma chance de nao dropar o item.

 

no caso tem que usar um function onDeath.

Na verdade creio que não, o que ele quer é um item que aumente as chances de drop dos monstros quando usado.

Como em MU Online entre outros.

Tony AraujoT
10 de novembro de 2013 às 23:55

Bomm , creio que alguns ja jogaram PXG ou Mu Online.

 

Existe um atributo chamado (Luck), ele permite que voce possa dropar items mais facil.

No pxg, se voce tem um X-LUCK TIER 7, voce vai dropar stones igual agua.

 

Então, eu pensei melhor, e vou fazer por onKill.

Como o meu game é custom, axo que vai ser facil .

 

Jaja eu posto o resultado para voces .

SkymagnumS
11 de novembro de 2013 às 00:11

Mas eu já postei o regaçado uheuhehue, por onKill tem que faze uma gambiarra porque é mais difícil de pegar o corpo do monstro a onDeath já possui o parâmetro.

 

function onDeath(cid, corpse, deathList)
 
    local _D = {
        ['Morgaroth'] = {random = getItemAttribute(getPlayerSlotItem(deathList[1], N SEI SLOT DA ARMOR).uid, "drop"), reward = {2160, 10}}
    }
 
    local m = _D[getCreatureName(cid)]
    
    if m and isPlayer(deathList[1]) then
        if m.random >= math.random(1, 100) then
            doAddContainerItem(corpse.uid, m.reward[1], m.reward[2] or 1)
        end
    end
 
    return true
end

Editado Novembro 11 por Skymagnum

Tony AraujoT
11 de novembro de 2013 às 00:21

OOOH fela, eu preciso adicionar todos os loots.

 

Faz de um modo ai , qe eu posso configurar todos os loots, e tipo, a quantidade

Tipo assim

 

[itemID, chance, ammount]

 

Se possivel. Obrigado <3

SkymagnumS
11 de novembro de 2013 às 00:58

Mas você está usando oque pra ver se ele tem a porcentagem de chance?

gonorreiaswatG
11 de novembro de 2013 às 01:05

Manolo, tenho um tópico que é capaz de te ajudar hein.

Talvez com umas edições básicas para não precisar mudar do config.lua e pronto.

Aqui você seleciona o item que dará o drop e já 'élvis'.

 

Da um bizú aí e me diz.

 

Boa sorte.

Tony AraujoT
12 de novembro de 2013 às 15:55

Bom, isso ai eu crio uma formula.

 

Eu crio um rate basico dentro desse script ai mesmo que voce criou e faço a minha versão

eu só não tenho ideia de como criar, uma tabela de todos os loots, tipo

 

 

["Rat"] = {[itemId, ammount, chance_Drop], [2160, 100, 10]}

 

Dai tipo

 

faz um math.random de 1 até o ammout,

Dai tambem, faz um math.random, no chance drop de cada loot e talz ...

gonorreiaswatG
12 de novembro de 2013 às 17:58

Bom, isso ai eu crio uma formula.

 

Eu crio um rate basico dentro desse script ai mesmo que voce criou e faço a minha versão

eu só não tenho ideia de como criar, uma tabela de todos os loots, tipo

 

 

["Rat"] = {[itemId, ammount, chance_Drop], [2160, 100, 10]}

 

Dai tipo

 

faz um math.random de 1 até o ammout,

Dai tambem, faz um math.random, no chance drop de cada loot e talz ...

 

Manolo, você viu o que te mandei?

Pois pelos princípios do mesmo parece ser bem mais simples de alterar.

Editado Novembro 12 por Adriano Swatt

Tony AraujoT
12 de novembro de 2013 às 23:41

Opa , ajudo bastante.

 

Com aquele script ali, eu vou tentar passar de Rate, para %.

 

Obrigado ai , rep+

gonorreiaswatG
13 de novembro de 2013 às 00:03

Opa , ajudo bastante.

 

Com aquele script ali, eu vou tentar passar de Rate, para %.

 

Obrigado ai , rep+

Está testando com o script que te passei?

Tony AraujoT
13 de novembro de 2013 às 15:07

Eu vou editar ela primeiro, depois eu testo.

 

Mas com as funçoes ai da pra fazer direitinho .

 

Vou transformar a rate, em porcento e talz .

 

Luck : 1% = Rate : 0.1

 

NewRate = Rate + Luck = Rate = 1 + Luck = 0.1 = NewRate = 1.1

gonorreiaswatG
13 de novembro de 2013 às 15:54

Isso mesmo, seguindo este raciocínio creio que dará tudo certo.

 

Boa sorte manolito'

2 meses depois...
zipter98Z
15 de janeiro de 2014 às 21:44

Tópico movido para a seção de dúvidas e pedidos resolvidos.