C3Fire Module Water Logistic

From C3LearningLabs

Water Logistic

This module adds the possibility to use water logistics in the C3Fire environment. It adds complexity to the Unit Simulation and objects to the Geographical Objects.

The water logistic module creates a coordination task for the players. It creates a work task, where the players will need to plan and coordinate the units activity so that the fire fighting units have water when they should close out the fire.The fire fighting units do no longer has an unlimited tank of water. The module add water tank units with a limited amount of water and water tank stations that can have an unlimited supply of water.

Units

When the water logistic module is activated all units will have the possibility to be equipped with a water tank and the fire fighting units will need water when fighting fire.

The water tank properties are defined in the Unit Configuration element in the session configuration file. All units can have a water tank and the water tank properties. It is possible for a unit to be both a water tank unit and a fire fighting unit.

Fire fighting unit

The fire fighting unit no longer has an unlimited supply of water. For the fire fighting unit to be able to fight fire there must be a sufficient level of water in the tank. As the unit extinguishes fire the water level is counted down. The fire fighting units can receive water from water tank objects or from water tank units. The fire fighting unit's five basic states, doing nothing, moving, mobilizing, fire fighting and demobilizing are now extended with refilling water. The fire fighting units water logistic properties, as tank size, water countdown speed, etc. are defined in the Unit Configuration element in the session configuration file.

Water tank unit

A water tank unit is a unit that have a water tank and the possibility refill and give water. The water tank units have ability to refill water from a water tank objects and other water tank units. Examples on a water tank objects in the C3Fire simulation are lake, water station etc. The water tank unit also have the possibility to give water to other units as; fire fighting units and other water tank units.

In our standard configuration examples water tank units have the name W#, W and a number, Example W3, W4, W21, W32 for Water tank unit 3, 4, 21 and 32. In the map the water tank units are viewed as blue numbers:

... W3 Position W4 Position ... W21 Position ... W32 Position

Objects

The Water Logistic module makes it possible to define water filling properties to an object. The standard geographical environment in C3Fire is built up of vegetation and building objects. Water Logistic add the possibility to get water from an object to a fire fighting unit or to a water tank unit. Example can be to create water tank station and lake that can deliver water.

The objects water properties are defined in the Object Configuration element in the session configuration file.

Water Tank Station

In our standard configuration examples water tank station are added. The water tank station have unlimited amout with water and viewed as below in the map:

Water Pump

Refilling water

The water refilling can be configured to work in two different ways. It defines position constraints between the unit that wants water and the water tank unit or station that gives water. The water refill can be done on the same position on the map or it can be done on the North, East, South and West position on the map. In our standard example configuration we always uses the refill on North, East, South and West position. The water refilling speed for the units are defined at Unit Configuration, the refilling speed for the objects are defined at Object Configuration, and the water refilling position type is defined at Main Configuration below.

Water Refill On Same Position

The water refilling process can start automatically if the unit that wants water is on the same position as the water tank unit or station.

Refilling water

Water Refill On position
North, East, South and West

The water refilling process can start if the unit that wants water is one square left, right, over or under the water refilling unit. The unit should stand on square North, East, South or West of the other unit or station.


If the unit that wants water is on pos (x,y).
Then possible positions for the water refilling unit are :
(x-1,y), (x+1,y), (x,y-1) or (x,y+1)
Not possible positions are :
(x,y), (x-1,y-1), (x+1,y+1), (x+1,y-1), (x-1,y+1)

Refilling water


Refilling water



Example:

The fire fighting unit one F1 Position is refilling water from water tank unit three W3 Position.
The fire fighting unit two F2 Position is refilling water from water tank station.
The water tank unit four W4 Position Selected is refilling water from the lake.


Water example

F1 Position F2 Position

Fire Fighting Units, F1 and F2

W3 Position Selected W4 Position Selected

Water tank, W3 and W4

Water Pump

Water pump

Lake

Lake




Unit Activites

