经济

经济

经济系统,带有NPC和玩家商店的行政商店,适用于Hytale,完全可定制,以及次要货币,现金。

杂项

EconomiaSistema — Plugin de Economia para Hytale

EconomiaSistema é um plugin de economia completo para servidores Hytale, com saldos persistentes de jogadores, comandos de dinheiro, ferramentas de administração, sistemas de recompensa, uma Loja GUI completa, lojas de jogador para jogador, moeda secundária chamada Cash, suporte a vários idiomas, suporte a banco de dados MySQL e uma API pública para fácil integração com outros mods.

✅ Compatibilidade testada com: LuckPerms, MyPermissions e PermissionsPlus.
✅ Compatível com: VaultUnlocked e Cassaforte


⚠️ Aviso — HUD Personalizado

Este plugin inclui um HUD Personalizado. Atualmente, o Hytale permite apenas um HUD personalizado por vez. Se você já usa outro plugin que modifica a tela (como EyeSpy ou qualquer outro plugin de HUD), você deve:

  • Desabilitar o HUD do EconomiaSistema em mods/Economy_Economy/SystemEconomySystem.json definindo "EnableHud" como false
  • Ou instalar MultipleHUD para suportar mais de um HUD personalizado

✅ Principais Recursos

  • Saldos Persistentes (JSON / MySQL) salvos automaticamente a cada 30 segundos
  • Suporte MySQL: Integração MySQL completa para implantações de servidor escaláveis
  • Dinheiro Inicial: Novos jogadores recebem um saldo inicial configurável
  • Seguro e Estável: Manipulação de saldo segura para threads com salvamento seguro
  • Sistema de Loja: Loja do servidor com GUI, suporte a compra/venda e carregamento dinâmico de itens
  • Sistema de Loja do Jogador: Lojas de jogador para jogador com GUI, guias, gerenciamento de estoque e persistência
  • Sistema de Recompensas: Ganhe dinheiro quebrando blocos (minérios/madeira) e matando monstros
  • Formatação Avançada de Moeda: símbolo personalizado, formatação local e valores abreviados (1k, 1kk, 1kkk)
  • Placar do Plugin
  • Códigos de Cor no Estilo Minecraft para mensagens, GUI e HUD
  • Suporte a Vários Idiomas: EN / PT / ES / RU / PL / DE / HU / FR
  • Suporte ao Console: Comandos de administração funcionam a partir do console do servidor
  • Placar próprio do plugin
  • O plugin foi adaptado para um sistema de codificação de cores para mensagens semelhante ao do Minecraft.
  • HUD Personalizado (Linhas e posição)
  • Moeda secundária chamada Cash
  • Adição de NPCs com lojas individuais para cada NPC.
  • Capacidade de vender múltiplos comandos no console.
    • Exemplo de um comando de console: money give {playername} {quantity}
    • Exemplo de múltiplos comandos de console: money give {playername} {quantity},kick {playername},kick {playername}

💰 Comandos do Jogador

  • /money → Mostra seu saldo em um título estiloso na tela.
    Aliases: /eco /balance /bal
    Permissão: theeconomy.player.money
  • /cash → Mostra seu saldo de cash em um título estiloso na tela.
    Aliases: /cashbalance /cb
    Permissão: theeconomy.player.cash
  • /hud <on/off> → Ativar / desativar seu HUD
    Aliases: /ehud /economyhud
    Permissão: theeconomy.player.hud
  • /money <jogador> → Ver o saldo de outro jogador
    Permissão: theeconomy.player.money
  • /money pay <jogador> <quantia> → Enviar dinheiro para outro jogador
    Permissão: theeconomy.player.money.pay
  • /money top → Exibe os 10 jogadores mais ricos (cores especiais para o Top 3)
    Aliases: /money ranking /money leaderboard
    Permissão: theeconomy.player.money.top
  • /iteminfo → Mostra informações sobre o item na mão
    Aliases: /ii /item
    Permissão: theeconomy.player.iteminfo

🛠 Comandos de Administração

  • /money set <jogador> <quantia> → Define o saldo de um jogador
    Permissão: theeconomy.admin.money.set
  • /money give <jogador> <quantia> → Adiciona dinheiro a um jogador
    Permissão: theeconomy.admin.money.give
  • /cash give <jogador> <quantia> → Adiciona cash a um jogador
    Permissão: theeconomy.admin.cash.give
    Funciona a partir do console!

