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.

categories.yml
commands.yml
config.yml
data.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 funcionamento do mercado. 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 do mercado serão armazenados. O plugin suporta três tipos de armazenamento:

  • SQLITE: Armazena dados em um arquivo local. Ideal para servidores pequenos.
  • 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/yMarket/data.db.

login-delay

Define o atraso (em ticks) para carregar os dados do jogador após o login. Essencial para redes com servidor de mina separado, garantindo que os dados sejam sincronizados corretamente antes do carregamento.

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

Quando ajustar:

  • Servidor único: 0-20 ticks
  • Rede BungeeCord/Velocity: 20-40 ticks
  • Conexão instável: 40-60 ticks

mohist-chat

Ativa compatibilidade com plugins de chat específicos quando usando Mohist. Necessário apenas se estiver executando o servidor em Mohist e usando um dos plugins de chat compatíveis.

# Ativar a troca do sistema de chat quando estiver no mohist
# compatível apenas com: UltimateChat, nChat e Legendchat
mohist-chat: false

Compatível com: UltimateChat, nChat e LegendChat.

Apenas ative se estiver usando Mohist e um dos plugins de chat listados.

general

Configurações gerais que controlam o funcionamento do mercado, incluindo limites de vendas, durações e custos.

general:
  # Tempo padrão para começar a venda
  default-time: 1800
  # Quantia máxima de vendas simultâneas que o servidor pode ter
  # deixe 0 para ser infinito
  max-sells: 0
  # Quantia máxima de vendas simultâneas que o jogador pode fazer
  # deixe 0 para ser infinito
  player-max-sells: 1
  # Quantia máxima de vendas destacadas que o jogador pode fazer
  # deixe 0 para ser infinito
  player-max-sponsored: 1
  # Tempo mínimo para iniciar uma venda
  # em segundos
  min-time: 900
  # Tempo máximo para iniciar uma venda
  # em segundos
  max-time: 21600
  # Valor máximo que poderá precificar um item
  # Deixe 0 para não usar limite
  max-value: 0
  # Custos para destacar o anúncio
  sponsor-prices:
    price1:
      provider: 'money'
      amount: 100.0

Destaques importantes:

default-time

Duração padrão das vendas em segundos quando o jogador não especifica um tempo customizado.

  • 1800 segundos = 30 minutos
  • 3600 segundos = 1 hora

max-sells

Limite global de vendas simultâneas no servidor. Útil para evitar sobrecarga do mercado.

  • 0 = Sem limite (pode causar lag em servidores grandes)
  • 100-500 = Recomendado para servidores médios
  • 50-100 = Recomendado para servidores pequenos

player-max-sells

Quantos anúncios simultâneos cada jogador pode ter ativo.

  • 1-3 = Conservador, força os jogadores a escolherem o que vender
  • 5-10 = Balanceado para maioria dos servidores
  • 0 = Ilimitado (não recomendado)

Use a permissão ymarket.sell_limit.[numero] para dar limites customizados a VIPs.

player-max-sponsored

Limite de anúncios destacados simultâneos por jogador. Evita que VIPs monopolizem todos os slots de destaque.

  • 1-2 = Recomendado para manter variedade
  • 3-5 = Para servidores com muitos VIPs

min-time e max-time

Define a janela de tempo permitida para as vendas.

Exemplo de configuração balanceada:

general:
  min-time: 900    # 15 minutos - Evita spam de vendas muito curtas
  max-time: 21600  # 6 horas - Impede vendas eternas

max-value

Valor máximo que pode ser definido para um item. Previne preços absurdos e trollagem.

  • 0 = Sem limite
  • 1000000 = 1 milhão (exemplo)

Custo para destacar um anúncio. Pode adicionar múltiplos providers de economia.

Exemplo com múltiplas economias:

general:
  sponsor-prices:
    price1:
      provider: 'money'
      amount: 5000.0
    price2:
      provider: 'points'
      amount: 100

Jogadores que têm ymarket.sponsor destacam gratuitamente.

black-list

Sistema de blacklist para impedir que certos itens sejam vendidos no mercado. Útil para bloquear itens duplicados, exploits ou itens que quebram a economia.

black-list:
  # Materiais que estarão na black-list
  materials: [ 'STONE', 'LOG:0' ]
  # NBTTags que estarão na black-list
  nbt-tags: []

materials

Lista de materiais bloqueados. Use o formato MATERIAL:DATA para versões específicas.

Exemplos de uso:

