rleibman / chuti

El famosisimo juego de Chuti

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

License release-badge

Build Status BCH compliance Coverage Status Mutation testing badge

Chuti!

  _______
 /______/|
|     o ||
|   o   ||
| o     ||
|-------||
| o   o ||
|   o   ||
| o   o ||
|_______|/

En cuanto todo funcione, te invito a jugar en:

http://www.chuti.fun

Diagrama de estado del juego

Comienzo
   |
   |
   V
Esperando
   |
   +-------------------
   |                  |
   V                  |
Cantando              |
   |                  V
   +-------------------
   |                  |
   V                  |
Jugando               |
   |                  V
   +-------------------
   |                  |
   V                  V
Terminado         Abandonado

Definiciones:

  • Juego - Una partida, desde que se canta hasta los regalos.
  • Partido - Una coleccion de juegos con los mismos jugadores que se juega a 21
  • Turno - El jugador que le tocaba cantar este juego
  • Cantante - El jugador que le tocaba cantar, o el guey que lo salvo
  • Mano - El jugador que tiene la batuta en un momento dado

Heuristicas

Chutis de caida:

  • todas de un numero
  • todas las mulas
  • Las cuatro mas altas de una y 3 mulas

Hoyos tecnicos

  1. Si eres el cantante: Cuando sigues corriendo el juego a pesar de que ya estas hecho. Dado un triunfo, cual es el mínimo numero de filas que puedes hacer, Nota: siempre se puede correr la primera. Es decir Si llevas la mano, y el mínimo es igual o mayor a lo que cantaste, y vuelves a pedir... es hoyo tecnico!
  2. Si no eres el cantante, pero llevas la mano si sigues corriendo el juego a pesar de que el hoyo ya esta hecho
  3. Si piden cualquier numero (triunfo o no), tienes y das otra cosa (el juego podría fácilmente evitar esto)
  4. Si piden cualquier numero que no sea triunfo, no tienes de esas, pero tienes triunfo y no lo sueltas

El juego se acaba

  • Cuando el que canto ya hizo el numero que canto
  • Cuando el que canto no tiene ya posibilidades de hacer lo que canto (sin importar quien lleva la mano)

Paginas

Log in

User Password

Self Registration and Invited Registration

User Email Password Repeat Password

User Admin

User Email Password Repeat Password

Lost password

Lobby

Chat

Private messages

Users

Invites

Current game

Start New game

Join random game

Mesa de Juego

  • Cuatro secciones, una para cada jugador
  • Fila de controles, con todos los posibles comandos, segun el juego
  • Seccion central donde ocurre el juego
  • Chat lateral (en versiones futuras video de los jugadores)
  • Ver cuentas
  • Regreso al Lobby

#Technology

  • ZIO
  • Caliban GraphQL library
  • Scala.js
  • Semantic UI

Roberto Leibman

  • rleibman-github-badge
  • rleibman-linkedin-badge
  • rleibman-personal-badge
  • rleibman-patreon-badge

