mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
Added XML Schema Descriptions (#74)
* Added descriptions for astro object entry schema * Added descriptions for the DialogueTree schema
This commit is contained in:
parent
027a39a462
commit
12ab04eb28
@ -5,8 +5,20 @@
|
|||||||
<xs:element name="DialogueTree">
|
<xs:element name="DialogueTree">
|
||||||
<xs:complexType>
|
<xs:complexType>
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="NameField" type="xs:string"/>
|
<xs:element name="NameField" type="xs:string">
|
||||||
<xs:element name="DialogueNode" type="DialogueNode" maxOccurs="unbounded"/>
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The name of the dialogue tree
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="DialogueNode" type="DialogueNode" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The different nodes of this dialogue tree
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
@ -14,42 +26,114 @@
|
|||||||
<!-- Dialogue Node Info -->
|
<!-- Dialogue Node Info -->
|
||||||
<xs:complexType name="DialogueNode">
|
<xs:complexType name="DialogueNode">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="Name" type="xs:string"/>
|
<xs:element name="Name" type="xs:string">
|
||||||
<xs:element name="EntryCondition" type="xs:string" minOccurs="0"/>
|
<xs:annotation>
|
||||||
<xs:element name="Dialogue" type="Dialogue"/>
|
<xs:documentation>
|
||||||
<xs:element name="RevealFacts" type="RevealFacts" minOccurs="0"/>
|
The name of this dialogue node
|
||||||
<xs:element name="DialogueOptionsList" type="DialogueOptionsList" minOccurs="0"/>
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="EntryCondition" type="xs:string" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The condition that needs to be met in order to get to this node
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="Dialogue" type="Dialogue">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The dialogue to show to the player
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="RevealFacts" type="RevealFacts" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Facts to reveal when the player sees this dialogue node
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="DialogueOptionsList" type="DialogueOptionsList" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
A list of options to show to the player once the character is one talking
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
|
||||||
<!-- Dialogue Info -->
|
<!-- Dialogue Info -->
|
||||||
<xs:complexType name="Dialogue">
|
<xs:complexType name="Dialogue">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="Page" type="xs:string" maxOccurs="unbounded"/>
|
<xs:element name="Page" type="xs:string" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
A page of dialogue to show to the player
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
|
||||||
<!-- Reveal Facts Info -->
|
<!-- Reveal Facts Info -->
|
||||||
<xs:complexType name="RevealFacts">
|
<xs:complexType name="RevealFacts">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="FactID" type="xs:string" maxOccurs="unbounded"/>
|
<xs:element name="FactID" type="xs:string" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The ID of a fact to reveal
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
|
||||||
<!-- Dialogue Options List Info -->
|
<!-- Dialogue Options List Info -->
|
||||||
<xs:complexType name="DialogueOptionsList">
|
<xs:complexType name="DialogueOptionsList">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="DialogueOption" type="DialogueOption" maxOccurs="unbounded"/>
|
<xs:element name="DialogueOption" type="DialogueOption" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Options the player can select from
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
|
||||||
<!-- Dialogue Option Info -->
|
<!-- Dialogue Option Info -->
|
||||||
<xs:complexType name="DialogueOption">
|
<xs:complexType name="DialogueOption">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="RequiredPersistentCondition" type="xs:string" minOccurs="0"/>
|
<xs:element name="RequiredPersistentCondition" type="xs:string" minOccurs="0">
|
||||||
<xs:element name="CancelledPersistentCondition" type="xs:string" minOccurs="0"/>
|
<xs:annotation>
|
||||||
<xs:element name="Text" type="xs:string"/>
|
<xs:documentation>
|
||||||
<xs:element name="DialogueTarget" type="xs:string"/>
|
Require a prior condition to be met to show this option
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="CancelledPersistentCondition" type="xs:string" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Hide this option if a condition has been met
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="Text" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The text to show for this option
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="DialogueTarget" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The name of the DialogueNode to go to when this option is selected
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
|
||||||
|
|||||||
@ -5,8 +5,20 @@
|
|||||||
<xs:element name="AstroObjectEntry">
|
<xs:element name="AstroObjectEntry">
|
||||||
<xs:complexType>
|
<xs:complexType>
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="ID" type="xs:string"/>
|
<xs:element name="ID" type="xs:string">
|
||||||
<xs:element name="Entry" type="Entry" maxOccurs="unbounded"/>
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
ID of the planet these entries are for
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="Entry" type="Entry" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
A set of entries that belong to this planet
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
@ -17,27 +29,117 @@
|
|||||||
<!-- Entry Info -->
|
<!-- Entry Info -->
|
||||||
<xs:complexType name="Entry">
|
<xs:complexType name="Entry">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="ID" type="xs:string"/>
|
<xs:element name="ID" type="xs:string">
|
||||||
<xs:element name="Name" type="xs:string"/>
|
<xs:annotation>
|
||||||
<xs:element name="Curiosity" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
|
<xs:documentation>
|
||||||
<xs:element name="IsCuriosity" type="empty" minOccurs="0" maxOccurs="unbounded"/>
|
The ID of this entry
|
||||||
<xs:element name="IgnoreMoreToExplore" type="empty" minOccurs="0"/>
|
</xs:documentation>
|
||||||
<xs:element name="IgnoreMoreToExploreCondition" type="xs:string" minOccurs="0"/>
|
</xs:annotation>
|
||||||
<xs:element name="AltPhotoCondition" type="xs:string" minOccurs="0"/>
|
</xs:element>
|
||||||
<xs:element name="RumorFact" type="RumorFact" minOccurs="0" maxOccurs="unbounded"/>
|
<xs:element name="Name" type="xs:string">
|
||||||
<xs:element name="ExploreFact" type="ExploreFact" minOccurs="0" maxOccurs="unbounded"/>
|
<xs:annotation>
|
||||||
<xs:element name="Entry" type="Entry" minOccurs="0" maxOccurs="unbounded"/>
|
<xs:documentation>
|
||||||
|
Name of this entry
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="Curiosity" type="xs:string" minOccurs="0" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The curiosity this entry belongs to
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="IsCuriosity" type="empty" minOccurs="0" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Whether this entry is a curiosity
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="IgnoreMoreToExplore" type="empty" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Whether to hide the "More To Explore" text on this entry
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="IgnoreMoreToExploreCondition" type="xs:string" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Ignore more to explore if a fact is known
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="AltPhotoCondition" type="xs:string" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
If this fact is revealed, show the Alt picture
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="RumorFact" type="RumorFact" minOccurs="0" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Rumor facts for this entry
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="ExploreFact" type="ExploreFact" minOccurs="0" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Explore facts for this entry
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="Entry" type="Entry" minOccurs="0" maxOccurs="unbounded">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Child entires within this entry
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
|
||||||
<!-- Rumor Fact Info -->
|
<!-- Rumor Fact Info -->
|
||||||
<xs:complexType name="RumorFact">
|
<xs:complexType name="RumorFact">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="ID" type="xs:string"/>
|
<xs:element name="ID" type="xs:string">
|
||||||
<xs:element name="SourceID" type="xs:string" minOccurs="0"/>
|
<xs:annotation>
|
||||||
<xs:element name="RumorName" type="xs:string" minOccurs="0"/>
|
<xs:documentation>
|
||||||
<xs:element name="RumorNamePriority" type="xs:int" minOccurs="0"/>
|
The ID of this rumor fact
|
||||||
<xs:element name="IgnoreMoreToExplore" type="empty" minOccurs="0"/>
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="SourceID" type="xs:string" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The source of this rumor, this draws a line in detective mode
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="RumorName" type="xs:string" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
No clue what this does
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="RumorNamePriority" type="xs:int" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Also have no clue what this does
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="IgnoreMoreToExplore" type="empty" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Whether to hide the "More to explore" on this rumor fact
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
<xs:group ref="TextData"/>
|
<xs:group ref="TextData"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
@ -45,8 +147,20 @@
|
|||||||
<!-- Explore Fact Info -->
|
<!-- Explore Fact Info -->
|
||||||
<xs:complexType name="ExploreFact">
|
<xs:complexType name="ExploreFact">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="ID" type="xs:string"/>
|
<xs:element name="ID" type="xs:string">
|
||||||
<xs:element name="IgnoreMoreToExplore" type="empty" minOccurs="0"/>
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The ID of this explore fact
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="IgnoreMoreToExplore" type="empty" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Whether to hide the "More to explore" text for this fact
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
<xs:group ref="TextData"/>
|
<xs:group ref="TextData"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
@ -54,12 +168,35 @@
|
|||||||
<!-- Text Data Group -->
|
<!-- Text Data Group -->
|
||||||
<xs:group name="TextData">
|
<xs:group name="TextData">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="Text" type="xs:string"/>
|
<xs:element name="Text" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The text content for this fact
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
<xs:element name="AltText" minOccurs="0">
|
<xs:element name="AltText" minOccurs="0">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
Display alt-text given a certain fact is revealed
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
<xs:complexType>
|
<xs:complexType>
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="Text" type="xs:string"/>
|
<xs:element name="Text" type="xs:string">
|
||||||
<xs:element name="Condition" type="xs:string"/>
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The text to display if the condition is met
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="Condition" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>
|
||||||
|
The condition that needs to be fulfilled to have the alt text be displayed
|
||||||
|
</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user