# Manual do &kajongg;

## Introdução

### Tipo de jogo:

Tabuleiro, arcade

### Número de possíveis jogadores:

Quatro

O &kajongg; é um jogo de tabuleiro criado com base no famoso jogo oriental Mah Jong (do Chinês 麻將). É jogado por quatro jogadores. Existem diversas regras de jogo disponíveis no mundo inteiro. Atualmente, o &kajongg; suporta as regras clássicas chinesas, que também são usadas na Alemanha; eventualmente, outros conjuntos de regras irão surgir, sendo possível também a configuração dos mesmos conjuntos. Por favor, faça-o e envie as modificações para o autor do programa, de modo a integrá-las!

O &kajongg; pode ser usado de duas formas diferentes: Pontuar um jogo manual, onde poderá jogar como sempre fez sem o auxílio de um computador e usar o &kajongg; para o cálculo dos pontos e para registro. Por outro lado, você poderá usar o &kajongg; para jogar contra qualquer combinação de jogadores humanos ou computorizados.

## A Disposição da Tela

Uma imagem do &kajongg;; Captura de tela

Uma explicação rápida dos componentes da tela do jogo.

Barra de Ferramentas

- A barra de ferramentas localiza-se abaixo da barra de menu e contém botões para as ações usadas com maior frequência. O conteúdo da barra de ferramentas poderá ser editado. Você poderá torná-la invisível também, ganhando mais espaço no tabuleiro.

  Dependendo do tamanho de sua tela, você pode desejar tornar a barra de ferramentas invisível ou movê-la para o lado esquerdo da janela. Você pode fazer isso com um clique-direito do seu mouse na barra de ferramentas.

Tabuleiro

- O Tabuleiro é a maior seção da janela. Você poderá ver as quatro paredes com uma extensão de 18 peças (poderá ser configurável, eventualmente). Os nomes dos jogadores estão escritos nas paredes, juntamente com o valor da jogada (conforme conhecida) com as suas peças de pontos cardeais. A parede prevalente tem um fundo colorido, que na imagem acima corresponde ao Leste.

  Quando estiver jogando, o interior das paredes contém as peças descartadas pelos jogadores. Estas são colocadas de forma aleatória. A última peça eliminada tem um contorno a azul.

  Quando estiver pontuando jogos manuais, o interior das paredes tem uma seleção com todas as peças disponíveis, o seletor central. Você poderá atribuí-las aos jogadores com o mouse ou com o teclado.

Região do Jogador

- Todos os jogadores possuem um espaço na tela para as suas peças. A fila superior contém as peças expostas, enquanto a inferior contém as ocultas. No caso dos jogos de pontuação manual, as peças ocultas são apresentadas com uma sombra sobre a peça inteira. As peças de bônus vão para o lado direito.

Diálogo

- A janela apresenta as opções que o jogador tem. Na maior parte dos casos, tem um tempo-limite com uma barra de progresso que apresenta o tempo que falta.

Barra de status

- A barra de status está localizada na parte inferior da tela e contém os totais atuais para os jogadores.

## Pontuar um Jogo Manual

Neste modo, o &kajongg;; só é usado para calcular a pontuação. Você joga como de costume, com pessoas reais numa mesa real e, no fim do jogo, poderá dizer ao &kajongg; as peças que um jogador tem na sua mão e toda a informação necessária para calcular a pontuação - que é o que o programa irá fazer. Em alternativa, você poderá calcular manualmente os pontos da jogada e inseri-los. O &kajongg;; irá então fazer os pagamentos entre os vários jogadores e guardar os resultados numa base de dados. É possível suspender um jogo, iniciar outro com outros jogadores e prosseguir os jogos antigos. Todas as regras serão salvas em conjunto com os jogos, de modo que possa jogar diferentes jogos com diferentes regras.

- A partir do menu, escolha Jogo / Jogo de Pontuação Manual ou pressione &Ctrl;C.

- Para um jogo novo, associe os jogadores aos quatro ventos e selecione o conjunto de regras desejado. O &kajongg; irá propor os mesmos valores que o jogo anterior. Se não existir nenhum jogo anterior, irá propor os primeiros quatro jogadores definidos. Lembre-se que você não poderá alterar o conjunto de regras ou algumas destas regras após esta seleção. Se quiser rever ou modificar as regras de um jogo, faça-o de antemão no editor de conjuntos de regras.

- Agora você irá obter uma nova janela chamada "Insira os resultados da jogada". Veja em Ter o &kajongg; calculando a pontuação para obter uma descrição mais detalhada.

- Depois de salvar os resultados da jogada, continue com a jogada seguinte.

### Inserir os resultados da jogada.

#### Pontuações

Uma imagem do &kajongg;; Captura de tela

Esta é a janela para inserir os resultados da jogada. Aparece automaticamente quando o &kajongg; achar que você poderá necessitar dela. Você poderá mostrá-la ou ocultá-la sempre com o atalho &Ctrl;S ou selecionando o item de menu correspondente.

Como sempre, o vento prevalente tem o seu fundo colorido.

Aqui você poderá inserir manualmente as pontuações para todos os jogadores. Em alternativa, poderá definir exatamente as peças que um jogador tinha na sua mão. Se optar por fazer isso, o campo correspondente para o valor da pontuação manual ficará desativado, uma vez que o &kajongg; irá calcular automaticamente a pontuação.

Depois de ter inserido todos os dados relevantes para uma mão, pressione o botão Salvar jogada. Os valores serão inseridos na base de dados, sendo também inseridos na tabela de pontuações. Você poderá ser questionado para mudar as posições dos jogadores, mas também pode optar por não mudar os lugares. As alterações propostas não podem ser personalizadas atualmente - se um conjunto de regras necessitar de algo diferente, isso poderá ser alterado.

Se o jogador tiver ganho, a opção na coluna "Vencedor" ficará ativa - clique nela para o vencedor.

A barra de estado irá mostrar agora os saldos para os jogadores, e você poderá depois prosseguir com a mão seguinte.

##### Inserir a pontuação manualmente

Um bom jogador irá provavelmente preferir calcular a sua própria pontuação. Nesse caso, você poderá inseri-la diretamente. Isto só é possível, desde que não tenha selecionado nenhuma peça para este jogador.

Se você inserir uma pontuação manual, já deverá conter tudo exceto as penalidades, não tendo regras opcionais por onde escolher. Existe uma exceção: o "Jogo Perigoso". Isto não influencia nenhuma pontuação, assim como também não é nenhuma ofensa. Significa apenas que o pagamento entre os jogadores é diferente: a pessoa ofensiva paga tudo por todos ao vencedor. Os outros dois jogadores não efetuam pagamentos entre si. Isto não é possível personalizar neste momento.

##### Deixar o &kajongg; calcular a pontuação

Se você disser explicitamente ao &kajongg; as peças que um jogador apresenta, a inserção das pontuações ficará desativada para esse jogador nesta janela. Enquanto associa as peças a um jogador, irá ver como a pontuação dele irá aumentar - contudo, assim que adicionar a 14ª peça, a pontuação vai a zero. Isso poderá surpreendê-lo mas, a menos que declare esta como sendo a jogada do vencedor, será reconhecida como uma jogada extensa, que terá sempre zero pontos. Este comportamento é definido pelo conjunto de regras chinesas clássicas, podendo ser diferente se usar um conjunto de regras diferente.

Você poderá associar as peças e as combinações com um jogador, usando o mouse, o teclado ou ambos. Atribua opcionalmente as peças aos jogadores, arrastando e soltando-as no espaço do jogador. Ao soltar a peça, será questionado o que deseja mover: Simples, Par, Pung, Kong, Kong Pedido ou Chow. A fila superior serve para as peças expostas, enquanto a inferior serve para as ocultas. As peças de bônus irão aparecer no lado direito. Você poderá também mover as peças entre filas, entre jogadores e para o seletor central.

Se você preferir usar o teclado, poderá usar o para mudar entre o seletor central e as regiões dos jogadores. As teclas eswnESWN movem uma peça dos jogadores a Este, Sul, Oeste e Norte. A tecla xX recoloca a peça de volta no seletor central. O ESWN vai para o grupo oculto, enquanto o eswn vai para o grupo visível. Você poderá mover o cursor entre as peças ou as combinações, usando as teclas de cursores, em que a peça ou combinação atual terão uma moldura azul. Uma vez que as teclas dos cursores estão distantes das letras no teclado, poderá também usar as teclas hjkl ou HJKL para mover o cursor. O hH move para a esquerda, o jJ para baixo, o kK para cima e o lL para a direita. Assim é como funciona o editor de Unix "vi". O navegador Konqueror do &kde; e mesmo este programa de ajuda também suportam estas teclas da mesma forma. Estas teclas poderão ser diferentes se usar um idioma diferente do Inglês, mas atualmente não é possível atualmente configurá-las.

As opções "Última Peça" e "Última Combinação" são necessárias para algumas regras, como a "última peça completa o par". Só podem ser usadas na jogada do vencedor.

Do lado direito, você poderá aplicar manualmente algumas regras. As regras que aparecem nesta lista dependem do conjunto de regras atual e das peças. No exemplo da imagem acima, os jogadores perdedores poderão ter uma opção de "jogo perigoso" - que depende mais uma vez do conjunto de regras e das suas peças. O objetivo dos programadores é manter esta lista de regras a mais curta possível. Otimamente, o &kajongg; deverá ser sempre capaz de determinar automaticamente se uma regra se aplica, mas em alguns casos o &kajongg; não tem informação suficiente ou não é inteligente o suficiente para decidir.

#### Penalidades

Uma imagem do &kajongg;; Captura de tela

Na janela para inserir os resultados da jogada, o botão de Penalidades irá invocar esta janela, na qual poderá inserir as mesmas penalidades. Isto poderá ser feito a qualquer momento, independentemente do mecanismo de pontuação normal.

A lista Ofensa mostra todas as ofensas que poderão ser aplicadas às jogadas que os jogadores efetuaram. Escolha uma entre elas.

Agora, você poderá adaptar a Penalidade Total. Esta é a soma total que é movida entre devedores e credores. Ela poderá ser dividida por igual entre eles.

Dependendo do tipo de ofensa, o número de credores e devedores varia. O número correto de listas é apresentado. Se escolher um jogador, o &kajongg; garante que este jogador só ocorre uma vez, alterando os outros jogadores.

## Jogando

A qualquer momento, você pode ativar ou desativar o modo de demonstração. No modo de demonstração, o computador jogará para você. Se nenhum jogo estiver sendo jogado, um novo jogo será iniciado com o último conjunto de regras usado.

### Jogar contra o computador

Em primeiro lugar, você irá obter uma janela de autenticação. Insira o servidor do jogo a que deseja se conectar, bem como o seu nome de usuário. Se escolher o item especial "Jogo Local", você só terá que indicar o seu nome (ou aceitar o proposto) e o conjunto de regras desejado. Isto irá iniciar automaticamente um jogo local onde poderá jogar contra 3 jogadores por computador. Contudo, se existirem jogos suspensos, eles serão mostrados numa lista. Você poderá então selecionar o jogo que deseja continuar ou começar um novo jogo.

### Jogar com amigos

Se você quiser jogar contra outras pessoas reais, irá necessitar de um servidor do jogo onde todos os jogadores, incluindo você mesmo, terão que se conectar. Faça isso selecionando outra máquina qualquer ou inserindo manualmente o nome de uma nova máquina e indicando a sua senha para essa máquina. Será proposta a última senha usada.

Se você não tiver uma conta nesse servidor com o nome que inseriu, será questionado se deseja abrir uma conta. Caso responda afirmativamente, irá obter uma nova janela onde poderá inserir duas vezes a senha desejada. A sua conta será criada automaticamente.

