release:tyger
This is an old revision of the document!
Table of Contents
Tyger
Tyger is a clone of ZZT and Super ZZT developed by Dr. Dos in the late 00s and early 10s using the Python programming language and Pygame library.
Extensions
World format
Tyger repurposes the BoardTimeHsec field in the TWorldInfo structure as two bytes:
| Offset | Type | Description |
|---|---|---|
| 0x00 | byte | Tyger world selection game name color? (Unused) |
| 0x01 | byte | Tyger world selection game name length? (Unused) |
Scripting
In general, Tyger is not constrained to the limits of 16-bit ZZT counters.
Tyger adds the following OOP extensions:
- Additional colors have defined names for use in OOP commands:
- dblue - dark blue (color 1),
- dgreen - dark green (color 2),
- dcyan - dark cyan (color 3),
- dred - dark red (color 4),
- dpurple - dark purple (color 5)
- dyellow - dark yellow/brown (color 6),
- gray, grey, dwhite - light gray (color 7),
- dgray, dgrey, dblack - dark gray (color 8),
- black - black (color 0),
- any - any (command-specific),
- def - default (command-specific).
- Additional elements have defined names for use in OOP commands:
- edge - board edge,
- messenger - message timer,
- monitor - title screen monitor,
- horizray - horizontal blink wall ray,
- vertray - vertical blink wall ray,
- element46 - element 46,
- bluetext - blue text,
- greentext - green text,
- cyantext - cyan text,
- redtext - red text,
- purpletext - purple text,
- yellowtext - yellow text,
- whitetext - background-less text.
#become,#changeand#if anysupports providing the background color as a second argument, as in#become fg bg elementor#change fg bg element1 fg bg element2.#becomeand#changesupports usinganyfor a given color to re-use the tile's existing color as foreground, background, or both.#becomeand#changesupports usingdefaultfor a given color to use the ZZT-defined default color as foreground, background, or both.#charsupports character 0. In addition, for out-of-range character values, it will resort to using character 32 instead of ignoring it (vanilla ZZT behaviour).#cyclesupports setting cycle 0.#diecreates a black-on-black instead of white-on-black empty.#giveand#takesupport giving and taking the following additional kinds:seconds- the opposite oftime,light- additional torch cycles,invuln- additional energizer cycles (this also sends every object to the:ENERGIZElabel),energizer- one energizer item's worth of cycles - use without an argument, as in#give energizer,key- a key - provide a key name as argument, as follows:- blue, darkblue - blue key,
- green, darkgreen - green key,
- cyan, darkcyan - cyan key,
- red, darkred - red key,
- purple, darkpurple - purple key,
- yellow, darkyellow - yellow key,
- white, gray - white key,
- black, darkgray - black key.
- In
#if,alignedcan be used as a synonym foralligned.
Links
release/tyger.1614549220.txt.gz · Last modified: by asie
