Main
Introduction
Storyboard
Release Information
Awards
Starting a Game
About A. Crowther
Interface
Monitors
Movements
Droid Status
Disk
Group Display
Hands
Sleep & Pause
Remote Control
Preferences
Droids
Skills
Inventory
Droid Parts
Tools
Weapons
The Camera
Items
Dev-Scapes
Optics
Environment
Walls
Doors
Shops
Encounters
Miscellaneous
Miscellaneous
FAQ
Tips & Tricks
Pre-Captive
Bugs
Did You Know?
Tools
Technical
The Map Generator
Sounds
Disk Directory
Drawing Encounters
Flying Items
Internal Graphics
Holamap
Fire Hydrants
View Rendering
Website
History
Acknowledgments
Links/Contact

Fire Hydrants

A fire hydrant is used to fill the area of a base with water. When turned on, the system will create an entry in its dynamic memory that states the activity of the hydrant. A maximum of 8 hydrants can simultaneously be turned on.

Even though the system seems to adequately fill the room with water, the result can be very illogic once you know how it works. The idea is to have a single cursor move randomly around to replace ordinary floor tiles with water. Initially, this cursor starts at the same location as the hydrant itself and, at every cycle, a random direction is chosen. The destination cell is analyzed and, if allowed, the cursor moves to it and changes its tile to water.

To better understand the process, click the image below to see a slowed down animated example where the yellow square represents the cursor starting at the location of the fire hydrant.

As seen above, the cursor will bounce back each time it meets an invalid floor tile to replace with water. An invalid tile is:

  • a wall
  • a shop
  • a planet probe computer
  • a reserved space (behind a pushable wall)
  • fire
  • a spinner
  • a grate
  • a generator
Once the cursor has hit a total of 128 invalid tiles, it jumps back to the location of the fire hydrant and restarts changing tiles. Some tiles are considered valid, but special processing will be made when the cursor meets them.

Dark tile: The system has no cell identification number to define a dark area with water and it would have been illogical to prevent water from going into a room because the droids can't see in it. The code has been written to replace dark tiles with standard water tiles making them magically light up.
Mine: Water detonates mines. When a mine is reached, the tile is not changed to a water tile and the cursor restarts at the location of the fire hydrant.
Door: Like dark tiles, there are no cell identification number to define door tiles with water. The cursor will accept doors and move on them, but it will not put water.
Raiser wall: The cursor will bounce on a closed raiser wall, but not while it's opened. Although this sounds very logical, the logic fails when the raiser wall closes back, but the room on the other side of the wall continues to get filled with water (now that the cursor has passed the closed wall!). Following the previous logic, the room cannot be filled with water while the wall is down.
Hole or ladder leading down: The code is wise enough to know that water would fall down a hole because of gravity. To create this effect, the cursor will follow the hole to the floor below and continue its endless search. Of course, once it's down, it won't ever go back up again until it has touched a mine or reached 128 invalid tiles. This can look very strange if, for example, a hydrant would be right next to a hole and the cursor would immediately fall down giving the impression the hydrant isn't doing anything on its own floor.