The unit's possible activities are increased with Refilling Water and Giving water, these activities is automatically started if a unit is standing still close a water tank unit or station. The player does not need to do anything to start the refilling process, only stand still close to the tank unit or station. The refilling process is stopped as soon as the the unit can not get more water or when the unit starts moving.

Refilling water

Refilling water

Giving water

Giving water


Configuration

Select a session configuration that is good to use when making a new session configuration.
Select a configuration that have an user interface that is close to what you want to use.

To configure the Water logistic module do the following steps.

  1. Activate the water logistic module
  2. Start Auto Update
  3. Main Configuration
  4. Units
  5. Objects
  6. User Interface


Activate the water logistic module

Set WaterLogistic to true in the Modules element in the session configuration file.

<Modules
   WaterLogistic = "True"


Start Auto Update

Start C3Fire server and start a C3Fire client. Start a manager and select the current session configuration file. When the manager loads the configuration it will detect that the water logistic module is activated ant then it will insert all default parameters, that not exist, in the configuration. Press accept to save the updated configuration file. Close C3Fire system and do the following configuration steps.

Save Configuration

Main Configuration

Set WaterRefillOnPosType to preferred value in the Fire Fighting Configuration element in the session configuration file. The default value and the recommended value are WaterRefillOnNESWPos. The WaterRefillOnPosType is explained above at Refilling water.

Possible values for the property WaterRefillOnPosType are "WaterRefillOnSamePos" and "WaterRefillOnNESWPos".

  <FireFightingConfig
    WaterRefillOnPosType = "WaterRefillOnNESWPos"


Unit Configuration

The water logistic configuration for the units are located in the Unit Configuration element.

When the water logistic module is activated all units will have the following properties WaterTankUnit, WaterTankSize, WaterLevel, WaterLevelCountDownSpeed and WaterRefillSpeed.

Water Logistic Configuration for Units

Property

Value

WaterTankUnit

If the unit can supply water to other units.

Possible values = "True", "False"

WaterTankSize

The size of the units water tank.

Value example = "100"

WaterLevel

The amount of water this unit should have in the water tank at start of the session.

Value example = "50"

WaterRefillSpeed

The amount of water the unit get every second it is refilling water.

Value example = "10"

WaterLevelCountDownSpeed

The amount of water the unit counts down every second it is fighting a fire.

Value example = "1"


Configuration code example:

<Unit
   WaterLevel = "100"
   WaterLevelCountDownSpeed = "1"
   WaterRefillSpeed = "10"
   WaterTankSize = "100"
   WaterTankUnit = "true"


Object Configuration

The water logistic configuration for the objects are located in the Object Types Configuration element.

When the water logistic module is activated all object types will have the property WaterRefillSpeed.

Water Logistic Configuration for Object types

Property

Value

WaterRefillSpeed

The amount of water the object can deliver every second it is delivering water to an unit.

Value example = "10"


Configuration code example:

<ObjectType
   WaterRefillSpeed = "10"


User Interface Configuration

The changes in the user interface are in the Unit Information Frames and the images for the water tank units and water tank objects. The Unit Information Frames will have the possability to display vales that describe the water properties for the units. The unit outline frame and the unit detailed frame have the possibility to display the following values:

  • WaterTankSize
  • WaterLevel
  • WaterRefillSpeed
  • WaterLevelCountDownSpeed



The water values can be used in the Property arguments in the xml elements <UnitInfoDisplayOutlineCol> and <UnitInfoDisplayDetailRow>.

<UnitInfoDisplayOutlineCol
    Property = "WaterLevel"
<UnitInfoDisplayDetailRow
     Property = "WaterTankSize"


Example User Interface Configuration Files


Outline Frame Configuration

Examles of xml element <UnitInfoDisplayOutline>:

  • Unit info outline with water level column


Detailed Frame Configuration

Examles of xml element <UnitInfoDisplayDetailed>

  • Unit info detailed with water information for water tank unit
  • Unit info detailed with water information for fire fighting unit