Files
client-tools/exe/win32/XmlSchemas/ServerBaseObject.xsd
2015-08-04 12:05:18 -05:00

322 lines
13 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2007 sp1 (http://www.altova.com) by Joshua Morris (Sony Online Entertainment) -->
<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by 4.0 Installed Multi IDE for 5 users (private) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="BaseTypes.xsd"/>
<xs:simpleType name="enumAttributes">
<xs:restriction base="xs:string">
<xs:enumeration value="AT_health"/>
<xs:enumeration value="AT_constitution"/>
<xs:enumeration value="AT_action"/>
<xs:enumeration value="AT_stamina"/>
<xs:enumeration value="AT_mind"/>
<xs:enumeration value="AT_willpower"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumMentalStates">
<xs:restriction base="xs:string">
<xs:enumeration value="MS_fear"/>
<xs:enumeration value="MS_anger"/>
<xs:enumeration value="MS_interest"/>
<xs:enumeration value="MS_distress"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumUpdateRanges">
<xs:restriction base="xs:string">
<xs:enumeration value="UR_near"/>
<xs:enumeration value="UR_normal"/>
<xs:enumeration value="UR_far"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumMoveFlags">
<xs:restriction base="xs:string">
<xs:enumeration value="MF_gm"/>
<xs:enumeration value="MF_player"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumVisibleFlags">
<xs:restriction base="xs:string">
<xs:enumeration value="VF_gm"/>
<xs:enumeration value="VF_player"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumDeleteFlags">
<xs:restriction base="xs:string">
<xs:enumeration value="DF_gm"/>
<xs:enumeration value="DF_player"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCraftingType">
<xs:restriction base="xs:string">
<xs:enumeration value="CT_weapon"/>
<xs:enumeration value="CT_armor"/>
<xs:enumeration value="CT_food"/>
<xs:enumeration value="CT_clothing"/>
<xs:enumeration value="CT_vehicle"/>
<xs:enumeration value="CT_droid"/>
<xs:enumeration value="CT_chemical"/>
<xs:enumeration value="CT_plantBreeding"/>
<xs:enumeration value="CT_animalBreeding"/>
<xs:enumeration value="CT_furniture"/>
<xs:enumeration value="CT_installation"/>
<xs:enumeration value="CT_lightsaber"/>
<xs:enumeration value="CT_genericItem"/>
<xs:enumeration value="CT_genetics"/>
<xs:enumeration value="CT_mandalorianTailor"/>
<xs:enumeration value="CT_mandalorianArmorsmith"/>
<xs:enumeration value="CT_mandalorianDroidEngineer"/>
<xs:enumeration value="CT_space"/>
<xs:enumeration value="CT_reverseEngineering"/>
<xs:enumeration value="CT_misc"/>
<xs:enumeration value="CT_spaceComponent"/>
<xs:enumeration value="CT_mission"/>
<xs:enumeration value="CT_weaponMission"/>
<xs:enumeration value="CT_armorMission"/>
<xs:enumeration value="CT_foodMission"/>
<xs:enumeration value="CT_clothingMission"/>
<xs:enumeration value="CT_vehicleMission"/>
<xs:enumeration value="CT_droidMission"/>
<xs:enumeration value="CT_chemicalMission"/>
<xs:enumeration value="CT_plantBreedingMission"/>
<xs:enumeration value="CT_animalBreedingMission"/>
<xs:enumeration value="CT_furnitureMission"/>
<xs:enumeration value="CT_installationMission"/>
<xs:enumeration value="CT_lightsaberMission"/>
<xs:enumeration value="CT_genericItemMission"/>
<xs:enumeration value="CT_geneticsMission"/>
<xs:enumeration value="CT_mandalorianTailorMission"/>
<xs:enumeration value="CT_mandalorianArmorsmithMission"/>
<xs:enumeration value="CT_mandalorianDroidEngineerMission"/>
<xs:enumeration value="CT_spaceMission"/>
<xs:enumeration value="CT_reverseEngineeringMission"/>
<xs:enumeration value="CT_miscMission"/>
<xs:enumeration value="CT_spaceComponentMission"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumXPType">
<xs:restriction base="xs:string">
<xs:enumeration value="XP_crafting"/>
<xs:enumeration value="XP_craftingClothing"/>
<xs:enumeration value="XP_craftingClothingArmor"/>
<xs:enumeration value="XP_craftingDroid"/>
<xs:enumeration value="XP_craftingFood"/>
<xs:enumeration value="XP_craftingMedicine"/>
<xs:enumeration value="XP_craftingStructure"/>
<xs:enumeration value="XP_craftingWeapons"/>
<xs:enumeration value="XP_craftingWeaponsMelee"/>
<xs:enumeration value="XP_craftingWeaponsRanged"/>
<xs:enumeration value="XP_craftingWeaponsMunition"/>
<xs:enumeration value="XP_craftingScout"/>
<xs:enumeration value="XP_craftingCreature"/>
<xs:enumeration value="XP_craftingTissue"/>
<xs:enumeration value="XP_craftingCamp"/>
<xs:enumeration value="XP_craftingTrapping"/>
<xs:enumeration value="XP_craftingSpice"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumArmorRating">
<xs:restriction base="xs:string">
<xs:enumeration value="AR_armorNone"/>
<xs:enumeration value="AR_armorLight"/>
<xs:enumeration value="AR_armorMedium"/>
<xs:enumeration value="AR_armorHeavy"/>
<xs:enumeration value=""/>
<xs:enumeration value=""/>
<xs:enumeration value=""/>
<xs:enumeration value=""/>
<xs:enumeration value=""/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumArmorLevel">
<xs:restriction base="xs:string">
<xs:enumeration value="AL_basic"/>
<xs:enumeration value="AL_standard"/>
<xs:enumeration value="AL_advanced"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumArmorCategory">
<xs:restriction base="xs:string">
<xs:enumeration value="AC_reconnaissance"/>
<xs:enumeration value="AC_battle"/>
<xs:enumeration value="AC_assault"/>
<xs:enumeration value="AC_psg"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumDamageType">
<xs:restriction base="xs:string">
<xs:enumeration value="DT_none"/>
<xs:enumeration value="DT_kinetic"/>
<xs:enumeration value="DT_energy"/>
<xs:enumeration value="DT_blast"/>
<xs:enumeration value="DT_stun"/>
<xs:enumeration value="DT_restraint"/>
<xs:enumeration value="DT_elemental_heat"/>
<xs:enumeration value="DT_elemental_cold"/>
<xs:enumeration value="DT_elemental_acid"/>
<xs:enumeration value="DT_elemental_electrical"/>
<xs:enumeration value="DT_environmental_heat"/>
<xs:enumeration value="DT_environmental_cold"/>
<xs:enumeration value="DT_environmental_acid"/>
<xs:enumeration value="DT_environmental_electrical"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="structAttribMod">
<xs:sequence>
<xs:element name="target" type="enumAttributes"/>
<xs:element name="value" type="xs:int"/>
<xs:element name="time" type="xs:float"/>
<xs:element name="timeAtValue" type="xs:float"/>
<xs:element name="decay" type="xs:float"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="structMentalStateMod">
<xs:sequence>
<xs:element name="target" type="enumMentalStates"/>
<xs:element name="value" type="xs:int"/>
<xs:element name="time" type="xs:float"/>
<xs:element name="timeAtValue" type="xs:float"/>
<xs:element name="decay" type="xs:float"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="structContents">
<xs:sequence>
<xs:element name="slotName" type="xs:string"/>
<xs:element name="equipObject" type="xs:boolean"/>
<xs:element name="content" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="structXp">
<xs:sequence>
<xs:element name="type">
<xs:simpleType>
<xs:restriction base="enumXPType"/>
</xs:simpleType>
</xs:element>
<xs:element name="level" type="xs:int"/>
<xs:element name="value" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ServerBaseObject_11_Type">
<xs:sequence>
<xs:element name="sharedTemplate" type="xs:string">
<xs:annotation>
<xs:documentation>(Required) outputs to server object template. This is the server name with _shared prefixed to the .iff. This also outputs to the shared object file as the name</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scripts" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. This adds various scripts to the base object.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="script" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="objvar" nillable="true" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. This adds various objvars to the base object.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="entry" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="volume" type="xs:int" nillable="true" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. This is how much room in inventory this object will take. Most objects only take up 1 space.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="visibleFlags" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. Who can see this object, most objects in the game everyone can see.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="entry" minOccurs="0">
<xs:simpleType>
<xs:restriction base="enumVisibleFlags"/>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="deleteFlags" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. This is who can delete the object, most objects in the game anyone can delete.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="entry" minOccurs="0">
<xs:simpleType>
<xs:restriction base="enumDeleteFlags"/>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="moveFlags" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. This is who can move the object, most objects in game can be moved by anyone.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="entry" minOccurs="0">
<xs:simpleType>
<xs:restriction base="enumMoveFlags"/>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="invulnerable" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. This denotes if the object is invulnerable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="complexity" type="xs:float" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. True purpose is unknown as complexity is defined in the draft schematic.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="tintIndex" type="xs:int" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. Index into client tint palette.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="updateRanges" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. Distances for network updates.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="UR_near" type="xs:float" minOccurs="0"/>
<xs:element name="UR_normal" type="xs:float" minOccurs="0"/>
<xs:element name="UR_far" type="xs:float" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="contents" minOccurs="0">
<xs:annotation>
<xs:documentation>(Optional) outputs to server object template. what's in this object, ie if you adding something like an inventory to a lightsaber.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="entry" type="structContents" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="xpPoints" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="entry" type="structXp" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="persistByDefault" type="xs:boolean" minOccurs="0"/>
<xs:element name="persistContents" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:schema>