Language Guide

Introduction Rez is a language, compiler, and runtime for writing choice-based interactive fiction/RPG/simulation games based on HTML, Javascript, CSS, and — optionally — graphics, audio, and movie files. Rez started as a quick alternative to Twine for an author who had become frustrated with Twine. Twine describes itself as an "open source tool for telling interactive, nonlinear stories." It makes it relatively easy for those with almost no development experience to get started and create a choice-based game....

March 16, 2024 · Matt Mower

Rez Authors Guide

Creating Your First Game Let’s start right at the beginning: …​ rez new first_game …​ This creates a set of folders and puts some initial content into them. The only thing we really need to concern ourselves with is the contents of the src folder. In that we should find a file called first_game.rez. That is the main source file of our game. …​ rez compile src/first_game.rez …​ This will build the HTML & Javascript to play the game....

March 16, 2024 · Matt Mower

Rez Behaviour Catalog

$sequence The $sequence behaviour takes two or more children and when executed will execute its children in turn. If any child fails then $sequence will stop at that point and fail. If all the children suceeed then $sequence will succeed. $select The $select behaviour takes two or more children and when executed will execute its hildren in turn. If a child succeeds then $select will immediately stop executing and succeed....

March 16, 2024 · Matt Mower

Rez Cookbook

The following is a guide to some of Rez’s features and common things you may want to be able to do. Using @object Rez defines a number of generally useful elements like @actor, @item, @inventory, @scene and so forth. These elements have built-in behaviours designed to be useful but flexible. For example @item and @inventory can be used to define much more than physical objects. You could have an inventory representing things different actors know about and use an item for individual topics/thoughts....

March 16, 2024 · Matt Mower

Rez Elements & Directives Catalog

Rez includes many elements that you will combine to create your game, starting with the @game element that wraps the whole thing. All elements in a Rez source file are prefixed by @. A few Rez elements like @game and @zone contain other elements but most do not. Elements Elements describe in-game concepts. Actor Asset Behaviour Card Effect Faction Game Group Inventory Item List Object Plot Relationship Scene Slot...

March 16, 2024 · Matt Mower

Rez Filter Catalog

Filters are used in template expressions to transform the expression before it gets rendered. append String: String ⇒ String Appends a string to what precedes it which is assumed to be a string already. Example ${"Sam" | append: " lives here."} => "Sam lives here" asset_tag String ⇒ String Example ${"asset_1" | asset_tag} asset_path String ⇒ String Example ${"asset_1" | asset_path} bsel Boolean: List ⇒ Any Example camelize String ⇒ String...

March 16, 2024 · Matt Mower

<!DOCTYPE html> Rez Rez A system for creating choice-based HTML games & interactive fiction. Version 1.1 (02 Jan 2024) By Matt Mower <self@mattmower.com> Introduction Rez is an open source system for creating choice-based HTML games & interactive fiction. It uses HTML/CSS, Javascript, images, movies, and sounds to present an interface, where players make choices by interactive HTML elements like links & forms. An obvious comparison for Rez is Twine. The ideal Rez user is likely creating a game that is over-ambitious for Twine and is not afraid to write a bit of Javascript code for, e....

<!DOCTYPE html> JSDoc: Home Home HomeNamespacesbasic_objectClassesRezActorRezGameRezInventoryGlobalRezItem Documentation generated by JSDoc 4.0.2 on Mon Mar 18 2024 11:02:49 GMT+0000 (Greenwich Mean Time)