Depois de se autenticar com sucesso no servidor de jogos, irá obter uma lista das mesas com lugares disponíveis nesse servidor de jogos. Junte-se a uma mesa ou crie uma nova. Se criar uma nova, espere até que os outros lugares sejam ocupados por jogadores. Você poderá iniciar o jogo numa mesa que tenha reservado em qualquer momento, sendo que os lugares não ocupados serão ocupados por jogadores computorizados.

A lista de mesas também mostra o nome do conjunto de regras jogado na mesa. O conjunto de regras e seu nome são enviados para o servidor de jogos pelo jogador que iniciou a mesa. Se você possuir um conjunto de regras idêntico, a mesa mostra o seu nome para o conjunto de regras - isto pode ser útil se o iniciador da mesa falar outro idioma e nomear o conjunto de regras de maneira diferente. Além disso, se o nome do seu conjunto de regras for exibido, ele será exibido em preto. Se, no entanto, você não possuir um conjunto de regras idêntico, o nome aparece em vermelho, e você poderá usar o botão Comparar para comparar com os seus próprios conjuntos de regras.

Você pode iniciar o servidor de jogos do &kajongg; de duas diferentes formas:

- conecte-se ao servidor "localhost". Este é o seu próprio computador. Se o fizer, e caso não tenha nenhum servidor rodando, ele será iniciado automaticamente. Quando parar de jogar, o servidor será também interrompido.

- inicie manualmente um servidor em qualquer computador que desejar. Tudo o que precisa é em uma linha de comando iniciar o programa "kajonggserver". Se indicar "kajonggserver --help", serão apresentadas todas as opções disponíveis, como a alteração da porta padrão, que é o 8149. Este servidor ficará rodando até que você o termine.

Em ambos os casos, você precisa dizer aos outros jogadores como eles podem acessar o seu servidor de jogos. Eles irão necessitar do &URL;, ou apenas do endereço IP e porta onde tem o seu servidor à espera de conexões. Isto poderá ser algo do tipo "meupc.dyndns.org:8149" onde o 8149 é a porta. Obviamente, você terá que configurar o seu firewall, para que o jogador remoto consiga se conectar a essa porta. A comunicação será criptografada.

Se você encontrar possíveis erros, poderá querer usar a opção "--showtraffic". Ela lhe mostrará, no console em que o servidor foi iniciado, as mensagens que seguem entre o servidor do jogo e os clientes.

#### Protestos

- Se quiser ter certeza de que ninguém trapaceará, nenhum dos jogadores humanos deverá ter acesso ao computador onde está o servidor em execução. Obviamente, você não poderá nunca evitar que dois jogadores se ajudem um ao outro, porque não pode saber o que realmente eles estão fazendo. Esses dois jogadores até poderão ser uma mesma pessoa.

### Regras do jogo

Ao redor do mundo, existem diversas variantes do jogo. Agora, iremos descrever apenas as regras do chinês clássico, que é jogado na Alemanha. Contudo, a maior parte das regras básicas são iguais na maioria das variantes.

Dado que o &kajongg; sabe como jogar, esta descrição irá conter as coisas que poderão não ser tão óbvias.

Se quiser aprender o Mah Jong com mais detalhes, consulte a bibliografia.

#### O objetivo do jogo

Cada jogador tenta recolher peças de forma a criar uma jogada vencedora. Ao conseguir isto, poderá dizer "Mah Jong". Em uma jogada vencedora, as peças são normalmente agrupadas em cinco combinações: Quatro combinações com três de quatro peças cada e uma quinta combinação que consistem em duas peças iguais. Uma combinação normal contém três ou quatro peças idênticas (chamadas respectivamente de Pung e Kong) ou três peças sucessivas, como o Bambu 3, Bambu 4, Bambu 5 (chamada Chow).

#### A sequência do jogo

Inicialmente, o jogador com o vento Leste (como indicado na parede) tem uma peça a mais que os outros jogadores. O Leste começa descartando uma peça indesejada.

Sempre que uma peça for descartada, os outros jogadores poderão pedi-la, dizendo o que poderão completar com essa peça (Chow, Pung, Kong, Mah Jong). Somente o próximo jogador poderá pedir um Chow - os outros pedidos são possíveis para todos os jogadores. Uma combinação completa através de um pedido será exposta - tornada visível para todos os jogadores.

Se ninguém reclamar a peça descartada, o próximo jogador - o Sul (seguido do Oeste e Norte), obtém uma peça da parede e descarta uma peça indesejada.

Existem várias regras relacionadas com a extensão de um Pung para um Kong (pedindo a quarta peça ou obtendo-a da parede) - estas regras não são explicadas aqui. Entretanto, o &kajongg; obviamente conhece-as e certifica-se de que são respeitadas. Se for declarado um Kong, o jogador obtém automaticamente uma peça de substituição da parede - caso contrário, não seria possível criar as cinco combinações mencionadas acima.

#### Ano, Ronda e Jogada

Quando um jogador pedir Mah Jong ou se terminar em empate, uma jogada está concluída. Agora, com exceção dos empates, os ventos giram pelos jogadores. Isto é repetido até que cada jogador tenha passado por cada um dos ventos. Esta unidade inteira é chamada de ronda. Um jogo inteiro, também chamado de ano, consiste em quatro destas rondas: a ronda do vento Leste, a ronda do vento Sul, a ronda do vento Oeste e a ronda do vento Norte. O vento de uma ronda é também chamado de vento relevante, por poder resultar em melhores pontuações.

Por isso, um jogo completo (um ano) consiste em pelo menos 16 jogadas. Pelo fato de os ventos não rodarem para os empates ou quando o jogador Leste diz Mah Jong, é necessário normalmente um número de jogadas superior para um jogo completo.

#### Peças de bônus

Um jogo pode conter oito peças de bônus (a menos que as regras as excluam). São expostas separadamente, do lado direito da região do jogador, uma vez que nunca são usadas para criar combinações. Entretanto, elas podem gerar pontos de bônus.

