Change in Circumstances


There were documentation links on the front-page of Story Creator. Unfortunately, due to unforeseeable circumstances that affect my personal life, I have been forced to shut down the hosting service earlier than I had anticipated in order to save up for a move.

However, to put things a little more into perspective, most of the documentation/guides that were on the Twinspire website have been backed up, images included, and will be updated on the StoryDev website. The only reason this hasn't happened yet is twofold:

  1. Most of my current free-time work has been involved with Story Creator and improving its feature set, for obvious reasons.
  2. Another key piece of software also being built in my free-time, although not so high priority, was a method to update and make it easier to manage the content on the StoryDev website.

Now that circumstances have changed, it seems priorities need to be shifted in order to get an archived copy of the documentation up on StoryDev as soon as possible. At the moment, my circumstances are not certain and currently, no notice has been given.

The StoryDev website itself is not requiring an immediate change, but almost certainly will there be a priority to get some content management system in place, even if it's incredibly simple just to get the ball rolling. If you're curious, I do not like to use things like WordPress or Joomla!. Not only am I unfamiliar with them, building websites from scratch has always been my repertoire, even if development is slower. What can I say? I think a lack of third-party libraries helps the performance of websites, certainly better for user experience considering how slow the Web can be.

But I digress.

What actual work has been done in Story Creator?

To help give some understanding in the progress of Story Creator, please turn your attention to the following screenshot:

There was another form of the so-called "Story Order", which, if you had managed to work with the documentation on the Twinspire website, was primarily for Simulations. Now that the Story Order functionality is becoming more "official" and easier to work with on the eyes, it seems only plausible to integrate the current Simulation engine with this new version. More on Simulations later, however.

Story Creator is designed to be semi-linear, and to make this more apparent (although I have no screenshots for it at the moment), there are multiple options you have to create items in what's called "Timelines". That's the dark blue coloured frame in the background Story Order form.

In this Timeline, called "Introduction", you have multiple conversations. If you already have conversations, I would probably do well to make sure there is the ability to link up a conversation to an existing file. However, there are two conversations that exist here: "Introduction" and "Ceremony". Once a game template has been created (currently being worked on), the conversations being played will appear in the order in  which you specify. Creating a new Conversation will automatically append to the end of the timeline.

The same is true for the other options. These are: Discovery, Event, and Execute Code.

Discovery : This option is designed to provide an interface to discover something in-game. It could be a place of interest, a map location, a treasure chest, whatever. The difference between Events and Discoveries is that a Discovery produces a result, whereas Events can be any trigger that can involve a result or not.

Event : Basically a WYSIWYG interface for the next option, Execute Code. If you don't like coding or you don't know how, Events are designed for this. As mentioned above, this is effectively a go-between for extremely simple and extremely flexible.

Execute Code : Execute some code. Of course, that means putting together a script that is either generated inline with the actual code in your game, or executed as an actual script. Either way, depending on your game's performance metrics, you have the choice to execute as a script or compile.

Script Functionality

There is currently a scripting module in the "shadowlight" (and possibly "development") branch of the Story Creator GitHub page. The idea was to have most, if not all, custom data sets and modules be developed via scripting.

After working with the way the scripts are being handled, it seems inappropriate to continue with this approach, for one simple reason: Complexity.

Scripting has many potentials for the ability to expand and create say, "Extensions" if you will, for the software. When it comes to Custom Data Modules, this data is often hard to understand when it is written in the form of code. Except where you are writing classes or structures, that is actual objects you can reuse in code, it seems daunting to use all of these functions to write custom data structures. It's difficult to read and understand, and takes away from the experience.

As a result, I am currently working on designing some forms to replace this functionality. This should be more approachable, especially for those who would prefer to avoid coding if they can, while still being able to make an interactive story that is more suited to their requirements.

Currently, my roadmap is as follows:

  • Design and Implement Custom Data Tables, Advanced Searching and SQLite integration.
  • Simplify the Scripting API and ensure it is only game-function related (expanding on Story Creator is not really necessary, this can be done via DLL files if there is demand for it).
  • Allow the ability to "register" custom game scripting functions for use in coding. That is, using a generated form to find custom data that your game needs to execute the relevant code. For example, creating a custom script for a function that gives the player money, and then creating a form in which contains a field that allows you to adjust the value of money that can be given to the player (therefore accessible via both Events and Execute Code).
  • Complete the Story Order editor (obviously)!
  • Expand on Resource Management.
  • Some ability to create a "Player State", in which all saved variables will exist and be accessible in code.
  • Complete Simulation debugging so that it works with custom scripts and registered game functions.
  • An actual game template to work with, in which case clicking "Output..." under "Project" will generate all the code ever written, generate an output folder, copy local resources, translate all your conversation and story order into the game, and compile the game into something that can be run.

At that point, once fully tested and able to consider a working copy, I would release this as an actual version worthy of "Release", rather than "Beta".

However, despite all of this, I must work on building a simple content management system for StoryDev in order to maintain it's content more frequently and archive the recently backed up version of Twinspire.

Thank you for taking the time to read this. Until next time!

Get Story Creator

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.