Heroes.reld

From OHRRPGCE-Wiki
Jump to navigation Jump to search

A RELOAD format lump for storage of hero definitions.

This lump replaced DT0 in all versions after Dec 21 2012. (CURRENT_RPG_VERSION >= 19)

  • heroes - this is the root node
    • hero int - one node for each hero. value is id number
      • name string
        • maxlen int - max length of name when renaming. if node not present use default
      • appearance contains appearance data
        • walkabout
          • pic int - picture id
          • pal int - palette number. If not is not present use default palette for pic
        • battle
          • pic int - picture id
          • pal int - palette number. If not is not present use default palette for pic
          • hand_a - node containing hand offset data for attack frame A
            • x int - x offset of hand
            • y int - y offset of hand
          • hand_b - node containing hand offset data for attack frame B
            • x int - x offset of hand
            • y int - y offset of hand
          • skipvicdance bool - if nonzero, don't do victory animation (This is a WIP feature)
        • portrait
          • pic int - picture id
          • pal int - palette number. If not is not present use default palette for pic
      • default_level int - value is level number. Use default if node is not present
      • default_weapon int - item id number
      • default_auto_battle int - if not zero, this hero will default to fighting automatically in battle. If absent or zero, this hero will default to normal player control (This is a WIP feature)
      • exp_mult float - multiplier in the hero's experience formula (minus 1). Defaults to 0.2, ie 1.2*prev+5
      • stats_at_zero - contains stats at level 0
        • stat int - one node for each stat. value is stat ID number 0-11
          • value int - value for this stat
      • stats_at_max - contains stats at max level (often, but not always level 99)
        • stat int - one node for each stat. value is stat ID number 0-11
          • value int - value for this stat
      • battle_menus - stores the hero's battle menu data
        • menu - one for each hero battle menu slot.
          • kind only has one child node. The valid options are listed below
            • weapon - if this node is present, this is the attack specified by the hero's equipped weapon
            • attack int - if this node is present, this is an attack. Value is attack ID number
            • items - if this node it present, this is the item menu
            • spells int - if this node is present, this is a spell list. Value is list id 0-3
            • skip - if this node it present, this menu item is "Skip Turn" (This is a WIP feature)
          • caption string - the text of the of menu item. If blank or missing the default is used (the attack or spell list name, or the "Items" global string)
          • color int - the text color, in the master palette. 0 or missing indicates to use the default, uilook(uiText).
          • enable_tag1 int - if this tag check fails the menu option will be disabled. >= 0 is ON, < 0 is OFF. If not present, default 0 meaning "always"
          • enable_tag2 int - same as above
          • hide_disabled bool - if nonzero, indicates that if the menu item is disabled, it should be hidden instead of just unselectable. Spell lists with blank names are always hidden regardless, but all other things that disable a menu item (e.g. attack costs) do respect this.
          • exclude_auto_battle bool - if nonzero, this battle menu item will never be used when the hero is in auto-battle mode (This is a WIP feature)
      • spell_lists - Container for spell lists
        • list int - one node for each spell list 0-3. value is list id number. Empty lists are not present.
          • name string - name of the spell list
          • spells - contains spells
            • spell int - one node for each defined spell. value is id 0-23
              • attack int - value is id number of attack to use for this spell
              • learnlev int - level at which the hero learns the spell. Not present if not used
              • itemlearn - node is present if the hero can learn this spell from an item
              • tag int - if this tag check passes, the spell is visible (default "always")
              • other nodes related to Plan for improved spell learning will go here later
          • random - if this node is present, an attack is automatically randomly selected from the list
          • use_lmp - if this node is present, all spells in this list require FF1-style level-based-mp
      • elements - stores the hero's elemental strengths and weaknesses
        • element int - an element; value is ID number. Element nodes not present will use the default of 1.0
          • damage double - damage taken from this element (1.0 = 100% normal)
      • rename_on_add - if present, the hero is renamed when added to the party
      • rename_on_status - if present, the hero can be renamed on the status screen
      • hide_empty_lists - if present, the hero's empty spell lists are hidden
      • tags - contains tags automatically set by this hero
        • have_hero int - tag to turn ON if the hero is in the party
        • is_alive int - tag to turn ON if the hero is alive
        • is_leader int - tag to turn ON if the hero is the leader
        • is_active int - tag to turn on if the hero is a member of the active party
        • checks - parent node for hero list of checks that set tags
          • range - a list of zero or more range check nodes
            • kind string - Currently always "level" but we can use this to check stats or other things later
            • tag int - a tag number that will be turned on if the check succeeds.
            • min int - Check if the hero's level is >= this
            • max int - Check if the hero's level is <= this
      • stat_options customize the display of stats
        • stat int - zero or more nodes for containing stat options. The value is the stat ID number. If a stat has no node, it uses defaults
          • hide - if this node is present, the stat should be hidden from this hero's status and equip screens
      • counterattacks - parent node for hero's intrinsic counterattacks
        • elemental - parent node for hero's elemental counterattacks
          • element int - an optional node for each elemental 0-63. Elementals with no counterattack can be omitted
            • attack int - id number of the counterattack
        • nonelemental - parent node for hero's non-elemental counterattack
          • attack int - id number of the counterattack
        • statdamage - parent node for hero's stat damage counterattacks
          • stat int - an optional node for each regular stat 0-11. Stats with no counterattack can be omitted
            • attack int - id number of the counterattack