LogoyStore

yMinasPacketsEnchants

Encantamentos extras de mineração para o yMinasPackets.

yMinasPackets

Visao Geral

O yMinasPacketsEnchantsAddon adiciona encantamentos especiais de mineracao ao sistema de picareta do yMinasPackets.

Arquivo principal:

plugins/yMinasPackets/addons/enchants.yml

Arquivo fonte padrao:

src/main/resources/addons/enchants.yml

Ativacao

O arquivo addons/enchants.yml so e carregado quando o addon yMinasPacketsEnchantsAddon esta instalado e acessivel.

No codigo, a verificacao e feita tentando acessar:

com.ystoreplugins.yminaspacketsenchantsaddon.Main.get()

Se o addon nao estiver ativo, os encantamentos desse arquivo nao sao registrados.

Encantamentos Padrao

O arquivo padrao contem estes encantamentos:

IDNomeFuncao
layer-midasLayer-MidasGera uma camada/linha de blocos especiais na mina
midasMidasGera uma mina/area de blocos especiais
meteorsMeteorosSpawna bolas de fogo que caem e quebram blocos
arrowsArrowsSpawna flechas que caem e quebram blocos
boomerangBoomerangExecuta uma animacao em espiral que quebra blocos
stormStormGera raios/tempestade que quebram blocos em area

O codigo tambem reconhece snowballs como encantamento do addon, mas ele nao vem configurado no addons/enchants.yml padrao deste projeto.

Como o Addon e Carregado

O processo de encantamentos carrega os arquivos nesta ordem:

  1. enchantments/enchants.yml
  2. enchantments/custom_enchants.yml
  3. addons/enchants.yml, se o yMinasPacketsEnchantsAddon estiver ativo
  4. addons/deluxe.yml, se o yMinasPacketsDeluxeAddon estiver ativo
  5. private/orfz.yml, se a chave privada estiver ativa

Se uma chave de encantamento pertence ao addon e o addon nao esta ativo, ela e ignorada.

Funcionamento Geral

Os encantamentos extras seguem o mesmo modelo do sistema principal:

  • O jogador precisa possuir nivel maior que 0 no encantamento.
  • O encantamento nao pode estar bloqueado na lista de bloqueados do jogador.
  • A chance de ativacao e calculada por level-percentage * nivel.
  • Boosts do SingleBoosts para enchants podem multiplicar a chance.
  • Se options.permission estiver configurado, o jogador precisa da permissao.
  • Se options.skin-whitelist estiver configurado, a skin da picareta precisa estar permitida.
  • Se options.delay estiver em cooldown, o encantamento nao ativa.

Formula base de chance:

chance = level-percentage * nivel-do-encantamento * boost-de-enchants

Estrutura do YAML

Todos os encantamentos ficam dentro de:

enchants:
  id-do-encantamento:
    ...

O ID do encantamento deve ser mantido conforme a whitelist do plugin. Alterar midas para outro nome, por exemplo, faz o encantamento deixar de ser reconhecido como Midas.

Campos Principais

name

Nome interno/exibido do encantamento.

name: 'Midas'

pickaxe-level

Nivel minimo da picareta necessario para comprar/evoluir.

pickaxe-level: 0

order

Ordem do item no menu de encantamentos.

order: 18

show-menu

Define se o encantamento aparece no menu.

show-menu: true

can-buy

Define se pode ser comprado/evoluido pelo menu.

can-buy: true

show-infinity

Define se o menu deve exibir infinito no lugar do nivel.

show-infinity: false

level-percentage

Chance por nivel do encantamento.

level-percentage: 10

Exemplo: com level-percentage: 10 e nivel 5, a chance base e 50.

animation

Controla animacoes visuais quando suportado pelo encantamento.

animation: true

duration

Duração em segundos usada por encantamentos com animacao temporaria.

duration: 30

No boomerang, o duration tambem entra no cooldown efetivo salvo para o jogador.

radius

Raio de acao do encantamento, quando aplicavel.

radius: 2

No storm, o raio define a area ao redor dos pontos atingidos pelos raios.

Nivel

level:
  default: 0.0
  maximum: 10.0

default

Nivel inicial do encantamento.

maximum

Nivel maximo permitido.

Use -1 apenas se o sistema principal do plugin estiver preparado para tratar como infinito.

Mensagens

messages:
  title: '&cMidas<nl>&cativado'
  actionbar: ''
  chat: ''

title

Titulo enviado quando o encantamento ativa.

Use <nl> para separar titulo e subtitulo.

actionbar

Mensagem de actionbar enviada na ativacao.

chat

Mensagem de chat enviada na ativacao.

sound

Campo opcional aceito pelo carregador para tocar som na ativacao.

messages:
  sound: ''

Precos

price-multiplier

Multiplicador geral do preco.

price-multiplier: 1.00

prices-default

Custo base do encantamento.

prices-default:
  price1:
    provider: 'yminaspackets'
    price: 10000.0

prices-per-level

Custo adicional por nivel.

prices-per-level:
  price1:
    provider: 'yminaspackets'
    price: 10000.0

prices-disenchanter

Valor usado no desencantador.

prices-disenchanter:
  price2:
    provider: 'yminaspackets'
    price: 100.0

O provider deve apontar para uma economia registrada no yMinasPackets, como yminaspackets.

Displays do Menu

