ColumbusJS

...

🧙‍♂️ Matt Eland: Building an Interactive Fiction Game in Modern JavaScript

Wednesday, May 20, 2020 @ 7:00 pm EDT

Ever look at modern gaming and think “Gee, I really wish modern games looked like text-based games from the 80’s, but with a modern JavaScript front end”? If so, you have interesting hobbies.

There will be a little bit of something for everyone in this eclectic talk as Matt walks us through the basics of building a text-based game engine using TypeScript and NLP-Compromise.

We’ll walk through the process of prototyping the game world and its interface using event modeling, Balsamiq, and diagramming tools.

You’ll learn how to quickly take a mockup and build it out using Angular and Angular Material.

We’ll take an in-depth look at input parsing using NLP-Compromise to parse user commands and make sense of sentences without having to build a robust database of individual words.

We’ll see how Jest and test-driven-development pair well with Google Analytics to iteratively design and refine the way the game responds to player input.

We’ll close by talking about next steps and how this prototype could be fleshed out to a full JavaScript library and ported to other JavaScript frameworks.

Matt is committed to helping people (and their code) achieve greater things. After nearly two decades of working as a professional software engineer, Matt put away his mechanical keyboard and made teaching others his primary job in a continuing quest to invest in the community and up-and-coming developers. Matt has been working with code since 1987 yet constantly discovers new things to learn. Matt focuses on building quality software applications using C#, F#, TypeScript, Angular, Vue, and plain-old JavaScript. When he’s not teaching or coding, Matt writes on software engineering at KillAllDefects.com, builds highly unusual side projects, goes on refactoring frenzies, and enjoys learning new things to share with the community at large.