🛒 Comandos e Sistema da Loja do Servidor

  • /shop → Abre a GUI da Loja
    Aliases: /loja
    Permissão: theeconomy.player.shop
  • Navegue pelos itens disponíveis usando uma interface limpa
  • Compre e venda itens com um diálogo de confirmação
  • Campo de entrada de quantidade na GUI de confirmação
  • A loja suporta nomes de itens traduzidos, dicas de ferramentas e mensagens
  • Opções de Compra/Venda são automaticamente desabilitadas se o preço do item for definido como 0
  • Exibe uma mensagem de loja vazia quando nenhum item está disponível
  • Títulos traduzidos dinamicamente com base no idioma configurado

🛠 Comandos de Administração da Loja do Servidor

  • /shop npc add → Adiciona um NPC com um recurso interativo para abrir uma loja exclusiva para aquele NPC.
    Permissão: theeconomy.admin.shop.add
  • /shop npc movehere → Move um NPC para a localização do jogador.
    Permissão: theeconomy.admin.shop.add
  • /shop npc list → Lista todas as Lojas de NPC
    Permissão: theeconomy.admin.shop.add
  • /shop npc remove → Remove um NPC com um recurso interativo para abrir uma loja exclusiva para aquele NPC.
    Permissão: theeconomy.admin.shop.add
  • /shop manager → Permite gerenciar a LojaAdmin através da interface sem usar os comandos abaixo.
    Permissão: theeconomy.admin.shop.manager
  • /shop add <itemid> <quantidade> <precovenda> <precocompra> → Adiciona um item à loja
    Permissão: theeconomy.admin.shop.add
  • /shop tab add <nomeaba> → Adiciona uma aba à loja
    Permissão: theeconomy.admin.shop.add
  • /shop tab remove <nomeaba> → Remove uma aba da loja
    Permissão: theeconomy.admin.shop.remove
  • /shop remove <uniqueid> → Remove um item da loja
    Permissão: theeconomy.admin.shop.remove
  • /shop rpshop <nomejogador> <novo nome> → Renomeia a Loja do jogador
    Permissão: theeconomy.admin.shop.rename.player

🧑‍🤝‍🧑 Sistema de Loja do Jogador (Lojas Jogador-para-Jogador)

Os jogadores podem criar suas próprias lojas pessoais e negociar com outros.

Comandos da Loja do Jogador

  • /myshop
    Aliases: /mshop /minhaloja
    Permissão: theeconomy.player.myshop.manager
  • /myshop manager → Permite gerenciar a LojaJogador através da interface sem usar os comandos abaixo.
    Permissão: theeconomy.player.myshop.manager
  • /myshop open → Abre sua loja.
    Permissão: theeconomy.player.myshop
  • /myshop close → Fecha sua loja
    Permissão: theeconomy.player.myshop
  • /myshop add <precoCompra> <precoVenda> → Adiciona o item na mão à sua loja
    Permissão: theeconomy.player.myshop
  • /myshop remove <uniqueid> → Remove um item da sua loja
    Permissão: theeconomy.player.myshop
  • /myshop tab add <nome> → Adiciona uma aba à loja do jogador.
    Permissão: theeconomy.player.myshop
  • /myshop rename <nome> → Renomeia a loja.
    Permissão: theeconomy.player.myshop
  • /playershop <nick> → Abre a loja de outro jogador
    Aliases: /pshop /lojajogador
    Permissão: theeconomy.player.playershop
  • /shops → Lista todas as lojas de jogadores abertas
    Aliases: /lojas /shopslist
    Permissão: theeconomy.player.shops

⛏ Recompensas por Quebrar Blocos

Ganhe dinheiro automaticamente quebrando blocos:

  • Recompensas de Minério
    • Totalmente configurável por tipo de minério
    • Pode ser ativado/desativado na configuração
  • Recompensas de Madeira
    • Os valores das recompensas podem ser configurados por tipo de madeira
    • Pode ser ativado/desativado na configuração

