Sistema de Apostas
O Sistema de Apostas adiciona um casino completo ao EliteMobs. Os jogadores podem apostar as suas Elite Coins em quatro minijogos diferentes, ficar endividados quando o dinheiro acaba e enfrentar as consequências quando o Cobrador de Dívidas os vem visitar. Os administradores de servidor podem configurar todos os aspetos do sistema, desde os multiplicadores de prémio até aos limites de dívida.
Configuração
O sistema de apostas é acedido através de NPCs especialmente configurados. Cada jogo e cada visor tem o seu próprio tipo de interação de NPC.
Para configurar um NPC de apostas, crie um ficheiro de configuração de NPC e defina o interactionType para um dos seguintes valores:
| Tipo de interação | Descrição |
|---|---|
GAMBLING_BLACKJACK | Abre o menu de aposta do Blackjack |
GAMBLING_COINFLIP | Abre o menu de aposta do Cara ou Coroa |
GAMBLING_SLOTS | Abre o menu de aposta da Máquina de Slots |
GAMBLING_HIGHERLOWER | Abre o menu de aposta do Maior ou Menor |
O NPC Dono da Casa de Apostas não usa um tipo de interação especial. Para o configurar, crie um NPC com o nome de ficheiro gambling_den_owner.yml. O visor dos lucros da casa aparecerá automaticamente acima do NPC com base neste nome de ficheiro.
Jogos
Blackjack
Aplicam-se as regras normais do Blackjack. O objetivo é chegar o mais perto possível de 21 sem passar.
Regras
- Tanto o jogador como o dealer recebem duas cartas.
- A segunda carta do dealer fica escondida até o jogador ficar (stand).
- Os Ases contam como 11 ou 1 (ajustado automaticamente para evitar passar de 21 sempre que possível).
- As figuras (Valete, Dama, Rei) contam como 10.
- O dealer fica (stand) aos 17.
- Os jogadores podem ter até 5 cartas.
Ações
| Ação | Descrição |
|---|---|
| Pedir carta (Hit) | Tira outra carta. |
| Ficar (Stand) | Mantém a sua mão atual; o dealer joga depois. |
| Dobrar (Double Down) | Duplica a sua aposta, tira exatamente uma carta e depois fica automaticamente. Só está disponível na sua primeira ação (quando tem 2 cartas) e apenas se tiver dinheiro para duplicar a aposta. |
Prémios
| Resultado | Multiplicador padrão |
|---|---|
| Vitória normal (o total do jogador supera o do dealer, ou o dealer passa de 21) | 2.0x |
| Blackjack (21 com as duas primeiras cartas) | 2.5x |
| Empate (push) | 1.0x (aposta devolvida) |
| Derrota (o jogador passa de 21 ou o total do dealer é mais alto) | 0x (aposta perdida) |
Fechar o menu
Se um jogador fechar o menu durante a vez do dealer, a mão do dealer é jogada automaticamente e o resultado é resolvido. Se um jogador fechar o menu antes de ficar (stand), a aposta é perdida.
Cara ou Coroa
Um jogo simples de 50/50. Escolha Cara ou Coroa, e a moeda decide o seu destino.
Como jogar
- O jogo abre com um botão de Cara e um botão de Coroa.
- Clique num deles para fazer a sua escolha.
- É reproduzida uma animação de lançamento da moeda.
- O resultado é mostrado.
Prémios
| Resultado | Multiplicador padrão |
|---|---|
| Palpite correto | 1.9x |
| Canto (a moeda fica em pé sobre a borda) | 5.0x |
| Palpite errado | 0x (aposta perdida) |
O resultado de borda
Há 1% de probabilidade de a moeda ficar em pé sobre a borda em vez de sair Cara ou Coroa. Quando isso acontece, o jogador ganha sempre, independentemente da sua escolha, e recebe um prémio de 5x sobre a aposta. É mostrada uma mensagem de chat especial e um visual próprio para este evento raro.
Fechar o menu
Se um jogador fechar o menu antes de fazer uma escolha, a aposta é perdida.
Máquina de Slots
Gire três rolos e combine símbolos para ganhar. Os símbolos mais raros pagam mais.
Como jogar
- O jogo abre com uma grelha de rolos 3x3 e um botão de Girar.
- Clique em Girar para pôr os rolos a andar.
- Cada rolo para em sequência com uma animação.
- A linha do meio (linha de prémio) determina o resultado.
Símbolos e prémios
Cada símbolo tem um peso que determina a frequência com que aparece. O multiplicador de prémio por combinar três de um símbolo é calculado como 100 / peso. Combinar dois símbolos paga 25% do prémio de três iguais desse símbolo.
| Símbolo | Peso | Probabilidade | Prémio de 3 iguais | Prémio de 2 iguais |
|---|---|---|---|---|
| Cereja | 35 | 35% | 2.86x | 0.71x |
| Limão | 28 | 28% | 3.57x | 0.89x |
| Laranja | 20 | 20% | 5.0x | 1.25x |
| Sino Dourado | 10 | 10% | 10.0x | 2.5x |
| Barra de Prata | 5 | 5% | 20.0x | 5.0x |
| 7 da Sorte | 2 | 2% | 50.0x | 12.5x |
Três 7 da Sorte é o Jackpot e recebe um efeito visual e sonoro especial.
Fechar o menu
Se um jogador fechar o menu antes de girar, a aposta é perdida.
Maior ou Menor
Um jogo de cartas baseado em sequências de acertos. Adivinhe se a carta seguinte é maior ou menor do que a atual e vá acumulando multiplicador. Retire o dinheiro a qualquer momento ou arrisque tudo.
Como jogar
- É tirada uma carta e mostrada (os valores vão de 2 a 14, em que Ás = 14).
- Adivinhe se a carta seguinte será Maior ou Menor do que a carta atual.
- Se acertar, o seu multiplicador aumenta e a carta revelada passa a ser a nova carta atual.
- Pode Retirar (Cash Out) a qualquer momento depois de pelo menos um palpite correto.
- Se errar, perde a aposta inteira.
- Se a carta seguinte for igual à carta atual, conta como derrota.
Multiplicador de sequência
Cada palpite correto multiplica os seus ganhos pelo multiplicador configurado (padrão 1.3x). O multiplicador acumula:
| Sequência | Multiplicador (padrão) | Prémio numa aposta de 100 moedas |
|---|---|---|
| 1 | 1.3x | 130 |
| 2 | 1.69x | 169 |
| 3 | 2.197x | 219.7 |
| 4 | 2.856x | 285.6 |
| 5 | 3.713x | 371.3 |
| ... | ... | ... |
| 12 | ~23.3x | ~2,330 |
Sequência máxima e retirada automática
A sequência máxima é 12. Quando um jogador chega a 12 palpites corretos, o dinheiro é retirado automaticamente e os ganhos são atribuídos. Isto evita multiplicadores descontrolados.
Fechar o menu
Se um jogador fechar o menu enquanto tem uma sequência vencedora, o dinheiro é retirado automaticamente e recebe os ganhos atuais. Se fechar antes de fazer qualquer palpite, a aposta é perdida.
Apostas
Antes de qualquer jogo começar, é apresentado ao jogador um menu de aposta para escolher o valor a apostar.
Limites de aposta
| Definição | Valor padrão |
|---|---|
| Aposta mínima | 10 |
Não há aposta máxima configurável. Os jogadores podem apostar tanto quanto conseguirem pagar (incluindo crédito do sistema de dívida).
Controlos do menu de aposta
O menu de aposta oferece vários controlos:
- Botões de incremento -- Três tamanhos de botões de aumentar e diminuir. Se o jogador tiver pelo menos 100 moedas e nenhuma dívida, os incrementos são baseados em percentagem (5%, 10%, 25% do saldo). Caso contrário, são usados valores fixos de 10, 50 e 100.
- All In -- Define a aposta no máximo que o jogador pode pagar (incluindo o crédito disponível).
- Reset -- Reinicia a aposta para o mínimo.
- Play -- Inicia o jogo com a aposta atual. Só está ativo se o jogador tiver dinheiro para a aposta.
- Cancel -- Fecha o menu sem apostar.
O menu mostra o saldo atual do jogador, qualquer dívida existente e o crédito disponível.
Sistema de dívida
Os jogadores podem apostar além do seu saldo ficando endividados. O casino concede crédito até um limite fixo.
Como funciona a dívida
- Quando um jogador faz uma aposta que excede o seu saldo, o valor restante é adicionado como dívida de apostas.
- A dívida máxima que um jogador pode acumular é de 500 moedas. Este valor está fixado no código e não é configurável.
- Os jogadores não podem fazer apostas que empurrassem a sua dívida acima do máximo.
- Quando um jogador ganha, os seus ganhos são primeiro aplicados a pagar a dívida antes de serem adicionados ao saldo.
Crédito disponível
O crédito disponível de um jogador é calculado como: maxDebt - currentDebt. Isto é mostrado no menu de aposta.
Aviso de dívida
Quando um jogador fica endividado, recebe uma mensagem de aviso. O Cobrador de Dívidas pode vir atrás dele enquanto tiver dívida pendente.
Boss Cobrador de Dívidas
O Cobrador de Dívidas é um boss personalizado que aparece para perseguir jogadores com dívidas de apostas.
Condições de spawn
- O jogador tem de ter dívida de apostas pendente.
- Uma verificação periódica corre a cada 60 minutos (configurável) para todos os jogadores online.
- Cada verificação tem 50% de probabilidade (configurável) de fazer aparecer o Cobrador de Dívidas para um jogador elegível.
- Só pode estar ativo um Cobrador de Dívidas por jogador de cada vez.
- O Cobrador de Dívidas usa o ficheiro de boss personalizado
debt_collector.yml.
Escalonamento de nível
O nível do Cobrador de Dívidas baseia-se no nível de combate do jogador visado. As suas estatísticas (vida, dano, etc.) são determinadas pelo ficheiro de configuração de boss personalizado debt_collector.yml, seguindo as mesmas regras de qualquer outro boss personalizado do EliteMobs.
Comportamento
- O Cobrador de Dívidas aparece a 5 a 10 blocos de distância do jogador.
- Visa imediatamente o jogador para quem apareceu.
- Tem um tempo limite de 600 segundos (10 minutos) por padrão. Se não for morto nesse tempo, desaparece e avisa o jogador de que voltará.
Resultados
| Resultado | Efeito |
|---|---|
| O jogador mata o Cobrador de Dívidas | O boss desaparece. A dívida do jogador não é reduzida, mas recebe uma mensagem a dizer que ele voltará. |
| O Cobrador de Dívidas mata o jogador | A dívida do jogador é reduzida em 50 moedas (configurável). Se isso liquidar a dívida por completo, o jogador é notificado. O Cobrador de Dívidas desaparece após 5 segundos. |
| Tempo limite (não foi morto a tempo) | O Cobrador de Dívidas desaparece e envia uma mensagem de aviso. Vai tentar aparecer novamente na verificação seguinte. |
Dono da Casa de Apostas
O Dono da Casa de Apostas é um NPC especial que mostra os Lucros da Casa acima da sua cabeça, como um texto flutuante. Isto mostra o lucro ou prejuízo total que a casa acumulou com toda a atividade de apostas.
- Os lucros positivos são mostrados a verde (por exemplo,
+1234.56). - Os lucros negativos (jogadores a ganhar mais do que a perder) são mostrados a vermelho (por exemplo,
-567.89). - O visor atualiza a cada segundo.
- Os lucros da casa são guardados em
house_earnings.ymle sobrevivem a reinícios do servidor.
Configuração
Todas as definições de apostas estão guardadas no GamblingSettings.yml. Abaixo estão as principais definições que afetam a jogabilidade.
Definições gerais
| Chave | Descrição | Padrão |
|---|---|---|
gamblingEnabled | Ativa ou desativa todo o sistema de apostas. Quando desativado, os NPCs de apostas não funcionam e o Cobrador de Dívidas não aparece. | true |
minBet | Valor mínimo de aposta para todos os jogos de apostas. | 10 |
Nota: a dívida máxima (500.0) está fixada no código e não é configurável.
Multiplicadores de prémio
| Chave | Descrição | Padrão |
|---|---|---|
payouts.blackjack.normal | Multiplicador de prémio para uma vitória normal no Blackjack. | 2.0 |
payouts.blackjack.blackjack | Multiplicador de prémio por conseguir um Blackjack natural (21 com as duas primeiras cartas). | 2.5 |
payouts.coinFlip | Multiplicador de prémio por ganhar no Cara ou Coroa. Defina abaixo de 2.0 para dar vantagem à casa (1.9 = 5% de vantagem da casa). | 1.9 |
payouts.coinFlip.edgeChance | Probabilidade (0.0 a 1.0) de a moeda ficar em pé sobre a borda (vitória bónus). Defina 0.0 para desativar. | 0.01 |
payouts.coinFlip.edgePayout | Multiplicador de prémio quando a moeda fica em pé sobre a borda. | 5.0 |
payouts.higherLower.multiplierV2 | Multiplicador aplicado por cada palpite correto no Maior ou Menor. Acumula multiplicativamente. | 1.3 |
Prémios da Máquina de Slots
Os prémios da máquina de slots não são configuráveis. São calculados automaticamente a partir dos pesos dos símbolos usando a fórmula 100 / peso:
| Símbolo | Peso | Prémio de 3 iguais | Prémio de 2 iguais |
|---|---|---|---|
| Cereja | 35 | 2.86x | 0.71x |
| Limão | 28 | 3.57x | 0.89x |
| Laranja | 20 | 5.0x | 1.25x |
| Sino | 10 | 10.0x | 2.50x |
| Barra | 5 | 20.0x | 5.00x |
| 7 da Sorte | 2 | 50.0x | 12.50x |
Não existem quaisquer chaves payouts.slots.* no GamblingSettings.yml — as únicas entradas de máquina de slots no ficheiro são as strings de interface slots.* (nomes de botões, etiquetas, títulos de resultado). Os prémios são sempre derivados dos pesos de símbolos fixados no código.
Definições do Cobrador de Dívidas
| Chave | Descrição | Padrão |
|---|---|---|
debtCollector.spawnChance | Probabilidade (0.0 a 1.0) de o Cobrador de Dívidas aparecer em cada verificação. | 0.5 |
debtCollector.checkIntervalMinutes | Com que frequência (em minutos) se verifica se o Cobrador de Dívidas deve aparecer para jogadores endividados. | 60 |
debtCollector.timeoutSeconds | Quanto tempo (em segundos) até o Cobrador de Dívidas desaparecer se não for morto. | 600 |
debtCollector.debtReductionOnPlayerDeath | Valor de dívida reduzido quando o Cobrador de Dívidas mata o jogador. | 50.0 |
Segurança da economia
O sistema de apostas usa um modelo de transações que põe a segurança em primeiro lugar. Todas as apostas são debitadas e os resultados são resolvidos financeiramente antes de qualquer animação visual ser reproduzida. Isto impede exploits em que um jogador pudesse desconectar-se a meio de uma animação para evitar uma derrota ou duplicar uma vitória. Se um jogador se desconectar em qualquer momento durante ou após uma animação, o seu estado financeiro já está correto.