Se um jogador obter uma peça de bônus, irá também obter uma peça de substituição da parede.

#### Pontuação

No fim de uma jogada, a pontuação de cada jogador é calculada. Em primeiro lugar, os pontos de base contam como 2 pontos para um Pung exposto simples ou 20 pontos para o vencedor. Em seguida, aplica-se outro conjunto de regras - estas regras poderão duplicar os pontos, como por exemplo, uma duplicação para uma combinação de dragões. Quando for conhecida a pontuação de cada jogada, as diferenças são pagas entre os jogadores - enquanto o vencedor recebe toda a sua pontuação paga pelos outros jogadores. O Leste sempre recebe e paga a sua pontuação em dobro.

Obviamente, o &kajongg; conhece todas as regras aplicáveis, mas um bom jogador sabe as combinações que poderá fazer, para determinados números de pontos, de modo que possa otimizar. Enquanto estiver aprendendo, recomenda-se ativar a janela Explicar as pontuações.

As regras de pontuação exatas variam frequentemente - no &kajongg; você é livre para alterá-las com o editor de conjuntos de regras.

O editor de conjuntos de regras também lhe mostra todas as regras disponíveis e qual o seu significado. Coloque o mouse sobre elas, para aparecer um texto de ajuda para as regras mais exóticas.

### Como jogar com o &kajongg;

Você será questionado sobre o que deseja fazer. Esta é uma pequena janela que aparece seja à direita ou na base, dependendo do tamanho total da janela. Se você torná-la mais larga do que alta, a janela aparece à direita. Algumas janelas terão um tempo-limite - quando este expirar, a primeira resposta possível fica selecionada automaticamente. Este tempo-limite é configurado no Editor de Conjuntos de Regras, em Opções, Tempo-Limite do Pedido. Todos os jogadores deverão ter o mesmo tempo-limite, o que explica porque isto faz parte do conjunto de regras.

Se você precisar selecionar uma peça da sua jogada, poderá circular pelas peças com as teclas de cursor para a esquerda ou direita, ou então com as teclas 'h' e 'l', respectivamente. Você pode usar também o mouse, é claro.

Você pode descartar uma peça, usando o teclado da mesma forma que faz para todas as ações. Alternativamente, você pode usar o mouse e mover a peça da sua mão para a área de eliminação (o interior das paredes). A colocação da peça na área de eliminação será feita pelo computador - porque a colocação deverá ser a mesma para os jogadores.

Muitas vezes, as janelas irão oferecer opções que não se aplicam de fato, como invocar um Pung quando não possui as peças necessárias. Isso é o desejado - como acontece num jogo real.

As peças descartadas são colocadas aleatoriamente entre as paredes. Algumas variantes do jogo definem onde deverão ser colocadas as peças, mas isso ainda não é configurável. Quando for, fará parte do conjunto de regras.

## Resumo da interface

### O menu Jogo

Jogo Jogo de Pontuações Manuais

- Só pontuar um jogo executado manualmente.

  Você poderá carregar um jogo antigo ou iniciar um novo. Por padrão, só os jogos pendentes (i.e., não terminados) aparecem na lista de seleção. Você poderá mostrar opcionalmente todos os jogos, incluindo os terminados. Aqui poderá também apagar os jogos.

Jogo Jogar

- Jogar com outros jogadores (humanos ou computorizados)

Jogo Cancelar

- Interrompe o jogo atual. Se foi um jogo manual apenas com pontuações, você poderá prosseguir mais tarde. Se você jogou com recurso ao &kajongg;, o jogo ainda não pode ser continuado.

Jogo Sair

- Sai do &kappname;.

### O menu Exibir

Ver Pontuação

- Janela de Pontuações: Mostra ou oculta a janela de pontuações. Esta janela está explicada aqui.

Exibir Tabela de pontuação

- Tabela de Pontuações Tabela de Pontuações Imagem Mostra a tabela de pontuações. A Rodada/Mão mostra qual a jogada atual (Este, Oeste, Sul, Norte) seguida do número de jogadas efetuadas nessa rodada. O vencedor tem um fundo verde nos seus valores. Os Pagamentos mostram quanto o jogador pagou ou recebeu dos outros jogadores com esta jogada. O Saldo mostra o saldo atual de todos os jogadores. O Gráfico mostra a evolução dos valores do saldo. As dicas fornecem mais detalhes: mostram todas as regras que foram aplicadas nesta jogada. Basta passar o mouse sobre o valor em que está interessado.

  A parte inferior mostra o conjunto de regras usado. Entre a tabela de pontuações e o último conjunto de regras usado, você poderá encontrar uma divisória que lhe permite mudar os tamanhos relativos de ambas as partes.

Exibir Explicar a pontuação

- Explicar as Pontuações Tabela de Pontuações Tabela de Pontuações Explica como foi calculada a pontuação para a mão atual.

### O menu Configurações

Configurações Jogadores

- Adicione, modifique e exclua jogadores.

  As senhas nesta tabela são as usadas por padrão ao tentar conectar-se a um servidor de jogos. A mudança da senha que tiver escolhido inicialmente para um servidor de jogos não é realmente útil, já que não existe ainda uma forma de você alterar a sua senha no servidor de jogos. Você teria que pedir ao administrador do servidor para fazer isso por você, diretamente na base de dados.

Configurações Mudar o Ângulo Visual

- Altera o ângulo de visualização das peças no sentido anti-horário.

Configurações Modo de demonstração

- Ativa ou desativa o modo de demonstração. Veja aqui mais detalhes.

Configurações Exibir barra de estado

- Exibe ou oculta a barra de status.

Configurações Modo Tela Cheia

- Muda entre o modo de tela cheia e o modo normal.

Configurações Configurar atalhos...

- Mostra uma janela normal de configuração de atalhos do &kde; para mudar os atalhos do teclado do &kappname;.

Configurações Configurar barra de ferramentas...

- Mostra uma janela padrão do &kde; onde poderá configurar os ícones da barra de ferramentas.

