Each row of characters represent the maze cells in increasing (initially forwards) Z direction.
The text characters within each row represent the maze cells in the X (initially right) direction.
X is an active cell
An empty space is a walled cell that cannot be entered
Y is an active cell initially with a Yeti
L is an active cell with a light
a is an active cell with wall art (bug)
b is an active cell with wall art (smiley)
c is an active cell with wall art (tree)
d is an active cell with wall art (coffee)
The overall speed can be controlled with the Speed multiplier.
Default Yeti speed is 1 cell/s
Default robot speed is 1.5 cell/s
Default manual (left/right) rotation is 1.5 radians/s (~86 deg/s)
Default animated 90 deg rotation (0.5 s)
The Max frequency is the maximum frequency of message exchange with the server
(exchange/s).
The optional Player name identifies a specific user, which can be useful when users
are sharing the same
IP address or there are multiple players in a game. In this case the first web argument sent from Small
Basic should match this name. (e.g.
https://litdev.uk/apps/maze3D/maze3D.php?name=Steve&action=get")
There is also a special player called Observer that can fly out of the maze for an
overview and takes no
part in any game.
The optional Game name identifies a maze world in which only robot players using the
same game will be
shown.
Player and game names are case sensitive and the maze should be reloaded after applying changes.
Images for walls, floor and ceiling can also be set.
Control commands are sent directly to the webservice at
https://litdev.uk/apps/maze3D/maze3D.php?.
This may be from Small Basic using LitDev extension (1.29.15.0+) with command LDNetwork.SendWebRequest.
Commands can also be entered directly into a browser for test purposes, or from any other WebRequest
service.
Multiple arguments are separated by '&'. The first argument is optionally a user name e.g. 'name=Steve' and
the next (or first argument) is an action.
'action=get' returns various user details (position, neighbour cells etc)
'action=getAll' returns basic position data for all users in the current game
'action=set' sends commands to the current user, options listed below:
The command https://litdev.uk/apps/maze3D/maze3Dasync.php?name=&action=isReady
will wait until all animations are completed before replying,
indicating that the current position is fully updated and ready for the next command.