LogoyStore

Configuração

Conheça as várias opções de configuração.

O plugin deve funcionar sem necessidade de configuração adicional, mas se você precisar alterar o comportamento do plugin, você está no lugar certo.

Após alterar a configuração, é necessário reiniciar o servidor.

Estrutura de arquivos

Abaixo está um exemplo de como é a estrutura de arquivos do plugin. Clique em uma pasta para expandi-la.

commands.yml
config.yml
economies.yml
menus.yml
messages.yml

Configuração do plugin (config.yml)

O arquivo config.yml é o coração do plugin, onde você controla todos os aspectos do sistema de aluguel de itens. Abaixo estão todas as opções disponíveis com explicações detalhadas.

debug-mode

Ativa ou desativa o modo de depuração. Quando ativado, o plugin registrará informações detalhadas no console para ajudar a identificar problemas.

# Determina o funcionamento da depuração. Valores válidos: [false, true]
debug-mode: false

Mantenha desativado em produção, pois pode gerar muitos logs e afetar a performance.

database

Define como e onde os dados dos aluguéis serão armazenados. O plugin suporta três tipos de armazenamento:

  • SQLITE: Armazena dados em um arquivo local. Ideal para servidores pequenos ou testes.
  • MYSQL: Conecta a um servidor MySQL externo. Recomendado para servidores médios.
  • HIKARI: Usa pool de conexões para MySQL. Recomendado para servidores grandes por melhor performance.
database:
  # Determina o tipo de banco de dados. Valores válidos: [SQLITE, MYSQL, HIKARI (recomendado)]
  storage-type: SQLITE

  # Dados para conexão ao banco de dados MYSQL.
  data:
    # Endereço de conexão do banco de dados. [EX: 127.0.0.1]
    host: localhost
    # Porta de conexão do banco de dados. [EX: 3306]
    port: 3306
    # Nome do banco de dados a ser conectado. [EX: minecraft]
    database: ''
    # Usuário de conexão. [EX: root]
    username: ''
    # Senha do usuário de conexão: [EX: 123]
    password: ''

Se usar SQLITE, não precisa preencher os dados de conexão. O arquivo será criado automaticamente em plugins/yAlugarItem/data.db.

redis

Configurações do servidor Redis para sincronização multi-servidor (BungeeCord/Velocity).

redis:
  # Ativar a conexão com o redis
  enabled: false
  # Endereço de conexão. [EX: 127.0.0.1]
  host: 'localhost'
  # Porta de conexão. [EX: 6379]
  port: 6379
  # Usuário de conexão. [EX: root]
  username: ''
  # Senha do usuário de conexão: [EX: 123]
  password: ''

Quando usar Redis:

  • Rede BungeeCord/Velocity com múltiplos servidores
  • Sincronização em tempo real de listagens e aluguéis entre servidores

login-delay

Delay em ticks para carregar os dados do jogador após o login. Útil em redes com servidor de mina separado, onde os dados precisam de um tempo extra para sincronizar após a troca de servidor.

# Delay para carregar os dados depois do login
# Necessário para usar em servidor de mina separado
# Recomendado: 20 ticks
login-delay: 20

20 ticks equivale a 1 segundo. Aumente este valor se os jogadores entrarem no servidor sem ver seus dados carregados corretamente.

general

Configurações gerais do sistema de aluguel. Este bloco controla os limites, proteções e comportamentos centrais do plugin.

general:
  # Máximo de listagens simultâneas por jogador (sem permissão específica)
  max-listings-default: 3
  # Taxa de cancelamento (%) cobrada do dono ao cancelar listagem alugada
  cancel-tax-percent: 10.0
  # Intervalo (em ticks) para verificar aluguéis expirados (200 ticks = 10 segundos)
  expiry-check-interval-ticks: 200
  # Se true, jogadores com item alugado no inventário não podem dar/receber dano PvP
  pvp-protection: true
  # Se true, permite mover o item alugado dentro do próprio inventário do locatário
  # O item nunca pode ser dropado nem colocado em outros contêineres (baú, funil, etc.)
  allow-inventory-move: true
  # Recall automático de itens alugáveis por durabilidade baixa
  durability-recall:
    # Se true, recolhe o item para o armazém quando a durabilidade cair abaixo de 'percent'%
    enabled: true
    # Percentual mínimo de durabilidade (0–100). Ex.: 10 = recolhe ao atingir ≤10% de durabilidade
    percent: 10.0
   # Durações pré-definidas em segundos que o locador pode selecionar
  # 3600=1h, 7200=2h, 21600=6h, 43200=12h, 86400=1dia, 259200=3dias, 604800=7dias
  duration-presets-seconds:
    - 3600
    - 7200
    - 21600
    - 43200
    - 86400
    - 259200
    - 604800
  # Penalidade de morte: ao morrer com um item alugado no inventário
  death-penalty:
    # Se true, o item dropa no chão (sem proteção) e o aluguel é finalizado imediatamente.
    # O alugador recebe uma multa no valor da hora do aluguel, creditada ao dono.
    # Se false, o comportamento padrão é mantido: o item é salvo no inbox e o aluguel continua.
    enabled: false

