I once experimented with using TiddlyWiki to manage player character sheets and attempted to create branching stories, but nothing too sophisticated. Recently, after engaging with a discussion on teaching TiddlyWiki to interactive media and game design students, I’ve become interested in exploring TiddlyWiki for game creation once again. Let’s discuss TiddlyWiki’s strengths and weaknesses in this context, potential challenges, and possible solutions. Who knows, maybe this will lead to improvements or innovations within TiddlyWiki.
I’ll start.
Why Consider TiddlyWiki for Game Development?
At first glance, TiddlyWiki, a note-taking software, might seem ill-suited for game development. However, its modularity, cross platform compatibility thanks to the use of web technology, and its powerful filter and templating system make it an interesting option. The fact that TiddlyWiki is free and open-source adds to its appeal.
Games have been created using unconventional tools like books, PDFs, and even Excel - so tiddlywiki shouldn’t be any different.
TiddlyWiki’s structure allows for documenting the game development process alongside the game itself. This includes detailing plot points, character descriptions, or creating a user manual directly within the game’s framework. Features such as encryption and custom layouts can enhance storytelling by revealing content at appropriate times. Additionally, the support for plugins and the HTML format would hugely simplify mod creation, hosting, and updates.
Challenges and Questions:
- How can we incorporate music within TiddlyWiki games? I’d like to play sound effect when a player make an action for example, how could we do this ?
- How to handle CSS animations and the refresh mechanisms? If tiddlywiki refresh a button because the content has changed, then the styling will be refreshed too, which is a problem for css animations.
- For a single-file approach, how can we manage game assets like images most effectively? Do you know what would be the most lightweight way to create pixel art, or is SVG the only sensible choice ?
- What are the essential components needed to develop a game in TiddlyWiki? I think we need the ability to drag things (DraggableWidget), to click on things (ButtonWidget, EventCatcherWidget…), to display things (RevealWidget, ListWidget, Conditional Shortcut Syntax). Saving progress can be done with tiddlers fields. What more would we need?
I know we could do almost anything by writing js plugins, but it would be great if we could find interesting applications of the already existing features within tiddlywiki, for the following reasons:
- Benefit from tiddlywiki’s future upgrades by staying as vanilla as possible
- Keeping things as light as possible for performances
- It’s more challenging ! And it would be a good way to push tiddlywiki to its limits.