Dragonscript 2E
In Starfinder 2E the choices you make for your character can have a wide variety of tangible effects. For example, a feat may provide you resistance to cold damage, a heritage may make you trained in Reflex saves, a background may grant you a feat that in turn provides you a Lore skill, and so on.
Hephaistos encapsulates these effects using a custom scripting language designed specifically for this purpose called Dragonscript 2E.
The development of Dragonscript 2E is driven by the effects that need to be implemented. Most common effects should be supported (e.g. setting proficiency, providing bonus, granting feats etc.) but you may run into limitations if you're trying to implement something bespoke. If that is the case, feel free to reach out.
Dragonscript in Hephaistos 1E
If you're familiar with Hephaistos for Starfinder 1E and the version of Dragonscript it uses for its homebrew system you will find a lot of conceptual overlap here. However, Dragonscript 2E is rebuilt from the ground up and has fundamental syntactic and semantic differences, so reading through this documentation is still recommended.
Overview
This documentation is divided into four sections:
- Syntax, which provides an overview of the symbols and conventions used when writing Dragonscript 2E.
- Primitives, which describes the most basic building blocks of the language.
- Expressions, which are ways of combining and modifying Primitives to generate new values.
- Statements, which use Primitives and Expressions to define the actual changes that will be made to a character.
In most cases, when writing Dragonscript 2E you will be writing an array of Statements. The main exception is for things like Feat prerequisites, where you'll write a Condition expression instead.