O preço de uma moeda justa
Uma moeda justa paga em odds parelhas é um jogo sem vantagem, e um jogo sem vantagem não consegue pagar as contas da casa. Todo jogo de cara ou coroa em todo site resolve isso de uma de duas formas: torna a moeda injusta, ou paga menos que ×2 para uma aposta correta. A primeira é invisível e a segunda não é, e essa é exatamente a razão para preferir a segunda. Koban paga ×1,96.
A aritmética é curta. Uma aposta correta tem probabilidade de metade e retorna 1,96 unidades por unidade apostada; uma aposta incorreta não retorna nada. O retorno esperado por flip é 0,5 × 1,96 = 0,98, então a casa fica com 2% de cada flip. Como o pote de uma sequência é a aposta multiplicada por 1,96 a cada vitória, e cada vitória tem a mesma probabilidade, o retorno esperado de uma sequência de qualquer tamanho é 0,98 elevado a esse tamanho, e a vantagem sobre toda a sequência, medida por unidade de exposição, permanece em 2%. Encadear vitórias não é uma forma de contornar a vantagem nem uma forma de entrar em uma maior; é o mesmo preço pago mais vezes.
VERIFICADO PELO ENGINEkoban/derive.ts: KOBAN_WIN_100 = 196 com o comentário “×1,96 por aposta correta — uma moeda justa paga a 1,96 é uma vantagem da casa de 2%”; KOBAN_MAX_FLIPS = 10. _shared/demoLocal.ts demoKobanRide: o pote após cada vitória é centsFloor(pote × 196 / 100); em uma aposta errada a rodada termina com pagamento 0; em dez flips o pote é creditado automaticamente.
A escada
Ao encadear dez vitórias, o pote foi multiplicado por 1,96 dez vezes. A escada mostrada na tabela é essa potência, arredondada para baixo em duas casas decimais em cada degrau, porque o servidor liquida o pote em centavos e um degrau exibido deve corresponder ao que seria realmente pago. Um 1,96 elevado à terceira potência sem arredondamento dá 7,53; o pote após três vitórias é 7,52. O comentário do engine registra que a exibição já superestimou seis dos dez degraus em um centavo antes de o arredondamento ser adicionado.
| VITÓRIAS | MULTIPLICADOR | CHANCE DE ALCANÇAR |
|---|---|---|
| 1 | ×1,96 | 1 em 2 |
| 2 | ×3,84 | 1 em 4 |
| 3 | ×7,52 | 1 em 8 |
| 4 | ×14.75 | 1 em 16 |
| 5 | ×28.92 | 1 em 32 |
| 6 | ×56.69 | 1 em 64 |
| 7 | ×111.12 | 1 em 128 |
| 8 | ×217.79 | 1 em 256 |
| 9 | ×426.87 | 1 em 512 |
| 10 | ×836.68 | 1 em 1.024 |
Cada degrau é floor(1.96ⁿ × 100) ÷ 100. Multiplique qualquer degrau pela sua chance e você obtém 0.98ⁿ, o retorno esperado de uma sequência que vai exatamente até ali.
VERIFICADO PELO ENGINEkoban/derive.ts: a escada exibida é Array.from({ length: KOBAN_MAX_FLIPS }, (_, i) => Math.floor(Math.pow(KOBAN_WIN_100 / 100, i + 1) × 100) / 100), com o comentário de que o servidor liquida em floor(1.96ⁿ, 2) e “a escada é uma promessa; ela precisa bater com o pagamento”. As chances na tabela são 1/2ⁿ para uma moeda justa.
A coluna da direita é a que importa. Uma sequência até o topo paga ×836.68 e acontece uma vez a cada 1.024 tentativas, então seu retorno esperado é 0.817, que é 0.98 elevado à décima potência. Nada na escada é uma aposta melhor ou pior que outra; a escada é uma escolha de volatilidade, exatamente como as curvas de Limbo e Crash são, e o preço de mais um flip funciona nos mesmos degraus contra uma moeda justa.
Fixado na primeira compra
Aqui está a decisão de design que um jogador não consegue ver e deveria conhecer. Uma sequência não são dez rodadas separadas. É uma rodada com um nonce, e as dez faces são dez cursores desse nonce: o primeiro flip lê o cursor 0, o segundo lê o cursor 1, e assim por diante. A sequência inteira de faces existe, como função do par de seeds e do nonce, no instante em que a primeira moeda é comprada. Continuar a sequência não sorteia uma nova moeda; revela a próxima entrada de uma lista que já estava completa.
VERIFICADO PELO ENGINECabeçalho de koban/derive.ts: “Uma SESSÃO DE RIDE = um (par de seeds, nonce); o flip i lê o cursor i, então cada face da sequência é fixada no momento em que a primeira moeda é comprada — suas chamadas decidem vitórias, nunca as faces.” demoLocal.ts: demoKobanRide deriva as faces com deriveKobanFaces(serverSeed, clientSeed, nonce, picks.length) e compara faces[picks.length − 1] com a escolha; a rodada ativa persiste no localStorage para que um reload não possa comer um pote no meio da sequência.
Por que construir assim em vez de um nonce por flip? Duas razões, e ambas são sobre o que você pode verificar. Primeiro, uma sequência que é uma única rodada pode ser verificada como um único objeto: revele o seed e todas as faces da sequência, incluindo as que vêm depois que você sacou, podem ser recalculadas juntas, o que é uma afirmação mais forte do que verificar flips um a um. Segundo, isso torna estruturalmente impossível um certo tipo de desonestidade. Um jogo que sorteasse cada flip na hora poderia, em princípio, ser construído para sortear diferente quando o pote ficasse grande; um jogo cujas faces já estão todas fixadas antes de o pote existir não pode. O engine não sabe qual o tamanho do seu pote quando decide a face, porque ele decidiu a face antes de você ter um pote.
Isso também resolve uma questão que o jogo irmão, chō-han, levanta em seu próprio artigo: sua chamada importa? Para o resultado, não. A face no cursor 4 é o que é; chamar omote ou ura decide se essa face te paga, não o que ela é. Isso tem a mesma forma que o client seed, uma alavanca que muda a verificação e nunca as odds, e vale a pena ter isso claro antes que uma sequência faça a moeda parecer que está te ouvindo.
O saque
A única decisão que realmente importa é quando parar, e o engine dá exatamente uma forma para isso: depois de qualquer vitória você pode sacar o pote, ou continuar. Não há saque parcial nem seguro, porque qualquer um dos dois moveria a vantagem da casa para algum lugar menos visível. Sacar depois de n vitórias paga exatamente o degrau n; continuar arrisca o pote inteiro em uma moeda cuja face já está na lista.
- A vantagem da casa não muda com o degrau. Cada flip custa 2% do que está em jogo nele. Um pote grande não é motivo para parar ou continuar; é apenas um valor maior pagando o mesmo preço.
- Dez é o topo. Na décima vitória o pote é creditado automaticamente, porque a escada termina e o engine não oferece um décimo primeiro cursor.
- Um reload não é um reset. A sequência ativa fica armazenada, então fechar a aba no meio da sequência não perde o pote; as mesmas faces estarão esperando quando você voltar, porque elas nunca dependeram de quando você olhou.
Os multiplicadores e regras acima são lidos do módulo de derivação do cliente e do engine de demonstração, que a fonte descreve como espelhando o serviço da casa; o serviço da casa é a autoridade de pagamento. Isso é uma nota de design, não uma estratégia: nenhuma forma de chamar ou parar muda os 2% por flip.
FAQ
Quanto paga o Koban Flip?
×1.96 por chamada correta em uma moeda justa, compondo enquanto você continua. A escada após n vitórias seguidas é floor(1.96ⁿ, 2 casas decimais), de ×1.96 até ×836.68 em dez vitórias.
Qual é a vantagem da casa?
2% por flip: uma chamada correta tem probabilidade de metade e paga 1.96 em vez de 2. Uma sequência de n flips tem retorno esperado de 0.98ⁿ, então a vantagem por unidade de exposição permanece 2% não importa até onde você vá.
As faces são decididas enquanto eu jogo?
Não. Uma rodada é um par de seeds e um nonce, e o flip i é derivado do cursor i, então cada face já está fixada quando a primeira moeda é comprada. Suas escolhas decidem se uma face te paga, nunca o que ela mostra.
Posso verificar uma rodada?
Sim. Depois que o server seed é revelado, todas as faces da rodada podem ser recalculadas a partir do par de seeds e do nonce, incluindo os flips após você ter feito o cashout.
O que acontece ao chegar em dez vitórias?
O prêmio é creditado automaticamente em ×836.68 da aposta. Dez é o comprimento máximo da rodada; não existe um décimo primeiro cursor.
FONTES E REFERÊNCIAS
- Código-fonte do motor Betkyo: koban/derive.ts (KOBAN_WIN_100, KOBAN_MAX_FLIPS, a escada arredondada para baixo, deriveKobanFaces), _shared/demoLocal.ts (demoKobanBuy, demoKobanRide, demoKobanCashout)
- Os valores da escada são floor(1.96ⁿ × 100) ÷ 100 para n = 1…10, calculados para este artigo e correspondendo à função de exibição do motor
OS JOGOS NESTE ARTIGO
Koban Flip — regras e jogo grátis →Dice — regras e jogo grátis →