Traveller’s Solas is an interactive narrative demo, presented in the style of a classic text adventure game. It was developed in Twine as a solo project, for the purpose of prototyping a robust, data-driven framework for writing text adventure games.
The two core features that I developed were the interaction system, and the game objects. The interaction system provides players with a list of actions in the sidebar, which can be selected by either clicking the action, or typing the corresponding key. This will act upon whichever object the player has selected, or prompt them to make a selection.
For this system to work, I developed a handful of Twine widgets. For example, one widget was used when writing the descriptive text for an object, to automatically generate a clickable link with the name of the object being described. Another widget was designed to display the description of any given object, and was used to describe all objects inside a room or container. Additional widgets were created for features such as textboxes and UI elements.
I also created a custom “Draw” widget, which renders pixel art using colored ASCII blocks. The code for these widgets was generated externally with a console program which I developed in C# to convert each pixel of an image into the appropriate line of HTML and CSS.