Ir para conteúdo
  • 0

Monster Loot REP+


totonho18

Pergunta

Quero colocar uma quantidade mínima no loot do monster.

quando vou programar uso essa tag:

<item id="2148" count="143" chance="100000"/>

Traduzindo ela tem 100% de chance de dropar no mínimo 1 e no maximo 143 itens de natureza 2148!

 

Eu quero programar o loot para dropar um quantidade mínima de itens.

EXEMPLO que drope no mínimo 80 e no maxmo 143.

Eu imagino q seria uma tag desse estilo,aqui \/ porém esse já testei,e n deu certo!!!

<item id="2148" countmin="80" countmax="143"chance="100000"/>

como faço pra programar a quantidade mínima de itens ao meu gosto?

REP+

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Slicer sua ideia seria perfeita pra mim,porém meu server não é open source,ai já descarta essa possibilidade,agora a ideia do creaturescript seria legal,até acho q eu seria capaz de criar um script assim,mas creio q teria q criar um script pra cada monster,aí é trabalho demais. Mas valeu então não vai ter solução,pode fechar o tópico e obrigado!

 

Slicer disse!

dai eh soh saber oq ta fazendo ^^ -ps: o loot maximo eh de 100 [std::min(100, intValue)]... em tese, n adianta tu botar 143 o.O-

 

funciona colocar + de 100 unidades sim amigão,nos ots mais novos pelo menos eu tenho certeza q da,a partir do 9.10 todos os servers q controlo já são capazes de usar esse artifício porém tem o jeito certo de usar!

<item id="2148" countmax="955" chance="100000"/> -- ERRADO! DESSE JEITO N FUNCIONA
<item id="2148" count="955" chance="100000"/> -- CORRETO,assim funciona é só tirar o "max"

Abraços! e vlw

Link para o comentário
Compartilhar em outros sites

  • 0

não existe uma maneira de fazer isso em xml.
vc pode fazer um creaturescript onDeath ou onKill pra isso.

mas se tu quer que drope um mínimo de gold eu aconselho por 100gp na forma de 1 platinum que sempre dropa.

Link para o comentário
Compartilhar em outros sites

  • 0

se tu tiver as sources do teu serv e souber mexer um pouco nelas da pra fazer isso ae...

 

vai em monsters.cpp e acha essa parte:

if(readXMLInteger(node, "count", intValue) || readXMLInteger(node, "countmax", intValue))
   lootBlock.count = std::max(1, std::min(100, intValue));
else
   lootBlock.count = 1;

dai eh soh saber oq ta fazendo ^^ -ps: o loot maximo eh de 100 [std::min(100, intValue)]... em tese, n adianta tu botar 143 o.O-

Link para o comentário
Compartilhar em outros sites

  • 0

no meu 8.54 funciona aqui.
colocar 143 é como colocar um de 100 outro de 43.
eu acho.
vou até testar pra ver.

edit:
eu testei e funciona sim.
e detalhe eu usei "countmax" e não só "count", acredito que os dois funcionam exatamente do mesmo jeito.

Editado por OtheReality
Link para o comentário
Compartilhar em outros sites

  • 0

/\ eh bom testar entao... pq pela linha de codigo q botei ali n eh pra acontecer isso... ele ta limitando o valor maximo a 100, std::min(100, intValue)... a n ser q tuas sources sejam editadas ou q seja feita uma outra checagem em outro lugar sei la...

Link para o comentário
Compartilhar em outros sites

  • 0

psé eu vi o código, realmente não deveria passar de 100, mas passa. e ainda dá o gold em 2 slots diferentes como se fosse mesmo um de 1 a 100 e outro de 1 a 43.
talvez seja a versão que é diferente ou uma outra checagem mesmo. eu uso 0.3.6pl1, eu passei pra 8.60, mas a source é do 8.54.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...