🐲 Recompensas por Matar Monstros

Os jogadores podem ganhar dinheiro derrotando monstros:

  • Sistema de configuração individual por monstro
  • Cada monstro pode ter sua própria recompensa definida.
  • Configurável via MonsterReward em EconomyConfig
  • Logs de depuração opcionais

⚙ Opções de Configuração

  • Ativar/desativar Recompensas de Minério
  • Ativar/desativar Recompensas de Madeira
  • Ativar/desativar sistema de Loja do Jogador (EnablePlayerShop)
  • Ativar/desativar sistema de Loja Admin (EnableShop)
  • Ativar/desativar sistema de HUD (EnableHud)
  • Definir Idioma Padrão (EN / PT / ES / RU / DE)
  • Personalizar Símbolo da Moeda
  • Configurar recompensas de minério por tipo
  • Configurar recompensas de madeira por tipo
  • Configurar recompensas de monstros por tipo

🗄️ Suporte a Banco de Dados MySQL

O EconomiaSistema inclui suporte completo a banco de dados MySQL para implantações de servidor escaláveis.

Configuração MySQL (EconomySystem.json)

  • EnableMySQL (padrão: false)

  • MySQLHost (padrão: localhost)

  • MySQLPort (padrão: 3306)

  • MySQLUser (padrão: root)

  • MySQLPassword (padrão: vazio)

  • MySQLDatabaseName (padrão: theeconomy)

  • MySQLTableName (padrão: bank)

  • MySQLAdminShopTableName (padrão: adminshop)

  • MySQLPlayerShopTableName (padrão: playershop)

  • ✅ Criação automática de tabelas na primeira conexão

  • ✅ Migração perfeita entre JSON e MySQL

  • ✅ Operações de banco de dados seguras para threads

  • ✅ Suporta todos os recursos do plugin (saldos + lojas + recompensas)


🌍 Localização / Tradução

  • Language_EN.json — Inglês
  • Language_PT.json — Português
  • Language_ES.json — Espanhol
  • Language_RU.json — Russo
  • Language_PL.json — Polonês
  • Language_DE.json — Alemão
  • Language_HU.json — Húngaro
  • Language_FR.json — Francês

✅ Todas as mensagens, GUIs, dicas de ferramentas e títulos de lojas são totalmente traduzíveis
✅ Suporta placeholders e valores dinâmicos
✅ Os nomes dos itens são traduzidos em todas as mensagens e GUIs


🔌 API Pública (EconomyAPI)

O EconomiaSistema inclui uma API pública disponível em: com.economy.api.EconomyAPI

  • Consultas, gerenciamento e verificações de saldo
  • Recuperação de saldo formatado
  • Auxiliares de nome/UUID do jogador
  • Método de abertura de loja para integrações

🔗 API de Placeholder

O EconomiaSistema inclui uma API de Placeholder: com.economy.util.PlaceholderAPI

  • %balance% — Saldo do jogador (numérico)
  • %balance_formated% — Saldo do jogador (formatado)

🔌 API Pública (EconomyAPI)

O EconomiaSistema inclui uma API pública localizada em:
com.economy.api.EconomyAPI

Métodos da API Disponíveis

Consultas de Saldo

  • getBalance(UUID playerUUID)
  • getBalance(String playerName)

Gerenciamento de Saldo

  • setBalance(UUID playerUUID, double value)
  • setBalance(String playerName, double value) (retorna boolean)
  • addBalance(UUID playerUUID, double value)
  • addBalance(String playerName, double value) (retorna boolean)
  • removeBalance(UUID playerUUID, double value) (retorna boolean)
  • removeBalance(String playerName, double value) (retorna boolean)

Verificações de Saldo

  • hasBalance(UUID playerUUID, double value)
  • hasBalance(String playerName, double value)

Auxiliares de Informação do Jogador

  • getPlayerName(UUID playerUUID)
  • getPlayerUUID(String playerName)

Saldo Formatado

  • getFormattedBalance(UUID playerUUID)
  • getFormattedBalance(String playerName)

Gerenciamento de Loja

  • openShop(Player player) (retorna boolean)
    • Abre a loja para um jogador
    • Verifica automaticamente se a loja está ativada na configuração
    • Retorna true se a loja foi aberta com sucesso, false caso contrário

