July 17, 2026

Stacks, Dialogue Styles & the Road to itch.io

journal

First of all: sorry for the long radio silence. The last few weeks got a little out of hand in the usual way: I fixed a lot of smaller issues, went on several side quests, prepared the launcher, worked on creator beta approval and did not properly communicate every patch version along the way.

So this entry is broader than a normal release post. Some of the changes below already shipped in smaller Steam patches, but I still want to collect them here because they are part of the same bigger picture.

The biggest changes are the new Stacks, different Dialogue Styles, Story Previews, the launcher and the new creator beta approval flow. In this article I will explain these features in a little more detail.

Version: App: v0.17.0 - API: v0.19.3-d59486d3

Stacks for Items, Dialogues & Scenes

Stacks for Items, Dialogues & Scenes

Stacks introduce reusable content pools for items, scenes, detail scenes and dialogues. They can be managed in the contexts where they are used, including stories, chapters, scenes, dialogues and items.

This was implemented because random or reusable content needs a structure that is separate from the individual action that consumes it. Without that separation, creators have to define every possible result directly inside the action or duplicate the same lists in several places.

Stacks can be used for random inventory rewards (think of loot tables), random scene selection, optional detail scenes or dialogue variation. A story can define a pool once and let player actions pull from it when needed.

Initially I started with item sets, because of a feature request. But it became clear very quickly, that this would be useful for a lot of different scenarios. So I went with a more generic approach.

Introducing different Dialogue Styles

Introducing different Dialogue Styles

Dialogues now support multiple display styles: default, chat, phone call and terminal. The editor includes controls for configuring the display style of a dialogue.

This was implemented because not every conversation works well in the same visual format. A direct conversation, a phone call and a terminal exchange all use the same underlying dialogue logic, but they need different presentation rules.

The change can be used to keep dialogue content in the dialogue system while changing how it appears to the player. Playback handling was also updated for speaker names, portraits, backgrounds, options and scrolling so these styles behave more consistently.

Please note, that there currently is no inline preview for dialogue styles other than default. This will be implemented in a future version. You can still test your dialogue while developing it of course.

Story Previews now Available

Story Previews now Available

Story previews can now be created before a story goes through the full release workflow. A story page can be visible while the story itself is not yet available as a published release. Think of it like publishing a Steam page, before actually publishing the game.

This was implemented because creators need a way to show what they are working on before publishing a finished release. It also gives the marketplace and story page workflow something to validate before a story becomes available to players.

This can be used to prepare a public story page, share a work-in-progress listing and check how the story is represented before release. Preview releases now run the relevant story and page checks, and the checks system now handles more missing-content cases before publishing.

Selected Story Previews will always be automatically published to the Talescape Discord and other social media channels.

Launcher & Desktop Application

The Talescape Launcher has been prepared specifically for the upcoming itch.io release. It does not require a Steam key, but during the Creator Beta your account still needs to be unlocked before you can use it. This can take up to 24 hours.

The launcher works differently from the bundled Steam app. It loads the application logic remotely, which can make the first startup a little slower. In return, most updates do not require a manual download, because the app updates itself through the launcher flow.

This was implemented to make Talescape available outside Steam and to prepare the move from the closed beta into the creator beta. The launcher will be released shortly together with the next public beta step.

Inline Creation & Editing of Elements

Inline Creation & Editing of Elements

Related elements can now be created from the element and model browser. Missing characters, items, variables and similar resources can be created when they are needed and edited in place.

This was implemented to reduce context switching in the editor. When an action, condition, scene element or dialogue needs another resource, the creator should not have to leave the current workspace, create the missing resource somewhere else and then return to continue.

This helps when building connected story logic. A creator can add missing dependencies while staying in the current flow, then continue configuring the scene, dialogue or action that needed them. Player-side changes also improve larger inventories, visible timers and stack-aware action behavior.

Steam Achievements

Steam Achievements

Achievements are now properly set up for Steam. You can sync your Talescape achievements with Steam from your user settings.

This was implemented because Talescape will be available on four different platforms, and achievement progress should not be limited to the internal Talescape account. Steam is the first platform using this sync flow, but the same platform-based approach can be used for other platforms in the future.

This helps players keep their progress consistent outside Talescape and gives achievements a clearer role across distribution platforms. More achievements will be added over time.

Finished Localization

The application is now translated into French, Italian, Spanish (Spain), Portuguese (Brazil) and Simplified Chinese.

This was implemented so more creators can use the application UI in their preferred language. The translations were created with a translation service, so some wording may still need correction.

This helps with testing the application in more languages before a wider launch. Written Documentation has also been updated & translated. Videos will stay English only.

Other Changes & Bugfixes

Editor Experience

  • Deleting resources now updates lists optimistically, resulting in less waiting time.
  • Dialogue table rows open their related content directly.
  • Marketplace header and thumbnail selection were improved.
  • Optional item images are explained more clearly and use the item icon as a fallback.
  • Added a maintenance option to reload story data on demand.
  • Bugfix: Scene creation now selects the correct scene type.
  • Bugfix: The release publish and submit modal can be closed properly again.
  • Bugfix: The media edit form can be saved again.
  • Bugfix: Story media deletion now runs asynchronously. This caused an issue before, when trying to delete very large stories.
  • Bugfix: The same media can now be assigned multiple times to the same element.

Media & Asset Packs

  • Audio files are optimized on upload and converted to single-channel MP3 unless optimization is disabled.
  • Image files are optimized on upload and converted to WebP unless optimization is disabled.
  • Upload limit per file was increased to 32 MB.
  • Added a select or unselect all button to the asset-pack import modal.
  • Added a warning when an asset-pack import would exceed the story storage limit.
  • Failed or partially failed asset-pack imports now return clearer notifications.
  • Media pending moderation or review now shows a marker on the media card and in the edit form.

Release Checks

  • Scenes no longer need a background when they are created. Missing backgrounds are checked before publishing.
  • Items no longer need an icon or image when they are created. Missing visuals are checked before publishing.
  • Marketplace screenshot validation now produces a warning instead of an error.

Marketplace

  • Story marketplace age-group filtering only exposes adult content when the user explicitly allows adult content.
  • Stories are marked as tested automatically when the first player finishes them. This resets with each new release for now.
  • Bugfix: Fixed missing author name in marketplace export data.

Story Player

  • Added inventory search and pagination.
  • Added visible timer display with urgent-state styling.
  • Improved player action execution and cleanup behavior.
  • Refactored the debug menu into tabs for logs, inventory, variables, events and timers.

Achievements

  • Steam achievements are now configured for the application.
  • Achievement sync can be triggered from the user settings.
  • Achievement sync uses the platform integration approach that can support other platforms later.

What Comes Next

The next milestone is the upcoming itch.io launch. This will add another public distribution channel for Talescape and make the project easier to find outside the current tester group.

At the same time, the beta is moving from a closed phase into a more open creator beta. Approval will still be part of the process, but the next phase is intended to include more creators and more public-facing story previews.