#Porque no marca a Roberto como ganador???? {"id": {"value": 146}, "created": "2020-07-27T20:51:27.472449", "enJuego": [], "triunfo": {"TriunfoNumero": {"num": {"value": 6}}}, "jugadores": [{"mano": true, "user": {"id": {"value": 1}, "name": "Roberto Leibman", "email": "roberto@leibman.net", "active": true, "created": "2020-04-09T00:28:28", "deleted": false, "isAdmin": false}, "filas": [{"index": 0, "fichas": [{"type": "conocida", "abajo": {"value": 6}, "arriba": {"value": 6}}, {"type": "conocida", "abajo": {"value": 2}, "arriba": {"value": 6}}, {"type": "conocida", "abajo": {"value": 0}, "arriba": {"value": 6}}, {"type": "conocida", "abajo": {"value": 5}, "arriba": {"value": 6}}]}, {"index": 1, "fichas": [{"type": "conocida", "abajo": {"value": 5}, "arriba": {"value": 5}}, {"type": "conocida", "abajo": {"value": 4}, "arriba": {"value": 5}}, {"type": "conocida", "abajo": {"value": 1}, "arriba": {"value": 5}}, {"type": "conocida", "abajo": {"value": 3}, "arriba": {"value": 5}}]}, {"index": 2, "fichas": [{"type": "conocida", "abajo": {"value": 4}, "arriba": {"value": 4}}, {"type": "conocida", "abajo": {"value": 0}, "arriba": {"value": 1}}, {"type": "conocida", "abajo": {"value": 0}, "arriba": {"value": 4}}, {"type": "conocida", "abajo": {"value": 1}, "arriba": {"value": 4}}]}, {"index": 4, "fichas": [{"type": "conocida", "abajo": {"value": 0}, "arriba": {"value": 5}}, {"type": "conocida", "abajo": {"value": 1}, "arriba": {"value": 6}}, {"type": "conocida", "abajo": {"value": 0}, "arriba": {"value": 2}}, {"type": "conocida", "abajo": {"value": 0}, "arriba": {"value": 0}}]}, {"index": 0, "fichas": [{"type": "conocida", "abajo": {"value": 3}, "arriba": {"value": 6}}]}], "turno": true, "cuenta": [{"esHoyo": false, "puntos": 1}, {"esHoyo": false, "puntos": 5}, {"esHoyo": false, "puntos": 5}, {"esHoyo": false, "puntos": 2}, {"esHoyo": false, "puntos": 3}, {"esHoyo": false, "puntos": 5}], "fichas": [], "invited": false, "cantante": true, "statusString": "", "cuantasCantas": {"Casa": {}}, "ganadorDePartido": false}, {"mano": false, "user": {"id": {"value": 46}, "name": "aoeu", "email": "roberto+aoeu@leibman.net", "active": true, "created": "2020-06-04T09:12:10", "deleted": false, "isAdmin": false}, "filas": [], "turno": false, "cuenta": [{"esHoyo": false, "puntos": 1}, {"esHoyo": false, "puntos": 4}, {"esHoyo": false, "puntos": 1}, {"esHoyo": false, "puntos": 1}, {"esHoyo": true, "puntos": -4}, {"esHoyo": false, "puntos": 1}], "fichas": [], "invited": false, "cantante": false, "statusString": "", "cuantasCantas": null, "ganadorDePartido": false}, {"mano": false, "user": {"id": {"value": 39}, "name": "test1", "email": "roberto+test1@leibman.net", "active": true, "created": "2020-05-25T11:01:29", "deleted": false, "isAdmin": false}, "filas": [{"index": 3, "fichas": [{"type": "conocida", "abajo": {"value": 1}, "arriba": {"value": 3}}, {"type": "conocida", "abajo": {"value": 0}, "arriba": {"value": 3}}, {"type": "conocida", "abajo": {"value": 4}, "arriba": {"value": 6}}, {"type": "conocida", "abajo": {"value": 2}, "arriba": {"value": 3}}]}, {"index": -1, "fichas": [{"type": "conocida", "abajo": {"value": 2}, "arriba": {"value": 5}}, {"type": "conocida", "abajo": {"value": 1}, "arriba": {"value": 2}}]}], "turno": false, "cuenta": [{"esHoyo": false, "puntos": 5}, {"esHoyo": false, "puntos": 2}, {"esHoyo": false, "puntos": 4}, {"esHoyo": false, "puntos": 2}, {"esHoyo": true, "puntos": -4}, {"esHoyo": false, "puntos": 2}, {"esHoyo": false, "puntos": 2}], "fichas": [], "invited": false, "cantante": false, "statusString": "", "cuantasCantas": null, "ganadorDePartido": false}, {"mano": false, "user": {"id": {"value": 47}, "name": "aoeuaoeu", "email": "roberto+aoeuaoeu@leibman.net", "active": true, "created": "2020-06-04T09:15:58", "deleted": false, "isAdmin": false}, "filas": [], "turno": false, "cuenta": [{"esHoyo": false, "puntos": 1}, {"esHoyo": false, "puntos": 2}, {"esHoyo": false, "puntos": 1}, {"esHoyo": false, "puntos": 1}, {"esHoyo": true, "puntos": -4}], "fichas": [], "invited": false, "cantante": false, "statusString": "", "cuantasCantas": null, "ganadorDePartido": false}], "gameStatus": {"requiereSopa": {}}, "statusString": "Roberto Leibman se hizo con 5 filas. Regalos para test1. Se termino el juego, esperando a que Roberto Leibman haga la sopa", "estrictaDerecha": false, "satoshiPerPoint": 150, "currentEventIndex": 171}

About

El famosisimo juego de Chuti

License:Apache License 2.0


Languages

Language:Scala 83.5%Language:HTML 11.6%Language:CSS 4.8%Language:JavaScript 0.1%