The source project of this merge request has been removed.
Rewritten rules assistant and its UI in Javascript + HTML. Also rewrote their hard dependencies and touched up assorted files.
Rules format has changed so that the condition and its effects are neatly separated. This also means old rules don't work. Go to Options → Reset RA Rules to nuke your old ones and initialise the new.
the new rules format is 100% JSON-compatible, so importing and exporting is trivial
cleaned up rule generation and moved it to a single function
newly generated rules feature the new ID system provided by generateNewID()
. It's possible to share rules without fear of ID collissions.
Rules Assistant Options is our first pure HTML page. A new passage function is introduced to bypass SugarCube: function html5passage(callback(HTMLDivElement))
.
RAO autosaves the current rule as you edit it.
What used to be separate pages are now one collapsible interface.
Limit to specific slaves / exclude specific slaves aren't as pretty as they used to be, and will likely stay that way until summaries are also ported.
There are four large categories of activation conditions:
true
, which is always truefalse
, which is always falsebetween
, which is true when the specified attribute of a slave is within a range
Infinity
, so we use null
instead. Use null
if you don't want a lower or upper bound.custom
, which runs arbitrary JavaScript for a custom test. This replaces the old custom rule parser.This is new so expect bugs. Please report them.