TERRAIN (TR)
RECEIVER

Used to set terrain types or change passability of a square.

 
!!TRx/y/l:XXXX; Set a Terrain type or change passability of a square at the specified x,y,l location.
!!TR#:XXXX; Alternative method to above. Uses indirect reference:
x=v[#], y=v[#+1], l=v[#+2]

OPTIONS

E$; Mark the square as an object entrance (yellow trigger square)
   $ = 0 means yellow trigger.  
   $ =1 means  no yellow trigger (1).
E?$1/?$2/?$3; Get/check object entrance position
This command lets you get position of entrance of an object (x/y/level)
If there is no object at the position, the coordinates passed to TR reciever are returned. If you pass coordinates of a red square of an object to it, it would return croordinates of its entrance.
G?$; Return the topmost terrain overlay.
You may only use GET or CHECK syntax.
(See Format TO)
G$1/$2; Get type & subtype of topmost terrain overlay
  $1 - type
  $2 - subtype
Type 40 subtypes starting with 10000 are recognized as new WoG terrain overlays. You can give them any effect with a script.
P$; Set/check/get a passability of the square (red square)
   $ = 1 means passable.   
   $ = 0 means not passable.
T$1/$2/$3/$4/$5/$6/$7/$8; Set/check/get a terrain type
   $1 - type of land
   $2 - subtype of land
   $3 - type of river
   $4 - subtype of river
   $5 - type of road
   $6 - subtype of road
   $7 - type of mirror
   $8 - Bit mask of accessability
Comments: above.
V$; Set/check/get a visibility of a square (one bit - one color)
Comments:
This is similar to the UN:S and UN:H but for individual squares and you can check or get the value. Also, monsters have sight (1 hex)and this can be enabled or disabled -- they have a bit value number of 256.

Explanation of T

1. Terrain type:
 
00  Dirt
01  Sand
02  Grass
03  Snow
04  Swamp
05  Rough
06  Underground
07  Lava
08  Water
09  Rock

2. Terrain Subtype:

Dirt

 Sand

 Grass

 Snow

 Swamp

 Rough

 Underground

 Lava

 Water

 Rock

 

3. River Type:
 
01  Clear
02  Icy
03  Muddy
04  Lava

4. River Configuration:
00, 01, 02, 03 - 4 styles of segment +---+
¦ +-¦
+---+
04 - segment: +---+
¦-+-¦
+---+
05, 06 - 2 styles of segment: +---+
¦---¦
+---+
07, 08 - 2 styles of segment: +---+
¦ ¦-¦
+---+
09, 0A - 2 styles of segment: +---+
¦ ¦ ¦
+---+
0B, 0C - 2 styles of segment: +---+
¦---¦
+---+
5. Road Type
 
01  Dirt
02  Gravel
03  Cobblestone

6. Road Configuration:
 
00,01,02,03,04,05 - 6 styles of segment: +---+
¦ +-¦
+---+
06, 07 - 2 styles of segment: +---+
¦ ¦-¦
+---+
08, 09 - 2 styles of segment: +---+
¦---¦
+---+
0A, 0B - 2 styles of segment: +---+
¦ ¦ ¦
+---+
0C, 0D - 2 styles of segment: +---+
¦---¦
+---+
0E - segment +---+
¦ ¦ ¦
+---+
0F - segment +---+
¦ --¦
+---+
10 - segment +---+
¦-+-¦
+---+

7. Mirror Type:

Bits: 76543210
--CcBbAa ('-' means no matter)
a - vertical mirror for land type (not for all land types)
A - horizontal mirror for land type (not for all land types)
b - vertical mirror for river type
B - horizontal mirror for river type
c - vertical mirror for road type
C - horizontal mirror for road type

More Explanations about mirror type
Say, this is:

This will be shown if you use mirror=0

Then set first bit (mirror=1). This will mirror the square vertical to:

Or set second bit (mirror=2). This will mirror the square horizontal to:

Or set both bit (mirror=3[2+1]). This will mirror the square h and v to:

The same about mirroring the river and road.
River h mirror=4
River v mirror=8
River both mirror=12[8+4]
Road h mirror=16
Road v mirror=32
Road both mirror=48[32+16]
You can combine all mirroring.
Say square mirror h, river mirror v and road mirror h and v mirror= 57[1+8+16+32]

8. bit mask of accessability
mt: bit mask of accessability
Bits: 76543210
???E???P ('?' means no info)
P - passability
E - enrtance
These bits may be set individually by TR:P and TR:E commands.