Data File Reference: Difference between revisions

From HLKitWiki
Jump to navigationJump to search
No edit summary
Line 3: Line 3:
==Overview==
==Overview==


The  
The data file is where you'll be defining all of the top-level elements that the user will directly control. This includes visual elements like panels, layouts, templates, and portals. It also includes game system elements like things.
Each game system has a single definition file that describes the fundamental, non-changing characteristics of the game. HL uses the definition file to configure itself for each game system, reading in the definition file before any other files. All of the contents of the other data files are given meaningful interpretation by the contents of the definition file.
 
All data files have the ".dat" file extension and are loaded after all of the structural files have defined the framework for the game system.


This section outlines the structure and mechanics for writing a definition file.
This section outlines the structure and mechanics for writing a definition file.
Line 14: Line 15:
==Structural Composition==
==Structural Composition==


The overall file structure is that of a standard XML file. The file must start with an XML version element in the form: "<?xml version="1.0"?>". Following this, the top-level XML element must be a "document" and it must have a "signature" attribute containing the explicit value "Hero Lab Definition".  
The overall file structure is that of a standard XML file. The file must start with an XML version element in the form: "<?xml version="1.0"?>". Following this, the top-level XML element must be a "document" and it must have a "signature" attribute containing the explicit value "Hero Lab Data".  


The following table defines the attributes for a "document" element.
The following table defines the attributes for a "document" element.
Line 20: Line 21:
:{| class="infotable"
:{| class="infotable"
|class="leftnormal"|signature
|class="leftnormal"|signature
|Text – Must be the value "Hero Lab Definition".
|Text – Must be the value "Hero Lab Data".
|-
|-
|}
|}


Within the document element, every definition file possesses the following child elements, appearing in the sequence given and with the names specified.
Within the document element, every data file possesses the following child elements, appearing in the sequence given and with the names specified.


