the-great-game/the-great-game.adl.xml

78 lines
3.4 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- DOCTYPE application PUBLIC "-//JOURNEYMAN//DTD ADL 1.4.1//EN"
"http://www.journeyman.cc/adl/stable/adl/schemas/adl-1.4.1.dtd" -->
<application xmlns="http://bowyer.journeyman.cc/adl/1.4.1/"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns:adl="http://www.journeyman.cc/adl/1.4.1/" name="youyesyet" version="0.1.1">
<documentation>
At this stage, primarily a data-driven lore repository.
At some future stage, perhaps a specification for the game's internal state.
</documentation>
<group name="public">
<documentation>All users</documentation>
</group>
<entity table="objects" name="object">
<documentation>Physical opjects in the game world; it's probable that
properties like 'mesh' and 'skin' will end up here.</documentation>
<key>
<property required="true" type="integer" name="id" column="id" immutable="true" distinct="system">
<documentation>Note that this key is special, as for every instance of
a game object there will be an object record, and thus, for example,
every character will have exactly one object record associated with
it; thus, for example, the key value in the character table will be
the key value of the associated object record.</documentation>
<generator action="native"/>
</property>
</key>
<property required="true" type="boolean" default="false" name="container"/>
<property type="text" name="notes">
<description>Working notes about this object</description>
</property>
<property required="true" type="real" name="x">
<documentation>Easting from the origin, in metres.</documentation>
</property>
<property required="true" type="real" name="y">
<documentation>Northing from the origin, in metres.</documentation>
</property>
<property required="true" type="real" name="z">
<documentation>Altitude above the mean sea level, in metres.</documentation>
</property>
<property type="list" name="contents" entity="object">
<documentation>Contents of this object, if it is a container.</documentation>
</property>
<property type="entity" name="containedin" entity="object"/>
<!-- model? -->
<!-- texture? -->
</entity>
<entity table="agent" name="agent">
<documentation>An object with agency: a hierarchy of needs, a planning
process, locomotion.</document>
<key>
<property type="entity" name="id" entity="object"/>
</key>
<property type="entity" entity="species" name="species"/>
<property type="entity" entity="planner" name="planner">
<documentation>
The function used to plan the next action for this agent.
</documentation>
</property>
</entity>
<entity table="character" name="character">
<documentation>A character with a repertoire: knowledge, dialect, voice,
et cetera.</document>
<key>
<property type="entity" name="id" entity="object"/>
</key>
<property type="string" name="personal-name" size="80"/>
<property type="entity" entity="trade" name="trade"/>
<property type="entity" entity="rank" name="rank"/>
<property type="entity" entity="clan" name="clan"/>
<property type="entity" entity="character" name="father"/>
<property type="entity" entity="character" name="mother"/>
<property type="entity" entity="responder" name="responder"/>
</entity>
</application>