Posted May 19, 2022 by DesindaDev
#interactive-story #story-creator #storydev
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:
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:
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!