Cada encantamento possui itens de menu para estados diferentes:

displays:
  can:
    ...
  cant:
    ...
  permission:
    ...
  maximum:
    ...

can

Item exibido quando o jogador pode evoluir o encantamento.

cant

Item exibido quando faltam requisitos, blocos ou nivel.

permission

Item exibido quando falta permissao.

maximum

Item exibido quando o encantamento ja esta no maximo.

Placeholders de Displays

Disponiveis no nome/lore dos itens do menu:

PlaceholderDescricao
{actual}Nivel atual do encantamento
{maximum}Nivel maximo
{percentage}Chance atual de ativacao
{yminaspackets}Custo usando o provider yminaspackets
{level}Nivel de picareta exigido

Outros providers podem expor placeholders conforme o sistema de economia do plugin.

Options Opcionais

Mesmo quando nao aparecem no addons/enchants.yml padrao, o carregador aceita a secao options.

options:
  delay: 0
  xp: true
  xp-mcmmo: true
  economy: true
  economy-blacklist: []
  blocks: true
  energy: true
  custom-enchant: true
  rewards: true
  permission: ''
  permission-buy: ''
  skin-whitelist: []
  show-skin-whitelist: false

delay

Tempo em segundos antes do encantamento poder ativar novamente.

xp

Permite entregar EXP vanilla pelos blocos processados.

xp-mcmmo

Permite entregar XP mcMMO.

economy

Permite entregar economias configuradas.

economy-blacklist

Lista de economias que esse encantamento nao deve afetar.

blocks

Permite entregar blocos/economia principal.

energy

Permite entregar energia.

custom-enchant

Permite ativar efeitos de custom enchant vinculados ao processamento.

rewards

Permite ativar mine_rewards.

permission

Permissao necessaria para o encantamento funcionar.

permission-buy

Permissao necessaria para comprar/evoluir pelo menu.

Se nao configurada, usa o mesmo valor de permission.

skin-whitelist

Lista de order das skins que permitem o encantamento funcionar.

show-skin-whitelist

Define se o encantamento aparece no menu quando a skin atual nao esta na whitelist.

Multiplicadores de Economia

O carregador aceita multiplicador por provider:

economy-multiplier:
  yminaspackets: 0.5
  money: 0.3

Isso permite reduzir ou aumentar os ganhos de um encantamento especifico.

Economias nao listadas mantem o multiplicador padrao 1.0.

Encantamentos

layer-midas

Gera uma camada/linha de blocos especiais na mina.

Configuracao padrao relevante:

layer-midas:
  name: 'Layer-Midas'
  pickaxe-level: 0
  level-percentage: 10
  animation: true
  duration: 30
  level:
    default: 0.0
    maximum: 10.0

Uso recomendado:

  • Use duration para controlar por quanto tempo o efeito especial permanece ativo.
  • Ajuste level-percentage para controlar a frequencia de ativacao.
  • Ajuste os precos para balancear a geracao de blocos especiais.

midas

Gera uma area/mina de blocos especiais.

Configuracao padrao relevante:

midas:
  name: 'Midas'
  level-percentage: 10
  animation: true
  duration: 30

O efeito e ativado durante a mineracao quando passa na chance configurada.

meteors

Spawna bolas de fogo visuais que caem em pontos da mina e quebram blocos.

Configuracao padrao relevante:

meteors:
  name: 'Meteoros'
  level-percentage: 10

O codigo cria animacoes de FIREBALL e processa blocos atingidos dentro do cuboid da mina.

arrows

Spawna flechas visuais que caem em pontos da mina e quebram blocos.

Configuracao padrao relevante:

arrows:
  name: 'Arrows'
  level-percentage: 10

O codigo cria animacoes de ARROW e processa blocos atingidos dentro do cuboid da mina.

boomerang

Executa uma animacao circular/espiral que quebra blocos.

Configuracao padrao relevante:

boomerang:
  name: 'Boomerang'
  level-percentage: 10
  duration: 20

O duration define o tempo da animacao e tambem influencia o cooldown salvo apos a ativacao.

storm

Gera raios/tempestade em pontos da mina e quebra blocos ao redor.

Configuracao padrao relevante:

storm:
  name: 'Storm'
  level-percentage: 10
  radius: 2

O radius define a area de blocos afetados ao redor dos pontos atingidos.

Exemplo de Ajuste de Balanceamento

enchants:
  storm:
    level-percentage: 0.05
    radius: 3
    options:
      delay: 5
    economy-multiplier:
      yminaspackets: 0.75

Esse exemplo faz o storm ativar com menos frequencia, ter raio maior, cooldown de 5 segundos e reduzir os ganhos de blocos para 75%.

Problemas Comuns

O encantamento nao aparece no menu

Verifique show-menu, pickaxe-level, permissao de compra e se o addon esta ativo.

O encantamento aparece, mas nao ativa

Verifique nivel atual do encantamento, level-percentage, options.permission, skin-whitelist, cooldown e lista de encantamentos bloqueados do jogador.

O encantamento ativa demais

Reduza level-percentage, reduza o nivel maximo ou configure options.delay.

O encantamento da recompensas demais

Use economy-multiplier para reduzir ganhos por provider.

Alterei o ID e parou de funcionar

Nao altere IDs como midas, storm e boomerang. O codigo reconhece os encantamentos pelas chaves fixas.

Nesta página