To the A-maze-ing evening!
Here are some rules and explanations regarding this event.
Thank you for participating and we hope you have fun! đđ»
Rule #1 is to have fun!
You will receive a welcome card with a token when you join the
event: the token mentioned in this card should be present in any
requests you make to the /api routes. The header entry
should be Authorization: XXXXXXX; More specifically,
the HTTP header witll read:
Authorization: HTI Thanks You [????] where the ? are
replaced by the token youâve received. This token does not have to be
exactly 4 characters long.
A maze is made up of tiles: each tile can have a zero or more reward associated with it;
Rewards are not necessarily uniform: some tiles in the same maze can have rewards of 0, while others have rewards of 100;
You can obtain a list of available mazes: this is a static list. Even after you complete a maze, it will show up in this list - but you canât enter it again (until you tell the server to âforgetâ you);
A maze has only one starting point;
Once you walk into a tile, you will collect its reward, and that reward is now in your hand;
You can hold multiple rewards in your hand;
Rewards in your hand are not secure: if you exit the maze, any rewards in your hand are lost;
A maze has at least one score collection point;
When you visit a score collection point you can perform the score collection action, which will move any rewards from your hand to your bag;
Score in your bag carries over with you, when you exit the maze;
A maze has at least one exit point;
When you visit an exit point, you can decide whether to leave the maze or not;
You can only play a maze once: once you exit the maze you are not able to enter it again;
You can only play one maze at a time, you can only be in one place at a time in the maze;
Mazes are static on the server, they donât have randomness;
You can decide to forget any acomplishments and score you have collected so far, by deleting yourself. Your token will still be valid, so you can re-register and start over.
The distance between tiles is constant: a maze where you would navigate two tiles to the right, one up, one left, one down and be where you started is not possible;
Navigation is guaranteed to be bi-directional: when you move to a tile, you can always move back to where you just came from;
After each move action, the server will reply back what tiles are around you, and will let you know if you have visited this tile before or not, among other information.
|
o-S-o-x-C-o-o-E-o
| |
o o
| |
-o-o-C-o-E-x-
|
Where:
o is a normal tile. In this maze it has a reward of 10
points;x is a normal tile. In this maze it has no reward;S is the tile where you will start. It has no
reward;C is a score collection point. It also has a reward of
10 points;E is an exit point. It also has a reward of 20
points;| and - are connections / doors between
tiles - these are the things you traverse. You canât âbeâ in a
connection, you jump from tile to tile| and - at the edges of the maze are
âtunnelsâ or âportalsâ (think PacMan tunnel) that bring you to the other
side of the maze. For example, when going left from the âbottom leftâ
o, you will teleport to the x in the bottom
right; similar when going down from that o, youâll end up
at the o two tiles above.The maximum score you should be able to get on this maze is:
(#o = 10) * 10 = 100
+ (#C = 2) * 10 = 20
+ (#E = 2) * 20 = 40
= 160
Once again - notice this maze has two points where if you navigate right/left you will be on the âother sideâ of the line. Same thing for columns. This is caused due to the fact that the Earth is not flat. Think of this as a delicious donut đ©. Mmmmm, donuts..
This example maze is available during the development phase (name:
Example maze). Many other mazes will be âeasierâ because
they have no such tunnels.
The player/character in the maze has âno faceâ: it is not âturned in a particular directionâ.
There are four navigation options: âUpâ, âRightâ, âDownâ and âLeftâ. There is no concept of rotation.
/api/player/register;/api/player/forget/api/mazes/all;/api/mazes/enter[ Move (direction), CollectScore, ExitMaze ] actions to
navigate around;