Destaques importantes:

  • max-listings-default: Controla quantos itens cada jogador pode listar para alugar simultaneamente. Use permissões específicas para liberar mais slots para doadores ou grupos VIP.
  • cancel-tax-percent: Se o dono cancelar uma listagem que já está alugada, esta taxa (%) é descontada do valor já pago pelo locatário antes do reembolso.
  • expiry-check-interval-ticks: Menor intervalo = expiração mais precisa, mas mais processamento. 200 ticks (10 segundos) é um valor seguro para a maioria dos servidores.
  • pvp-protection: Evita que locatários sejam mortos e percam itens alugados em combate.
  • durability-recall: Protege o dono do item contra devoluções com durabilidade muito baixa.

Para servidores PvP, considere manter pvp-protection: true e durability-recall.enabled: true para proteger tanto o locatário quanto o dono do item.

death-penalty

Define o comportamento quando um locatário morre com um item alugado no inventário.

death-penalty:
  # Se true, o item dropa no chão (sem proteção) e o aluguel é finalizado imediatamente.
  # O alugador recebe uma multa no valor da hora do aluguel, creditada ao dono.
  # Se false, o comportamento padrão é mantido: o item é salvo no inbox e o aluguel continua.
  enabled: false

Como funciona:

Quando enabled: true:

  • O item alugado é dropado no chão (sem proteção de death protections)
  • O aluguel é encerrado imediatamente
  • O locatário recebe uma multa no valor de uma hora de aluguel
  • O dono do item recebe a multa como pagamento (crédito na economia)
  • Uma mensagem é enviada a ambos os jogadores notificando o evento

Quando enabled: false (padrão):

  • O item é salvo no inbox do locatário
  • O aluguel continua ativo (o tempo segue correndo)
  • O locatário precisa recuperar o item no /alugar inbox para continuar usando

Quando usar:

  • true - Servidores PvP onde morte deve ter consequências reais
  • false - Servidores casual ou PvE onde morte é apenas um inconveniente

A multa cobrada é calculada como: preço do item / 24 horas (equivalente a 1 hora de aluguel).

item-value-penalty

Define multas baseadas no valor declarado do item quando ocorre morte ou recolhimento por durabilidade baixa.

item-value-penalty:
  # Se true, ativa a cobrança de multa baseada no valor declarado do item.
  # Requer que o dono defina um itemValue na listagem. Se itemValue=0, esta multa não se aplica.
  enabled: true
  # Percentual do valor declarado do item cobrado como multa (ex: 50 = 50% do valor do item).
  percent: 50.0

Como funciona:

Quando o dono cria uma listagem, ele pode declarar um valor de mercado para o item (itemValue). Se este valor for maior que 0 e item-value-penalty estiver ativado:

  • Na morte do locatário (com death-penalty.enabled: true): Além da multa de hora de aluguel, uma multa adicional é cobrada baseada no percentual configurado do valor declarado.
  • No recolhimento automático (por durabilidade baixa): Mesma multa adicional é cobrada.

Exemplo prático:

item-value-penalty:
  enabled: true
  percent: 50.0

Com esta configuração:

  • Item alugado por 100 moedas/hora
  • Valor declarado do item: 1000 moedas
  • Se morrer ou item ser recolhido:
    • Multa por hora: 100 moedas (para o dono)
    • Multa adicional: 50% de 1000 = 500 moedas (para o dono)
    • Total pago pelo locatário: 600 moedas

Use este sistema para cobrar multas proporcionais ao valor real do item alugado, não apenas pelo tempo de aluguel.

black-list

Define materiais e tags NBT que não podem ser colocados para alugar. Use para bloquear itens problemáticos ou provenientes de outros plugins.

# Blacklist de materiais que não podem ser alugados
black-list:
  materials: []
  # Tags NBT que indicam itens bloqueados de outros plugins
  nbt-tags: []

Exemplo de uso:

black-list:
  materials:
    - 'BEDROCK'
    - 'BARRIER'
  nbt-tags:
    - 'custom_plugin_locked'

A black-list tem prioridade sobre a white-list. Um item bloqueado pela blacklist nunca poderá ser alugado, mesmo que esteja na whitelist.

white-list

Lista de materiais permitidos. Quando enabled: true, apenas os itens desta lista poderão ser colocados para alugar. Use para restringir o sistema a itens específicos, como equipamentos de combate.

# Whitelist de materiais permitidos (se enabled: true, apenas estes podem ser alugados)
white-list:
  enabled: true
  materials:
    - 'DIAMOND_SWORD'
    - 'DIAMOND_HELMET'
    - 'DIAMOND_CHESTPLATE'
    - 'DIAMOND_LEGGINGS'
    - 'DIAMOND_BOOTS'
    - 'DIAMOND_PICKAXE'
    - 'DIAMOND_SPADE'
    - 'DIAMOND_AXE'
    - 'BOW'

Quando usar:

  • enabled: true — Quando quiser restringir o sistema a itens pré-aprovados (ex.: apenas equipamentos de combate ou mineração).
  • enabled: false — Quando quiser permitir qualquer item (exceto os da blacklist).

status

Formatação dos textos de status exibidos nos menus. Personalize as cores e os rótulos de cada estado possível de uma listagem.

# Sistema de formatos de status
status:
  available: '&aDisponível'
  rented: '&cAlugado'
  cancelled: '&eCancelado'
  expired: '&7Expirado'
StatusDescrição
availableItem disponível para ser alugado
rentedItem atualmente alugado por alguém
cancelledListagem cancelada pelo dono
expiredAluguel encerrado por tempo esgotado

Nesta página