Configurações Configurar o &kappname;...

- Abre uma janela de configuração para o &kappname;.

Configurações Exibir barra de ferramentas

- Mostra ou oculta a barra de ferramentas.

### O menu Ajuda

&help.menu.documentation;

## Configuração do jogo

Janela de Configuração Janela de Configuração

A opção de menu Configurações Configurar o &kappname;... abre a janela para Configurar o &kappname;.

Se você pressionar o botão Cancelar aqui, todas as suas alterações de configuração serão restauradas, incluindo tudo o que fez com o editor de conjuntos de regras.

Você poderá também selecionar as diferentes páginas com o teclado: o &Ctrl;1 seleciona a primeira página com as opções para Jogar, o &Ctrl;2 seleciona a segunda página, e assim por diante.

### Opções de reprodução

Mostrar sombras das peças

- Isto exibe as peças com contornos e sombras. Também haverá algum espaço entre as linhas de peças e as peças do muro são exibidas de modo que você possa ver se o muro possui duas ou três peças de altura. Assim, se você desativar esta opção, você terá uma visão mais simples com peças ligeiramente maiores. Isto pode ser útil para telas pequenas.

Reorganizar as peças ocultas em combinações

- Esta opção agrupa as combinações que um determinado jogador possui. Em alguns casos, o agrupamento não será o que deseja, e você poderá preferir não ter qualquer agrupamento, tal como aconteceria num jogo real.

Mostrar apenas as ações possíveis

- Ao jogar, mostra somente ações possíveis como "Sem reclamação" ou "Pung".

Usar os sons se possível

- Isto permite-lhe ouvir os descartes e pedidos. Se os outros jogadores gravaram arquivos de sons com a sua própria voz, você poderá ouvi-los.

Deixar os outros ouvirem a minha voz

- Se você gravou arquivos de som com a sua voz, esta opção permitirá aos outros jogadores ouvirem os seus descartes e pedidos com a sua voz.

Velocidade da animação

- Define o quão rápido as peças devem se mover. Se você mover o índice deslizante para a posição mais à direita, o movimento da peça não será animado: as peças simplesmente mudarão de lugar.

#### Som

É possível gravar arquivos de som para os seus pedidos, os quais serão escutados pelos outros jogadores. No entanto, é necessário algum trabalho manual:

- Primeiro, você terá que descobrir onde armazenar os arquivos com a sua voz. Normalmente, esta pasta é a ~/.kde/share/apps/kajongg. Por isso, se o seu nome de usuário for 'joao', você pode ser algo do tipo /home/joao/.kde/share/apps/kajongg. Lá você também encontrará a base de dados kajongg.db.

- Na pasta que você localizou, crie uma nova subpasta chamada `voices`.

- Na pasta `voices`, crie outra subpasta com seu nome de jogador. Este é o nome que você usa quando conecta ao servidor de jogos. Você pode também definir vozes para os outros jogadores `ROBOT 1`, `ROBOT 2`, `ROBOT 3`.

- Nessa subpasta, poderá colocar os arquivos de som. Eles terão que ser codificados com a compressão de áudio Ogg Vorbis, devendo os nomes dos arquivos ter a extensão `.ogg`.

- Um arquivo único tem um nome do tipo `s3.ogg` - esta é a Pedra 3. Você poderá definir esses arquivos para todas as peças, bem como para todos os pedidos e anúncios.

Por favor, certifique-se de que a duração do som é curta mas emitida de forma clara - este jogo poderá ser jogado de forma muito rápida quando se habituar a ele. É mais fácil se escrever primeiro uma lista com tudo o que deseja falar. Não o leia como uma sequência de itens; tente pronunciar cada um deles como se fosse o único, ao jogar. A leitura disto necessita de alguma prática.

Esta é apenas uma possibilidade para criar os arquivos de som:

- Grave um arquivo de som com o programa `qarecord` e grave-o no formato `WAV`. Neste arquivo de som único, emita logo todos os sons desejados.

- Edite esse arquivo com o editor de sons `audacity`. Nesse editor, use o mouse para marcar um intervalo nas ondas sonoras. O editor irá reproduzir apenas essa parte. Repita o procedimento até ter selecionado a parte correta. Isto será mais fácil se usar a opção Ver Ampliar. Use a opção Arquivo Exportar a Seleção e salve no formato OGG. Nas Opções, escolha a qualidade baixa - ela é suficiente e, de certa forma, até desejável, porque reduz o tempo de transferência para os outros jogadores.

Os seguintes são os nomes dos arquivos que você deverá gerar. Sempre anexe `.ogg` a eles:

#### Nomes dos arquivos de som

&s1; .. &s9; | Pedra 1 a Pedra 9
&b1; .. &b9; | Bambu 1 a Bambu 9
&c1; .. &c9; | Caractere 1 a Caractere 9
&we; &ws; &ww; &wn; | Os ventos de Este, Sul, Oeste e Norte
&db; &dr; &dg; | Os dragões azul/branco, vermelho, verde
&chow; &pung; &kong; &mahjongg; | Os pedidos principais
&originalcall; &violatesoriginalcall; | Pedido do original e a sua violação
&dangerousgame; | Um jogador deixou um canhão (jogo perigoso)
&nochoice; | Um jogador declara que não tem outra opção, a não ser fazer um jogo perigoso

### Opções das Peças

Editor de conjuntos de peças Editor de conjuntos de peças

Usar o seletor de Peças para escolher os gráficos para as peças.

### Opções do Fundo

Seletor do fundo Seletor do fundo

Usar o seletor do Fundo para escolher uma imagem de fundo para o jogo.

Alguns fundos, como a Paisagem Chinesa, levam algum tempo para carregar. Se achar que o programa deva iniciar mais depressa ou se o dimensionamento da janela leva muito tempo, poderá tentar outro fundo qualquer.

### Editor de Conjuntos de Regras

Editor de Conjuntos de Regras Editor de Conjuntos de Regras

