Data Format Overview
Wildermyth has a number of different types of moddable data (all stored as json files) that work together to make things happen in the game. This overview is intended to give a broad understanding of the different pieces you can edit (mainly by using the Content and Comics Editor) and how they fit together.
Here are all the pieces listed below and how they fit together, in as short terms as possible:
- Effects are how things (events, abilities, etc.) happen, based on checking if certain criteria (targets) are met and then executing outcomes.
- Outcomes make things happen in the game. They are generally triggered by effects.
- Aspects describe what an entity (hero, site, scenery, etc.) is and can do. Aspects can contain effects and stats.
- History stores "permanent" changes to an entity. This can include a text description, is used to permanently add or removes aspects (and therefore abilities and stats).
- Scenarios are how Campaigns or standalone Missions are started from the main menu.
- Plots control the steps and goals of campaigns or missions; they determine what special plot events should happen, the goals of chapters, special missions and their goals, and more!
Effects are how things happen. An effect represents a trigger or ability that can have multiple targets and multiple outcomes. If all targets are present, the ability is valid and the outcomes are executed. Effects (especially abilities) are sometimes attached to entities via aspects.
The main kinds of effects are:
Events are encounters or stories that happen due to specific in-game triggers. These triggers include things like arriving at a hostile site (ENCOUNTER_HEROES_ARRIVE_HOSTILE_SITE), winning a mission (ENCOUNTER_MISSION_VICTORY), or a specific plot event (PLOT_ARRIVE). Events are generally used to tell a story of some kind, and thus are almost always accompanied by comics. Most of the work in creating comics can be done in the Comic Editor. Events also often make Outcomes happen, which can mean things like granting resources or relationship points, applying a Theme or Aspect to a hero, starting a Mission, causing another event to happen, or a lot of other things.
Abilities are things heroes and monsters can choose to do during missions. This includes everything from moving, to attacking, to interfusing. All abilities use the special "ABILITY" type. They all have Outcomes that determine what the ability does, which generally includes things like making an attack roll, dealing damage, moving, adjusting stats in some way, or modifying scenery on the map. These generally don't include comic panels, though there are exceptions (see callDownVolleyOfArrows).
Abilities are attached to entities via aspects. For example, if you look at the "human" aspect, you'll notice it has all the standard abilities humans have: run, openDoor, waitEndTurn, etc.
Tidings are events that happen during the Interval after a chapter that show what heroes did during the years of peace. These are generally just comic stories, though they can also have other Outcomes (like granting resources) if desired. These are separated into several different categories, listed on the Tidings page (along with a guide on how to make one).
Outcomes are things that happen! Generally, you'll be seeing these in the context of Effects. Outcomes can make a lot of things happen, usually via events and abilities. Event Outcomes usually include things like granting resources or relationship points, applying a Theme or Aspect to a hero, starting a Mission, or causing another event to happen. Ability Outcomes generally include things like making an attack roll, dealing damage, moving, adjusting stats in some way, or modifying scenery on the map.
For heroes, aspects are just facts about the hero. Stuff like "human", "female", "attractedToMen", "hunter", "missingLeftArm". Aspects can carry stat modifiers and Effects. Aspects are the workhorse of the dynamic content in the game, almost everything you need to know about a hero, site, anything really, can be accessed as an aspect (other than stat values). Aspects can be queried to find out almost things about an entity (other than history, but that applies aspects that can be queried).
Aspects can be temporary, like status effects (poisoned) or combat modifiers (combatModifier_buff_courage), or more permanent, like theme pieces (themePiece_fire_leftArm) or class upgrade abilities (hunterDeck_quellingmoss).
A special subcategory of aspects is hooks, which are usually designated when a hero is first generated, and are used to trigger hook quests.
History, also called a History Line, is a line of player-facing text that tells a story about the entity it’s pinned to. This is generally the way that more "permanent" changes to an entity are made, like Themes or permanent aspects. History coincides with aspects, stat-increases, and hooks. Some is generated upon initialization, some is recorded in recognition of game-occurrences.
Hero History is generated at the start of the game with three lines: an Origin, and Anecdote, and a Motivation. These affect prime stats and personality stats, and also seed Hooks. History lines leave behind a number of Hooks, which are more specific character aspects and often take the form of a personality flaw or quirk.
During the campaign, history can be added to heroes using the AddHistory Outcome. These added history lines can just be some text that details what happened in a certain event (ex: encounter_heroesArriveAtSite_heroWorship adds history to the new recruit mentioning that it was the recruit's dream to join the company), or can also include required or forbidden aspects (ex: encounter_heroesArriveAtSite_fireball adds history with the associated aspect mysticSpecial_improvisedFireball, an aspect which has the effect mystic_improvisedFireball attached to it, thus allowing the mystic to use that ability in combat).
Scenarios are how Campaigns or standalone Missions are started from the main menu. Campaign scenarios are the main scenarios players will use, accessed from the New Game button. Mission scenarios are used to test out missions from the menu (via Tools > New Battle) without needing to start a full campaign, and are generally more for developer use, though players can also access them.
Plots control the steps and goals of campaigns or missions; they determine what special plot events should happen, the goals of chapters, special missions and their goals, and more!