3 flavors of text adventure engine

in nth-society •  7 years ago 

Previously I announced a little Lua and C++ based text adventure engine I created and published on GitHub, freely available and playable. I intend on using it to figure out some technical problems with the Nth Society engine planning.

That link again is: https://github.com/thrize/textadv-engine

I've ported the C++ bindings to Javascript and integrated it with Node.js, my favorite way to run Javascript locally and as web apps. It wasn't too hard, the Lua library I found for it turns out to be excellent, though missing a few features.

As a result there are now three engines, all which use the same Lua game scripts:

  1. C++ console engine
  2. Node.js console engine
  3. Electron app engine

The most fun one is of course the Electron app engine because it's an actual app with GUI. Electron is a great framework for Node.js that allows the easy creation of desktop apps from Node.js code. I also use the Phototon UI toolkit.

textadv-engine-electron.png

^^^ You might notice the "Text to speech enabled" checkbox? Check it and see if it works for you 😉 You'll need to have the say command installed though.

The directory structure in the project now looks like this:

textadv-engine
|-img
|-lib-js
|-src-c++
|-src-electron
|---config
|---e2e
|---fonts
|---scripts
|---src
|-----helpers
|-----menu
|-----stylesheets
|---tasks
|-src-node-js
|-testgame

The three directories starting with src- hold the source for the various engines, and the instructions are easy to follow on the readme of the GitHub repo.

Please try it out and let me know what you think!

banner.png

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Thank you for information brother

  ·  7 years ago (edited)

When you don't understand the provisions of something, you must not comment. It will always amount to spam. If you have good reputation, which is there, you need not to comment such things.
Respect @personz, give at least a warning before you downvote someone. Sometimes people may not be aware what will them lead to spam.