Exemplo de Uso da API

import com.economy.api.EconomyAPI;
import com.hypixel.hytale.server.core.entity.entities.Player;
import java.util.UUID;

// Obtém a instância da API
EconomyAPI api = EconomyAPI.getInstance();

// Consultas de saldo
double balance = api.getBalance(playerUUID);
double balanceByName = api.getBalance("NomeDoJogador");

// Gerenciamento de saldo
api.setBalance(playerUUID, 1000.0);
api.addBalance(playerUUID, 100.0);
boolean success = api.removeBalance(playerUUID, 50.0);

// Verificações de saldo
boolean hasEnough = api.hasBalance(playerUUID, 200.0);

// Saldo formatado
String formatted = api.getFormattedBalance(playerUUID);

// Informação do jogador
String name = api.getPlayerName(playerUUID);
UUID uuid = api.getPlayerUUID("NomeDoJogador");

// Abrir loja (em um evento ou comando)
public void onPlayerCommand(Player player) {
    EconomyAPI api = EconomyAPI.getInstance();
    
    // Verifica o saldo
    double balance = api.getBalance(player.getUuid());
    
    // Adiciona dinheiro
    api.addBalance(player.getUuid(), 100.0);
    
    // Abre a loja administrativa
    if (api.openShop(player)) {
        // Loja aberta com sucesso
    } else {
        // Falha ao abrir a loja (pode estar desativada ou o jogador offline)
    }
}

🔗 API de Placeholder

O EconomiaSistema inclui uma API de Placeholder pública para outros plugins:

com.economy.util.PlaceholderAPI

Placeholders Disponíveis

  • %balance% - Saldo do jogador (valor numérico)
  • %balance_formated% - Saldo do jogador (formatado com símbolo da moeda)

Métodos da API de Placeholder

  • PlaceholderAPI.getInstance().replacePlaceholders(UUID playerUUID, String text)
  • PlaceholderAPI.getInstance().replacePlaceholders(String playerName, String text)
  • PlaceholderAPI.getInstance().containsPlaceholders(String text)

Exemplo de Uso do Placeholder

PlaceholderAPI placeholderAPI = PlaceholderAPI.getInstance();

String text = "Seu saldo é %balance_formated%";
String result = placeholderAPI.replacePlaceholders(playerUUID, text);
// Resultado: "Seu saldo é R$ 1.234,56"

🔐 Permissões

Todas as permissões são registradas e visíveis no LuckPerms:

Permissões do Jogador

  • theeconomy.player.hud - Acesso ao comando /hud
  • theeconomy.player.money - Acesso ao comando /money
  • theeconomy.player.cash - Acesso ao comando /cash
  • theeconomy.player.money.pay - Acesso ao comando /money pay
  • theeconomy.player.money.top - Acesso ao comando /money top
  • theeconomy.player.shop - Acesso ao comando /shop ou /loja
  • theeconomy.player.iteminfo - Acesso ao comando /iteminfo
  • theeconomy.player.myshop - Acesso aos comandos /myshop
  • theeconomy.player.myshop.manager - Acesso ao gerenciador /myshop
  • theeconomy.player.playershop - Acesso ao comando /playershop ou /pshop
  • theeconomy.player.shops - Acesso ao comando /shops

Permissões de Administração

  • theeconomy.admin.money.set - Acesso ao comando /money set
  • theeconomy.admin.cash.give - Acesso ao comando /cash give
  • theeconomy.admin.money.give - Acesso ao comando /money give
  • theeconomy.admin.shop.add - Acesso ao comando /shop add
  • theeconomy.admin.shop.add - Acesso ao comando /shop add
  • theeconomy.admin.shop.manager - Acesso ao comando /shop manager

Grupos de Permissão

  • theeconomy.player.* - Concede todas as permissões do jogador
  • theeconomy.admin.* - Concede todas as permissões de administração
  • theeconomy.* - Concede todas as permissões

🎨 Sistema de Códigos de Cor

✨ Novo Recurso: O EconomiaSistema inclui um sistema de códigos de cor no estilo Minecraft para personalizar mensagens no chat, GUIs e HUD!

Códigos de Cor

