Properties of an item (object, character or location) are attributes of that item, particular to the individual item. For example, the type of an object (static or dynamic) is a property, or the weight of an object is a property, or the location of a character is a property.
ADRIFT Developer must not be in Simple Mode for the Properties button to be visible on the main toolbar.
Properties in ADRIFT are dynamic. So rather than being restricted to a pre-defined list, you can define your own. These can be applied to Locations, Objects and Characters.
Creating a new Property
You can create a new property by clicking the Property icon on the ribbon toolbar. You can also click the Add New Property button at the bottom of the Properties tab of a Character, Location, or Object. You can also right-click the open Properties folder and select Add Property, or right-click any other open folder and select Add New > Property.
This will bring up the New Property screen like so:
Name is the name or title of the property. This will appear in the list of available properties when viewing an item.
If you clicked on the Add New Property button on the Properties list of an item form, the Property of dropdown will have automatically been set to the type of item you were editing. If not, set this to the item you want to make the property available for.
There are several types of properties. These are:
Refining a List property
If you create a property of type Character, Location or Object, by default every single item of that type will be displayed in the list.
So for example, if we look at the Inside what? property, we want this to be a property of Objects (i.e. we want to be able to say that this object is inside something) and we say that the type of property is Object List (because we want to offer a list of objects that this object should be inside). However, we don't want the list of objects to be the entire list of objects in the game - we only want to offer objects that are containers.
When we select one of the above property types, additional fields become available. These allow us to refine the choices available based upon other properties.
To refine the list, we must select a property from the Restrict by Property dropdown. This dropdown will contain all property types for the type of list you are creating. I.e. if you are creating an Object List property the dropdown will contain all Object properties. If you are creating a Character List property the dropdown will contain all Character properties.
So in our Inside what? example, we select the Object is a container from the dropdown. We must also specify what value we want this property to be in order to display the object in the object list. Because Object is a container is just a selection only property, we only have <Selected> or <Unselected> to choose from. Because we want to include only objects that are containers, we select <Selected> from the dropdown.
Refining an Integer property
If you create an Integer property, you can specify whether the property is a normal integer (i.e. just ask the player for a number), or whether the property is a special type of number. The types of number are defined by any properties you have created as value lists.
For example, the Object size property is defined as a property of objects, and is a value list. This means that labels can be assigned to values (i.e. Tiny = 1, Small = 3, Normal = 9 etc):
Because of this existing property, the Maximum size of held items can be defined as an Object size integer.
This now means that if you select the Maximum size of held items property when defining a character, rather than just entering a single number, you will be prompted for the type of integer.
In this example, anything entered in the numeric field will be multiplied by the value associated with each dropdown. I.e. "2 Normal objects" means 2 x 9 = 18.
You may want to make a property mandatory. This means, that if the property is available, it must be selected. For example, Object Type is mandatory, as all objects must be either Static or Dynamic. Similarly, you may want to make a property mandatory dependant on another property, or even another property value. Examples of this are the Held by who property, which is a character list type. This property is mandatory when the Location of the object property is set to “Held by Character”, as you would always want the Held by who property to appear.
In the screenshot below, you can see that the Open status property is mandatory. This is property only appears when the Object can be opened and closed property is selected, but if so then that property must be specified.
To make a property mandatory, select the Mandatory checkbox.
Property Availability means that it is possible for an item to have a particular property. This is different from the item having been assigned that property. A property will be available if it is displayed in the list of properties for an item. It will be assigned to that property if the checkbox on that property has been selected.
In the above screenshot, all three properties displayed are available, but only Object can be opened and closed and Open status have been assigned.
By default, every property will be available to an item when listing the properties for that item. You can prevent it from being available to an item based upon other properties that have been selected on that item (for example, you wouldn't want a Static object to offer wearable as an available property), by adding restrictions on it's availability.
To restrict a property based on the value of another property, you must select the property to restrict upon from the Property field. This will then enable the Value field where you must select a value for that property.
So, in the wearable example, you can specify that the property will only be available if property Object type is set to value Dynamic, like so:
If you kept on creating lots of properties, the list of available properties would eventually become unmanageable. In addition, many properties might not be applicable to a lot of objects.
ADRIFT has a neat solution for this - Private Properties.
Making a property Private means it will only become available to select for one particular item. You can make a property private to an individual Location, Object or Character, or you can make it private to a Group.
If you make the property private to a location, object or character, that property will only be available to select on that individual item. This is handy for very specific properties (e.g. battery power for a torch, or page of a book). You can also make properties private to a group. This means that property will be available to all members of that group. So for example, you could create a "consumable" group that contains anything that can be eaten or drunk. Then you could could create a tasty property that is private to the consumable group, meaning you are allowed to mark anything that can be eaten or drunk as tasty.
To mark a property as Private, you must check the Private to <item> checkbox at the bottom of the Definition tab.
The Private checkbox only appears if you are creating a new property from a property list of an existing item, or if you are editing a property that only belongs to a single item.
If you select the Description tab of the property, you can enter a description of what the property is. For example, if we add the following description to a Battery Power property (from the Torches that run out tutorial), like so:
Then this will appear as a tool-tip in the object property list like so:
This can make it much easier to understand what exactly the property means, or what type of unit a number represents.