Hace al menos un par de meses, mientras conversábamos con Filupa acerca de la página web de SINCRO y de posibles mejoras e innovaciones, le sugerí de que tuviese presencia en Twitter. Como Filupa no es muy dado a las redes sociales, me preguntó “¿Y para qué va a estar SINCRO en Twitter?”. Y ahí fue cuando le sugerí que tuviese un bot que realizara tiradas de dados. Buscamos por la web, y no había nada funcional que hiciese lo mismo (sólo por web o por correo electrónico). Definimos nuestros usuarios objetivo: quienes juegan rol por foro, correo, chat o similares y necesitan un notario, o ministro de fe, que realice tiradas de dados en forma neutral. Delineamos un poco los requerimientos y le dimos la partida.

Lo primero fue escoger un lenguaje de programación con el que el programador voluntario (yo) se sintiese cómodo. Eso fue fácil, pues la mayoría de mis proyectos de programación recreativa los hago en java. Luego debíamos encontrar alguna API para Twitter escrita en java (no queríamos reinventar la rueda). Encontramos twitter4j y después de algunos errores de principiantes, teníamos un programa mínimo que lograba conectarse a Twitter con una cuenta de prueba. A eso lo siguió el programa para hacer follow a todos los followers. Y luego el programa que hacía las tiradas de dados.

Ahí fue cuando tuvimos que sentarnos y pensar en la forma en que queríamos que se realizara la interacción entre el usuario final (quien quiere realizar una tirada de dados) y el sistema (que haría la tirada e informaría algo de vuelta). La idea es que para un fin específico, el usuario debiese recordar un set de instrucciones lo más pequeño posible y no un manual de uso de 50 páginas.

La tirada de dados más básica ya tenía una notación ampliamente difundida y aceptada, por lo que fue la primera en ser implementada. Tirar X dados de Y caras, o XdY en notación estándar. Luego vino la composición de tiradas, los bonos, los malus, y varios otros tipos de tiradas asociados a diversos sistemas de juego: World of Darkness, New World of Darkness, Roll and Keep, Fudge, One Roll Engine y algunas otras menos ortodoxas como clima y rumbo.

Hasta el momento, el servicio operaba en modo de prueba, con una cuenta de prueba, en computadores de escritorio o notebooks. Si deseábamos que estuviese en producción necesitaríamos encontrar un lugar dedicado para poder albergar el servicio. Cotizamos algunos servicios de hosting, pero finalmente, gracias a donación de espacio, energía y conectividad, y al préstamo de un Asus Eee PC, no fue necesario desembolsar dinero alguno.

Ha sido un proceso entretenido, gratificante, en el que el trabajo de equipo con Filupa y el esfuerzo invertido, permitieron que el proyecto diese los frutos esperados y llegase a buen término, el servicio operando en Twitter, bajo la cuenta @dadinci.

Anímese y mándele un mensaje a @dadinci, la página de ayuda es esta.

Advertisements