All systems Items, economy and progression

Curva de níveis e prêmio por nível

A tabela que define quanta experiência cada nível custa, quanto se perde ao morrer e como o karma é calculado — e, além disso, permite entregar item automaticamente quando o jogador atinge marcos. Tudo em playerLevels.xml.

This document has not been translated yet — showing the Portuguese version.

Por que isso importa para o seu servidor

Esta é a tabela que decide o ritmo do seu servidor. Rate multiplica o ganho, mas é aqui que está o custo de cada nível — e mexer nos dois sem olhar para os dois juntos é como acelerar sem saber a marcha.

O que costuma passar despercebido é o prêmio por nível. Entregar um item ao alcançar o nível 20, 40, 76 dá ao jogador novo uma recompensa que ele não precisou procurar. É o tipo de coisa que faz alguém passar do primeiro dia — e o primeiro dia é onde você perde a maior parte de quem entra.

A estrutura do arquivo

Uma linha por nível:

<playerLevel level="1" karmaModifier="0.772184315" requiredExpToLevelUp="0"
             expLossAtDeath="10.0" fight="57-1"/>
<playerLevel level="2" karmaModifier="2.069377971" requiredExpToLevelUp="68"
             expLossAtDeath="9.875" />
<playerLevel level="6" karmaModifier="2.510075822" requiredExpToLevelUp="6038"
             expLossAtDeath="9.375" fight="57-1"/>
AtributoO que faz
levelO nível descrito pela linha.
requiredExpToLevelUpA experiência acumulada necessária para chegar nele.
expLossAtDeathPercentual de experiência perdido ao morrer nesse nível. Repare que ele cai conforme o nível sobe.
karmaModifierO multiplicador usado no cálculo de karma.
fightPrêmio entregue a personagem de combate ao atingir o nível.
magePrêmio entregue a personagem mágico.
isIpBlockCom true, aquele marco paga uma vez por IP.

O formato do prêmio

fight e mage usam ItemId-Quantidade, e aceitam vários itens separados por ponto e vírgula:

fight="57-1000;9244-1"

Ter os dois campos separados permite premiar de forma útil: quem luta recebe algo que serve para lutar, quem conjura recebe outra coisa. Dar o mesmo item aos dois é uma oportunidade desperdiçada.

O isIpBlock

É a defesa contra o abuso óbvio: criar dez personagens, subir cada um até o nível premiado e recolher dez vezes. Com isIpBlock="true", o marco paga uma vez por IP.

Vale ligar em todos os marcos que entreguem item de valor. Nos marcos simbólicos, com item barato, não faz diferença — e deixar desligado ali evita punir irmãos jogando na mesma casa.

Onde colocar os marcos

O arquivo entregue já premia os níveis 1 e 6 com adena. A lógica de espalhar os demais:

  • Níveis baixos (1 a 20) — prêmios pequenos e frequentes. O objetivo é dar ritmo ao começo, não dar poder.
  • Marcos de classe (20, 40) — as mudanças de classe são o momento natural para um prêmio maior.
  • 76 — o marco simbólico do Interlude. Vale algo à altura.
  • Depois de 76 — cuidado. Aqui o jogador já está estabelecido, e prêmio automático compete com o conteúdo que deveria dar o item.

Cuidados

  • Mexer em requiredExpToLevelUp afeta quem já está jogando. Baixar o custo de um nível não devolve experiência a quem já passou por ele, mas muda a curva no meio da corrida.
  • expLossAtDeath alto em nível baixo afasta jogador novo. A curva entregue já começa em 10% e diminui — mantenha essa direção.
  • Prêmio sem isIpBlock em item de valor será explorado. Não é hipótese, é certeza.
  • Confira todos os IDs de item antes de abrir: um ID errado no fight simplesmente não entrega nada, e você só descobre quando alguém reclama de não ter recebido.
  • Não use este arquivo para ajustar rate. Rate tem lugar próprio nas configurações; usar a curva de nível para isso torna os dois impossíveis de raciocinar juntos.

Como isso conversa com o resto da base

O level_top.xml em reward/ premia quem lidera em nível, e há linha de missão que pode apontar para progresso de nível. Os multiplicadores de experiência do VIP atuam sobre o ganho, enquanto esta tabela define o custo — o resultado que o jogador sente é a razão entre os dois.

Talk on WhatsAppContact here