:{| class="infotable"
:{| class="infotable"
|class="leftnormal"|{{flalt|Game Element (Data)|game}}
|class="leftnormal"|{{flalt|Portal Element (Data)|portal}}
|A single "game" element must appear as defined by the given link. This element contains basic game system information.
|Zero or more "portal" elements may appear as defined by the given link. This element specifies an assortment of portals for use within layouts.
|-
|-
|{{flalt|Author Element (Data)|author}}
|{{flalt|Template Element (Data)|template}}
|An optional "author" element may appear as defined by the given link. This element contains information about the author of the data files.
|Zero or more "template" elements may appear as defined by the given link. This element specifies an assortment of templates for use within layouts.
|-
|{{flalt|Release Element (Data)|release}}
|A single "release" element must appear as defined by the given link. This element provides details about the current release of the data files.
|-
|{{flalt|Structure Element (Data)|structure}}
|A single "structure" element must appear as defined by the given link. This element specifies structural details about the game system and its behavior.
|-
|{{flalt|Behavior Element (Data)|behavior}}
|A single "behavior" element must appear as defined by the given link. This element details behavioral aspects for the game system and data files.
|-
|{{flalt|Advancement Element (Data)|advancement}}
|An optional "advancement" element may appear as defined by the given link. This element contains details regarding the advancement works within the data files.
|-
|{{flalt|EnMasse Element (Data)|enmasse}}
|Zero or more "enmasse" elements may appear as defined by the given link. This element specifies categories of things to automatically add to every actor.
|-
|{{flalt|Bootstrap Element (Data)|bootstrap}}
|Zero or more "bootstrap" elements may appear as defined by the given link. This element specifies specific things to automatically add to every actor.
|-
|-
|{{flalt|AutoAdd Element (Data)|autoadd}}
|{{flalt|x Element (Data)|x}}
|Zero or more "autoadd" elements may appear as defined by the given link. This element identifies choices that are pre-selected for every actor.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|{{flalt|UsagePool Element (Data)|autoadd}}
|{{flalt|x Element (Data)|x}}
|Zero or more "usagepool" elements may appear as defined by the given link. This element specifies usage pools for use by the game system.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|{{flalt|Reference Element (Data)|reference}}
|{{flalt|x Element (Data)|x}}
|Zero or more "reference" elements may appear as defined by the given link. This element details references used throughout the data files.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|{{flalt|Group Element (Data)|group}}
|{{flalt|x Element (Data)|x}}
|Zero or more "group" elements may appear as defined by the given link. This element defines a collection of tag groups and their tags.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|{{flalt|Source Element (Data)|source}}
|{{flalt|x Element (Data)|x}}
|Zero or more "source" elements may appear as defined by the given link. This element specifies sources that can be configured by the user for each actor.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|{{flalt|Phase Element (Data)|phase}}
|Zero or more "phase" elements may appear as defined by the given link. This element dictates the set of evaluation phases that will exist for the game system.
|-
|{{flalt|Resource Element (Data)|resource}}
|Zero or more "resource" elements may appear as defined by the given link. This element defines resources like fonts and bitmaps used by styles for visual display.
|-
|{{flalt|Style Element (Data)|style}}
|Zero or more "style" elements may appear as defined by the given link. This element specifies an assortment of visual styles that can be used by portals.
|-
|{{flalt|Portal Element (Data)|portal}}
|Zero or more "portal" elements may appear as defined by the given link. This element specifies an assortment of portals for use within layouts.
|-
|{{flalt|Template Element (Data)|template}}
|Zero or more "template" elements may appear as defined by the given link. This element specifies an assortment of templates for use within layouts.
|-
|-
|{{flalt|Component Element (Data)|component}}
|{{flalt|x Element (Data)|x}}
|Zero or more "component" elements may appear as defined by the given link. This element specifies a variety of components that can be used by component sets.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|{{flalt|Component Set Element (Data)|compset}}
|{{flalt|x Element (Data)|x}}
|Zero or more "compset" elements may appear as defined by the given link. This element defines various component sets that can be used to define things.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|{{flalt|Entity Element (Data)|entity}}
|{{flalt|x Element (Data)|x}}
|Zero or more "entity" elements may appear as defined by the given link. This element defines entities that can be used within the game system.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|{{flalt|Sort Set Element (Data)|sortset}}
|{{flalt|x Element (Data)|x}}
|Zero or more "sortset" elements may appear as defined by the given link. This element defines various sort sets that can be used by the game system.
|Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
|-
|-
|}
|}

Revision as of 23:54, 22 November 2008

Context: HL Kit &#133; Kit Reference 

Overview

The data file is where you'll be defining all of the top-level elements that the user will directly control. This includes visual elements like panels, layouts, templates, and portals. It also includes game system elements like things.

All data files have the ".dat" file extension and are loaded after all of the structural files have defined the framework for the game system.

This section outlines the structure and mechanics for writing a definition file.

IMPORTANT! This section utilizes critical notational conventions that can be found in over here.

IMPORTANT! Just because you can put numerous different elements in the same file does not mean you should do so. Keeping your data files small and focused will also keep them much more manageable, so break up all the information across files where appropriate. See the Skeleton data files for examples of this.

Structural Composition

The overall file structure is that of a standard XML file. The file must start with an XML version element in the form: "<?xml version="1.0"?>". Following this, the top-level XML element must be a "document" and it must have a "signature" attribute containing the explicit value "Hero Lab Data".

The following table defines the attributes for a "document" element.

signature Text – Must be the value "Hero Lab Data".

Within the document element, every data file possesses the following child elements, appearing in the sequence given and with the names specified.

portal Zero or more "portal" elements may appear as defined by the given link. This element specifies an assortment of portals for use within layouts.
template Zero or more "template" elements may appear as defined by the given link. This element specifies an assortment of templates for use within layouts.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.
x Zero or more "x" elements may appear as defined by the given link. This element specifies a variety of x that will be utilized within the game system.