Use o Editor de Conjuntos de Regras para personalizá-las. Os conjuntos de regras padrão aparecem em itálico, enquanto os personalizados aparecem com um tipo de fonte normal. Os conjuntos padrão não poderão ser alterados de forma alguma. Uma atualização do &kajongg; poderá alterá-las. Os conjuntos de regras personalizados não serão alterados por nenhuma atualização.

Ao iniciar um jogo novo, você poderá escolher um conjunto de regras para esse jogo. Todos os conjuntos de regras definidos no editor de conjuntos de regas poderão ser usados. O conjunto de regras é salvo em conjunto com o jogo, assim poderá alterar sempre os conjuntos de regras aqui - as suas alterações só irão afetar os jogos futuros.

#### Regra, Pontuação e Unidade

Basta fazer duplo-clique sobre o item a alterar.

#### Definição

A definição de uma regra poderá ser relativamente complexa. Existe um capítulo separado para isto, o Definir uma Regra. Você não terá normalmente que alterar uma definição. Isto define essencialmente as jogadas em que a regra se aplica.

#### Copiar e Remover

Você poderá copiar regras individuais dentro de um conjunto ou conjuntos de regras inteiros. Uma vez que os conjuntos padrão são imutáveis, as regras individuais só poderão ser copiadas para dentro de conjuntos de regras personalizados.

Você poderá remover conjuntos inteiros ou regras individuais dentro dos conjuntos. Mais uma vez, isto até poderá ser feito se os jogos existentes usarem este conjunto, uma vez que cada jogo tem a sua própria cópia do conjunto de regras. Você poderá ver os conjuntos de regras dos jogos antigos: Carregue o jogo antigo e mostre a sua tabela de pontuações.

#### Comparar

Comparador de Conjuntos de Regras Comparador de Conjuntos de Regras Você poderá selecionar este comando quando selecionar um conjunto de regras inteiro. Ele permite-lhe comparar o conjunto de regras selecionado contra qualquer outro conjunto de regras.

### Combinações de teclas padrão

A opção de menu Configurações Configurar... permite-lhe modificar os atalhos de teclado padrão.

Os atalhos padrão são os seguintes:

F1

- Mostra este manual.

&Ctrl;C

- Pontua um jogo manual.

&Ctrl;N

- Joga um jogo com outros amigos ou jogadores computorizados.

&Ctrl;W

- Interrompe o jogo atual.

&Ctrl;Q

- Sai do programa.

&Ctrl;T

- Mostra a tabela de pontuações.

&Ctrl;G

- Muda o ângulo de visualização.

&Ctrl;D

- Ativa ou desativa o modo de demonstração.

&Shift;F1

- Ajuda O Que É Isto?

&Ctrl;&Shift;F

- Modo tela cheia

## Definir uma Regra

O motor de pontuações e muitos outros aspectos do &kajongg; poderão ser personalizados com o editor de conjuntos de regras. Uma regra consiste num nome, numa pontuação (incluindo a sua unidade) e uma definição.

### Grupos de Regras

Existem diversos grupos de regras:

Regras das Combinações

- As regras de combinações são aplicadas às combinações individuais, independentemente do resto da jogada.

Regras da Jogada

- As regras da jogada aplicam-se à jogada toda, incluindo todos os jogadores.

Regras do Mah Jong

- As regras do Mah Jong definem como deverá ser composta uma rodada vencedora. Normalmente são quatro combinações, com 3 ou 4 peças cada uma, e um par. Mas poderão existir outras rodadas especiais e diferentes, como os 13 Órfãos no Chinês Clássico.

Regras do Vencedor

- As regras do vencedor aplicam-se à jogada inteira, mas apenas ao vencedor. Isto inclui a maioria das rodadas especiais. Essas regras não têm que aplicar o número correto de peças.

Opções

- Aqui você poderá encontrar alguns parâmetros especiais, como os pontos para uma jogada limitada.

Penalidades

- As penalidades são aplicadas manualmente pelo usuário.

#### Ordem de Execução

- crie uma lista de regras aplicáveis, a partir das regras de combinações e de jogadas

- descubra, usando as regras do Mah Jong, se a jogada do vencedor declarado é realmente uma jogada vencedora.

- para o vencedor, aplique as regras do vencedor aplicáveis

- se alguma das regras tiver a ação '&absolute;', mantenha apenas essa. Ainda está por definir o que acontece, caso seja encontrada mais de uma.

- se alguma das regras definir limites, retire todas as outras

- aplique as regras encontradas nessa ordem

### A Definição

A definição é uma cadeia única de caracteres, uma vez que o objetivo é torná-la simples de ser gravada numa base de dados. Consiste em diversas partes separadas pelos dois caracteres "||". Uma parte expressa tanto uma condição sob a qual se aplica a regra ou expressa algumas ações. Só poderá ser definida uma parte para as ações, mas poderá definir várias para as condições. A regra aplica-se assim que pelo menos uma das expressões de condição corresponder à jogada.

O &kajongg; vem com dois conjuntos de regras predefinidos, que implementam exatamente as mesmas regras chinesas clássicas que se jogam também pela DMJL na Alemanha. Isto deverá fornecer vários exemplos.

Estas são todas as partes reconhecidas:

Expressão Regular com Capitalização Variável

- Uma parte que comece por um I é uma Expressão Regular que não faz qualquer distinção entre maiúsculas e minúsculas. No entanto, a caixa somente é ignorada na primeira, e principal, parte da expressão regular. Para as partes iniciando com m, M, x ou L, a caixa é sempre levada em consideração.

Ação

- Uma parte que comece por A é uma lista de Ações.

Expressão Manual

- Uma parte iniciando com M é uma Expressão regular opcional. Para os jogos de pontuação manual, define se esta regra deverá ser selecionada pelo jogador assinalado. O M inicial não pertence à expressão regular. Um exemplo disto seria a regra "Última peça retirada da parede morta".

Função

