Todos os sistemas Itens, economia e progressão

Sistema de Enchant

Reescrito do zero. A chance é definida por nível e por tipo de scroll, em arquivo aberto: você escolhe o que acontece na falha, até onde é seguro, quais equipamentos cada scroll aceita e em que marcas o servidor anuncia o sucesso. Cinco tipos de scroll em enchant/.

Por que isso importa para o seu servidor

Enchant é o sistema que define o ritmo do seu servidor inteiro. Chance alta demais e todo mundo chega ao topo em duas semanas — o servidor esvazia por falta de objetivo. Chance baixa demais e o jogador desiste na terceira arma quebrada.

O problema do Interlude original é que essa curva é praticamente fixa. Aqui ela é uma tabela: cada nível tem a sua chance, e você desenha a curva que quiser. Dá para fazer os primeiros níveis seguros, criar um patamar de risco no meio e deixar o topo realmente raro — que é a forma de manter conteúdo por meses sem tocar em rate.

Cada tipo de scroll fica num arquivo:

ArquivoO que é
scrolls.xmlAs scrolls normais, por grade e tipo de equipamento.
blessed.xmlAbençoadas: preservam o item ao falhar.
crystall.xmlCrystal Scrolls, com faixa e comportamento próprios.
cursed.xmlAmaldiçoadas: ganho maior, risco maior.
yogiScroll.xmlScroll especial, com regra própria de sucesso e perda.

A estrutura de uma scroll

<scroll itemId="959" grade="S" target="WEAPON" onFail="CRYSTALIZE"
        increment="1" chanceBonus="0" minLevel="0" maxWeapon="0"
        safeMax="3" safeMaxFull="4">
    <enchant level="1" weaponChance="100" magicWeaponChance="100" />
    <enchant level="5" weaponChance="25" magicWeaponChance="25"
             announce="%s has successfully enchanted his item %s" />
</scroll>

O cabeçalho

AtributoO que faz
itemIdO ID da scroll no datapack.
gradeA grade que ela aceita: D, C, B, A, S.
targetO tipo de equipamento: WEAPON, ARMOR, JEWEL.
onFailO que acontece quando falha. É o atributo mais importante do arquivo — veja abaixo.
incrementQuantos níveis sobem por sucesso. 1 é o normal; 2 cria scrolls de salto.
chanceBonusPercentual somado à chance da tabela. Serve para criar variantes "melhoradas" da mesma scroll.
minLevelEnchant mínimo que o item precisa ter para a scroll funcionar. Permite scroll que só age a partir de certo ponto.
maxWeaponTeto de enchant. 0 significa sem teto próprio.
safeMaxAté que nível a falha não destrói o item.
safeMaxFullO mesmo, para full armor — normalmente um nível acima.

O que acontece na falha

O onFail aceita:

  • CRYSTALIZE — o item vira cristais. É o comportamento clássico do Interlude.
  • KEEP — o item continua igual, só a scroll é gasta. Servidor mais leve, sem perda.
  • DECREASE — o item desce um nível. Um meio-termo: dói, mas não zera meses de progresso.

Essa escolha define o caráter do servidor mais do que qualquer rate. KEEP com chances baixas cria um servidor de paciência; CRYSTALIZE com chances médias cria um de aposta.

A tabela de chance

Uma linha por nível:

<enchant level="4" weaponChance="100" magicWeaponChance="100" />
<enchant level="5" weaponChance="25"  magicWeaponChance="25" />
AtributoO que faz
levelO nível que está sendo tentado. A linha level="5" é a chance de sair do +4 para o +5.
weaponChanceChance percentual para arma física.
magicWeaponChanceChance percentual para arma mágica. Separar as duas permite compensar o peso maior do enchant em armas mágicas.
announceMensagem global quando o enchant dá certo naquele nível. %s é substituído pelo nome do jogador e pelo nome do item, nessa ordem. Deixe de fora para não anunciar.

No exemplo entregue, os níveis 1 a 4 são 100% e do 5 em diante caem para 25%. É uma curva de dois patamares: todo mundo chega ao +4 sem sofrer, e o risco começa exatamente onde o item já vale alguma coisa.

O anúncio

Colocar announce só em marcas redondas — 5, 10, 16 — funciona melhor do que anunciar tudo. O anúncio vira evento: o chat para, todo mundo vê, e o jogador que conseguiu ganha o status que o fez gastar. Anunciar todo enchant transforma isso em ruído e as pessoas param de ler.

Desenhando a sua curva

Uma abordagem que costuma funcionar:

  1. Zona segura — do +1 até o safeMax, chance alta. O jogador aprende o sistema sem perder nada.
  2. Zona de decisão — logo acima do safeMax, a chance cai e a falha passa a doer. É aqui que a scroll abençoada ganha valor.
  3. Zona de prestígio — os últimos níveis, chance baixa e announce ligado. Pouca gente chega, e quem chega é conhecido pelo servidor inteiro.

Ajuste a chance, não o safeMax. Mexer no safeMax depois de aberto muda retroativamente o risco que os jogadores acharam que estavam correndo.

Cuidados

  • O multiplicador de enchant do VIP se soma a isto. O atributo bonus enchant em vip/*.xml multiplica a chance da tabela. Calcule o resultado final antes de achar que a curva está calibrada.
  • chanceBonus é somado, não multiplicado. Um chanceBonus="10" numa linha de 25% resulta em 35%, não em 27,5%.
  • Alterar a tabela vale para todos, inclusive itens já enchantados — o que muda é a próxima tentativa.
  • Cada tentativa é registrada. O log de enchant vai para o Discord; use-o quando um jogador afirmar que perdeu item sem ter tentado.

Como isso conversa com o resto da base

O enchant tem painel de edição dentro do jogo, então o ajuste fino pode ser feito com o servidor no ar. As scrolls abençoadas, crystal e cursed são variações do mesmo formato — o que muda é o onFail e a curva. E o painel de augment usa uma faixa de item separada (9212–9243) justamente para não colidir com este sistema.

Falar no WhatsAppContato aqui