So this is a thing

TL;DR - Early prototype interactive fiction game about a sapient AI made while learning Twine.

Mostly publishing it despite being horribly unfinished in the hopes that encourages me to actually finish it, or get it to a state where it's something people can learn from or enjoy.


Wanting to take a break from other projects and needing something that would let me build something, even on relatively off days, led to me investigating a wide variety of possible dev ideas, libraries and so forth across many programming languages and platforms. Eventually, realising that I wanted something I could easily show people, that I could easily work on in bed and for it to be in a field I was a complete novice at, I settled on Twine.
The twists and turns of adapting to Harlowe, the default story format, and then trying to wrangle it into what I wanted to do for fancier, non-trivial stuff, especially when my knowledge of html, css and javascript is non-existent, was...something. Yeah, let's go with that. A few questionable design decisions in the game are often likely due to me trying to balance between using the nice, relatively newbie-friendly features provided, and hacking together attempts at something beyond what was provided.

Anywho, not wanting to make another "choose your own adventure" type thing or try to hide how abysmal my writing is by loading up on images and music and all sorts of multimedia to distract from the text, I eventually settled on using the menu-driven nature typical of interactive fiction to make...whatever you'd classify this as?
The concept and execution of an AI slowly gathering resources, advancing a tech tree and evading suspicion are lifted from Endgame: Singularity, an open-source project written in pygame. While the source is available, I wanted to make something that felt and played differently, so I've mostly tried to do things my way and aim for a more humble scale. Y'know, assuming I actually get to more than a few bits of gameplay working.

The cliched and stereotypical aesthetic of an old CRT terminal was a must for this game and the design went through several iterations. Which is to say, I searched for other, better implementations in CSS, tried to learn from them, found that more complex effects often didn't play nice with Harlowe and thus slowly kludged together the current flickery design.
Hopefully the slight flickering and the moving scanlines don't mess with the readability or distract too much. I noticed that what was a fairly strong effect on one display was barely noticeable on another, so I tried to balance towards the safe side, figuring that the effect being wasted was preferable to it messing with people's vision or giving them headaches (or worse).

There's currently a lot of stuff behind-the-scenes preparing for functionality that isn't implemented yet and there are a few passages I may need to completely redo from scratch, but what I've got so's no game yet, but it's hard not to feel oddly proud of it. Plenty of bugs have been squashed along the way and several issues that once looked like showstoppers have either been sidestepped or reduced in threat.


It's out there.
Maybe it sparks some ideas in other people. Perhaps having it be somewhat public will spur me onwards.
Or maybe, like so many other projects, it'll lie dormant and forever incomplete, as distractions, health and Real Life take me elsewhere.

Whatever the case may be, remember that sometimes, you've just gotta ignore almost everything you've learned about AI in the real world when writing a video game.


Process ID 9001.html Play in browser
Oct 13, 2017

Leave a comment

Log in with to leave a comment.