This game, inspired by book 12 of the Odyssey entitled Difficult Choices, puts players in the position Odysseus, stuck at sea, in a desperate struggle to make it home, alive, to Ithaca. Players must use the technologies of crew communication and strategy, along with optional divine intervention, to reach their goal. Along the way, they must manage their crew's loyalty by keeping their crew mates fed, persevere through harsh weather conditions, and negotiate a path through two very hungry, and yes, deadly, sea monsters, Charybdis and Scyla. In order to both effectively play this game and succeed in life in general, one must rely extensively on strategy.

This game was originally envisioned as a standard board game. Due to the conversion to an online format, some of the original protocol was modified. For example, if all a of a players sailors were lost, the player's speed would be capped at one move per turn. Now, such a situation leads to a game over condition. Also, certain rules, such as each player's starting sailors, as well as the rate of supply depletion, are not given arbitrary numbers at the start of the game and are generated using the system random number generator facilities. 

This game is implemented in shell script, with sshfs as a backing store to store player data and global game state across interconnected virtual machines. To start a session, open a web browser and go to the following URL: 
https://nashcentral.duckdns.org/ithaca
If no game is in progress, the system will prompt you to wait for other players. Otherwise, instructions will be printed to the display and you will be dropped into the game world, ready to face the challenges of seaward navigation, divine assistance or hindrance, and a path between two hungry sea monsters. In order to ensure a stable game play experience, several conditions must be met. First of all, the connection to the server on which the game is hosted must be properly established and maintained. Every effort has been made to make this process as automatic and seamless as possible, however, much like divine intervention in The Odyssey, the gods of internet access and technology may decide for one reason or another to interfere with this process. For instance, in one of the test runs, the ui would load, but upon creation, the frontend would refuse to connect to the created vm, thanks, optimum, may Zeus smite you! Another issue that players must work around is timing. Once the vm is created and started, players must connect to a shared file storage location in order to synchronize player and world state with each other, since they are running the exact same program, with the same data store, located on separate systems. Even if players are connected to the same file storage location, if one player starts to send data that the others are not expecting at the current time, the entire game state can be corrupted, requiring all players to reconnect. Also, if a player joins multiple times, either through running multiple instances of the game or through an error in timing, a so called ghost player can be created, which the system will see as a separate player and which must be manually dealt with, either by forcing all players to be disconnected, or manually editting the game’s internal reference counters every time that player’s turn appears in order to maintain state continuity. Overall, through the effective use of strategy and good fortune, you may be the lucky captain that makes it back to your homeland of Ithaca. Happy sailing!

Host Console