A game where you try to defeat your mortal enemy.
Settlement was originally created for my Games and Social Justice class at Northeastern. It won the Most Innovative Game award at the 2017 Northeastern Game Showcase.
The game has two parts. The board game and the game bot.
Creating the Board Game
The board is an 8 by 8 grid of tiles. Left to right should be labeled A - H. Top to bottom should be labeled 1 - 8. A dark line should be drawn between row 4 and 5 to indicate the half way point. Red side is 1 - 4 and blue side is 5 - 8.
You need 2 identical boards.
Here is my board.
The tiles are 1 inch by 1 inch. Labeling each grid tile helps players when they are playing.
You need two sets of pieces. Settlement pieces should fit into grid squares. My pieces were made of paper and were 3/4s of an inch by 3/4s of an inch.
You need 6 missile pieces. My pieces were origimi rockets. Instructions to make them are here.
You also need a divider so that each player's board is secret. My divider was two pieces of foam board with putty to keep them together.
Game instructions are located in the Game Instructions folder. They are in PDF and DOCX format.
Setting up the Game Bot
First you'll need to setup Secrets.cs. See Secrets.example.cs for what to populate the file with. Rename it to Secrets.cs and the class to Secrets once you're done.
projects |-- godbot |-- SlackAPI |-- Trexler
You will need .NET Core in order to run the bot. Download here.
Then run these commands. They need to be run inside the
dotnet restore dotnet run
If everything is set up correctly you should see something like this in your terminal.
Hosting environment: Production Content root path: C:\Users\Sanders\OneDrive\Projects\godbot\godbot Now listening on: http://127.0.0.1:8893 Application started. Press Ctrl+C to shut down.
After setting up your Twilio phone number you need to point Twilio to a URL that the bot is setup on. If running locally you can use ngrok to open up your localhost port to the internet. Download ngrok here.
For localhost with ngrok
ngrok http 8893
You will now see two URLs that are being forwarded to
Paste in your URL to the first Messaging webhook and append
/api/godbot. It should look something like
http://1af951eb.ngrok.io/api/godbot. Also make sure Twilio will use HTTP POST when connecting to the bot.
You can now test that everything is working by sending
start game [phone number] to your Twilio number. The number cannot be the number you're sending from. You can setup and use a Google Voice number to test.
The Slack bot was originally used for testing. You should be able to use it still. In debug mode the bot outputs all messages to one channel. The channel ID is defined in Client.cs under ChannelId. Change this to the Slack channel you want to use for testing.
golf1052UserId is the user ID of the person who can start games. Change this to your Slack user ID.
golf1052Dm is not used in debug mode. You can then say
godbot start game to start a game in your debug channel. You'll need to enter moves for both players into the channel.
If you want to use the Slack bot like the Twilio bot where the bot messages two channels individually you'll need to make some changes to Client.cs in