Skip to content

System Design

SlappedWithSilence edited this page Jan 16, 2023 · 8 revisions

TXEngine's Systems

TXEngine can be viewed as a collection of Systems, each with their own Elements. Each System defines a discrete set of interactive elements. Each Element within a given System operates solely on the data owned by that System.

The current list of Systems is:

  • Ability
    • Abilities are a core component of Combat. They allow the caster to deal damage and apply Effects to the targets.
  • Combat
    • The Combat System supports turn-based, multi-entity combat. For more information about Combat and how it works, please visit the Combat System page.
  • Conversation
    • The Conversation System supports conditionally-branching conversations. Any stage in a Conversation may trigger any number of Events.
  • Crafting
    • TXEngine supports a full-fledged Crating System. A Recipe accepts one or more ingredients and produces one or more products.
  • Event
    • The Event system allows game designers to trigger any number of useful in-game occurrences such as giving the player an item, restoring health, or setting a Flag.
  • Flag
    • The Flag system is pretty bare-bones; it allows a designer to set an arbitrary collection of flags and read them. Many other Systems make use of the Flag System.
  • Integration
    • The Integration System is not one that the player interacts with much. It is mainly a tool to allow designers to easily and consistently set requirements for a wide variety of in-game scenarios. This includes barring the player from using certain equipment until a certain skill level is met, preventing the player from entering a Room without first setting a Flag, and much more.
  • Inventory
    • The Inventory System is exactly what it sounds like: a System for tracking and managing the player's inventory. It has a rich and robust set of management and manipulation functions.
  • Item
    • The Item System provides a set of tools to allow other Systems to handle Items in-game. This System defines what Items are, how they can be used, and how their data is stored.
  • Rooms
    • The Room System is arguable the most important component of TXEngine. TXEngine games are split into a discrete set of Rooms. Each room contains one or more Action, and at least one "Move Action".
  • Skill
    • TXEngine's Skills are very simple. A given TXEngine game may support any number of skills, each of which offers "level-up-events". These are essentially a collection of Events that trigger when the Skill reaches a certain level. A Skill may contain any number of level-up-events, but only one level-up-event for a given level.

Note that this list is subject to change.

Getting Started

JSON Formatting Guide

Embedded JSON Structures

Designing Your Game

Clone this wiki locally