Data Format Overview

From Wildermyth Wiki
Revision as of 09:03, 4 February 2020 by Ruarch (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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.

Overview

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 used to test out missions from the menu (via Tools > New Battle) without needing to start a full campaign.
  • 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

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

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

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

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

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.

Aspects

Aspects are named markers tied to entities, usually reflecting their narrative state, that add stats or apply specific effects.

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

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

Scenarios are used to test out missions from the menu (via Tools > New Battle) without needing to start a full campaign.

Plots

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!