- Uma parte que comece por F é uma função. Algumas vezes, as expressões regulares seriam muito complicadas ou muito lentas. Nesses casos, a regra está codificada no programa em si, podendo ser referenciada através do nome da sua função. Atualmente, só está definida uma função `LastOnlyPossible`. Esta função define se a última peça era a única possível para se ganhar.

Expressão regular

- Qualquer outra parte é uma Expressão Regular.

### Expressões Regulares

Uma expressão regular é uma ferramenta de programação muito poderosa para fazer a correspondência de cadeias de caracteres. É poderosa, mas também é bastante difícil. Não é para os jogadores normais. Existem livros disponíveis que não fazem mais nada a não ser explicar as expressões regulares.

Existem diversos dialetos para as expressões regulares. O &kajongg; está escrito na linguagem de programação Python. Uma vez que a biblioteca-padrão do Python contém um módulo para expressões regulares, é este que é usado.

Para mais detalhes, veja em

Tudo o que possa ter uma influência na pontuação de uma jogada é codificada como uma única cadeia de caracteres. Depois, o &kajongg; verifica se a expressão regular corresponde a esse texto. Se o fizer, a regra é aplicada.

Por exemplo, esta expressão regular corresponde à jogada por limite "Todos os Verdes":

    ( |[bB][23468]|[dD]g)*[fy/]

#### Estrutura do Texto de uma Jogada

O conteúdo do texto de uma jogada é sempre o mesmo, independentemente da língua que usar no seu ambiente de trabalho.

O texto que representa uma jogada consiste em diversos textos parciais, separados por um espaço. A ordem destas partes é sempre a mesma, excetuando as combinações no início.

O &kajongg; é capaz de reagrupar as peças ocultas em combinações, com o objetivo de obter uma pontuação máxima. Não interessa como são agrupadas as peças para isto funcionar. Contudo, quando se relaciona com as jogadas por limite, isto poderá falhar. É por isso que o &kajongg; irá tentar o agrupamento original das peças, tal como é inserido pelo usuário, bem como a variante reagrupada. Se algum deles corresponder à expressão regular da regra, esta aplicar-se-á. A variante que resultar na melhor pontuação é a escolhida.

Aqui vem um exemplo. Ele está apenas numa linha, mas está aqui dividido por razões de legibilidade. Além disso, esta frase está repetida uma vez, porque algumas expressões regulares são muito mais fáceis de escrever se as partes poderem ser referenciadas por outra ordem. Veja a regra Roubar o Kong: A sua expressão regular vê primeiro o grupo L (Última Peça) antes de olhar para as combinações.

    c1c1c1C1 s1s2s3 b6b6b7b7b8b8 b5b5 fn yn
    /c416s000b000b000b200 -C416s000b000b000b200 %n Mneka LB5B5B5

Uma peça é representada por 2 caracteres. O primeiro é o 's' para pedra, 'b' para bambu, 'c' para caracter, 'w' para vento, 'd' para dragão, 'y' para um bônus de estação e 'f' para um bônus de flor. O segundo é 1..9 para os naipes, e,s,w,n para os ventos e w,r,g para os dragões (branco, vermelho, verde). As peças visíveis têm o primeiro caracter em minúsculas, enquanto as ocultas o possuem em maiúsculas.

Todas as partes a seguir estão sempre presentes nesta ordem, exceto a parte "Última Peça": Ela existe apenas para a jogada vencedora.

Combinação

- Uma parte que comece por um dos caracteres `s,b,c,d,w,S,B,C,D,W` é uma combinação. Uma combinação contém um número arbitrário de peças. O &kajongg; irá dividir as combinações com muitas peças, de modo a tentar maximizar a pontuação.

  É usada uma sintaxe especial para os 'kongs': o 'c1c1c1c1' é um 'kong' aberto. O 'c1c1c1C1' é um 'kong' aberto, onde foi pedida a 4ª peça, completando um 'pung' oculto. Isto é necessário para o jogo limitado 'jogo de cores verdadeiras ocultas'. O 'c1C1C1c1' é um 'kong' declarado oculto. O 'C1C1C1C1' seria um 'kong' não declarado e oculto. Contudo, uma vez que não está declarado, conta como um 'pung'. Assim, esta combinação será dividida num 'pung' C1C1C1 e num C1 individual.

  As peças de bônus aparecem após todas as combinações.

Resumo

- Uma parte que começa por / contém a informação de resumo das combinações. Isto torna mais simples criar expressões regulares. Cada combinação é representada por quatro caracteres. O primeiro caracter é um de `sbcdwSBCDW`, correspondendo as minúsculas aos expostos e as maiúsculas aos ocultos. O segundo caracter é um número que diz quantas peças a combinação contém. Vai de 0, para um 'chow', e de 1 até 4 para um 'kong'. Os dois últimos caracteres contêm a pontuação desta combinação.

Resumo alternativo

- A parte que começa por '-' é idêntica ao resumo acima, mas contém os 'kongs' pedidos como 'kongs' ocultos. Algumas regras, como os "Três Pongs Ocultos", tratam um 'kong' pedido como oculto.

Comprimento da jogada

- A parte que começa por % contém informações sobre o comprimento da jogada: 's' é uma jogada curta com peças a menos, 'n' é uma jogada com o número correto de peças e 'l' é uma jogada longa com peças a mais.

Mah Jong

- Uma parte que começa por 'm', 'M' ou 'x' contém informações adicionais. O 'M' corresponde a uma jogada vencedora, enquanto o 'm' corresponde a uma jogada perdedora, e o 'x' corresponde a uma jogada proibida no Mah Jong, por exemplo. O 'M'/'m'/'x' é seguido de um caractere para o próprio vento, um caractere para o vento predominante, um caractere para a origem da última peça que conduziu ao Mah Jong e um caractere para as declarações que um jogador fez.

  Estas são as origens possíveis da última peça: w=parede, d=descartado, e=beco sem saída, z=última peça do fim, Z=última peça descartada do fim k=roubar o kong, 1=benção da terra/céu. Os valores 'w' e 'd' são especiais - são de certa forma valores intermediários. Ao escolher uma peça oculta como última peça, a origem é mudada para 'w'. Em seguida, diversas regras dizem que só são aplicadas se a última peça vier da parede. Assim, isto permite uma melhor seleção prévia das regras manuais que se aplicam de fato. Para uma melhor compreensão, veja por favor as regras do manual e consulte a ação &lastsource;.

  Estas são as declarações possíveis: a=pedir no início, t=sorte dobrando.