Use & ou § seguido de um código para aplicar cores e formatação:

Cores Básicas

Código Cor Exemplo
&0 Preto &0Texto Preto
&1 Azul Escuro &1Texto Azul Escuro
&2 Verde Escuro &2Texto Verde Escuro
&3 Ciano Escuro &3Texto Ciano Escuro
&4 Vermelho Escuro &4Texto Vermelho Escuro
&5 Roxo Escuro &5Texto Roxo Escuro
&6 Dourado &6Texto Dourado
&7 Cinza &7Texto Cinza
&8 Cinza Escuro &8Texto Cinza Escuro
&9 Azul &9Texto Azul
&a Verde &aTexto Verde
&b Ciano &bTexto Ciano
&c Vermelho &cTexto Vermelho
&d Rosa &dTexto Rosa
&e Amarelo &eTexto Amarelo
&f Branco &fTexto Branco

Códigos de Formatação

  • &l - Negrito
  • &o - Itálico
  • &r - Reset (remove toda formatação e cores)

Onde Funciona

  • Mensagens no Chat: Todas as mensagens de comando, erros, notificações de sucesso
  • Texto na GUI: Títulos de janelas, rótulos, texto de botões, dicas de ferramentas, confirmações
  • Texto no HUD: Todos os rótulos do HUD, status da loja, notificações temporárias

Exemplos de Uso

Em Arquivos de Tradução (JSON)

{
  "chat_welcome": "&aBem-vindo ao servidor!",
  "chat_error": "&cErro: &fAlgo deu errado!",
  "chat_info": "&bInfo: &fSua loja está aberta"
}

Combinando Cores e Formatação

&l&6Texto Dourado em Negrito
&c&lTexto Vermelho em Negrito
&a&oTexto Verde em Itálico
&l&6&oTexto Dourado em Negrito e Itálico

Cores Padrão do HUD

O plugin usa cores padrão no HUD que podem ser personalizadas nos arquivos de tradução:

  • &l&6 - Dourado em Negrito (para rótulos principais: Nick, Dinheiro, Top Rank, Loja)
  • &a - Verde (para status positivo: Loja Aberta, Ganhos)
  • &c - Vermelho (para status negativo: Loja Fechada)
  • &r - Reset (retorna ao padrão após o rótulo)

Uso Recomendado de Cores

  • Sucesso: &a (Verde) - &aOperação bem-sucedida!
  • Erro: &c (Vermelho) - &cErro ao processar comando!
  • Aviso: &e (Amarelo) - &eAviso: Saldo insuficiente!
  • Info: &b (Ciano) - &bInfo: Sua loja está aberta
  • Destaque: &6 (Dourado) - &6Top Rank: #1
  • Título: &l&6 (Dourado em Negrito) - &l&6Loja Administrativa

Referência Rápida

Código Cor/Efeito Exemplo
&0 Preto &0Texto Preto
&1 Azul Escuro &1Texto Azul Escuro
&2 Verde Escuro &2Texto Verde Escuro
&3 Ciano Escuro &3Texto Ciano Escuro
&4 Vermelho Escuro &4Texto Vermelho Escuro
&5 Roxo Escuro &5Texto Roxo Escuro
&6 Dourado &6Texto Dourado
&7 Cinza &7Texto Cinza
&8 Cinza Escuro &8Texto Cinza Escuro
&9 Azul &9Texto Azul
&a Verde &aTexto Verde
&b Ciano &bTexto Ciano
&c Vermelho &cTexto Vermelho
&d Rosa &dTexto Rosa
&e Amarelo &eTexto Amarelo
&f Branco &fTexto Branco
&l Negrito &lTexto em Negrito
&o Itálico &oTexto em Itálico
&r Reset &rTexto Normal

Nota: Você também pode usar § em vez de & (exemplo: §a = &a)


  • EconomiaSistema desenvolvido por Agmar Martins
  • Tradução para Russo: Lylex — Obrigado pela sua contribuição! 🙏
  • Tradução para Alemão: SalimoSB - HyHero — Obrigado pela sua contribuição! 🙏
  • Tradução para Húngaro: Marvar — Obrigado pela sua contribuição! 🙏

Versão: 1.0.8-beta