Groups (Classes)

Parent Previous Next

Groups (Classes)

A Group is a collection of similar items.  A Class is a group of items with the same properties.


ADRIFT Developer must not be in Simple Mode for the Groups button to be visible on the main toolbar.



There are 3 types of group in ADRIFT; Location groups, Object groups and Character groups.


Groups can be used as a simple way to determine whether two items are related to each other, but can also be used to set a particular property of all of its members to the same value.


Clicking on the Group button on the main toolbar brings up the following form:



Description is a name for the group.  This will appear in any dropdown lists where you are checking to see if an item exists in a group, or adding/removing items to/from a group.


Group Type must be one of Characters, Locations or Objects.  Upon selecting an item type, all items of that type will be displayed in the list below, each with a checkbox against it, allowing you to include that item in the group.

Location Groups

Locations are placed into a group by selecting "Locations" for the group type and then ticking the box next to each location that you wish to be a member of this group.



During the game, locations can be added to or removed from the group using actions.


There are three main uses of location groups.  One is to signify that two locations are directly connected by a doorway.  A single object can be placed in a location group, so by placing a door object into the doorway location group (containing the location each side of the door) we make the object accessible from both locations.


The second use is to allow a very large static object (such as a river, or the sky) to be present in multiple locations.  Just create a group for every location that the river passes through and then place the river object into the group.


The third use is to collect together locations with similar characteristics, for example outdoor or indoor locations, or all dark locations which need a portable light source to be able to see anything.

Properties

The Properties page of a group contains all of the properties that can be set for the group type.  This allows you to create a Location Class - every location within the group will automatically inherit any assigned properties of the group.


Properties that are NOT selected on this page will use the settings defined on the property pages of the individual locations.


If the property is selected then the value it is given here will override the values of the property for every member of this group.


For example, the Dark Locations group (class) automatically sets the Short Location Description to "Everything is dark", overriding any short description in the individual locations themselves.



In the case of a text property, as shown above, we are actually entering an alternative description for the text box.  It is basically as if any descriptions you add here are added as extra tabs at the end of the corresponding description in the location description.  If the restrictions pass then the text given will replace or be added to the text normally output for the location.  If they fail then each location will output its own text.

Object Groups

Object classes are simply groups of objects, where you can pre-define particular properties. When an object is added to this group, it automatically inherits all of these properties.


So, for example, you could create an object property “is a liquid”.  If you then create a group “Liquids”, you can select the “is a liquid” property. Then, any objects you add to this group will automatically inherit the “is a liquid” property.  You can then set up tasks where, instead of checking for specific objects, you can specify that they should be a member of the group.  So in this example, you could create a task “take %object%”, and have a restriction that the task should not be a member of group “Liquids”, else output a message saying "You cannot pick that up with your hands".


Objects can also be moved in and out of groups by actions.  For example, you could have a class of object that produces light and so allows the player to see when they are in a dark location.  But if a lamp is switched off or the battery goes flat then you don't want them to be able to see any more.  This can easily be done by moving the lamp into the "Produces light" group when it is on, and removing it from the group when it is off.

Character Groups

Characters can also be placed into groups, so a class of school students could be placed together into a group so that the game can have them all react to the player the same way without having to add an individual restriction for each one.


In a role playing game with different "factions", the members of each faction can be placed in a group so that each individual knows how they should react to a member of a particular faction.