black-list:
  materials: 
    - 'STONE'           # Bloqueia todas as pedras
    - 'LOG:0'           # Bloqueia apenas carvalho
    - 'BEDROCK'         # Previne venda de bedrock
    - 'BARRIER'         # Bloqueia itens de staff
    - 'COMMAND_BLOCK'   # Previne exploits

nbt-tags

Lista de NBT tags bloqueadas. Útil para bloquear itens customizados específicos de outros plugins.

Exemplos de uso:

black-list:
  nbt-tags:
    - 'CustomWeapon-Admin'      # Bloqueia armas de admin
    - 'EventItem-Temporary'     # Bloqueia itens de evento
    - 'DupeTest'                # Bloqueia itens marcados como teste

Teste sempre a blacklist após configurar para garantir que não está bloqueando itens legítimos acidentalmente.

npc

Configurações do NPC do mercado. O NPC serve como ponto de acesso visual ao mercado e pode ser colocado em qualquer local do spawn.

npc:
  skin: 'Pitombaa'
  hologram:
    offset: 3.4
    hologram:
      - '&6&lMERCADO'
      - '&7Faça o comércio rápido dos itens!'
      - '[item]EMERALD'

skin

Define a skin do NPC usando o nome de um jogador do Minecraft. A skin será carregada automaticamente.

Exemplo:

npc:
  skin: 'Notch'  # Usa a skin do jogador Notch

hologram.offset

Distância vertical do holograma em relação ao NPC. Ajuste conforme necessário para alinhar visualmente.

  • 3.0-3.5 = Altura padrão recomendada
  • 2.5 = Mais baixo, próximo da cabeça
  • 4.0 = Mais alto, bem acima da cabeça

hologram.hologram

Linhas do holograma exibidas acima do NPC. Suporta cores e itens flutuantes.

Recursos especiais:

  • Use & para códigos de cor
  • Use [item]MATERIAL para exibir itens flutuantes

Exemplo customizado:

npc:
  hologram:
    offset: 3.4
    hologram:
      - '&6&l⬇ MERCADO ⬇'
      - '[item]DIAMOND'
      - '&eCompre e venda itens!'
      - '&7Clique no NPC para abrir'
      - '[item]GOLD_INGOT'

Use /mercado setnpc para criar o NPC na sua localização atual e /mercado delnpc para removê-lo.

Sistema de Staff

O yMarket oferece um sistema de coleta de itens para staff, permitindo que moderadores removam anúncios do mercado quando necessário.

Permissão ymarket.staff.collect

Staff com a permissão ymarket.staff.collect pode coletar (remover) itens do mercado e enviar para seu inventário.

Como usar:

  1. Abra o mercado normalmente (/mercado)
  2. Clique com o botão direito em um item anunciado
  3. Selecione a opção "Coletar" ou similar (conforme configuração do menu)
  4. O item será removido do mercado e adicionado ao inventário do staff

Permissões necessárias:

ymarket.staff.collect - Permite coletar itens do mercado

Configuração em permission systems:

Exemplo com LuckPerms:

/lp user [staff-name] permission set ymarket.staff.collect true

Exemplo com PermissionsEx:

/pex user [staff-name] add ymarket.staff.collect

Mensagens de Coleta de Staff

Quando um staff coleta um item, duas mensagens são exibidas:

  1. Mensagem para o staff:

    Você coletou o item de {player} do mercado.
  2. Mensagem para o dono do item:

    ATENÇÃO! Um staff ({staff}) removeu seu item do mercado.

As mensagens podem ser customizadas em config.yml dentro da seção chat:

chat:
  staff-collected: '&aVocê coletou o item de &e{player}&a do mercado.'
  staff-collected-owner: '&c&lATENÇÃO! &cUm staff (&e{staff}&c) removeu seu item do mercado.'

Placeholders disponíveis:

  • {player} - Nome do jogador dono do item
  • {staff} - Nome do staff que coletou o item

Casos de uso

O sistema de coleta de staff é útil para:

  • Remover itens duplicados: Se um jogador conseguiu duplicar itens
  • Punição moderada: Remover anúncios de jogadores que violaram regras
  • Manutenção do mercado: Limpar itens inválidos ou com preços abusivos
  • Investigação de exploits: Remover itens suspeitos enquanto investiga

Coletar um item não reembolsa o valor gasto pelo jogador na venda. Use com cautela!

Combine com a permissão ymarket.ban para banir jogadores recorrentes do mercado após múltiplas violações.

Nesta página