Última Peça

- Uma parte que começa por L contém informações sobre a última peça. Primeiro vem a última peça propriamente dita, seguida da combinação que foi terminada com a última peça. É necessária esta última combinação para a regra "A Última Peça é a Única Possível", porque nem sempre é suficiente saber que é apenas a última peça. Lembre-se que a última combinação não poderá ser um Kong, porque se completar um Kong, terá que colocar uma peça de substituição.

Jogada Limitada Manualmente

- Isto ainda não está implementado mas poderá ser necessário para as regras que são definidas pela BMJA (na Inglaterra). Uma parte que começa por K contém todas as peças possíveis a verificar, caso sejam atribuídos pontos para um jogada limitada pedida. Poder-se-á usar a força bruta e verificar todas as peças, mas isso poderá levar bastante tempo.

### Ações

Todas as ações de uma regra estão definidas numa única sequência de texto. Elas são separadas por espaços. Algumas delas definem um valor.

&payforall;

- O jogador fez algo realmente errado e deverá pagar para todos. Mesmo assim, não é uma penalidade, uma vez que a soma dos pagamentos é a mesma - só o pagador é que muda. Do mesmo modo, os dois jogadores não envolvidos não efetuam pagamentos.

&payers;=X

- Define quantos pagadores esta regra de penalidade implica. O X é um número.

&payees;=X

- Define quantos receptores de pagamento esta penalidade implica. O X é um número.

&absolute;

- Esta regra define um pagamento absoluto. A pontuação da jogada é ignorada. Usado para as regras de penalidades.

&lastsource;

- Esta ação define a origem da última peça. É usada nas regras manuais como a "última peça de um beco sem saída". A definição da última origem com esta ação serve como filtro para outras regras - se só forem disparadas para determinadas origens. Essas outras regras também poderão ser regras manuais, obviamente. Assim, esta filtragem irá reduzir a quantidade de regras manuais que são apresentadas ao usuário na janela de pontuação. Se isto parecer complicado, basta brincar um pouco com a janela de pontuações e ver as opções de marcação aparecendo ou a desaparecendo, dependendo da origem da última peça.

## Problemas conhecidos

- Ainda não é possível para o próprio jogador abrir uma conta no servidor de jogos.

- No modo de jogo, as penalidades ainda não são possíveis.

- Os jogadores computorizados ainda são relativamente estúpidos.

- Os nomes dos jogadores computadorizados não podem ser personalizados.

## Possíveis funcionalidades futuras

- Adicionar mais conjuntos de regras. Isto deverá ser feito opcionalmente pelas pessoas que usam esses conjuntos de regras com regularidade.

## Perguntas mais frequentes

Eu quero alterar o visual do jogo. É possível?

Sim. Para alterar a aparência do &kajongg;. use a opção do menu para abrir o utilitário de configuração.

Posso usar o teclado para atribuir peças aos jogadores?

Sim. Veja como Ter o &kajongg; calculando a pontuação

## Créditos e licença

&kajongg; para o &kde;

Programa com 'copyright' © 2009, 2010, 2011 de Wolfgang Rohdewald wolfgang@rohdewald.de

Documentação com 'copyright' © 2009, 2010, 2011 de Wolfgang Rohdewald wolfgang@rohdewald.de

Tradução de Marcus Gama marcus.gama@gmail.com

Revisão e atualização de André Marcelo Alvarenga andrealvarenga@gmx.net

&underFDL; &underGPL;

## Bibliografia

- 'Das Chinesische Mah-Jongg-Spiel' de Uwe Martens 2005, Books on Demand GmbH, Norderstedt. Este livro é uma excelente referência em Alemão, que contém tudo o que você quiser saber sobre as regras usadas na Alemanha e sobre muitos outros aspectos do jogo.

- 'The Complete Book of Mah-Jongg' de A. D. Millington, 1977 (com várias edições posteriores até 2003), Weidenfeld & Nicolson, Londres. Esta é a melhor referência para o Mah Jong Chinês clássico, como é jogada no mundo Ocidental. Ele pode fornecer-lhe dicas valiosas sobre as estratégias de jogo.

- 'Mah-Jong' de Gwyn Headley e Yvonne Seeley, 3ª edição, 2008, A & C Black Publishers Ltd., Londres. Este livro é uma referência muito simples de usar, concentrando-se nas regras usadas na Grã-Bretanha, definido pela BMJA (British Mah Jong Association).

## Instalação

Use o pacote .deb de . Se não funcionar para você, poderá obter o kajongg-x-y.tar.gz no mesmo endereço e depois fazer o seguinte:

    tar xfz kajongg-x-y.tar.gz
    cd kajongg-x-y
    ./setup.py install

Em ambos os casos, terá que se certificar manualmente que os outros pacotes necessários estão instalados. O pacote da Debian ainda não contém esses requisitos. O &kajongg; necessita de: (pacotes correspondentes na Debian entre parênteses)

- a biblioteca de jogos do KDE4 (libkdegames5)

- Python 2.5 ou superior (python)

- QT4.4 ou superior (libqt4-core, libqt4-gui, libqt4-svg, libqt4-sql, libqt4-sql-sqlite)

- as interfaces em Python para o QT4 (python-qt4, python-qt4-sql)

- as interfaces em Python para o KDE4 (python-kde4)

- a interface 'twisted' em Python (python-twisted-core)

- sqlite3 (libsqlite3-0)

&documentation.index;