Data Format Overview

From Wildermyth Wiki
Revision as of 12:12, 11 December 2019 by Pbelanger (talk | contribs) (Added information about History, Scenarios, and Plots)

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.

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 below. (There are also some less-used categories, not listed here)

Miscellaneous

(TIDING_MISC) Miscellaneous tidings that can generally happen to anyone

Followups

(FOLLOWUP_EVENT_OUTCOME) Tidings that have a specific followupId and are made possible via the AllowFollowup Outcome. These are often used along with events that should have some kind of repercussions. For example, an event that should only happen if a certain kind of station was built (see job_buildStation_forestShrine and how it can cause tiding_outcome_buildForestShrine1) or that follows up on an interesting event (see encounter_heroesArriveAtSite_asTheCrowFlies and how it can cause tiding_outcome_callOfTheCrow).

Retirement

(TIDING_RETIREMENT) Tidings that happen to retiring heroes.

Omens

(TIDING_YONDERING_OMENS) Tidings that show the return of threats to the lands. This is the final part of the interval between chapters, shown right before the new chapter starts.

Wrapup

(TIDING_WRAPUP) Tidings that are shown during the credits. Threats have been removed from the land, all is peaceful. (Miscellaneous and Followup tidings can also show up in the credits)

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; they determine what special plot events should happen, the goals of chapters, special missions and their goals, and more!