MFD

From HEWIKI
Jump to: navigation, search

Contents

Modify Field Definition

MFD <field_name>; name=<new name> description=<new description> +/-reflect writestrategy=<write strategy> watchingscript=<watching script name> +/-private package=<distribution package> +/-discrete +/-changecallback +/-reversereplicate initialpriority=<initial priority> deltaPriority=<delta priority> lifetime=<lifetime> distancefactor=<distance factor> destinationfield=<destination field> destinationfieldclient=<destination field client>

Arguments

<field_name> 
A one-word name for the new field. The maximum length is 250 characters.
[<new description>] 
(optional) A comment describing the field
[<+/- reflect>] 
(optional) For in-house development only (specifically by graphics programmers writing the client/server interaction). Defaults to FALSE. This controls the ghost class communication to the client about this field. When set, it causes any changes in the value of this field to be reflected to the ghost class spun up for the archetype of the node that was created. This allows the programmer to send down the updated value to the client in a way that makes sense for that interaction on the client, by changing the appearance of the GUICONTROL.
[<write strategy>] 
(optional) How often the field's data will probably be saved if it is changed. These strategies are flexible (see write strategy for more info), but basically boil down to three states:
  • NEVER : Changed data in the field is only saved to disk if the player logs off (or disconnects, or moves to another area)
  • LAZY : (default value) The field's data is entered into a save queue with other fields needing to be saved. For example, as of this writing, 5 changed fields are saved with each game "pump" (the game "pumps" many times each second).
  • IMMEDIATE : Causes the changed field's data to be saved with the next game "pump". This write strategy should be used rarely, but is appropriate for certain situations (such as saving the current balance in a player's bank account).
[<watching script name>] 
(optional) The script to be called when this field, on any node, is modified in any way. The FieldChangeNotification() function will be called in this script. Assign 0 or None to the watching script to remove any watching script.
[<+/- private>] 
(optional) Defaults to FALSE. If true, this field is only allowed to be modified by a class method script of any class containing this field. This protection is not currently implented.
<distribution package> 
(optional) One of the following distribution packages:
  • Required
  • Optional
  • OptionalGame
  • Game (default)
[<+/- discrete>] 
(optional) Defaults to FALSE. If true, each change of this field is replicated with coalescing. (See Replication Priority)
[<+/- changecallback>] 
(optional) Defaults to FALSE. If true, a script callback is made each time replication updates this field. (See Replication Script Interface)
[<+/- reversereplicate>] 
(optional) Defaults to FALSE. If true, changes to this field on a designated client will be sent to the server instead of the normal direction. (See Replication Script Interface)
[<initial priority>] 
(optional) The starting priority for replication of a change to this field. (See Replication Priority)
[<delta priority>] 
(optional) The amount priority changes per second while a change is waiting to be replicated. (See Replication Priority)
[<lifetime>] 
(optional) The number of milliseconds to retain a replication change that hasn't been selected for transmission. (See Replication Priority)
[<distance factor>] 
(optional) How much the replication distance influences priority. (See Replication Priority)
[<destination field>] 
(optional) Specifies what field receives this field's data when replicated server to server.
[<destination field client>] 
(optional) Specifies what field receives this field's data when replicated server to client.


Description

This is a CLI command that changes the name, description or type of a field.


Example

: MFD weight; description="The weight, in ounces, of the object"
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox