Difference between revisions of "XML/Unit"

From MegaGlest
Jump to navigation Jump to search
(No difference)

Revision as of 11:24, 21 June 2007

<?xml version="1.0" standalone="no" ?>

  • <unit>
    • <parameters>
      • <size value="#" /> How many units per side a building uses
      • <height value="#" /> The height of a unit
      • <max-hp value="###" regeneration="#"/> Maximum hit points and rate of regeneration
      • <max-ep value="###" regeneration="#"/> Maximum energy points and rate of regeneration
      • <armor value="#" /> Armor value of unit
      • <armor-type value="wood"/> Type of armor - some weapons are more effective against some armor types; Editable in the tech_name.xml file
      • <sight value="#" /> Range of sight to react to other units
      • <multi-selection value="false" /> Is double-click on unit multi-select other unit of same type
      • <cellmap value="true"> For Buildings, which Cells in a building a unit can pass through (0 can pass, 1 cannot). The number of rows and the number of digits in a line must match the size given above!
        • <row value="1011"/>
        • <row value="1011"/>
        • <row value="0000"/>
        • <row value="1011"/>
      • </cellmap>
      • <levels/> Levels automatically improve Hit points, Energy Points, and Armor by 50%, as well as sight by 20%.
        • <level name="level_name" kills="###"/> level_name is the designation, kills denotes how many enemies must be destroyed to achieve it
      • </levels>
      • <fields>Where is it considered to be for purposes of being attacked; land weapons can attack land, etcetera
        • <field value="land" />
        • <field value="air" />
      • </fields>
      • <properties>
        • <property value="burnable"/> Can a building be burned down (?)
      • </properties>
      • <light enabled="false" />
      • <unit-requirements> Units required to be in use before creating
        • <unit name="unit_name" />
      • </unit-requirements>
      • <upgrade-requirements> Upgrades required to be in use before creating
        • <upgrade name="upgrade_name"/>
      • </upgrade-requirements>
      • <resource-requirements> Resources used for upgrade (if negative resources will be added to player)
        • <resource name="resource_name" amount="###" />
      • </resource-requirements>
      • <resources-stored> Resource that the unit can store for inventory purposes
        • <resource name="resource_name" amount="###" />
      • </resources-stored>
      • <image path="images/aerodrome.bmp"/> Path to Image Icon
      • <image-cancel path="../../../../common/tech_cancel.bmp"/> Path to cancellation icon
      • <meeting-point value="true" image-path="../../../../common/tech_meeting_point.bmp"/> Can the unit be used as a meeting point for other units, and the UI icon to be used to initiate.
      • <selection-sounds enabled="true"> Audio feedback to note unit selections
        • <sound path="../../../../common/tech_click.wav" />
      • </selection-sounds>
      • <command-sounds enabled="true"> Audio feedback to note unit UI selections
        • <sound path="../../../../common/tech_click.wav" />
      • </command-sounds>
    • </parameters>
    • <skills> Skills are what a unit can do.
      • <skill>
        • <type value="attack"/> Type of skill
        • <name value="attack_skill"/> name of this skill (refer to it)
        • <ep-cost value="40"/> How many energy points used for each use of skill
        • <speed value="60"/> The speed of skill (more=faster)
        • <anim-speed value="60"/> Animation speed
        • <animation path="models/battlemage_attacking.g3d"/> Animation path
        • <sound enabled="true" start-time="0.3"> Is sound enabled. Sound start delayed by this time.
          • <sound-file path="sounds/battlemage_attack1.wav"/> path to sound
        • </sound>
        • <attack-strenght value="140"/> attack strength Note Spelling; Minor bug, not corrected as of 2.0
        • <attack-var value="40"/> attack of unit = attack-strenght +- attack-var
        • <attack-range value="7"/> attack range
        • <attack-type value="magic"/> Type of weapon - some weapons are more effective against some armor types; Editable in the tech_name.xml file
        • <attack-fields> Whom can attack; land weapons can attack land, air - air.
          • <field value="land"/>
        • </attack-fields>
        • <attack-start-time value="0.6"/> (???)
        • <projectile value="true"> Use projectile (true for shooting,false for melee)
          • <particle value="true" path="particle_proj.xml"/> Path to projectile fail
          • <sound enabled="true"> path to sound file
            • <sound-file path="sounds/battlemage_hit1.wav"/>
          • </sound>
        • </projectile>
        • <splash value="true"> Will projectile explode
          • <radius value="0"/> radius of explosion
          • <damage-all value="true"/> Will it damage all units (enemy & ally)
          • <particle value="true" path="particle_splash.xml"/> Path to exploison file
        • </splash>
      • </skill>
        • ...
    • </skills>
    • <commands> Commands create the specific UI for accessing skills
      • <command>
        • <type value="morph"/> Type of command
        • <name value="promote_to_archmage"/> In game description
        • <image path="../archmage/images/archmage.bmp"/> Path to icon image
        • <unit-requirements/> See above
        • <upgrade-requirements/> See above
        • <morph-skill value="morph_skill"/> reference to which skill to use
        • <morph-unit name= "archmage"/> Morphing to unit
        • <discount value="0"/> discount to morph (100=free morphing, 0=full unit cost) NOTE: you still need to spend full cost at the start,but at the end of morphing you get resources back.
      • </command>
        • ...
    • </commands>
  • </unit>