<database_description>
  <!-- Define bank superclass -->
  <bank_superclass>
    <bank name="PLR"
          class="CCDBSynchronised" />
    <bank name="GUILD"
          class="CCDBGroup"
          dbAccessor=".Database">
      <include file="game_share/far_position.h" />
      <verbatime>inline void _setProp(CCDBSynchronised &amp;db,
      ICDBStructNode *node, TCharConnectionState value, bool
      forceSending = false) { db.x_setProp(node, uint64(value),
      forceSending); } inline void _getProp(const CCDBSynchronised
      &amp;db, ICDBStructNode *node, TCharConnectionState
      &amp;value) { value =
      (TCharConnectionState)db.x_getProp(node); }</verbatime>
    </bank>
    <bank name="OUTPOST"
          class="CCDBGroup"
          dbAccessor=".Database" />
  </bank_superclass>
  <!-- Bank must be set for all and only first-level branches -->
  <!-- For the client to work, this branch MUST remain at the top -->
  <branch name="Entities"
          bank="PLR"
          clientonly="1">
    <branch name="E"
            count="256">
      <leaf name="P"
            count="28"
            type="I64" />
    </branch>
  </branch>
  <branch name="GameTime"
          bank="PLR">
    <leaf name="Hours"
          type="I16" />
  </branch>
  <branch name="INTERFACES"
          bank="PLR">
    <leaf name="FLAGS"
          type="I64" />
    <leaf name="NB_BONUS_LANDMARKS"
          type="I16" />
  </branch>
  <branch name="USER"
          bank="PLR"
          atom="1">
    <leaf name="HAIR_TYPE"
          type="I8" />
    <leaf name="HAIR_COLOR"
          type="I3" />
    <leaf name="DEATH_XP_MALUS"
          type="I8" />
    <leaf name="IN_DUEL"
          type="I1" />
    <leaf name="IN_PVP_CHALLENGE"
          type="I1" />
    <leaf name="MOUNT_WALK_SPEED"
          type="I16" />
    <leaf name="MOUNT_RUN_SPEED"
          type="I16" />
    <leaf name="TEAM_MEMBER"
          type="I1" />
    <leaf name="TEAM_LEADER"
          type="I1" />
    <leaf name="OUTPOST_ADMIN"
          type="I1" />
    <leaf name="BERSERK"
          type="I1" />
    <leaf name="ACT_TSTART"
          type="I32" />
    <leaf name="ACT_TEND"
          type="I32" />
    <leaf name="ACT_TYPE"
          type="I4" />
    <leaf name="ACT_NUMBER"
          type="I8" />
    <leaf name="ACT_REFUSED_NUM"
          type="I8" />
    <leaf name="ACT_CANCELED_NUM"
          type="I8" />
    <leaf name="SPEED_FACTOR"
          type="I8" />
    <leaf name="SKILL_POINTS"
          type="I32" />
    <branch name="SKILL_POINTS_"
            count="4">
      <leaf name="VALUE"
            type="I32" />
    </branch>
    <branch name="FACTION_POINTS_"
            count="6">
      <!-- game_share/pvp_clan.h (0 is BeginClans and size is EndClans-BeginClans+1 -->
      <leaf name="VALUE"
            type="I32" />
    </branch>
    <leaf name="IS_NEWBIE"
          type="I1" />
    <leaf name="IS_TRIAL"
          type="I1" />
    <branch name="RRPS_LEVELS"
            count="6">
      <leaf name="VALUE"
            type="I32" />
    </branch>
    <branch name="NPC_CONTROL"
            bank="PLR">
      <leaf name="SHEET"
            type="I32"
            cppType="NLMISC::CSheetId" />
      <leaf name="RUN"
            type="I32" />
      <leaf name="WALK"
            type="I32" />
    </branch>
    <leaf name="DEFAULT_WEIGHT_HANDS"
          type="I32" />
    <leaf name="IS_INVISIBLE"
          type="I1" />
    <!-- Syncrhonisation COUNTER. must be at END of an atomic branch -->
    <leaf name="COUNTER"
          type="I4" />
  </branch>
  <branch name="DEFENSE"
          bank="PLR">
    <leaf name="DEFENSE_MODE"
          type="I1" />
    <!-- 0 = dodge, 1 = parry-->
    <leaf name="PROTECTED_SLOT"
          type="I3" />
    <!-- 0=All, 1=head, 2=chest, 3=arms, 4=hands, 5=legs, 6=feet-->
    <branch name="SLOTS">
      <branch name=""
              count="6">
        <!-- 0=head, 1=chest, 2=arms, 3=hands, 4=legs, 5=feet-->
        <leaf name="MODIFIER"
              type="S8" />
        <!-- modifier on defense (dodge or parry) on given slot (+-127)-->
      </branch>
    </branch>
  </branch>
  <branch name="FLAGS"
          bank="PLR"
          atom="1">

    <branch name="BRICK_TICK_RANGE">
      <!-- tick range for each power -->
      <branch name=""
              count="64">
        <leaf name="TICK_RANGE"
              type="I64" />
        <!-- 32b for start tick and 32b for end tick -->
      </branch>
    </branch>

    <leaf name="CRITICAL"
          type="I8" />
    <!-- counter to display flying texts : critical hit -->
    <leaf name="PARRY"
          type="I8" />
    <!-- counter to display flying texts : parry -->
    <leaf name="DODGE"
          type="I8" />
    <!-- counter to display flying texts : dodge -->
  </branch>
  <branch name="TARGET"
          bank="PLR">
    <!-- Don't put the whole TARGET branch atomic, because it will takes 34 extra bits each time a bar value change -->
    <branch name="BARS"
            atom="1">
      <!-- Entity Unique Identifier. Put in the atomic branch for consistency -->
      <!-- NB a UID invalid doesn't mean no target. It may be a Forage source -->
      <leaf name="UID"
            type="I20" />
      <leaf name="ChaScore1"
            type="S8" />
      <leaf name="ChaScore3"
            type="I7" />
      <leaf name="ChaScore2"
            type="I7" />
      <leaf name="ChaScore4"
            type="I7" />
      <leaf name="PLAYER_LEVEL"
            type="I8" />
      <!-- for target players only (PVP) -->
    </branch>
    <!-- ContextMenu (Bot options etc...) -->
    <branch name="CONTEXT_MENU"
            atom="1">
      <leaf name="PROGRAMMES"
            type="I32" />
      <!-- options for missions in the context menu -->
      <branch name="MISSIONS_OPTIONS">
        <branch name=""
                count="8">
          <leaf name="TITLE"
                type="I32" />
          <!-- a text ID of 0 means there's no action. Text ID are reseted when a new character is targeted -->
          <leaf name="PLAYER_GIFT_NEEDED"
                type="I1" />
          <!-- want a player gift ? -->
          <leaf name="PRIORITY"
                type="I2" />
          <!-- priority of the option : the higher it is, the higher the option will be displayed in the menu -->
        </branch>
      </branch>
      <!-- A NPC may offer to view a webpage -->
      <leaf name="WEB_PAGE_TITLE"
            type="I32" />
      <!-- a text ID of 0 means there's no WebPage -->
      <leaf name="WEB_PAGE_URL"
            type="I32" />
      <!-- the URL text ID of the web page -->
      <leaf name="OUTPOST"
            type="I32"
            cppType="NLMISC::CSheetId" />
      <!-- outpost this bot give access to (sheet id inside) -->
      <!-- Mission rings -->
      <branch name="MISSION_RING">
        <branch name=""
                count="4">
          <leaf name="TITLE"
                type="I32" />
          <!-- a text ID of 0 means there's no action. Text ID are reseted when a new character is targeted -->
          <leaf name="ID"
                type="I32" />
          <!-- the id of the action if selected -->
        </branch>
      </branch>
      <!-- Syncrhonisation COUNTER. must be at END of an atomic branch -->
      <leaf name="COUNTER"
            type="I4" />
    </branch>
    <leaf name="CONTEXT_VAL"
          type="I16" />
    <leaf name="AGGRESSIVE"
          type="I3" />
    <leaf name="FORCE_RATIO"
          type="I4" />
    <!-- TODO: remove this, use ForceRegion/ForceLevel in client creature sheets instead -->
  </branch>
  <branch name="GROUP"
          bank="PLR">
    <branch name=""
            count="8"
            atom="1">
      <!-- Atomic, for correct Bar Management on client -->
      <leaf name="PRESENT"
            type="I1" />
      <leaf name="UID"
            type="I20" />
      <!-- Entity Unique Identifier -->
      <leaf name="NAME"
            type="I32" />
      <leaf name="ChaScore1"
            type="S8" />
      <leaf name="ChaScore3"
            type="I7" />
      <leaf name="ChaScore2"
            type="I7" />
      <leaf name="POS"
            type="I64" />
    </branch>
    <leaf name="LEADER_INDEX"
          type="I4" />
    <leaf name="SUCCESSOR_INDEX"
          type="I4" />
    <branch name="MISSIONS"
            bank="PLR">
      <branch name=""
              count="15">
        <!-- see game_share/mission_desc.h TMissionType -->
        <leaf name="TYPE"
              type="I2" />
        <leaf name="ICON"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <!-- sheet id of a .mission_icon sheet -->
        <leaf name="TITLE"
              type="I32" />
        <leaf name="DETAIL_TEXT"
              type="I32" />
        <!-- begin date in tick -->
        <leaf name="BEGIN_DATE"
              type="I32" />
        <!-- end date in tick -->
        <leaf name="END_DATE"
              type="I32" />
        <!-- true if the step are "OR" -->
        <leaf name="OR_STEPS"
              type="I1" />
        <branch name="GOALS">
          <branch name=""
                  count="20">
            <leaf name="TEXT"
                  type="I32" />
            <leaf name="NPC_ALIAS"
                  type="I32" />
          </branch>
        </branch>
        <!-- Targets -->
        <branch name="TARGET"
                count="8"
                atom="1">
          <leaf name="TITLE"
                type="I32" />
          <leaf name="X"
                type="I32" />
          <leaf name="Y"
                type="I32" />
        </branch>
        <!-- Indicate if the mission is finished (0-not 1-success 2-failed) -->
        <leaf name="FINISHED"
              type="I2" />
        <!-- Indicate if the mission is abandonnable -->
        <leaf name="ABANDONNABLE"
              type="I1" />
        <!-- Indicate if the mission is paused (player set as 'sleeping' in a queue) -->
        <leaf name="SLEEP"
              type="I1" />
        <!-- Historic -->
        <branch name="HISTO">
          <branch name=""
                  count="30">
            <leaf name="TEXT"
                  type="I32" />
          </branch>
        </branch>
      </branch>
    </branch>
  </branch>
  <!-- Common Item Data : For correct HELP, all items must have this structure:
                <leaf name="SHEET"                      type="I32"/>
                <leaf name="QUALITY"            type="I10"/>
                <leaf name="QUANTITY"           type="I10"/>
                <leaf name="CREATE_TIME"                 type="I32" />
                <leaf name="SERIAL"                      type="I32" />
                <leaf name="USER_COLOR"         type="I3"/>
                <leaf name="LOCKED"                     type="I10"/>
                <leaf name="WEIGHT"                     type="I16"/>
                <leaf name="NAMEID"                     type="I32"/>
                <leaf name="INFO_VERSION"       type="I8"/>
                <leaf name="ENCHANT"            type="I10"/>
                <leaf name="RM_CLASS_TYPE"              type="I3"/> RM_CLASS_TYPE enum
                <leaf name="RM_FABER_STAT_TYPE" type="I5"/> RM_FABER_STAT_TYPE enum
                <leaf name="PREREQUISIT_VALID"  type="I11"/>
        -->
  <!-- gift from animator (dm) to player -->
  <branch name="DM_GIFT"
          bank="PLR">
    <leaf name="TEXT"
          type="I32" />
    <!-- caption of the gift window -->
  </branch>
  <!-- player trade & gift to bot -->
  <branch name="EXCHANGE"
          bank="PLR">
    <leaf name="TEXT"
          type="I32" />
    <leaf name="ID"
          type="I8" />
    <leaf name="BEGUN"
          type="I1" />
    <leaf name="ACCEPTED"
          type="I1" />
    <leaf name="MONEY"
          type="I64" />
    <branch name="GIVE">
      <branch name=""
              count="8">
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I10" />
        <leaf name="QUANTITY"
              type="I10" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <leaf name="USER_COLOR"
              type="I3" />
        <!-- <leaf name="LOCKED"                        type="I10"/> No longer needed -->
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE -->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
      </branch>
    </branch>
    <branch name="RECEIVE">
      <branch name=""
              count="8">
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I10" />
        <leaf name="QUANTITY"
              type="I10" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <leaf name="USER_COLOR"
              type="I3" />
        <!-- <leaf name="LOCKED"                        type="I10"/> No longer needed -->
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE-->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
      </branch>
    </branch>
    <leaf name="FORCE_REFUSE"
          type="I4" />
    <!-- Syncrhonisation COUNTER. Should be at END of an atomic branch!!! but still works fine -->
    <leaf name="COUNTER"
          type="I4" />
  </branch>
  <branch name="INVENTORY"
          bank="PLR">
    <branch name="HAND">
      <branch name=""
              count="2">
        <!-- 0 Right 1 Left -->
        <leaf name="INDEX_IN_BAG"
              type="I9" />
        <!-- 0 nothing 1-500 index in bag from 0 to 499 -->
      </branch>
    </branch>
    <branch name="BAG"
            clientonly="1">
      <branch name=""
              count="500">
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I10" />
        <leaf name="QUANTITY"
              type="I10" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <leaf name="USER_COLOR"
              type="I3" />
        <leaf name="LOCKED"
              type="I10" />
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE-->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
        <leaf name="PRICE"
              type="I32" />
        <leaf name="RESALE_FLAG"
              type="I2" />
        <!-- TBotChatResaleFlag -->
        <leaf name="WORNED"
              type="I1" />
        <!-- true if item is worned (show a red cross) -->
      </branch>
    </branch>
    <!-- MAX_INVENTORY_ANIMAL -->
    <branch name="PACK_ANIMAL"
            count="4"
            clientonly="1">
      <branch name=""
              count="500">
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I10" />
        <leaf name="QUANTITY"
              type="I10" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <leaf name="USER_COLOR"
              type="I3" />
        <leaf name="LOCKED"
              type="I10" />
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE-->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
        <leaf name="PRICE"
              type="I32" />
        <leaf name="RESALE_FLAG"
              type="I2" />
        <!-- TBotChatResaleFlag -->
      </branch>
    </branch>
    <branch name="EQUIP">
      <!-- jewelry + armor -->
      <branch name=""
              count="19">
        <leaf name="INDEX_IN_BAG"
              type="I9" />
        <!-- same as hand -->
      </branch>
    </branch>
    <branch name="TEMP">
      <!-- used for harvest loot and bag full -->
      <leaf name="TYPE"
            type="I8" />
      <!-- Type of temp inv see temp_inventory_mode in game_share -->
      <branch name=""
              count="16">
        <!-- client/inventory_manager.h MAX_TEMPINV_ENTRIES and egs/player_inv_temp.h TempInvSize -->
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I12" />
        <!-- for forage progress, max QL409 x10 -->
        <leaf name="QUANTITY"
              type="I12" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <!-- for forage progress, max x409 x10 -->
        <leaf name="USER_COLOR"
              type="I3" />
        <!-- No LOCKED state -->
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE-->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
      </branch>
      <leaf name="ENABLE_TAKE"
            type="I1" />
      <!-- Used only in forage -->
    </branch>
    <!-- used to share items between team members (up to 8 players) 
                        DO NOT FORGET if you modify this to do the the same modification in local database file -->
    <branch name="SHARE">
      <leaf name="SESSION"
            type="I8" />
      <!-- session id -->
      <branch name=""
              count="16">
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I10" />
        <leaf name="QUANTITY"
              type="I10" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <leaf name="USER_COLOR"
              type="I3" />
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE-->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
        <!-- Additionnal info -->
        <leaf name="NB_MEMBER"
              type="I4" />
        <!-- Number of team member who wants this item or phrase -->
        <leaf name="WANTED"
              type="I1" />
        <!-- Does the player wants this item or phrase ? -->
        <leaf name="CHANCE"
              type="I7" />
        <!-- Chance in percentage the player has to obtain this item -->
      </branch>
      <branch name="TM_"
              count="8">
        <!-- all the team members -->
        <leaf name="NAME"
              type="TEXT" />
        <leaf name="VALID"
              type="I1" />
        <!-- is the team member has validated its own selection ? -->
      </branch>
    </branch>
    <branch name="ROOM">
      <leaf name="SESSION"
            type="I16" />
      <leaf name="BULK_MAX"
            type="I32" />
      <leaf name="MONEY"
            type="I64" />
      <branch name=""
              count="1000"
              clientonly="1">
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I10" />
        <leaf name="QUANTITY"
              type="I10" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <leaf name="USER_COLOR"
              type="I3" />
        <leaf name="LOCKED"
              type="I10" />
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE-->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
      </branch>
    </branch>
    <leaf name="MONEY"
          type="I64" />
    <!-- Synchronisation COUNTER. Should be at END of an atomic branch!!! but still works fine without atomic -->
    <leaf name="COUNTER"
          type="I4" />
  </branch>
  <branch name="MODIFIERS"
          bank="PLR">
    <leaf name="TOTAL_MALUS_EQUIP"
          type="I8" />
    <!-- This is the malus ratio*50 (ie percentage/2) -->
    <branch name="BONUS">
      <branch name=""
              count="12">
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="DISABLED"
              type="I1" />
        <leaf name="DISABLED_TIME"
              type="I32" />
      </branch>
    </branch>
    <branch name="MALUS">
      <branch name=""
              count="12">
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="DISABLED"
              type="I1" />
        <leaf name="DISABLED_TIME"
              type="I32" />
      </branch>
    </branch>
  </branch>
  <branch name="DISABLE_CONSUMABLE"
          bank="PLR">
    <branch name=""
            count="12">
      <leaf name="FAMILY"
            type="I16" />
      <!-- Disable consumablel family -->
      <leaf name="DISABLE_TIME"
            type="I32" />
      <!-- End date of diable time in tick -->
    </branch>
  </branch>
  <!-- botchat texts -->
  <branch name="BOTCHAT"
          bank="PLR">
    <!-- intro for player gift -->
    <leaf name="PLAYER_GIFT"
          type="I32" />
    <!-- intro for guild creation -->
    <leaf name="CREATE_GUILD"
          type="I32" />
    <!-- intro for trade window (pacts, action, item, or skills ..)-->
    <leaf name="TRADE"
          type="I32" />
    <!-- intro for choose mission -->
    <leaf name="CHOOSE_MISSION"
          type="I32" />
    <!-- intro before the reward of the mission -->
    <!-- <leaf name="MISSION_END_REWARD" type="I32"/> -->
    <!-- text of the mission end -->
    <!-- <leaf name="MISSION_END" type="I32"/> -->
    <!-- news for current bot -->
    <!-- <leaf name="NEWS" type="I32"/> -->
    <!-- choice dynamic missions -->
    <branch name="DM_CHOICE"
            count="3">
      <leaf name="TITLE"
            type="I32" />
      <branch name=""
              count="8">
        <leaf name="TEXT"
              type="I32" />
      </branch>
    </branch>
    <!-- title of dynamic mission -->
    <leaf name="DM_TITLE"
          type="I32" />
    <!-- description of dynamic mission -->
    <leaf name="DM_DESCRIPTION"
          type="I32" />
    <!-- the rolemaster type on 2 bits -->
    <leaf name="ROLEMASTER_TYPE"
          type="I2" />
  </branch>
  <!-- Temporary structure to fill the huge list of guild to choose from in an ascensor -->
  <branch name="ASCENSOR"
          bank="PLR"
          atom="1">
    <leaf name="SESSION"
          type="I16" />
    <leaf name="PAGE_ID"
          type="I6" />
    <!-- current page ID -->
    <leaf name="HAS_NEXT"
          type="I1" />
    <!-- are there pages left ? -->
    <branch name=""
            count="8">
      <!-- 
                        if high order bit == 0 : guild icon : 58 low order bits - back:3 bits, symbol:6 bits, Invert:1 bit, color1&2:24 bits each 
                        if high order bit == 1 : low order bits = entry in the LIFT_ICONS::TLiftIcon enum
                        -->
      <leaf name="ICON"
            type="I64" />
      <leaf name="NAME"
            type="I32" />
    </branch>
  </branch>
  <branch name="CHOOSE_MISSIONS"
          bank="PLR"
          atom="1">
    <leaf name="SESSION"
          type="I16" />
    <leaf name="PAGE_ID"
          type="I6" />
    <!-- current page ID -->
    <leaf name="HAS_NEXT"
          type="I1" />
    <!-- are there pages left ? -->
    <branch name=""
            count="8">
      <leaf name="ICON"
            type="I32"
            cppType="NLMISC::CSheetId" />
      <!-- sheet id of a .mission_icon sheet -->
      <leaf name="TEXT"
            type="I32" />
      <leaf name="DETAIL_TEXT"
            type="I32" />
      <leaf name="PREREQ_STATE"
            type="I8" />
      <!-- game_share/mission_desc.h/TPreReqState -->
    </branch>
  </branch>
  <branch name="TRADING"
          bank="PLR"
          atom="1">
    <leaf name="SESSION"
          type="I16" />
    <!-- current botchat session ID -->
    <leaf name="PAGE_ID"
          type="I7" />
    <!-- current page ID -->
    <leaf name="HAS_NEXT"
          type="I1" />
    <!-- are there pages left ? -->
    <leaf name="ROLEMASTER_FLAGS"
          type="I6" />
    <!-- flags used to determine actions 'offered' by the rolemaster -->
    <leaf name="ROLEMASTER_RACE"
          type="I2" />
    <!-- civ of actions offered by the rolemaster (0..3) -->
    <leaf name="BUILDING_LOSS_WARNING"
          type="I1" />
    <!-- set if a warning saying "you're going to lose your old building" must be displayed -->
    <leaf name="RAW_MATERIAL_SELLER"
          type="I1" />
    <!-- flag set to 1 for raw materials seller for setting appropriate filters -->
    <leaf name="ITEM_TYPE_SELLER_BITFILED_0_63"
          type="I64" />
    <!-- bitfield define item type sell by bot, first 64 bits, cf TItemType -->
    <leaf name="ITEM_TYPE_SELLER_BITFILED_64_127"
          type="I64" />
    <!-- bitfield define item type sell by bot, next 64 bits, cf TItemType -->
    <leaf name="FAME_PRICE_FACTOR"
          type="I16" />
    <!-- 10000*factor to apply on item price, so if this value = 10000, factor is 1.0 -->
    <branch name=""
            count="8">
      <!-- Common Item Data -->
      <leaf name="SHEET"
            type="I32"
            cppType="NLMISC::CSheetId" />
      <leaf name="QUALITY"
            type="I10" />
      <leaf name="QUANTITY"
            type="I10" />
      <!-- No LOCKED state -->
      <leaf name="CREATE_TIME"
              type="I32" />
      <leaf name="SERIAL"
              type="I32" />
      <leaf name="USER_COLOR"
            type="I3" />
      <leaf name="WEIGHT"
            type="I16" />
      <!-- weight. see DB_WEIGHT_SCALE-->
      <leaf name="NAMEID"
            type="I32" />
      <!-- 0 or special name of item -->
      <leaf name="INFO_VERSION"
            type="I8" />
      <leaf name="ENCHANT"
            type="I10" />
      <leaf name="RM_CLASS_TYPE"
            type="I3" />
      <leaf name="RM_FABER_STAT_TYPE"
            type="I6" />
      <leaf name="PREREQUISIT_VALID"
            type="I1" />
      <!-- Muti currency info -->
      <leaf name="CURRENCY"
            type="I4" />
      <!-- The currency type RYMSG::TTradeCurrency -->
      <leaf name="RRP_LEVEL"
            type="I4" />
      <!-- For rrp curency, specify the rrp level -->
      <leaf name="MONEY_SHEET"
            type="I32"
            cppType="NLMISC::CSheetId" />
      <!-- For item curency, specify the item sheet -->
      <leaf name="BASE_SKILL"
            type="I4" />
      <!-- For skill curency, specify the base skill as in EGSPD::CSPType::TSPType -->
      <leaf name="FACTION_TYPE"
            type="I4" />
      <!-- For price in faction point, as in game_share/pvp_clan.h -->
      <leaf name="PRICE"
            type="I32" />
      <!-- The amount of the selected currency (dappers, number of item...) -->
      <!-- Special Trade -->
      <leaf name="PRICE_RETIRE"
            type="I32" />
      <leaf name="RESALE_TIME_LEFT"
            type="I16" />
      <leaf name="VENDOR_NAMEID"
            type="TEXT" />
      <!-- name id of player vendor -->
      <leaf name="FACTION_POINT_PRICE"
            type="I32" />
      <!-- 0 for standard behaviour -->
      <!-- 1 if the sheet id is the one of an item, and if we got a plan for that item in the slot -->
      <!-- 2 if the slot is for a skill. In this case the sheet ID must be interpreted as an enum for that skill -->
      <!-- These values are defined as an enum in game_share/trade_slot_type.h -->
      <leaf name="SLOT_TYPE"
            type="I2" />
      <!-- see TBotChatSellerType -->
      <leaf name="SELLER_TYPE"
            type="I3" />
    </branch>
  </branch>
  <branch name="BRICK_FAMILY"
          bank="PLR">
    <branch name=""
            count="1024">
      <leaf name="BRICKS"
            type="I64" />
    </branch>
  </branch>
  <branch name="FABER_PLANS"
          bank="PLR">
    <branch name=""
            count="64">
      <leaf name="KNOWN"
            type="I64" />
    </branch>
  </branch>
  <branch name="MISSIONS"
          bank="PLR">
    <branch name=""
            count="15">
      <!-- see game_share/mission_desc.h TMissionType -->
      <leaf name="TYPE"
            type="I2" />
      <leaf name="ICON"
            type="I32"
            cppType="NLMISC::CSheetId" />
      <!-- sheet id of a .mission_icon sheet -->
      <leaf name="TITLE"
            type="I32" />
      <leaf name="DETAIL_TEXT"
            type="I32" />
      <!-- begin date in tick -->
      <leaf name="BEGIN_DATE"
            type="I32" />
      <!-- end date in tick -->
      <leaf name="END_DATE"
            type="I32" />
      <!-- true if the step are "OR" -->
      <leaf name="OR_STEPS"
            type="I1" />
      <branch name="GOALS">
        <branch name=""
                count="20">
          <leaf name="TEXT"
                type="I32" />
          <leaf name="NPC_ALIAS"
                type="I32" />
        </branch>
      </branch>
      <!-- Targets -->
      <branch name="TARGET"
              count="8"
              atom="1">
        <leaf name="TITLE"
              type="I32" />
        <leaf name="X"
              type="I32" />
        <leaf name="Y"
              type="I32" />
      </branch>
      <!-- Indicate if the mission is finished (0-not 1-success 2-failed) -->
      <leaf name="FINISHED"
            type="I2" />
      <!-- Indicate if the mission is abandonnable -->
      <leaf name="ABANDONNABLE"
            type="I1" />
      <!-- Indicate if the mission is paused (player set as 'sleeping' in a queue) -->
      <leaf name="SLEEP"
            type="I1" />
      <!-- Historic -->
      <branch name="HISTO">
        <branch name=""
                count="30">
          <leaf name="TEXT"
                type="I32" />
        </branch>
      </branch>
    </branch>
  </branch>
  <branch name="EXECUTE_PHRASE"
          bank="PLR"
          atom="1">
    <!-- The index of the phrase in the spell book that is being executed right now -->
    <leaf name="PHRASE"
          type="I16" />
    <!-- If not a phrase in the speel book, give the associated brick sheet id -->
    <leaf name="SHEET"
          type="I32"
          cppType="NLMISC::CSheetId" />
    <!-- When the NEXT_COUNTER reach the one on client, reset -->
    <leaf name="NEXT_COUNTER"
          type="I8" />
    <!-- When the CYCLE_COUNTER reach the one on client, reset -->
    <leaf name="CYCLE_COUNTER"
          type="I8" />
    <!-- LINKS -->
    <branch name="LINK">
      <branch name=""
              count="10"
              atom="1">
        <!-- The Phrase Id -->
        <leaf name="PHRASE"
              type="I16" />
        <leaf name="COUNTER"
              type="I4" />
        <!-- The cost each second -->
        <leaf name="ChaScore1_COST"
              type="I16" />
        <leaf name="ChaScore3_COST"
              type="I16" />
        <leaf name="ChaScore2_COST"
              type="I16" />
        <!-- Entity name -->
        <leaf name="TARGET_NAME"
              type="TEXT" />
        <!-- Entity State -->
        <leaf name="TARGET_ChaScore1"
              type="I7" />
        <leaf name="TARGET_ChaScore3"
              type="I7" />
        <leaf name="TARGET_ChaScore2"
              type="I7" />
      </branch>
    </branch>
  </branch>
  <branch name="GUILD"
          bank="GUILD">
    <leaf name="COUNTER"
          type="I8" />
    <leaf name="PROXY"
          type="I1" />
    <!-- Flat to indicate that the guild is 'proxified' from another EGS -->
    <leaf name="NAME"
          type="TEXT" />
    <!-- Name of the guild the local player belongs to -->
    <leaf name="DESCRIPTION"
          type="TEXT" />
    <!-- Description of the guild -->
    <leaf name="ICON"
          type="I64" />
    <!-- Icon of the guild (look at guild_manager) -->
    <leaf name="XP"
          type="I32" />
    <!-- Experience of the guild -->
    <leaf name="CHARGE_POINTS"
          type="I32" />
    <!-- charge points of the guild -->
    <leaf name="VILLAGE"
          type="TEXT" />
    <!-- village text id -->
    <leaf name="PEOPLE"
          type="I8" />
    <!-- people affiliated with the guild-->
    <leaf name="CREATION_DATE"
          type="I32" />
    <!-- creation date of the guild in ticks -->
    <branch name="FAME">
      <leaf name="CULT_ALLEGIANCE"
            type="I3" />
      <!-- Guild cult allegiance (CF TPVPClan enum (pvp_clan.h) -->
      <leaf name="CIV_ALLEGIANCE"
            type="I3" />
      <!-- Guild civilization allegiance (CF TPVPClan enum (pvp_clan.h) -->
      <branch name=""
              count="6">
        <!-- from fame.h & cpp -->
        <leaf name="VALUE"
              type="S8" />
        <!-- current value -->
        <leaf name="THRESHOLD"
              type="S8" />
        <!-- max threshold -->
        <leaf name="TREND"
              type="I8" />
        <!-- Fame trend, (CF see fame_pd.h TFameTrend ) -->
      </branch>
    </branch>
    <branch name="MEMBERS">
      <!-- Guild Members -->
      <branch name=""
              count="256">
        <leaf name="NAME"
              type="TEXT" />
        <!-- player name -->
        <leaf name="GRADE"
              type="I3" />
        <!-- player grade-->
        <leaf name="ONLINE"
              type="I2"
              cppType="TCharConnectionState" />
        <!-- enum TCharConnectionState -->
        <leaf name="ENTER_DATE"
              type="I32" />
        <!-- tick when player entered the guild-->
      </branch>
    </branch>
    <branch name="INVENTORY">
      <leaf name="SESSION"
            type="I16" />
      <leaf name="BULK_MAX"
            type="I32" />
      <leaf name="MONEY"
            type="I64" />
      <branch name=""
              count="1000"
              clientonly="1">
        <!-- Common Item Data -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="QUALITY"
              type="I10" />
        <leaf name="QUANTITY"
              type="I10" />
        <leaf name="CREATE_TIME"
              type="I32" />
        <leaf name="SERIAL"
              type="I32" />
        <leaf name="USER_COLOR"
              type="I3" />
        <leaf name="LOCKED"
              type="I10" />
        <leaf name="WEIGHT"
              type="I16" />
        <!-- weight. see DB_WEIGHT_SCALE-->
        <leaf name="NAMEID"
              type="I32" />
        <!-- 0 or special name of item -->
        <leaf name="INFO_VERSION"
              type="I8" />
        <leaf name="ENCHANT"
              type="I10" />
        <!-- 0=not enchanted, 1=enchanted nbcharge 0, 10=e. nbcharge 9 -->
        <leaf name="RM_CLASS_TYPE"
              type="I3" />
        <leaf name="RM_FABER_STAT_TYPE"
              type="I6" />
        <leaf name="PREREQUISIT_VALID"
              type="I1" />
      </branch>
    </branch>
    <branch name="OUTPOST">
      <!-- true if this guild can cancel an outpost -->
      <leaf name="CANDEL"
            type="I1" />
      <!-- outpost owned/challenged by the guild -->
      <branch name="O"
              count="16">
        <!-- Outpost Ownage -->
        <leaf name="OWNED"
              type="I1" />
        <!-- 1 if the outpost is owned by the guild, 0 if it is challenged -->
        <!-- Outpost Desc/State -->
        <leaf name="SHEET"
              type="I32"
              cppType="NLMISC::CSheetId" />
        <leaf name="LEVEL"
              type="I8" />
        <!-- Outpost Level: 50, 100, 150 .... -->
        <branch name="GUILD">
          <leaf name="NAME"
                type="TEXT" />
          <!-- Name of the guild the outpost belongs to (or name of tribe) -->
          <leaf name="ICON"
                type="I64" />
          <!-- Icon of the guild the outpost belongs to -->
          <leaf name="TRIBE"
                type="I1" />
          <!-- True if the outpost is owned by a Tribe -->
          <leaf name="NAME_ATT"
                type="TEXT" />
          <!-- Name of the guild that attacks the outpost. 0 if none -->
        </branch>
        <leaf name="STATUS"
              type="I4" />
        <!-- Outpost Status: OUTPOSTENUMS::TOutpostState -->
        <leaf name="STATE_END_DATE"
              type="I32" />
        <!-- Server tick of the end of state -->
        <leaf name="DISPLAY_CRASH"
              type="I1" />
        <!-- A crash has happened in the last war. Inform users -->
        <leaf name="WARCOST"
              type="I32" />
        <!-- Dappers needed to declare war to this outpost -->
        <!-- Round State -->
        <leaf name="ROUND_LVL_THRESHOLD"
              type="I8" />
        <!-- The minimal threshold attack must exceed -->
        <leaf name="ROUND_LVL_MAX_ATT"
              type="I8" />
        <!-- The max round level reached by attackers -->
        <leaf name="ROUND_LVL_MAX_DEF"
              type="I8" />
        <!-- The max round level reached by defenders -->
        <leaf name="ROUND_LVL_CUR"
              type="I8" />
        <!-- The current round level -->
        <leaf name="ROUND_ID_CUR"
              type="I8" />
        <!-- The current round number -->
        <leaf name="ROUND_ID_MAX"
              type="I8" />
        <!-- The max round in an attack/defense period -->
        <!-- Time Setup -->
        <leaf name="TIME_RANGE_DEF_WANTED"
              type="I5" />
        <!-- The start hour at wich the defender want to defend (0-24) -->
        <leaf name="TIME_RANGE_DEF"
              type="I32" />
        <!-- The start time at wich the defender WILL defend (in sec from 1970, GMT) -->
        <leaf name="TIME_RANGE_ATT"
              type="I32" />
        <!-- The start time at wich the attacker WILL attack (in sec from 1970, GMT) -->
        <leaf name="TIME_RANGE_LENGTH"
              type="I16" />
        <!-- (In minutes). the length of an attack/defend period (120 for instance) -->
        <!-- Squads -->
        <branch name="SQUAD_SPAWN_ZONE">
          <!-- list of zones where squads can be spawned -->
          <branch name=""
                  count="16">
            <leaf name="X"
                  type="S32" />
            <leaf name="Y"
                  type="S32" />
          </branch>
        </branch>
        <branch name="SQUAD_SHOP">
          <!-- list of squad that we can buy -->
          <branch name=""
                  count="16">
            <leaf name="SHEET"
                  type="I32"
                  cppType="NLMISC::CSheetId" />
          </branch>
        </branch>
        <branch name="SQUADS">
          <!-- Squad -->
          <!-- 24 max squads: The First 12th are the squads that spawn at start 
                                                The second 12th are the one that spawn after
                                        -->
          <branch name="SP"
                  count="24">
            <!-- Spawned -->
            <leaf name="SHEET"
                  type="I32"
                  cppType="NLMISC::CSheetId" />
          </branch>
          <branch name="T"
                  count="24">
            <!-- Training -->
            <leaf name="SHEET"
                  type="I32"
                  cppType="NLMISC::CSheetId" />
            <leaf name="SPAWN"
                  type="I4" />
            <!-- Index in SQUAD_SPAWN_ZONE list -->
          </branch>
        </branch>
        <leaf name="SQUAD_CAPITAL"
              type="I32" />
        <!-- Money that can be spent by the guild -->
        <!-- Buildings -->
        <branch name="BUILDINGS">
          <!-- list of buildings on the outpost -->
          <branch name=""
                  count="4">
            <leaf name="SHEET"
                  type="I32"
                  cppType="NLMISC::CSheetId" />
          </branch>
        </branch>
      </branch>
    </branch>
  </branch>
  <!-- The outpost selected by the user on a NPC -->
  <branch name="OUTPOST_SELECTED"
          bank="OUTPOST"
          atom="1">
    <!-- System: Use atom="1" to be sure data are relevant for the player (SHEET and other data are sync). -->
    <!-- Outpost Desc/State -->
    <leaf name="SHEET"
          type="I32"
          cppType="NLMISC::CSheetId" />
    <leaf name="LEVEL"
          type="I8" />
    <!-- Outpost Level: 50, 100, 150 .... -->
    <branch name="GUILD">
      <leaf name="NAME"
            type="TEXT" />
      <!-- Name of the guild the outpost belongs to (or name of tribe) -->
      <leaf name="ICON"
            type="I64" />
      <!-- Icon of the guild the outpost belongs to -->
      <leaf name="TRIBE"
            type="I1" />
      <!-- True if the outpost is owned by a Tribe -->
      <leaf name="NAME_ATT"
            type="TEXT" />
      <!-- Name of the guild that attacks the outpost. 0 if none -->
    </branch>
    <leaf name="STATUS"
          type="I4" />
    <!-- Outpost Status: OUTPOSTENUMS::TOutpostState -->
    <leaf name="STATE_END_DATE"
          type="I32" />
    <!-- Server tick of the end of state -->
    <leaf name="DISPLAY_CRASH"
          type="I1" />
    <!-- A crash has happened in the last war. Inform users -->
    <leaf name="WARCOST"
          type="I32" />
    <!-- Dappers needed to declare war to this outpost -->
    <!-- Round State -->
    <leaf name="ROUND_LVL_THRESHOLD"
          type="I8" />
    <!-- The minimal threshold attack must exceed -->
    <leaf name="ROUND_LVL_MAX_ATT"
          type="I8" />
    <!-- The max round level reached by attackers -->
    <leaf name="ROUND_LVL_MAX_DEF"
          type="I8" />
    <!-- The max round level reached by defenders -->
    <leaf name="ROUND_LVL_CUR"
          type="I8" />
    <!-- The current round level -->
    <leaf name="ROUND_ID_CUR"
          type="I8" />
    <!-- The current round number -->
    <leaf name="ROUND_ID_MAX"
          type="I8" />
    <!-- The max round in an attack/defense period -->
    <!-- Time Setup -->
    <leaf name="TIME_RANGE_DEF_WANTED"
          type="I5" />
    <!-- The start hour at wich the defender want to defend (0-24) -->
    <leaf name="TIME_RANGE_DEF"
          type="I32" />
    <!-- The start time at wich the defender WILL defend (in sec from 1970, GMT) -->
    <leaf name="TIME_RANGE_ATT"
          type="I32" />
    <!-- The start time at wich the attacker WILL attack (in sec from 1970, GMT) -->
    <leaf name="TIME_RANGE_LENGTH"
          type="I16" />
    <!-- (In minutes). the length of an attack/defend period (120 for instance) -->
  </branch>
  <branch name="CHARACTER_INFO"
          bank="PLR">
    <branch name="CHARACTERISTICS"
            count="8">
      <leaf name="VALUE"
            type="I12" />
    </branch>
    <branch name="SCORES"
            count="4">
      <leaf name="Base"
            type="I24" />
      <leaf name="Max"
            type="I24" />
      <leaf name="BaseRegen"
            type="I24" />
      <leaf name="Regen"
            type="I24" />
    </branch>
    <branch name="MAGIC_RESISTANCE">
      <leaf name="MaxResistanceBonus"
            type="I9" />
      <branch name=""
              count="5">
        <leaf name="VALUE"
              type="I9" />
      </branch>
    </branch>
    <branch name="MAGIC_PROTECTION">
      <leaf name="MaxProtectionClampValue"
            type="I9" />
      <leaf name="MaxAbsorptionFactor"
            type="I9" />
      <branch name=""
              count="7">
        <leaf name="VALUE"
              type="I9" />
      </branch>
    </branch>
    <branch name="DODGE">
      <leaf name="Base"
            type="I9" />
      <leaf name="Current"
            type="I9" />
    </branch>
    <branch name="PARRY">
      <leaf name="Base"
            type="I9" />
      <leaf name="Current"
            type="I9" />
    </branch>
    <branch name="SKILLS">
      <branch name=""
              count="225">
        <leaf name="SKILL"
              type="I12" />
        <leaf name="BaseSKILL"
              type="I12" />
        <leaf name="PROGRESS_BAR"
              type="I8" />
      </branch>
    </branch>
    <branch name="XP_CATALYSER">
      <leaf name="Level"
            type="I12" />
      <leaf name="Count"
            type="I12" />
    </branch>
    <branch name="RING_XP_CATALYSER">
      <leaf name="Level"
            type="I12" />
      <leaf name="Count"
            type="I12" />
    </branch>
    <branch name="PVP_FACTION_TAG">
      <leaf name="TAG_PVP"
            type="I1" />
      <leaf name="ACTIVATION_TIME"
            type="I32" />
      <leaf name="FLAG_PVP_TIME_LEFT"
            type="I32" />
      <leaf name="COUNTER"
            type="I8" />
    </branch>
    <branch name="PVP_OUTPOST">
      <leaf name="FLAG_PVP"
            type="I1" />
      <!-- 1 if the player is in a PVP outpost -->
      <leaf name="RIGHT_TO_BANISH"
            type="I1" />
      <!-- 1 if the player has right to banish other players -->
      <leaf name="ROUND_LVL_CUR"
            type="I32" />
      <!-- Current Round Level -->
      <leaf name="ROUND_END_DATE"
            type="I32" />
      <!-- Server tick of the end of the round. 0 if there is no active Round -->
      <leaf name="FLAG_PVP_TIME_END"
            type="I32" />
      <!-- Server tick of the end of the Outpost PVP activation. 0 if there is no counter (player in zone) -->
    </branch>
    <branch name="SUCCESS_MODIFIER">
      <leaf name="DODGE"
            type="S16" />
      <leaf name="PARRY"
            type="S16" />
      <leaf name="CRAFT"
            type="S16" />
      <leaf name="MELEE"
            type="S16" />
      <leaf name="RANGE"
            type="S16" />
      <leaf name="MAGIC"
            type="S16" />
      <branch name="ECO">
        <branch name=""
                count="7">
          <leaf name="FORAGE"
                type="S16" />
        </branch>
      </branch>
    </branch>
  </branch>
  <branch name="PACK_ANIMAL"
          bank="PLR">
    <!-- beasts -->
    <!-- MAX_INVENTORY_ANIMAL -->
    <branch name="BEAST"
            count="4"
            atomic="1">
      <!-- Atomic, for correct Bar Management on client -->
      <leaf name="UID"
            type="I20" />
      <!-- Entity Unique Identifier -->
      <leaf name="TYPE"
            type="I4" />
      <!-- see ANIMAL_TYPE -->
      <leaf name="STATUS"
            type="I4" />
      <!-- see ANIMAL_STATUS -->
      <leaf name="HP"
            type="I7" />
      <leaf name="BULK_MAX"
            type="I32" />
      <leaf name="POS"
            type="I64" />
      <!-- X uint32 << 32 | Y uint32 -->
      <leaf name="HUNGER"
            type="I5" />
      <leaf name="DESPAWN"
            type="I7" />
      <leaf name="NAME"
            type="I32"
            is_true="1" />
    </branch>
  </branch>
  <branch name="DEBUG_INFO"
          bank="PLR">
    <leaf name="Ping"
          type="I32" />
  </branch>
  <!-- MP Exotic Evaluation -->
  <branch name="MP_EVAL"
          bank="PLR">
    <leaf name="COST"
          type="I32" />
    <!-- Normal Success -->
    <branch name="RESULT">
      <leaf name="VALID"
            type="I1" />
      <leaf name="SMALL_SEED"
            type="I32" />
      <leaf name="MEDIUM_SEED"
            type="I32" />
      <leaf name="BIG_SEED"
            type="I32" />
      <leaf name="VERY_BIG_SEED"
            type="I32" />
      <leaf name="EXPIRY_DATE"
            type="I32" />
    </branch>
    <!-- Critical Success -->
    <branch name="RESULT_CRITICAL">
      <leaf name="VALID"
            type="I1" />
      <leaf name="SMALL_SEED"
            type="I32" />
      <leaf name="MEDIUM_SEED"
            type="I32" />
      <leaf name="BIG_SEED"
            type="I32" />
      <leaf name="VERY_BIG_SEED"
            type="I32" />
      <leaf name="EXPIRY_DATE"
            type="I32" />
    </branch>
  </branch>
  <!-- Compass coordinates -->
  <branch name="COMPASS"
          bank="PLR">
    <leaf name="HOME_POINT"
          type="I64" />
    <!-- X uint32 << 32 | Y uint32 -->
    <leaf name="BIND_POINT"
          type="I64" />
    <!-- X uint32 << 32 | Y uint32 -->
    <leaf name="TARGET"
          type="I64" />
    <!-- X uint32 << 32 | Y uint32 -->
  </branch>
  <!-- Fames values -->
  <branch name="FAME"
          bank="PLR">
    <leaf name="CULT_ALLEGIANCE"
          type="I3" />
    <!-- Character cult allegiance (CF TPVPClan enum (pvp_clan.h) -->
    <leaf name="CIV_ALLEGIANCE"
          type="I3" />
    <!-- Character civilization allegiance (CF TPVPClan enum (pvp_clan.h) -->
    <leaf name="THRESHOLD_TRADE"
          type="S8" />
    <!-- value where trade doesn't work anymore -->
    <leaf name="THRESHOLD_KOS"
          type="S8" />
    <!-- value where the guards kill you on sight -->
    <branch name="PLAYER"
            count="6">
      <!-- from fame.h & cpp -->
      <leaf name="VALUE"
            type="S8" />
      <!-- current value -->
      <leaf name="THRESHOLD"
            type="S8" />
      <!-- max threshold -->
      <leaf name="TREND"
            type="I8" />
      <!-- Fame trend, (CF see fame_pd.h TFameTrend ) -->
    </branch>
    <branch name="TRIBE"
            count="53">
      <leaf name="VALUE"
            type="S8" />
      <!-- current value -->
      <leaf name="THRESHOLD"
            type="S8" />
      <!-- max threshold -->
      <leaf name="TREND"
            type="I8" />
      <!-- Fame trend, (CF see fame_pd.h TFameTrend ) -->
    </branch>
  </branch>
  <!-- Static general data -->
  <branch name="STATIC_DATA"
          bank="PLR">
    <leaf name="BAG_BULK_MAX"
          type="I32" />
  </branch>
  <!-- DynChat channels -->
  <branch name="DYN_CHAT"
          bank="PLR">
    <branch name="CHANNEL"
            count="8"
            atom="1">
      <leaf name="NAME"
            type="I32" />
      <!-- channel not available if anme is 0 -->
      <leaf name="ID"
            type="I64" />
      <!-- unique ID of channel (eid) -->
      <leaf name="WRITE_RIGHT"
            type="I1" />
    </branch>
  </branch>
  <!-- PvP Effects -->
  <branch name="PVP_EFFECTS"
          bank="PLR">
    <!-- Faction points for PvP -->
    <branch name="PVP_FACTION_POINTS">
      <leaf name="CIV"
            type="I8" />
      <leaf name="CIV_POINTS"
            type="I32" />
      <leaf name="CULT"
            type="I8" />
      <leaf name="CULT_POINTS"
            type="I32" />
    </branch>
    <!-- Bonus and malus for regions -->
    <branch name=""
            count="59">
      <leaf name="ID"
            type="I32" />
      <leaf name="ISBONUS"
            type="I1" />
      <leaf name="PARAM"
            type="I32" />
    </branch>
  </branch>
  <!-- Weather -->
  <branch name="WEATHER"
          bank="PLR">
    <leaf name="VALUE"
          type="I16" />
  </branch>
</database_description>