*To view a more attractive version of this page, visit The ZorkBot GitHub Website
What is a ZorkBot?
This repo holds the Codebase for the node.js based Microsoft Bot Framework. application that I built to play Zork, The Hitchiker’s Guide To The Galaxy, and a series of other InfoCom classic Interactive Fiction titles.
On top of a series of manual optimizations that are made before any command from the user hits the server, ZorkBot leverages a series of models that I have trained for LUIS.ai to help concert human speech down to commands that these games can better comprehend.
For those with a screen through which they can interface with this app via Skype, the Cortana app for Windows, Android, iOS, Microsoft Teams, Facebook Messenger, Slack, or any other, I highly recommend it. This application has been built with a screenless interface in mind, but due to a series of interactive cards that I have built for choice prompts, this application can be much more enjoyable with a screen.
Prerequisites
- Node.js version 10.14 or higher
# determine node version node --version
To run the bot locally
- Download the bot code from the Build blade in the Azure Portal (make sure you click “Yes” when asked “Include app settings in the downloaded zip file?”).
- If you clicked “No” you will need to copy all the Application Settings properties from your App Service to your local .env file.
- Install modules
npm install
- Run the bot ```bash npm start
Testing the bot using Bot Framework Emulator
Bot Framework Emulator is a desktop application that allows bot developers to test and debug their bots on localhost or running remotely through a tunnel.
- Install the Bot Framework Emulator version 4.3.0 or greater from here
Connect to the bot using Bot Framework Emulator
- Launch Bot Framework Emulator
- File -> Open Bot
- Enter a Bot URL of
http://localhost:3978/api/messages
Deploy the bot to Azure
After creating the bot and testing it locally, you can deploy it to Azure to make it accessible from anywhere. To learn how, see Deploy your bot to Azure for a complete set of deployment instructions.