/usr/local/CPAN/Games-EternalLands/Games/EternalLands/Constants.pm
package Games::EternalLands::Constants;
require Exporter;
our @ISA = qw(Exporter);
our @EXPORT_OK = qw(
%ActorCommandsByID %ClientCommandsByID %ActorTypesByID %ActiveCommands
%WearableItemsByID %TextChannelsByID %SkinColorsByID %HelmetsByID %HeadsByID %CapesByID
%ClientCommandsByID %NoArmorFlagsByID %ServerCommandsByID %ELStatsByID %FramesByID
%ActorTypesByID %WeaponsByID %PantsColorsByID %WindowsByID %ActorCommandsByID %BootsColorsByID
%SoundByID %ColorsByID %ShirtColorsByID %HairColorsByID %ShieldsByID
$NO_BODY_ARMOR $NO_PANTS_ARMOR $NO_BOOTS_ARMOR $RULE_WIN $RULE_INTERFACE $NEW_CHAR_INTERFACE
$KIND_OF_WEAPON $KIND_OF_SHIELD $KIND_OF_CAPE $KIND_OF_HELMET $KIND_OF_LEG_ARMOR $KIND_OF_BODY_ARMOR
$KIND_OF_BOOT_ARMOR
$DEBUG_TYPES $DEBUG_TEXT $DEBUG_PATH $DEBUG_BAGS $DEBUG_PACKETS
$BOOTS_BLACK $BOOTS_BROWN $BOOTS_DARKBROWN $BOOTS_DULLBROWN $BOOTS_LIGHTBROWN $BOOTS_ORANGE
$BOOTS_LEATHER $BOOTS_FUR $BOOTS_IRON_GREAVE $BOOTS_STEEL_GREAVE $BOOTS_TITANIUM_GREAVE
$BOOTS_HYDROGENIUM_GREAVE
$PANTS_BLACK $PANTS_BLUE $PANTS_BROWN $PANTS_DARKBROWN $PANTS_GREY $PANTS_GREEN $PANTS_LIGHTBROWN
$PANTS_RED $PANTS_WHITE $PANTS_LEATHER $PANTS_IRON_CUISSES $PANTS_FUR $PANTS_STEEL_CUISSES
$PANTS_TITANIUM_CUISSES $PANTS_HYDROGENIUM_CUISSES
$HEAD_1 $HEAD_2 $HEAD_3 $HEAD_4 $HEAD_5
$CHAT_LOCAL $CHAT_PERSONAL $CHAT_GM $CHAT_SERVER $CHAT_MOD $CHAT_CHANNEL1 $CHAT_CHANNEL2
$CHAT_CHANNEL3 $CHAT_MODPM
$HELMET_IRON $HELMET_FUR $HELMET_LEATHER $HELMET_RACOON $HELMET_SKUNK $HELMET_CROWN_OF_MANA
$HELMET_CROWN_OF_LIFE $HELMET_STEEL $HELMET_TITANIUM $HELMET_HYDROGENIUM $HELMET_NONE
$HAIR_BLACK $HAIR_BLOND $HAIR_BROWN $HAIR_GRAY $HAIR_RED $HAIR_WHITE $HAIR_BLUE
$HAIR_GREEN $HAIR_PURPLE
$SKIN_BROWN $SKIN_NORMAL $SKIN_PALE $SKIN_TAN $SKIN_DARK_BLUE
$snd_rain $snd_tele_in $snd_tele_out $snd_teleprtr $snd_thndr_1 $snd_thndr_2 $snd_thndr_3
$snd_thndr_4 $snd_thndr_5 $snd_fire
$c_lbound $c_red1 $c_orange1 $c_yellow1 $c_green1 $c_blue1 $c_purple1 $c_grey1 $c_red2
$c_orange2 $c_yellow2 $c_green2 $c_blue2 $c_purple2 $c_grey2 $c_red3 $c_orange3 $c_yellow3
$c_green3 $c_blue3 $c_purple3 $c_grey3 $c_red4 $c_orange4 $c_yellow4 $c_green4 $c_blue4
$c_purple4 $c_ubound $c_grey4
$SHIELD_WOOD $SHIELD_WOOD_ENHANCED $SHIELD_IRON $SHIELD_STEEL
$SHIELD_TITANIUM $SHIELD_HYDROGENIUM $SHIELD_NONE
$frame_walk $frame_run $frame_die1 $frame_die2 $frame_pain1 $frame_pick $frame_drop
$frame_idle $frame_harvest $frame_cast $frame_ranged $frame_pain2 $frame_sit $frame_stand
$frame_sit_idle $frame_combat_idle $frame_in_combat $frame_out_combat $frame_attack_up_1
$frame_attack_up_2 $frame_attack_up_3 $frame_attack_up_4 $frame_attack_down_1 $frame_attack_down_2
$human_female $human_male $elf_female $elf_male $dwarf_female $dwarf_male
$wraith $cyclops $beaver $rat $goblin_male_2 $goblin_female_1 $town_folk4
$town_folk5 $shop_girl3 $deer $bear $wolf $white_rabbit $brown_rabbit $boar
$bear2 $snake1 $snake2 $snake3 $fox $puma $ogre_male_1 $goblin_male_1 $orc_male_1
$orc_female_1 $skeleton $gargoyle1 $gargoyle2 $gargoyle3 $troll $chimeran_wolf_mountain
$gnome_female $gnome_male $orchan_female $orchan_male $draegoni_female $draegoni_male
$skunk_1 $racoon_1 $unicorn_1 $chimeran_wolf_desert $chimeran_wolf_forest $bear_3
$bear_4 $panther $feran $leopard_1 $leopard_2 $chimeran_wolf_arctic $tiger_1
$tiger_2 $armed_female_orc $armed_male_orc $armed_skeleton $phantom_warrior $imp
$brownie $leprechaun $spider_s_1 $spider_s_2 $spider_s_3 $spider_l_1 $spider_l_2
$spider_l_3 $wood_sprite $spider_l_4 $spider_s_4 $giant_1 $hobgoblin $yeti $snake4
$CAPE_BLACK $CAPE_BLUE $CAPE_BLUEGRAY $CAPE_BROWN $CAPE_BROWNGRAY $CAPE_GRAY
$CAPE_GREEN $CAPE_GREENGRAY $CAPE_PURPLE $CAPE_WHITE $CAPE_FUR $CAPE_GOLD
$CAPE_RED $CAPE_ORANGE $CAPE_MOD $CAPE_DERIN $CAPE_RAVENOD $CAPE_PLACID
$CAPE_LORD_VERMOR $CAPE_AISLINN $CAPE_SOLDUS $CAPE_LOTHARION $CAPE_LEARNER
$CAPE_NONE
$SHIRT_BLACK $SHIRT_BLUE $SHIRT_BROWN $SHIRT_GREY $SHIRT_GREEN $SHIRT_LIGHTBROWN
$SHIRT_ORANGE $SHIRT_PINK $SHIRT_PURPLE $SHIRT_RED $SHIRT_WHITE $SHIRT_YELLOW
$SHIRT_LEATHER_ARMOR $SHIRT_CHAIN_ARMOR $SHIRT_STEEL_CHAIN_ARMOR $SHIRT_TITANIUM_CHAIN_ARMOR
$SHIRT_IRON_PLATE_ARMOR $SHIRT_ARMOR_6 $SHIRT_FUR $SHIRT_STEEL_PLATE_ARMOR
$SHIRT_TITANIUM_PLATE_ARMOR
$nothing $kill_me $die1 $die2 $pain1 $pick $drop $idle $harvest $cast $ranged
$meele $sit_down $stand_up $turn_left $turn_right $pain2 $enter_combat $leave_combat
$move_n $move_ne $move_e $move_se $move_s $move_sw $move_w $move_nw $run_n $run_ne
$run_e $run_se $run_s $run_sw $run_w $run_nw $turn_n $turn_ne $turn_e $turn_se $turn_s
$turn_sw $turn_w $turn_nw $attack_up_1 $attack_up_2 $attack_up_3 $attack_up_4
$attack_down_1 $attack_down_2
$RAW_TEXT $ADD_NEW_ACTOR $ADD_ACTOR_COMMAND $YOU_ARE $SYNC_CLOCK $NEW_MINUTE
$REMOVE_ACTOR $CHANGE_MAP $COMBAT_MODE $KILL_ALL_ACTORS $GET_TELEPORTERS_LIST
$PONG $TELEPORT_IN $TELEPORT_OUT $PLAY_SOUND $START_RAIN $STOP_RAIN $THUNDER
$HERE_YOUR_STATS $HERE_YOUR_INVENTORY $INVENTORY_ITEM_TEXT $GET_NEW_INVENTORY_ITEM
$REMOVE_ITEM_FROM_INVENTORY $HERE_YOUR_GROUND_ITEMS $GET_NEW_GROUND_ITEM
$REMOVE_ITEM_FROM_GROUND $CLOSE_BAG $GET_NEW_BAG $GET_BAGS_LIST $DESTROY_BAG $NPC_TEXT
$NPC_OPTIONS_LIST $CLOSE_NPC_MENU $SEND_NPC_INFO $GET_TRADE_INFO $GET_TRADE_OBJECT
$GET_TRADE_ACCEPT $GET_TRADE_REJECT $GET_TRADE_EXIT $REMOVE_TRADE_OBJECT $GET_YOUR_TRADEOBJECTS
$GET_TRADE_PARTNER_NAME $GET_YOUR_SIGILS $SPELL_ITEM_TEXT $GET_ACTIVE_SPELL
$GET_ACTIVE_SPELL_LIST $REMOVE_ACTIVE_SPELL $GET_ACTOR_DAMAGE $GET_ACTOR_HEAL $SEND_PARTIAL_STAT
$SPAWN_BAG_PARTICLES $ADD_NEW_ENHANCED_ACTOR $ACTOR_WEAR_ITEM $ACTOR_UNWEAR_ITEM $PLAY_MUSIC
$GET_KNOWLEDGE_LIST $GET_NEW_KNOWLEDGE $GET_KNOWLEDGE_TEXT $BUDDY_EVENT $PING_REQUEST
$FIRE_PARTICLES $REMOVE_FIRE_AT $DISPLAY_CLIENT_WINDOW $OPEN_BOOK $READ_BOOK $CLOSE_BOOK
$STORAGE_LIST $STORAGE_ITEMS $STORAGE_TEXT $SPELL_CAST $GET_ACTIVE_CHANNELS $MAP_FLAGS
$GET_ACTOR_HEALTH $GET_3D_OBJ_LIST $GET_3D_OBJ $REMOVE_3D_OBJ $GET_ITEMS_COOLDOWN $SEND_BUFFS
$MAP_SET_OBJECTS $MAP_STATE_OBJECTS $UPGRADE_NEW_VERSION $UPGRADE_TOO_OLD $REDEFINE_YOUR_COLORS
$YOU_DONT_EXIST $LOG_IN_OK $LOG_IN_NOT_OK $CREATE_CHAR_OK $CREATE_CHAR_NOT_OK $BYE
$MOVE_TO $SEND_PM $GET_PLAYER_INFO $RUN_TO $SIT_DOWN $SEND_ME_MY_ACTORS $SEND_OPENING_SCREEN
$SEND_VERSION $TURN_LEFT $TURN_RIGHT $PING $HEART_BEAT $LOCATE_ME $USE_MAP_OBJECT $SEND_MY_STATS
$SEND_MY_INVENTORY $LOOK_AT_INVENTORY_ITEM $MOVE_INVENTORY_ITEM $HARVEST $DROP_ITEM
$PICK_UP_ITEM $LOOK_AT_GROUND_ITEM $INSPECT_BAG $S_CLOSE_BAG $LOOK_AT_MAP_OBJECT $TOUCH_PLAYER
$RESPOND_TO_NPC $MANUFACTURE_THIS $USE_INVENTORY_ITEM $TRADE_WITH $ACCEPT_TRADE $REJECT_TRADE
$EXIT_TRADE $PUT_OBJECT_ON_TRADE $REMOVE_OBJECT_FROM_TRADE $LOOK_AT_TRADE_ITEM $CAST_SPELL
$ATTACK_SOMEONE $GET_KNOWLEDGE_INFO $ITEM_ON_ITEM $SEND_BOOK $GET_STORAGE_CATEGORY
$DEPOSITE_ITEM $WITHDRAW_ITEM $LOOK_AT_STORAGE_ITEM $SPELL_NAME $PING_RESPONSE
$SET_ACTIVE_CHANNEL $LOG_IN $CREATE_CHAR $GET_DATE $GET_TIME $SERVER_STATS $ORIGINAL_IP
$WEAPON_NONE $SWORD_1 $SWORD_2 $SWORD_3 $SWORD_4 $SWORD_5 $SWORD_6 $SWORD_7 $STAFF_1 $STAFF_2
$STAFF_3 $STAFF_4 $HAMMER_1 $HAMMER_2 $PICKAX $SWORD_1_FIRE $SWORD_2_FIRE $SWORD_2_COLD
$SWORD_3_FIRE $SWORD_3_COLD $SWORD_3_MAGIC $SWORD_4_FIRE $SWORD_4_COLD $SWORD_4_MAGIC
$SWORD_4_THERMAL $SWORD_5_FIRE $SWORD_5_COLD $SWORD_5_MAGIC $SWORD_5_THERMAL $SWORD_6_FIRE
$SWORD_6_COLD $SWORD_6_MAGIC $SWORD_6_THERMAL $SWORD_7_FIRE $SWORD_7_COLD $SWORD_7_MAGIC
$SWORD_7_THERMAL $PICKAX_MAGIC $BATTLEAXE_IRON $BATTLEAXE_STEEL $BATTLEAXE_TITANIUM
$BATTLEAXE_IRON_FIRE $BATTLEAXE_STEEL_COLD $BATTLEAXE_STEEL_FIRE $BATTLEAXE_TITANIUM_COLD
$BATTLEAXE_TITANIUM_FIRE $BATTLEAXE_TITANIUM_MAGIC $GLOVE_FUR $GLOVE_LEATHER $BONE_1
$STICK_1 $SWORD_EMERALD_CLAYMORE $SWORD_CUTLASS $SWORD_SUNBREAKER $SWORD_ORC_SLAYER
$SWORD_EAGLE_WING $SWORD_RAPIER $SWORD_JAGGED_SABER
$PHY_CUR $PHY_BASE $COO_CUR $COO_BASE $REAS_CUR $REAS_BASE $WILL_CUR $WILL_BASE $INST_CUR
$INST_BASE $VIT_CUR $VIT_BASE $HUMAN_CUR $HUMAN_BASE $ANIMAL_CUR $ANIMAL_BASE $VEGETAL_CUR
$VEGETAL_BASE $INORG_CUR $INORG_BASE $ARTIF_CUR $ARTIF_BASE $MAGIC_CUR $MAGIC_BASE $MAN_S_CUR
$MAN_S_BASE $HARV_S_CUR $HARV_S_BASE $ALCH_S_CUR $ALCH_S_BASE $OVRL_S_CUR $OVRL_S_BASE $DEF_S_CUR
$DEF_S_BASE $ATT_S_CUR $ATT_S_BASE $MAG_S_CUR $MAG_S_BASE $POT_S_CUR $POT_S_BASE $CARRY_WGHT_CUR
$CARRY_WGHT_BASE $MAT_POINT_CUR $MAT_POINT_BASE $ETH_POINT_CUR $ETH_POINT_BASE $FOOD_LEV $RESEARCHING
$MAG_RES $MAN_EXP $MAN_EXP_NEXT $HARV_EXP $HARV_EXP_NEXT $ALCH_EXP $ALCH_EXP_NEXT $OVRL_EXP
$OVRL_EXP_NEXT $DEF_EXP $DEF_EXP_NEXT $ATT_EXP $ATT_EXP_NEXT $MAG_EXP $MAG_EXP_NEXT $POT_EXP
$POT_EXP_NEXT $RESEARCH_COMPLETED $RESEARCH_TOTAL $SUM_EXP $SUM_EXP_NEXT $SUM_S_CUR $SUM_S_BASE
$CRA_EXP $CRA_EXP_NEXT $CRA_S_CUR $CRA_S_BASE
);
our %EXPORT_TAGS = (
TypeContainers => [qw(
%ActorCommandsByID %ClientCommandsByID %ActorTypesByID %ActiveCommands
%WearableItemsByID %TextChannelsByID %SkinColorsByID %HelmetsByID %HeadsByID %CapesByID
%ClientCommandsByID %NoArmorFlagsByID %ServerCommandsByID %ELStatsByID %FramesByID
%ActorTypesByID %WeaponsByID %PantsColorsByID %WindowsByID %ActorCommandsByID %BootsColorsByID
%SoundByID %ColorsByID %ShirtColorsByID %HairColorsByID %ShieldsByID
)],
Misc => [qw(
$NO_BODY_ARMOR $NO_PANTS_ARMOR $NO_BOOTS_ARMOR $RULE_WIN $RULE_INTERFACE $NEW_CHAR_INTERFACE
)],
Kinds => [qw(
$KIND_OF_WEAPON $KIND_OF_SHIELD $KIND_OF_CAPE $KIND_OF_HELMET $KIND_OF_LEG_ARMOR $KIND_OF_BODY_ARMOR
$KIND_OF_BOOT_ARMOR
)],
Debug => [qw(
$DEBUG_TYPES $DEBUG_TEXT $DEBUG_PATH $DEBUG_BAGS $DEBUG_PACKETS
)],
Boots => [qw(
$BOOTS_BLACK $BOOTS_BROWN $BOOTS_DARKBROWN $BOOTS_DULLBROWN $BOOTS_LIGHTBROWN $BOOTS_ORANGE
$BOOTS_LEATHER $BOOTS_FUR $BOOTS_IRON_GREAVE $BOOTS_STEEL_GREAVE $BOOTS_TITANIUM_GREAVE
$BOOTS_HYDROGENIUM_GREAVE
)],
Pants => [qw(
$PANTS_BLACK $PANTS_BLUE $PANTS_BROWN $PANTS_DARKBROWN $PANTS_GREY $PANTS_GREEN $PANTS_LIGHTBROWN
$PANTS_RED $PANTS_WHITE $PANTS_LEATHER $PANTS_IRON_CUISSES $PANTS_FUR $PANTS_STEEL_CUISSES
$PANTS_TITANIUM_CUISSES $PANTS_HYDROGENIUM_CUISSES
)],
Heads => [qw(
$HEAD_1 $HEAD_2 $HEAD_3 $HEAD_4 $HEAD_5
)],
Chat => [qw(
$CHAT_LOCAL $CHAT_PERSONAL $CHAT_GM $CHAT_SERVER $CHAT_MOD $CHAT_CHANNEL1 $CHAT_CHANNEL2
$CHAT_CHANNEL3 $CHAT_MODPM
)],
Helmets => [qw(
$HELMET_IRON $HELMET_FUR $HELMET_LEATHER $HELMET_RACOON $HELMET_SKUNK $HELMET_CROWN_OF_MANA
$HELMET_CROWN_OF_LIFE $HELMET_STEEL $HELMET_TITANIUM $HELMET_HYDROGENIUM $HELMET_NONE
)],
Hair => [qw(
$HAIR_BLACK $HAIR_BLOND $HAIR_BROWN $HAIR_GRAY $HAIR_RED $HAIR_WHITE $HAIR_BLUE
$HAIR_GREEN $HAIR_PURPLE
)],
Skin => [qw(
$SKIN_BROWN $SKIN_NORMAL $SKIN_PALE $SKIN_TAN $SKIN_DARK_BLUE
)],
Sounds => [qw(
$snd_rain $snd_tele_in $snd_tele_out $snd_teleprtr $snd_thndr_1 $snd_thndr_2 $snd_thndr_3
$snd_thndr_4 $snd_thndr_5 $snd_fire
)],
Colors => [qw(
$c_lbound $c_red1 $c_orange1 $c_yellow1 $c_green1 $c_blue1 $c_purple1 $c_grey1 $c_red2
$c_orange2 $c_yellow2 $c_green2 $c_blue2 $c_purple2 $c_grey2 $c_red3 $c_orange3 $c_yellow3
$c_green3 $c_blue3 $c_purple3 $c_grey3 $c_red4 $c_orange4 $c_yellow4 $c_green4 $c_blue4
$c_purple4 $c_ubound $c_grey4
)],
Shields => [qw(
$SHIELD_WOOD $SHIELD_WOOD_ENHANCED $SHIELD_IRON $SHIELD_STEEL
$SHIELD_TITANIUM $SHIELD_HYDROGENIUM $SHIELD_NONE
)],
Frames => [qw(
$frame_walk $frame_run $frame_die1 $frame_die2 $frame_pain1 $frame_pick $frame_drop
$frame_idle $frame_harvest $frame_cast $frame_ranged $frame_pain2 $frame_sit $frame_stand
$frame_sit_idle $frame_combat_idle $frame_in_combat $frame_out_combat $frame_attack_up_1
$frame_attack_up_2 $frame_attack_up_3 $frame_attack_up_4 $frame_attack_down_1 $frame_attack_down_2
)],
ActorTypes => [qw(
$human_female $human_male $elf_female $elf_male $dwarf_female $dwarf_male
$wraith $cyclops $beaver $rat $goblin_male_2 $goblin_female_1 $town_folk4
$town_folk5 $shop_girl3 $deer $bear $wolf $white_rabbit $brown_rabbit $boar
$bear2 $snake1 $snake2 $snake3 $fox $puma $ogre_male_1 $goblin_male_1 $orc_male_1
$orc_female_1 $skeleton $gargoyle1 $gargoyle2 $gargoyle3 $troll $chimeran_wolf_mountain
$gnome_female $gnome_male $orchan_female $orchan_male $draegoni_female $draegoni_male
$skunk_1 $racoon_1 $unicorn_1 $chimeran_wolf_desert $chimeran_wolf_forest $bear_3
$bear_4 $panther $feran $leopard_1 $leopard_2 $chimeran_wolf_arctic $tiger_1
$tiger_2 $armed_female_orc $armed_male_orc $armed_skeleton $phantom_warrior $imp
$brownie $leprechaun $spider_s_1 $spider_s_2 $spider_s_3 $spider_l_1 $spider_l_2
$spider_l_3 $wood_sprite $spider_l_4 $spider_s_4 $giant_1 $hobgoblin $yeti $snake4
)],
CapeTypes => [qw(
$CAPE_BLACK $CAPE_BLUE $CAPE_BLUEGRAY $CAPE_BROWN $CAPE_BROWNGRAY $CAPE_GRAY
$CAPE_GREEN $CAPE_GREENGRAY $CAPE_PURPLE $CAPE_WHITE $CAPE_FUR $CAPE_GOLD
$CAPE_RED $CAPE_ORANGE $CAPE_MOD $CAPE_DERIN $CAPE_RAVENOD $CAPE_PLACID
$CAPE_LORD_VERMOR $CAPE_AISLINN $CAPE_SOLDUS $CAPE_LOTHARION $CAPE_LEARNER
$CAPE_NONE
)],
ShirtTypes => [qw(
$SHIRT_BLACK $SHIRT_BLUE $SHIRT_BROWN $SHIRT_GREY $SHIRT_GREEN $SHIRT_LIGHTBROWN
$SHIRT_ORANGE $SHIRT_PINK $SHIRT_PURPLE $SHIRT_RED $SHIRT_WHITE $SHIRT_YELLOW
$SHIRT_LEATHER_ARMOR $SHIRT_CHAIN_ARMOR $SHIRT_STEEL_CHAIN_ARMOR $SHIRT_TITANIUM_CHAIN_ARMOR
$SHIRT_IRON_PLATE_ARMOR $SHIRT_ARMOR_6 $SHIRT_FUR $SHIRT_STEEL_PLATE_ARMOR
$SHIRT_TITANIUM_PLATE_ARMOR
)],
ActorCommands => [qw(
$nothing $kill_me $die1 $die2 $pain1 $pick $drop $idle $harvest $cast $ranged
$meele $sit_down $stand_up $turn_left $turn_right $pain2 $enter_combat $leave_combat
$move_n $move_ne $move_e $move_se $move_s $move_sw $move_w $move_nw $run_n $run_ne
$run_e $run_se $run_s $run_sw $run_w $run_nw $turn_n $turn_ne $turn_e $turn_se $turn_s
$turn_sw $turn_w $turn_nw $attack_up_1 $attack_up_2 $attack_up_3 $attack_up_4
$attack_down_1 $attack_down_2
)],
ClientCommands => [qw(
$RAW_TEXT $ADD_NEW_ACTOR $ADD_ACTOR_COMMAND $YOU_ARE $SYNC_CLOCK $NEW_MINUTE
$REMOVE_ACTOR $CHANGE_MAP $COMBAT_MODE $KILL_ALL_ACTORS $GET_TELEPORTERS_LIST
$PONG $TELEPORT_IN $TELEPORT_OUT $PLAY_SOUND $START_RAIN $STOP_RAIN $THUNDER
$HERE_YOUR_STATS $HERE_YOUR_INVENTORY $INVENTORY_ITEM_TEXT $GET_NEW_INVENTORY_ITEM
$REMOVE_ITEM_FROM_INVENTORY $HERE_YOUR_GROUND_ITEMS $GET_NEW_GROUND_ITEM
$REMOVE_ITEM_FROM_GROUND $CLOSE_BAG $GET_NEW_BAG $GET_BAGS_LIST $DESTROY_BAG $NPC_TEXT
$NPC_OPTIONS_LIST $CLOSE_NPC_MENU $SEND_NPC_INFO $GET_TRADE_INFO $GET_TRADE_OBJECT
$GET_TRADE_ACCEPT $GET_TRADE_REJECT $GET_TRADE_EXIT $REMOVE_TRADE_OBJECT $GET_YOUR_TRADEOBJECTS
$GET_TRADE_PARTNER_NAME $GET_YOUR_SIGILS $SPELL_ITEM_TEXT $GET_ACTIVE_SPELL
$GET_ACTIVE_SPELL_LIST $REMOVE_ACTIVE_SPELL $GET_ACTOR_DAMAGE $GET_ACTOR_HEAL $SEND_PARTIAL_STAT
$SPAWN_BAG_PARTICLES $ADD_NEW_ENHANCED_ACTOR $ACTOR_WEAR_ITEM $ACTOR_UNWEAR_ITEM $PLAY_MUSIC
$GET_KNOWLEDGE_LIST $GET_NEW_KNOWLEDGE $GET_KNOWLEDGE_TEXT $BUDDY_EVENT $PING_REQUEST
$FIRE_PARTICLES $REMOVE_FIRE_AT $DISPLAY_CLIENT_WINDOW $OPEN_BOOK $READ_BOOK $CLOSE_BOOK
$STORAGE_LIST $STORAGE_ITEMS $STORAGE_TEXT $SPELL_CAST $GET_ACTIVE_CHANNELS $MAP_FLAGS
$GET_ACTOR_HEALTH $GET_3D_OBJ_LIST $GET_3D_OBJ $REMOVE_3D_OBJ $GET_ITEMS_COOLDOWN $SEND_BUFFS
$MAP_SET_OBJECTS $MAP_STATE_OBJECTS $UPGRADE_NEW_VERSION $UPGRADE_TOO_OLD $REDEFINE_YOUR_COLORS
$YOU_DONT_EXIST $LOG_IN_OK $LOG_IN_NOT_OK $CREATE_CHAR_OK $CREATE_CHAR_NOT_OK $BYE
)],
ServerCommands => [qw(
$MOVE_TO $SEND_PM $GET_PLAYER_INFO $RUN_TO $SIT_DOWN $SEND_ME_MY_ACTORS $SEND_OPENING_SCREEN
$SEND_VERSION $TURN_LEFT $TURN_RIGHT $PING $HEART_BEAT $LOCATE_ME $USE_MAP_OBJECT $SEND_MY_STATS
$SEND_MY_INVENTORY $LOOK_AT_INVENTORY_ITEM $MOVE_INVENTORY_ITEM $HARVEST $DROP_ITEM
$PICK_UP_ITEM $LOOK_AT_GROUND_ITEM $INSPECT_BAG $S_CLOSE_BAG $LOOK_AT_MAP_OBJECT $TOUCH_PLAYER
$RESPOND_TO_NPC $MANUFACTURE_THIS $USE_INVENTORY_ITEM $TRADE_WITH $ACCEPT_TRADE $REJECT_TRADE
$EXIT_TRADE $PUT_OBJECT_ON_TRADE $REMOVE_OBJECT_FROM_TRADE $LOOK_AT_TRADE_ITEM $CAST_SPELL
$ATTACK_SOMEONE $GET_KNOWLEDGE_INFO $ITEM_ON_ITEM $SEND_BOOK $GET_STORAGE_CATEGORY
$DEPOSITE_ITEM $WITHDRAW_ITEM $LOOK_AT_STORAGE_ITEM $SPELL_NAME $PING_RESPONSE
$SET_ACTIVE_CHANNEL $LOG_IN $CREATE_CHAR $GET_DATE $GET_TIME $SERVER_STATS $ORIGINAL_IP
)],
Weapons => [qw(
$WEAPON_NONE $SWORD_1 $SWORD_2 $SWORD_3 $SWORD_4 $SWORD_5 $SWORD_6 $SWORD_7 $STAFF_1 $STAFF_2
$STAFF_3 $STAFF_4 $HAMMER_1 $HAMMER_2 $PICKAX $SWORD_1_FIRE $SWORD_2_FIRE $SWORD_2_COLD
$SWORD_3_FIRE $SWORD_3_COLD $SWORD_3_MAGIC $SWORD_4_FIRE $SWORD_4_COLD $SWORD_4_MAGIC
$SWORD_4_THERMAL $SWORD_5_FIRE $SWORD_5_COLD $SWORD_5_MAGIC $SWORD_5_THERMAL $SWORD_6_FIRE
$SWORD_6_COLD $SWORD_6_MAGIC $SWORD_6_THERMAL $SWORD_7_FIRE $SWORD_7_COLD $SWORD_7_MAGIC
$SWORD_7_THERMAL $PICKAX_MAGIC $BATTLEAXE_IRON $BATTLEAXE_STEEL $BATTLEAXE_TITANIUM
$BATTLEAXE_IRON_FIRE $BATTLEAXE_STEEL_COLD $BATTLEAXE_STEEL_FIRE $BATTLEAXE_TITANIUM_COLD
$BATTLEAXE_TITANIUM_FIRE $BATTLEAXE_TITANIUM_MAGIC $GLOVE_FUR $GLOVE_LEATHER $BONE_1
$STICK_1 $SWORD_EMERALD_CLAYMORE $SWORD_CUTLASS $SWORD_SUNBREAKER $SWORD_ORC_SLAYER
$SWORD_EAGLE_WING $SWORD_RAPIER $SWORD_JAGGED_SABER
)],
Stats => [qw(
$PHY_CUR $PHY_BASE $COO_CUR $COO_BASE $REAS_CUR $REAS_BASE $WILL_CUR $WILL_BASE $INST_CUR
$INST_BASE $VIT_CUR $VIT_BASE $HUMAN_CUR $HUMAN_BASE $ANIMAL_CUR $ANIMAL_BASE $VEGETAL_CUR
$VEGETAL_BASE $INORG_CUR $INORG_BASE $ARTIF_CUR $ARTIF_BASE $MAGIC_CUR $MAGIC_BASE $MAN_S_CUR
$MAN_S_BASE $HARV_S_CUR $HARV_S_BASE $ALCH_S_CUR $ALCH_S_BASE $OVRL_S_CUR $OVRL_S_BASE $DEF_S_CUR
$DEF_S_BASE $ATT_S_CUR $ATT_S_BASE $MAG_S_CUR $MAG_S_BASE $POT_S_CUR $POT_S_BASE $CARRY_WGHT_CUR
$CARRY_WGHT_BASE $MAT_POINT_CUR $MAT_POINT_BASE $ETH_POINT_CUR $ETH_POINT_BASE $FOOD_LEV $RESEARCHING
$MAG_RES $MAN_EXP $MAN_EXP_NEXT $HARV_EXP $HARV_EXP_NEXT $ALCH_EXP $ALCH_EXP_NEXT $OVRL_EXP
$OVRL_EXP_NEXT $DEF_EXP $DEF_EXP_NEXT $ATT_EXP $ATT_EXP_NEXT $MAG_EXP $MAG_EXP_NEXT $POT_EXP
$POT_EXP_NEXT $RESEARCH_COMPLETED $RESEARCH_TOTAL $SUM_EXP $SUM_EXP_NEXT $SUM_S_CUR $SUM_S_BASE
$CRA_EXP $CRA_EXP_NEXT $CRA_S_CUR $CRA_S_BASE
)],
);
our $DEBUG_PACKETS = 1;
our $DEBUG_TYPES = 2;
our $DEBUG_PATH = 4;
our $DEBUG_TEXT = 8;
our $DEBUG_BAGS = 16;
our $KIND_OF_WEAPON = chr(0);
our $KIND_OF_SHIELD = chr(1);
our $KIND_OF_CAPE = chr(2);
our $KIND_OF_HELMET = chr(3);
our $KIND_OF_LEG_ARMOR = chr(4);
our $KIND_OF_BODY_ARMOR = chr(5);
our $KIND_OF_BOOT_ARMOR = chr(6);
our $CHAT_LOCAL = chr(0);
our $CHAT_PERSONAL = chr(1);
our $CHAT_GM = chr(2);
our $CHAT_SERVER = chr(3);
our $CHAT_MOD = chr(4);
our $CHAT_CHANNEL1 = chr(5);
our $CHAT_CHANNEL2 = chr(6);
our $CHAT_CHANNEL3 = chr(7);
our $CHAT_MODPM = chr(8);
our $SKIN_BROWN = chr(0);
our $SKIN_NORMAL = chr(1);
our $SKIN_PALE = chr(2);
our $SKIN_TAN = chr(3);
our $SKIN_DARK_BLUE = chr(4);
our $HELMET_IRON = chr(0);
our $HELMET_FUR = chr(1);
our $HELMET_LEATHER = chr(2);
our $HELMET_RACOON = chr(3);
our $HELMET_SKUNK = chr(4);
our $HELMET_CROWN_OF_MANA = chr(5);
our $HELMET_CROWN_OF_LIFE = chr(6);
our $HELMET_STEEL = chr(7);
our $HELMET_TITANIUM = chr(8);
our $HELMET_HYDROGENIUM = chr(9);
our $HELMET_NONE = chr(20);
our $HEAD_1 = chr(0);
our $HEAD_2 = chr(1);
our $HEAD_3 = chr(2);
our $HEAD_4 = chr(3);
our $HEAD_5 = chr(4);
our $CAPE_BLACK = chr(0);
our $CAPE_BLUE = chr(1);
our $CAPE_BLUEGRAY = chr(2);
our $CAPE_BROWN = chr(3);
our $CAPE_BROWNGRAY = chr(4);
our $CAPE_GRAY = chr(5);
our $CAPE_GREEN = chr(6);
our $CAPE_GREENGRAY = chr(7);
our $CAPE_PURPLE = chr(8);
our $CAPE_WHITE = chr(9);
our $CAPE_FUR = chr(10);
our $CAPE_GOLD = chr(11);
our $CAPE_RED = chr(12);
our $CAPE_ORANGE = chr(13);
our $CAPE_MOD = chr(14);
our $CAPE_DERIN = chr(15);
our $CAPE_RAVENOD = chr(16);
our $CAPE_PLACID = chr(17);
our $CAPE_LORD_VERMOR = chr(18);
our $CAPE_AISLINN = chr(19);
our $CAPE_SOLDUS = chr(20);
our $CAPE_LOTHARION = chr(21);
our $CAPE_LEARNER = chr(22);
our $CAPE_NONE = chr(30);
our $RAW_TEXT = chr(0);
our $ADD_NEW_ACTOR = chr(1);
our $ADD_ACTOR_COMMAND = chr(2);
our $YOU_ARE = chr(3);
our $SYNC_CLOCK = chr(4);
our $NEW_MINUTE = chr(5);
our $REMOVE_ACTOR = chr(6);
our $CHANGE_MAP = chr(7);
our $COMBAT_MODE = chr(8);
our $KILL_ALL_ACTORS = chr(9);
our $GET_TELEPORTERS_LIST = chr(10);
our $PONG = chr(11);
our $TELEPORT_IN = chr(12);
our $TELEPORT_OUT = chr(13);
our $PLAY_SOUND = chr(14);
our $START_RAIN = chr(15);
our $STOP_RAIN = chr(16);
our $THUNDER = chr(17);
our $HERE_YOUR_STATS = chr(18);
our $HERE_YOUR_INVENTORY = chr(19);
our $INVENTORY_ITEM_TEXT = chr(20);
our $GET_NEW_INVENTORY_ITEM = chr(21);
our $REMOVE_ITEM_FROM_INVENTORY = chr(22);
our $HERE_YOUR_GROUND_ITEMS = chr(23);
our $GET_NEW_GROUND_ITEM = chr(24);
our $REMOVE_ITEM_FROM_GROUND = chr(25);
our $CLOSE_BAG = chr(26);
our $GET_NEW_BAG = chr(27);
our $GET_BAGS_LIST = chr(28);
our $DESTROY_BAG = chr(29);
our $NPC_TEXT = chr(30);
our $NPC_OPTIONS_LIST = chr(31);
our $CLOSE_NPC_MENU = chr(32);
our $SEND_NPC_INFO = chr(33);
our $GET_TRADE_INFO = chr(34);
our $GET_TRADE_OBJECT = chr(35);
our $GET_TRADE_ACCEPT = chr(36);
our $GET_TRADE_REJECT = chr(37);
our $GET_TRADE_EXIT = chr(38);
our $REMOVE_TRADE_OBJECT = chr(39);
our $GET_YOUR_TRADEOBJECTS = chr(40);
our $GET_TRADE_PARTNER_NAME = chr(41);
our $GET_YOUR_SIGILS = chr(42);
our $SPELL_ITEM_TEXT = chr(43);
our $GET_ACTIVE_SPELL = chr(44);
our $GET_ACTIVE_SPELL_LIST = chr(45);
our $REMOVE_ACTIVE_SPELL = chr(46);
our $GET_ACTOR_DAMAGE = chr(47);
our $GET_ACTOR_HEAL = chr(48);
our $SEND_PARTIAL_STAT = chr(49);
our $SPAWN_BAG_PARTICLES = chr(50);
our $ADD_NEW_ENHANCED_ACTOR = chr(51);
our $ACTOR_WEAR_ITEM = chr(52);
our $ACTOR_UNWEAR_ITEM = chr(53);
our $PLAY_MUSIC = chr(54);
our $GET_KNOWLEDGE_LIST = chr(55);
our $GET_NEW_KNOWLEDGE = chr(56);
our $GET_KNOWLEDGE_TEXT = chr(57);
our $BUDDY_EVENT = chr(59);
our $PING_REQUEST = chr(60);
our $FIRE_PARTICLES = chr(61);
our $REMOVE_FIRE_AT = chr(62);
our $DISPLAY_CLIENT_WINDOW = chr(63);
our $OPEN_BOOK = chr(64);
our $READ_BOOK = chr(65);
our $CLOSE_BOOK = chr(66);
our $STORAGE_LIST = chr(67);
our $STORAGE_ITEMS = chr(68);
our $STORAGE_TEXT = chr(69);
our $SPELL_CAST = chr(70);
our $GET_ACTIVE_CHANNELS = chr(71);
our $MAP_FLAGS = chr(72);
our $GET_ACTOR_HEALTH = chr(73);
our $GET_3D_OBJ_LIST = chr(74);
our $GET_3D_OBJ = chr(75);
our $REMOVE_3D_OBJ = chr(76);
our $GET_ITEMS_COOLDOWN = chr(77);
our $SEND_BUFFS = chr(78);
our $MAP_SET_OBJECTS = chr(220);
our $MAP_STATE_OBJECTS = chr(221);
our $UPGRADE_NEW_VERSION = chr(240);
our $UPGRADE_TOO_OLD = chr(241);
our $REDEFINE_YOUR_COLORS = chr(248);
our $YOU_DONT_EXIST = chr(249);
our $LOG_IN_OK = chr(250);
our $LOG_IN_NOT_OK = chr(251);
our $CREATE_CHAR_OK = chr(252);
our $CREATE_CHAR_NOT_OK = chr(253);
our $BYE = chr(255);
our $NO_BODY_ARMOR = chr(0);
our $NO_PANTS_ARMOR = chr(0);
our $NO_BOOTS_ARMOR = chr(0);
our $MOVE_TO = chr(1);
our $SEND_PM = chr(2);
our $GET_PLAYER_INFO = chr(5);
our $RUN_TO = chr(6);
our $SIT_DOWN = chr(7);
our $SEND_ME_MY_ACTORS = chr(8);
our $SEND_OPENING_SCREEN = chr(9);
our $SEND_VERSION = chr(10);
our $TURN_LEFT = chr(11);
our $TURN_RIGHT = chr(12);
our $PING = chr(13);
our $HEART_BEAT = chr(14);
our $LOCATE_ME = chr(15);
our $USE_MAP_OBJECT = chr(16);
our $SEND_MY_STATS = chr(17);
our $SEND_MY_INVENTORY = chr(18);
our $LOOK_AT_INVENTORY_ITEM = chr(19);
our $MOVE_INVENTORY_ITEM = chr(20);
our $HARVEST = chr(21);
our $DROP_ITEM = chr(22);
our $PICK_UP_ITEM = chr(23);
our $LOOK_AT_GROUND_ITEM = chr(24);
our $INSPECT_BAG = chr(25);
our $S_CLOSE_BAG = chr(26);
our $LOOK_AT_MAP_OBJECT = chr(27);
our $TOUCH_PLAYER = chr(28);
our $RESPOND_TO_NPC = chr(29);
our $MANUFACTURE_THIS = chr(30);
our $USE_INVENTORY_ITEM = chr(31);
our $TRADE_WITH = chr(32);
our $ACCEPT_TRADE = chr(33);
our $REJECT_TRADE = chr(34);
our $EXIT_TRADE = chr(35);
our $PUT_OBJECT_ON_TRADE = chr(36);
our $REMOVE_OBJECT_FROM_TRADE = chr(37);
our $LOOK_AT_TRADE_ITEM = chr(38);
our $CAST_SPELL = chr(39);
our $ATTACK_SOMEONE = chr(40);
our $GET_KNOWLEDGE_INFO = chr(41);
our $ITEM_ON_ITEM = chr(42);
our $SEND_BOOK = chr(43);
our $GET_STORAGE_CATEGORY = chr(44);
our $DEPOSITE_ITEM = chr(45);
our $WITHDRAW_ITEM = chr(46);
our $LOOK_AT_STORAGE_ITEM = chr(47);
our $SPELL_NAME = chr(48);
our $PING_RESPONSE = chr(60);
our $SET_ACTIVE_CHANNEL = chr(61);
our $LOG_IN = chr(140);
our $CREATE_CHAR = chr(141);
our $GET_DATE = chr(230);
our $GET_TIME = chr(231);
our $SERVER_STATS = chr(232);
our $ORIGINAL_IP = chr(233);
our $PHY_CUR = chr(0);
our $PHY_BASE = chr(1);
our $COO_CUR = chr(2);
our $COO_BASE = chr(3);
our $REAS_CUR = chr(4);
our $REAS_BASE = chr(5);
our $WILL_CUR = chr(6);
our $WILL_BASE = chr(7);
our $INST_CUR = chr(8);
our $INST_BASE = chr(9);
our $VIT_CUR = chr(10);
our $VIT_BASE = chr(11);
our $HUMAN_CUR = chr(12);
our $HUMAN_BASE = chr(13);
our $ANIMAL_CUR = chr(14);
our $ANIMAL_BASE = chr(15);
our $VEGETAL_CUR = chr(16);
our $VEGETAL_BASE = chr(17);
our $INORG_CUR = chr(18);
our $INORG_BASE = chr(19);
our $ARTIF_CUR = chr(20);
our $ARTIF_BASE = chr(21);
our $MAGIC_CUR = chr(22);
our $MAGIC_BASE = chr(23);
our $MAN_S_CUR = chr(24);
our $MAN_S_BASE = chr(25);
our $HARV_S_CUR = chr(26);
our $HARV_S_BASE = chr(27);
our $ALCH_S_CUR = chr(28);
our $ALCH_S_BASE = chr(29);
our $OVRL_S_CUR = chr(30);
our $OVRL_S_BASE = chr(31);
our $DEF_S_CUR = chr(32);
our $DEF_S_BASE = chr(33);
our $ATT_S_CUR = chr(34);
our $ATT_S_BASE = chr(35);
our $MAG_S_CUR = chr(36);
our $MAG_S_BASE = chr(37);
our $POT_S_CUR = chr(38);
our $POT_S_BASE = chr(39);
our $CARRY_WGHT_CUR = chr(40);
our $CARRY_WGHT_BASE = chr(41);
our $MAT_POINT_CUR = chr(42);
our $MAT_POINT_BASE = chr(43);
our $ETH_POINT_CUR = chr(44);
our $ETH_POINT_BASE = chr(45);
our $FOOD_LEV = chr(46);
our $RESEARCHING = chr(47);
our $MAG_RES = chr(48);
our $MAN_EXP = chr(49);
our $MAN_EXP_NEXT = chr(50);
our $HARV_EXP = chr(51);
our $HARV_EXP_NEXT = chr(52);
our $ALCH_EXP = chr(53);
our $ALCH_EXP_NEXT = chr(54);
our $OVRL_EXP = chr(55);
our $OVRL_EXP_NEXT = chr(56);
our $DEF_EXP = chr(57);
our $DEF_EXP_NEXT = chr(58);
our $ATT_EXP = chr(59);
our $ATT_EXP_NEXT = chr(60);
our $MAG_EXP = chr(61);
our $MAG_EXP_NEXT = chr(62);
our $POT_EXP = chr(63);
our $POT_EXP_NEXT = chr(64);
our $RESEARCH_COMPLETED = chr(65);
our $RESEARCH_TOTAL = chr(66);
our $SUM_EXP = chr(67);
our $SUM_EXP_NEXT = chr(68);
our $SUM_S_CUR = chr(69);
our $SUM_S_BASE = chr(70);
our $CRA_EXP = chr(71);
our $CRA_EXP_NEXT = chr(72);
our $CRA_S_CUR = chr(73);
our $CRA_S_BASE = chr(74);
our $frame_walk = chr(0);
our $frame_run = chr(1);
our $frame_die1 = chr(2);
our $frame_die2 = chr(3);
our $frame_pain1 = chr(4);
our $frame_pick = chr(5);
our $frame_drop = chr(6);
our $frame_idle = chr(7);
our $frame_harvest = chr(8);
our $frame_cast = chr(9);
our $frame_ranged = chr(10);
our $frame_pain2 = chr(11);
our $frame_sit = chr(12);
our $frame_stand = chr(13);
our $frame_sit_idle = chr(14);
our $frame_combat_idle = chr(15);
our $frame_in_combat = chr(16);
our $frame_out_combat = chr(17);
our $frame_attack_up_1 = chr(18);
our $frame_attack_up_2 = chr(19);
our $frame_attack_up_3 = chr(20);
our $frame_attack_up_4 = chr(21);
our $frame_attack_down_1 = chr(22);
our $frame_attack_down_2 = chr(23);
our $human_female = chr(0);
our $human_male = chr(1);
our $elf_female = chr(2);
our $elf_male = chr(3);
our $dwarf_female = chr(4);
our $dwarf_male = chr(5);
our $wraith = chr(6);
our $cyclops = chr(7);
our $beaver = chr(8);
our $rat = chr(9);
our $goblin_male_2 = chr(10);
our $goblin_female_1 = chr(11);
our $town_folk4 = chr(12);
our $town_folk5 = chr(13);
our $shop_girl3 = chr(14);
our $deer = chr(15);
our $bear = chr(16);
our $wolf = chr(17);
our $white_rabbit = chr(18);
our $brown_rabbit = chr(19);
our $boar = chr(20);
our $bear2 = chr(21);
our $snake1 = chr(22);
our $snake2 = chr(23);
our $snake3 = chr(24);
our $fox = chr(25);
our $puma = chr(26);
our $ogre_male_1 = chr(27);
our $goblin_male_1 = chr(28);
our $orc_male_1 = chr(29);
our $orc_female_1 = chr(30);
our $skeleton = chr(31);
our $gargoyle1 = chr(32);
our $gargoyle2 = chr(33);
our $gargoyle3 = chr(34);
our $troll = chr(35);
our $chimeran_wolf_mountain = chr(36);
our $gnome_female = chr(37);
our $gnome_male = chr(38);
our $orchan_female = chr(39);
our $orchan_male = chr(40);
our $draegoni_female = chr(41);
our $draegoni_male = chr(42);
our $skunk_1 = chr(43);
our $racoon_1 = chr(44);
our $unicorn_1 = chr(45);
our $chimeran_wolf_desert = chr(46);
our $chimeran_wolf_forest = chr(47);
our $bear_3 = chr(48);
our $bear_4 = chr(49);
our $panther = chr(50);
our $feran = chr(51);
our $leopard_1 = chr(52);
our $leopard_2 = chr(53);
our $chimeran_wolf_arctic = chr(54);
our $tiger_1 = chr(55);
our $tiger_2 = chr(56);
our $armed_female_orc = chr(57);
our $armed_male_orc = chr(58);
our $armed_skeleton = chr(59);
our $phantom_warrior = chr(60);
our $imp = chr(61);
our $brownie = chr(62);
our $leprechaun = chr(63);
our $spider_s_1 = chr(64);
our $spider_s_2 = chr(65);
our $spider_s_3 = chr(66);
our $spider_l_1 = chr(67);
our $spider_l_2 = chr(68);
our $spider_l_3 = chr(69);
our $wood_sprite = chr(70);
our $spider_l_4 = chr(71);
our $spider_s_4 = chr(72);
our $giant_1 = chr(73);
our $hobgoblin = chr(74);
our $yeti = chr(75);
our $snake4 = chr(76);
our $WEAPON_NONE = chr(0);
our $SWORD_1 = chr(1);
our $SWORD_2 = chr(2);
our $SWORD_3 = chr(3);
our $SWORD_4 = chr(4);
our $SWORD_5 = chr(5);
our $SWORD_6 = chr(6);
our $SWORD_7 = chr(7);
our $STAFF_1 = chr(8);
our $STAFF_2 = chr(9);
our $STAFF_3 = chr(10);
our $STAFF_4 = chr(11);
our $HAMMER_1 = chr(12);
our $HAMMER_2 = chr(13);
our $PICKAX = chr(14);
our $SWORD_1_FIRE = chr(15);
our $SWORD_2_FIRE = chr(16);
our $SWORD_2_COLD = chr(17);
our $SWORD_3_FIRE = chr(18);
our $SWORD_3_COLD = chr(19);
our $SWORD_3_MAGIC = chr(20);
our $SWORD_4_FIRE = chr(21);
our $SWORD_4_COLD = chr(22);
our $SWORD_4_MAGIC = chr(23);
our $SWORD_4_THERMAL = chr(24);
our $SWORD_5_FIRE = chr(25);
our $SWORD_5_COLD = chr(26);
our $SWORD_5_MAGIC = chr(27);
our $SWORD_5_THERMAL = chr(28);
our $SWORD_6_FIRE = chr(29);
our $SWORD_6_COLD = chr(30);
our $SWORD_6_MAGIC = chr(31);
our $SWORD_6_THERMAL = chr(32);
our $SWORD_7_FIRE = chr(33);
our $SWORD_7_COLD = chr(34);
our $SWORD_7_MAGIC = chr(35);
our $SWORD_7_THERMAL = chr(36);
our $PICKAX_MAGIC = chr(37);
our $BATTLEAXE_IRON = chr(38);
our $BATTLEAXE_STEEL = chr(39);
our $BATTLEAXE_TITANIUM = chr(40);
our $BATTLEAXE_IRON_FIRE = chr(41);
our $BATTLEAXE_STEEL_COLD = chr(42);
our $BATTLEAXE_STEEL_FIRE = chr(43);
our $BATTLEAXE_TITANIUM_COLD = chr(44);
our $BATTLEAXE_TITANIUM_FIRE = chr(45);
our $BATTLEAXE_TITANIUM_MAGIC = chr(46);
our $GLOVE_FUR = chr(47);
our $GLOVE_LEATHER = chr(48);
our $BONE_1 = chr(49);
our $STICK_1 = chr(50);
our $SWORD_EMERALD_CLAYMORE = chr(51);
our $SWORD_CUTLASS = chr(52);
our $SWORD_SUNBREAKER = chr(53);
our $SWORD_ORC_SLAYER = chr(54);
our $SWORD_EAGLE_WING = chr(55);
our $SWORD_RAPIER = chr(56);
our $SWORD_JAGGED_SABER = chr(57);
our $PANTS_BLACK = chr(0);
our $PANTS_BLUE = chr(1);
our $PANTS_BROWN = chr(2);
our $PANTS_DARKBROWN = chr(3);
our $PANTS_GREY = chr(4);
our $PANTS_GREEN = chr(5);
our $PANTS_LIGHTBROWN = chr(6);
our $PANTS_RED = chr(7);
our $PANTS_WHITE = chr(8);
our $PANTS_LEATHER = chr(9);
our $PANTS_IRON_CUISSES = chr(10);
our $PANTS_FUR = chr(11);
our $PANTS_STEEL_CUISSES = chr(12);
our $PANTS_TITANIUM_CUISSES = chr(13);
our $PANTS_HYDROGENIUM_CUISSES = chr(14);
our $RULE_WIN = chr(1);
our $RULE_INTERFACE = chr(2);
our $NEW_CHAR_INTERFACE = chr(3);
our $nothing = chr(0);
our $kill_me = chr(1);
our $die1 = chr(3);
our $die2 = chr(4);
our $pain1 = chr(5);
our $pick = chr(6);
our $drop = chr(7);
our $idle = chr(8);
our $harvest = chr(9);
our $cast = chr(10);
our $ranged = chr(11);
our $meele = chr(12);
our $sit_down = chr(13);
our $stand_up = chr(14);
our $turn_left = chr(15);
our $turn_right = chr(16);
our $pain2 = chr(17);
our $enter_combat = chr(18);
our $leave_combat = chr(19);
our $move_n = chr(20);
our $move_ne = chr(21);
our $move_e = chr(22);
our $move_se = chr(23);
our $move_s = chr(24);
our $move_sw = chr(25);
our $move_w = chr(26);
our $move_nw = chr(27);
our $run_n = chr(30);
our $run_ne = chr(31);
our $run_e = chr(32);
our $run_se = chr(33);
our $run_s = chr(34);
our $run_sw = chr(35);
our $run_w = chr(36);
our $run_nw = chr(37);
our $turn_n = chr(38);
our $turn_ne = chr(39);
our $turn_e = chr(40);
our $turn_se = chr(41);
our $turn_s = chr(42);
our $turn_sw = chr(43);
our $turn_w = chr(44);
our $turn_nw = chr(45);
our $attack_up_1 = chr(46);
our $attack_up_2 = chr(47);
our $attack_up_3 = chr(48);
our $attack_up_4 = chr(49);
our $attack_down_1 = chr(50);
our $attack_down_2 = chr(51);
our $BOOTS_BLACK = chr(0);
our $BOOTS_BROWN = chr(1);
our $BOOTS_DARKBROWN = chr(2);
our $BOOTS_DULLBROWN = chr(3);
our $BOOTS_LIGHTBROWN = chr(4);
our $BOOTS_ORANGE = chr(5);
our $BOOTS_LEATHER = chr(6);
our $BOOTS_FUR = chr(7);
our $BOOTS_IRON_GREAVE = chr(8);
our $BOOTS_STEEL_GREAVE = chr(9);
our $BOOTS_TITANIUM_GREAVE = chr(10);
our $BOOTS_HYDROGENIUM_GREAVE = chr(11);
our $snd_rain = chr(0);
our $snd_tele_in = chr(1);
our $snd_tele_out = chr(2);
our $snd_teleprtr = chr(3);
our $snd_thndr_1 = chr(4);
our $snd_thndr_2 = chr(5);
our $snd_thndr_3 = chr(6);
our $snd_thndr_4 = chr(7);
our $snd_thndr_5 = chr(8);
our $snd_fire = chr(9);
our $c_lbound = chr(0);
our $c_red1 = chr(0);
our $c_orange1 = chr(1);
our $c_yellow1 = chr(2);
our $c_green1 = chr(3);
our $c_blue1 = chr(4);
our $c_purple1 = chr(5);
our $c_grey1 = chr(6);
our $c_red2 = chr(7);
our $c_orange2 = chr(8);
our $c_yellow2 = chr(9);
our $c_green2 = chr(10);
our $c_blue2 = chr(11);
our $c_purple2 = chr(12);
our $c_grey2 = chr(13);
our $c_red3 = chr(14);
our $c_orange3 = chr(15);
our $c_yellow3 = chr(16);
our $c_green3 = chr(17);
our $c_blue3 = chr(18);
our $c_purple3 = chr(19);
our $c_grey3 = chr(20);
our $c_red4 = chr(21);
our $c_orange4 = chr(22);
our $c_yellow4 = chr(23);
our $c_green4 = chr(24);
our $c_blue4 = chr(25);
our $c_purple4 = chr(26);
our $c_ubound = chr(27);
our $c_grey4 = chr(27);
our $SHIRT_BLACK = chr(0);
our $SHIRT_BLUE = chr(1);
our $SHIRT_BROWN = chr(2);
our $SHIRT_GREY = chr(3);
our $SHIRT_GREEN = chr(4);
our $SHIRT_LIGHTBROWN = chr(5);
our $SHIRT_ORANGE = chr(6);
our $SHIRT_PINK = chr(7);
our $SHIRT_PURPLE = chr(8);
our $SHIRT_RED = chr(9);
our $SHIRT_WHITE = chr(10);
our $SHIRT_YELLOW = chr(11);
our $SHIRT_LEATHER_ARMOR = chr(12);
our $SHIRT_CHAIN_ARMOR = chr(13);
our $SHIRT_STEEL_CHAIN_ARMOR = chr(14);
our $SHIRT_TITANIUM_CHAIN_ARMOR = chr(15);
our $SHIRT_IRON_PLATE_ARMOR = chr(16);
our $SHIRT_ARMOR_6 = chr(17);
our $SHIRT_FUR = chr(18);
our $SHIRT_STEEL_PLATE_ARMOR = chr(19);
our $SHIRT_TITANIUM_PLATE_ARMOR = chr(20);
our $HAIR_BLACK = chr(0);
our $HAIR_BLOND = chr(1);
our $HAIR_BROWN = chr(2);
our $HAIR_GRAY = chr(3);
our $HAIR_RED = chr(4);
our $HAIR_WHITE = chr(5);
our $HAIR_BLUE = chr(6);
our $HAIR_GREEN = chr(7);
our $HAIR_PURPLE = chr(8);
our $SHIELD_WOOD = chr(0);
our $SHIELD_WOOD_ENHANCED = chr(1);
our $SHIELD_IRON = chr(2);
our $SHIELD_STEEL = chr(3);
our $SHIELD_TITANIUM = chr(4);
our $SHIELD_HYDROGENIUM = chr(5);
our $SHIELD_NONE = chr(11);
our %WearableItemsByID = (
chr(0) => 'KIND_OF_WEAPON',
chr(1) => 'KIND_OF_SHIELD',
chr(2) => 'KIND_OF_CAPE',
chr(3) => 'KIND_OF_HELMET',
chr(4) => 'KIND_OF_LEG_ARMOR',
chr(5) => 'KIND_OF_BODY_ARMOR',
chr(6) => 'KIND_OF_BOOT_ARMOR',
);
our %TextChannelsByID = (
chr(0) => 'CHAT_LOCAL',
chr(1) => 'CHAT_PERSONAL',
chr(2) => 'CHAT_GM',
chr(3) => 'CHAT_SERVER',
chr(4) => 'CHAT_MOD',
chr(5) => 'CHAT_CHANNEL1',
chr(6) => 'CHAT_CHANNEL2',
chr(7) => 'CHAT_CHANNEL3',
chr(8) => 'CHAT_MODPM',
);
our %SkinColorsByID = (
chr(0) => 'SKIN_BROWN',
chr(1) => 'SKIN_NORMAL',
chr(2) => 'SKIN_PALE',
chr(3) => 'SKIN_TAN',
chr(4) => 'SKIN_DARK_BLUE',
);
our %HelmetsByID = (
chr(0) => 'HELMET_IRON',
chr(1) => 'HELMET_FUR',
chr(2) => 'HELMET_LEATHER',
chr(3) => 'HELMET_RACOON',
chr(4) => 'HELMET_SKUNK',
chr(5) => 'HELMET_CROWN_OF_MANA',
chr(6) => 'HELMET_CROWN_OF_LIFE',
chr(7) => 'HELMET_STEEL',
chr(8) => 'HELMET_TITANIUM',
chr(9) => 'HELMET_HYDROGENIUM',
chr(20) => 'HELMET_NONE',
);
our %HeadsByID = (
chr(0) => 'HEAD_1',
chr(1) => 'HEAD_2',
chr(2) => 'HEAD_3',
chr(3) => 'HEAD_4',
chr(4) => 'HEAD_5',
);
our %CapesByID = (
chr(0) => 'CAPE_BLACK',
chr(1) => 'CAPE_BLUE',
chr(2) => 'CAPE_BLUEGRAY',
chr(3) => 'CAPE_BROWN',
chr(4) => 'CAPE_BROWNGRAY',
chr(5) => 'CAPE_GRAY',
chr(6) => 'CAPE_GREEN',
chr(7) => 'CAPE_GREENGRAY',
chr(8) => 'CAPE_PURPLE',
chr(9) => 'CAPE_WHITE',
chr(10) => 'CAPE_FUR',
chr(11) => 'CAPE_GOLD',
chr(12) => 'CAPE_RED',
chr(13) => 'CAPE_ORANGE',
chr(14) => 'CAPE_MOD',
chr(15) => 'CAPE_DERIN',
chr(16) => 'CAPE_RAVENOD',
chr(17) => 'CAPE_PLACID',
chr(18) => 'CAPE_LORD_VERMOR',
chr(19) => 'CAPE_AISLINN',
chr(20) => 'CAPE_SOLDUS',
chr(21) => 'CAPE_LOTHARION',
chr(22) => 'CAPE_LEARNER',
chr(30) => 'CAPE_NONE',
);
our %ClientCommandsByID = (
chr(0) => 'RAW_TEXT',
chr(1) => 'ADD_NEW_ACTOR',
chr(2) => 'ADD_ACTOR_COMMAND',
chr(3) => 'YOU_ARE',
chr(4) => 'SYNC_CLOCK',
chr(5) => 'NEW_MINUTE',
chr(6) => 'REMOVE_ACTOR',
chr(7) => 'CHANGE_MAP',
chr(8) => 'COMBAT_MODE',
chr(9) => 'KILL_ALL_ACTORS',
chr(10) => 'GET_TELEPORTERS_LIST',
chr(11) => 'PONG',
chr(12) => 'TELEPORT_IN',
chr(13) => 'TELEPORT_OUT',
chr(14) => 'PLAY_SOUND',
chr(15) => 'START_RAIN',
chr(16) => 'STOP_RAIN',
chr(17) => 'THUNDER',
chr(18) => 'HERE_YOUR_STATS',
chr(19) => 'HERE_YOUR_INVENTORY',
chr(20) => 'INVENTORY_ITEM_TEXT',
chr(21) => 'GET_NEW_INVENTORY_ITEM',
chr(22) => 'REMOVE_ITEM_FROM_INVENTORY',
chr(23) => 'HERE_YOUR_GROUND_ITEMS',
chr(24) => 'GET_NEW_GROUND_ITEM',
chr(25) => 'REMOVE_ITEM_FROM_GROUND',
chr(26) => 'CLOSE_BAG',
chr(27) => 'GET_NEW_BAG',
chr(28) => 'GET_BAGS_LIST',
chr(29) => 'DESTROY_BAG',
chr(30) => 'NPC_TEXT',
chr(31) => 'NPC_OPTIONS_LIST',
chr(32) => 'CLOSE_NPC_MENU',
chr(33) => 'SEND_NPC_INFO',
chr(34) => 'GET_TRADE_INFO',
chr(35) => 'GET_TRADE_OBJECT',
chr(36) => 'GET_TRADE_ACCEPT',
chr(37) => 'GET_TRADE_REJECT',
chr(38) => 'GET_TRADE_EXIT',
chr(39) => 'REMOVE_TRADE_OBJECT',
chr(40) => 'GET_YOUR_TRADEOBJECTS',
chr(41) => 'GET_TRADE_PARTNER_NAME',
chr(42) => 'GET_YOUR_SIGILS',
chr(43) => 'SPELL_ITEM_TEXT',
chr(44) => 'GET_ACTIVE_SPELL',
chr(45) => 'GET_ACTIVE_SPELL_LIST',
chr(46) => 'REMOVE_ACTIVE_SPELL',
chr(47) => 'GET_ACTOR_DAMAGE',
chr(48) => 'GET_ACTOR_HEAL',
chr(49) => 'SEND_PARTIAL_STAT',
chr(50) => 'SPAWN_BAG_PARTICLES',
chr(51) => 'ADD_NEW_ENHANCED_ACTOR',
chr(52) => 'ACTOR_WEAR_ITEM',
chr(53) => 'ACTOR_UNWEAR_ITEM',
chr(54) => 'PLAY_MUSIC',
chr(55) => 'GET_KNOWLEDGE_LIST',
chr(56) => 'GET_NEW_KNOWLEDGE',
chr(57) => 'GET_KNOWLEDGE_TEXT',
chr(59) => 'BUDDY_EVENT',
chr(60) => 'PING_REQUEST',
chr(61) => 'FIRE_PARTICLES',
chr(62) => 'REMOVE_FIRE_AT',
chr(63) => 'DISPLAY_CLIENT_WINDOW',
chr(64) => 'OPEN_BOOK',
chr(65) => 'READ_BOOK',
chr(66) => 'CLOSE_BOOK',
chr(67) => 'STORAGE_LIST',
chr(68) => 'STORAGE_ITEMS',
chr(69) => 'STORAGE_TEXT',
chr(70) => 'SPELL_CAST',
chr(71) => 'GET_ACTIVE_CHANNELS',
chr(72) => 'MAP_FLAGS',
chr(73) => 'GET_ACTOR_HEALTH',
chr(74) => 'GET_3D_OBJ_LIST',
chr(75) => 'GET_3D_OBJ',
chr(76) => 'REMOVE_3D_OBJ',
chr(77) => 'GET_ITEMS_COOLDOWN',
chr(78) => 'SEND_BUFFS',
chr(220) => 'MAP_SET_OBJECTS',
chr(221) => 'MAP_STATE_OBJECTS',
chr(240) => 'UPGRADE_NEW_VERSION',
chr(241) => 'UPGRADE_TOO_OLD',
chr(248) => 'REDEFINE_YOUR_COLORS',
chr(249) => 'YOU_DONT_EXIST',
chr(250) => 'LOG_IN_OK',
chr(251) => 'LOG_IN_NOT_OK',
chr(252) => 'CREATE_CHAR_OK',
chr(253) => 'CREATE_CHAR_NOT_OK',
chr(255) => 'BYE',
);
our %NoArmorFlagsByID = (
chr(0) => 'NO_BODY_ARMOR',
chr(0) => 'NO_PANTS_ARMOR',
chr(0) => 'NO_BOOTS_ARMOR',
);
our %ServerCommandsByID = (
chr(0) => 'RAW_TEXT',
chr(1) => 'MOVE_TO',
chr(2) => 'SEND_PM',
chr(5) => 'GET_PLAYER_INFO',
chr(6) => 'RUN_TO',
chr(7) => 'SIT_DOWN',
chr(8) => 'SEND_ME_MY_ACTORS',
chr(9) => 'SEND_OPENING_SCREEN',
chr(10) => 'SEND_VERSION',
chr(11) => 'TURN_LEFT',
chr(12) => 'TURN_RIGHT',
chr(13) => 'PING',
chr(14) => 'HEART_BEAT',
chr(15) => 'LOCATE_ME',
chr(16) => 'USE_MAP_OBJECT',
chr(17) => 'SEND_MY_STATS',
chr(18) => 'SEND_MY_INVENTORY',
chr(19) => 'LOOK_AT_INVENTORY_ITEM',
chr(20) => 'MOVE_INVENTORY_ITEM',
chr(21) => 'HARVEST',
chr(22) => 'DROP_ITEM',
chr(23) => 'PICK_UP_ITEM',
chr(24) => 'LOOK_AT_GROUND_ITEM',
chr(25) => 'INSPECT_BAG',
chr(26) => 'S_CLOSE_BAG',
chr(27) => 'LOOK_AT_MAP_OBJECT',
chr(28) => 'TOUCH_PLAYER',
chr(29) => 'RESPOND_TO_NPC',
chr(30) => 'MANUFACTURE_THIS',
chr(31) => 'USE_INVENTORY_ITEM',
chr(32) => 'TRADE_WITH',
chr(33) => 'ACCEPT_TRADE',
chr(34) => 'REJECT_TRADE',
chr(35) => 'EXIT_TRADE',
chr(36) => 'PUT_OBJECT_ON_TRADE',
chr(37) => 'REMOVE_OBJECT_FROM_TRADE',
chr(38) => 'LOOK_AT_TRADE_ITEM',
chr(39) => 'CAST_SPELL',
chr(40) => 'ATTACK_SOMEONE',
chr(41) => 'GET_KNOWLEDGE_INFO',
chr(42) => 'ITEM_ON_ITEM',
chr(43) => 'SEND_BOOK',
chr(44) => 'GET_STORAGE_CATEGORY',
chr(45) => 'DEPOSITE_ITEM',
chr(46) => 'WITHDRAW_ITEM',
chr(47) => 'LOOK_AT_STORAGE_ITEM',
chr(48) => 'SPELL_NAME',
chr(60) => 'PING_RESPONSE',
chr(61) => 'SET_ACTIVE_CHANNEL',
chr(140) => 'LOG_IN',
chr(141) => 'CREATE_CHAR',
chr(230) => 'GET_DATE',
chr(231) => 'GET_TIME',
chr(232) => 'SERVER_STATS',
chr(233) => 'ORIGINAL_IP',
chr(255) => 'BYE',
);
# I Hypothesise that if the client sends
# one of these commands the server will
# cancel the current moevement
our %ActiveCommands = (
chr(1) => 'MOVE_TO',
chr(6) => 'RUN_TO',
chr(7) => 'SIT_DOWN',
chr(11) => 'TURN_LEFT',
chr(12) => 'TURN_RIGHT',
chr(21) => 'HARVEST',
chr(22) => 'DROP_ITEM',
chr(23) => 'PICK_UP_ITEM',
chr(24) => 'LOOK_AT_GROUND_ITEM',
chr(25) => 'INSPECT_BAG',
chr(26) => 'S_CLOSE_BAG',
chr(27) => 'LOOK_AT_MAP_OBJECT',
chr(28) => 'TOUCH_PLAYER',
chr(29) => 'RESPOND_TO_NPC',
chr(30) => 'MANUFACTURE_THIS',
chr(31) => 'USE_INVENTORY_ITEM',
chr(32) => 'TRADE_WITH',
chr(33) => 'ACCEPT_TRADE',
chr(34) => 'REJECT_TRADE',
chr(35) => 'EXIT_TRADE',
chr(36) => 'PUT_OBJECT_ON_TRADE',
chr(37) => 'REMOVE_OBJECT_FROM_TRADE',
chr(38) => 'LOOK_AT_TRADE_ITEM',
chr(39) => 'CAST_SPELL',
chr(40) => 'ATTACK_SOMEONE',
chr(42) => 'ITEM_ON_ITEM',
chr(44) => 'GET_STORAGE_CATEGORY',
chr(45) => 'DEPOSITE_ITEM',
chr(46) => 'WITHDRAW_ITEM',
chr(47) => 'LOOK_AT_STORAGE_ITEM',
);
our %ELStatsByID = (
chr(0) => 'PHY_CUR',
chr(1) => 'PHY_BASE',
chr(2) => 'COO_CUR',
chr(3) => 'COO_BASE',
chr(4) => 'REAS_CUR',
chr(5) => 'REAS_BASE',
chr(6) => 'WILL_CUR',
chr(7) => 'WILL_BASE',
chr(8) => 'INST_CUR',
chr(9) => 'INST_BASE',
chr(10) => 'VIT_CUR',
chr(11) => 'VIT_BASE',
chr(12) => 'HUMAN_CUR',
chr(13) => 'HUMAN_BASE',
chr(14) => 'ANIMAL_CUR',
chr(15) => 'ANIMAL_BASE',
chr(16) => 'VEGETAL_CUR',
chr(17) => 'VEGETAL_BASE',
chr(18) => 'INORG_CUR',
chr(19) => 'INORG_BASE',
chr(20) => 'ARTIF_CUR',
chr(21) => 'ARTIF_BASE',
chr(22) => 'MAGIC_CUR',
chr(23) => 'MAGIC_BASE',
chr(24) => 'MAN_S_CUR',
chr(25) => 'MAN_S_BASE',
chr(26) => 'HARV_S_CUR',
chr(27) => 'HARV_S_BASE',
chr(28) => 'ALCH_S_CUR',
chr(29) => 'ALCH_S_BASE',
chr(30) => 'OVRL_S_CUR',
chr(31) => 'OVRL_S_BASE',
chr(32) => 'DEF_S_CUR',
chr(33) => 'DEF_S_BASE',
chr(34) => 'ATT_S_CUR',
chr(35) => 'ATT_S_BASE',
chr(36) => 'MAG_S_CUR',
chr(37) => 'MAG_S_BASE',
chr(38) => 'POT_S_CUR',
chr(39) => 'POT_S_BASE',
chr(40) => 'CARRY_WGHT_CUR',
chr(41) => 'CARRY_WGHT_BASE',
chr(42) => 'MAT_POINT_CUR',
chr(43) => 'MAT_POINT_BASE',
chr(44) => 'ETH_POINT_CUR',
chr(45) => 'ETH_POINT_BASE',
chr(46) => 'FOOD_LEV',
chr(47) => 'RESEARCHING',
chr(48) => 'MAG_RES',
chr(49) => 'MAN_EXP',
chr(50) => 'MAN_EXP_NEXT',
chr(51) => 'HARV_EXP',
chr(52) => 'HARV_EXP_NEXT',
chr(53) => 'ALCH_EXP',
chr(54) => 'ALCH_EXP_NEXT',
chr(55) => 'OVRL_EXP',
chr(56) => 'OVRL_EXP_NEXT',
chr(57) => 'DEF_EXP',
chr(58) => 'DEF_EXP_NEXT',
chr(59) => 'ATT_EXP',
chr(60) => 'ATT_EXP_NEXT',
chr(61) => 'MAG_EXP',
chr(62) => 'MAG_EXP_NEXT',
chr(63) => 'POT_EXP',
chr(64) => 'POT_EXP_NEXT',
chr(65) => 'RESEARCH_COMPLETED',
chr(66) => 'RESEARCH_TOTAL',
chr(67) => 'SUM_EXP',
chr(68) => 'SUM_EXP_NEXT',
chr(69) => 'SUM_S_CUR',
chr(70) => 'SUM_S_BASE',
chr(71) => 'CRA_EXP',
chr(72) => 'CRA_EXP_NEXT',
chr(73) => 'CRA_S_CUR',
chr(74) => 'CRA_S_BASE',
);
our %FramesByID = (
chr(0) => 'frame_walk',
chr(1) => 'frame_run',
chr(2) => 'frame_die1',
chr(3) => 'frame_die2',
chr(4) => 'frame_pain1',
chr(5) => 'frame_pick',
chr(6) => 'frame_drop',
chr(7) => 'frame_idle',
chr(8) => 'frame_harvest',
chr(9) => 'frame_cast',
chr(10) => 'frame_ranged',
chr(11) => 'frame_pain2',
chr(12) => 'frame_sit',
chr(13) => 'frame_stand',
chr(14) => 'frame_sit_idle',
chr(15) => 'frame_combat_idle',
chr(16) => 'frame_in_combat',
chr(17) => 'frame_out_combat',
chr(18) => 'frame_attack_up_1',
chr(19) => 'frame_attack_up_2',
chr(20) => 'frame_attack_up_3',
chr(21) => 'frame_attack_up_4',
chr(22) => 'frame_attack_down_1',
chr(23) => 'frame_attack_down_2',
);
our %ActorTypesByID = (
chr(0) => 'human_female',
chr(1) => 'human_male',
chr(2) => 'elf_female',
chr(3) => 'elf_male',
chr(4) => 'dwarf_female',
chr(5) => 'dwarf_male',
chr(6) => 'wraith',
chr(7) => 'cyclops',
chr(8) => 'beaver',
chr(9) => 'rat',
chr(10) => 'goblin_male_2',
chr(11) => 'goblin_female_1',
chr(12) => 'town_folk4',
chr(13) => 'town_folk5',
chr(14) => 'shop_girl3',
chr(15) => 'deer',
chr(16) => 'bear',
chr(17) => 'wolf',
chr(18) => 'white_rabbit',
chr(19) => 'brown_rabbit',
chr(20) => 'boar',
chr(21) => 'bear2',
chr(22) => 'snake1',
chr(23) => 'snake2',
chr(24) => 'snake3',
chr(25) => 'fox',
chr(26) => 'puma',
chr(27) => 'ogre_male_1',
chr(28) => 'goblin_male_1',
chr(29) => 'orc_male_1',
chr(30) => 'orc_female_1',
chr(31) => 'skeleton',
chr(32) => 'gargoyle1',
chr(33) => 'gargoyle2',
chr(34) => 'gargoyle3',
chr(35) => 'troll',
chr(36) => 'chimeran_wolf_mountain',
chr(37) => 'gnome_female',
chr(38) => 'gnome_male',
chr(39) => 'orchan_female',
chr(40) => 'orchan_male',
chr(41) => 'draegoni_female',
chr(42) => 'draegoni_male',
chr(43) => 'skunk_1',
chr(44) => 'racoon_1',
chr(45) => 'unicorn_1',
chr(46) => 'chimeran_wolf_desert',
chr(47) => 'chimeran_wolf_forest',
chr(48) => 'bear_3',
chr(49) => 'bear_4',
chr(50) => 'panther',
chr(51) => 'feran',
chr(52) => 'leopard_1',
chr(53) => 'leopard_2',
chr(54) => 'chimeran_wolf_arctic',
chr(55) => 'tiger_1',
chr(56) => 'tiger_2',
chr(57) => 'armed_female_orc',
chr(58) => 'armed_male_orc',
chr(59) => 'armed_skeleton',
chr(60) => 'phantom_warrior',
chr(61) => 'imp',
chr(62) => 'brownie',
chr(63) => 'leprechaun',
chr(64) => 'spider_s_1',
chr(65) => 'spider_s_2',
chr(66) => 'spider_s_3',
chr(67) => 'spider_l_1',
chr(68) => 'spider_l_2',
chr(69) => 'spider_l_3',
chr(70) => 'wood_sprite',
chr(71) => 'spider_l_4',
chr(72) => 'spider_s_4',
chr(73) => 'giant_1',
chr(74) => 'hobgoblin',
chr(75) => 'yeti',
chr(76) => 'snake4',
);
our %WeaponsByID = (
chr(0) => 'WEAPON_NONE',
chr(1) => 'SWORD_1',
chr(2) => 'SWORD_2',
chr(3) => 'SWORD_3',
chr(4) => 'SWORD_4',
chr(5) => 'SWORD_5',
chr(6) => 'SWORD_6',
chr(7) => 'SWORD_7',
chr(8) => 'STAFF_1',
chr(9) => 'STAFF_2',
chr(10) => 'STAFF_3',
chr(11) => 'STAFF_4',
chr(12) => 'HAMMER_1',
chr(13) => 'HAMMER_2',
chr(14) => 'PICKAX',
chr(15) => 'SWORD_1_FIRE',
chr(16) => 'SWORD_2_FIRE',
chr(17) => 'SWORD_2_COLD',
chr(18) => 'SWORD_3_FIRE',
chr(19) => 'SWORD_3_COLD',
chr(20) => 'SWORD_3_MAGIC',
chr(21) => 'SWORD_4_FIRE',
chr(22) => 'SWORD_4_COLD',
chr(23) => 'SWORD_4_MAGIC',
chr(24) => 'SWORD_4_THERMAL',
chr(25) => 'SWORD_5_FIRE',
chr(26) => 'SWORD_5_COLD',
chr(27) => 'SWORD_5_MAGIC',
chr(28) => 'SWORD_5_THERMAL',
chr(29) => 'SWORD_6_FIRE',
chr(30) => 'SWORD_6_COLD',
chr(31) => 'SWORD_6_MAGIC',
chr(32) => 'SWORD_6_THERMAL',
chr(33) => 'SWORD_7_FIRE',
chr(34) => 'SWORD_7_COLD',
chr(35) => 'SWORD_7_MAGIC',
chr(36) => 'SWORD_7_THERMAL',
chr(37) => 'PICKAX_MAGIC',
chr(38) => 'BATTLEAXE_IRON',
chr(39) => 'BATTLEAXE_STEEL',
chr(40) => 'BATTLEAXE_TITANIUM',
chr(41) => 'BATTLEAXE_IRON_FIRE',
chr(42) => 'BATTLEAXE_STEEL_COLD',
chr(43) => 'BATTLEAXE_STEEL_FIRE',
chr(44) => 'BATTLEAXE_TITANIUM_COLD',
chr(45) => 'BATTLEAXE_TITANIUM_FIRE',
chr(46) => 'BATTLEAXE_TITANIUM_MAGIC',
chr(47) => 'GLOVE_FUR',
chr(48) => 'GLOVE_LEATHER',
chr(49) => 'BONE_1',
chr(50) => 'STICK_1',
chr(51) => 'SWORD_EMERALD_CLAYMORE',
chr(52) => 'SWORD_CUTLASS',
chr(53) => 'SWORD_SUNBREAKER',
chr(54) => 'SWORD_ORC_SLAYER',
chr(55) => 'SWORD_EAGLE_WING',
chr(56) => 'SWORD_RAPIER',
chr(57) => 'SWORD_JAGGED_SABER',
);
our %PantsColorsByID = (
chr(0) => 'PANTS_BLACK',
chr(1) => 'PANTS_BLUE',
chr(2) => 'PANTS_BROWN',
chr(3) => 'PANTS_DARKBROWN',
chr(4) => 'PANTS_GREY',
chr(5) => 'PANTS_GREEN',
chr(6) => 'PANTS_LIGHTBROWN',
chr(7) => 'PANTS_RED',
chr(8) => 'PANTS_WHITE',
chr(9) => 'PANTS_LEATHER',
chr(10) => 'PANTS_IRON_CUISSES',
chr(11) => 'PANTS_FUR',
chr(12) => 'PANTS_STEEL_CUISSES',
chr(13) => 'PANTS_TITANIUM_CUISSES',
chr(14) => 'PANTS_HYDROGENIUM_CUISSES',
);
our %WindowsByID = (
chr(1) => 'RULE_WIN',
chr(2) => 'RULE_INTERFACE',
chr(3) => 'NEW_CHAR_INTERFACE',
);
our %ActorCommandsByID = (
chr(0) => 'nothing',
chr(1) => 'kill_me',
chr(3) => 'die1',
chr(4) => 'die2',
chr(5) => 'pain1',
chr(6) => 'pick',
chr(7) => 'drop',
chr(8) => 'idle',
chr(9) => 'harvest',
chr(10) => 'cast',
chr(11) => 'ranged',
chr(12) => 'meele',
chr(13) => 'sit_down',
chr(14) => 'stand_up',
chr(15) => 'turn_left',
chr(16) => 'turn_right',
chr(17) => 'pain2',
chr(18) => 'enter_combat',
chr(19) => 'leave_combat',
chr(20) => 'move_n',
chr(21) => 'move_ne',
chr(22) => 'move_e',
chr(23) => 'move_se',
chr(24) => 'move_s',
chr(25) => 'move_sw',
chr(26) => 'move_w',
chr(27) => 'move_nw',
chr(30) => 'run_n',
chr(31) => 'run_ne',
chr(32) => 'run_e',
chr(33) => 'run_se',
chr(34) => 'run_s',
chr(35) => 'run_sw',
chr(36) => 'run_w',
chr(37) => 'run_nw',
chr(38) => 'turn_n',
chr(39) => 'turn_ne',
chr(40) => 'turn_e',
chr(41) => 'turn_se',
chr(42) => 'turn_s',
chr(43) => 'turn_sw',
chr(44) => 'turn_w',
chr(45) => 'turn_nw',
chr(46) => 'attack_up_1',
chr(47) => 'attack_up_2',
chr(48) => 'attack_up_3',
chr(49) => 'attack_up_4',
chr(50) => 'attack_down_1',
chr(51) => 'attack_down_2',
);
our %BootsColorsByID = (
chr(0) => 'BOOTS_BLACK',
chr(1) => 'BOOTS_BROWN',
chr(2) => 'BOOTS_DARKBROWN',
chr(3) => 'BOOTS_DULLBROWN',
chr(4) => 'BOOTS_LIGHTBROWN',
chr(5) => 'BOOTS_ORANGE',
chr(6) => 'BOOTS_LEATHER',
chr(7) => 'BOOTS_FUR',
chr(8) => 'BOOTS_IRON_GREAVE',
chr(9) => 'BOOTS_STEEL_GREAVE',
chr(10) => 'BOOTS_TITANIUM_GREAVE',
chr(11) => 'BOOTS_HYDROGENIUM_GREAVE',
);
our %SoundByID = (
chr(0) => 'snd_rain',
chr(1) => 'snd_tele_in',
chr(2) => 'snd_tele_out',
chr(3) => 'snd_teleprtr',
chr(4) => 'snd_thndr_1',
chr(5) => 'snd_thndr_2',
chr(6) => 'snd_thndr_3',
chr(7) => 'snd_thndr_4',
chr(8) => 'snd_thndr_5',
chr(9) => 'snd_fire',
);
our %ColorsByID = (
chr(0) => 'c_lbound',
chr(0) => 'c_red1',
chr(1) => 'c_orange1',
chr(2) => 'c_yellow1',
chr(3) => 'c_green1',
chr(4) => 'c_blue1',
chr(5) => 'c_purple1',
chr(6) => 'c_grey1',
chr(7) => 'c_red2',
chr(8) => 'c_orange2',
chr(9) => 'c_yellow2',
chr(10) => 'c_green2',
chr(11) => 'c_blue2',
chr(12) => 'c_purple2',
chr(13) => 'c_grey2',
chr(14) => 'c_red3',
chr(15) => 'c_orange3',
chr(16) => 'c_yellow3',
chr(17) => 'c_green3',
chr(18) => 'c_blue3',
chr(19) => 'c_purple3',
chr(20) => 'c_grey3',
chr(21) => 'c_red4',
chr(22) => 'c_orange4',
chr(23) => 'c_yellow4',
chr(24) => 'c_green4',
chr(25) => 'c_blue4',
chr(26) => 'c_purple4',
chr(27) => 'c_ubound',
chr(27) => 'c_grey4',
);
our %ShirtColorsByID = (
chr(0) => 'SHIRT_BLACK',
chr(1) => 'SHIRT_BLUE',
chr(2) => 'SHIRT_BROWN',
chr(3) => 'SHIRT_GREY',
chr(4) => 'SHIRT_GREEN',
chr(5) => 'SHIRT_LIGHTBROWN',
chr(6) => 'SHIRT_ORANGE',
chr(7) => 'SHIRT_PINK',
chr(8) => 'SHIRT_PURPLE',
chr(9) => 'SHIRT_RED',
chr(10) => 'SHIRT_WHITE',
chr(11) => 'SHIRT_YELLOW',
chr(12) => 'SHIRT_LEATHER_ARMOR',
chr(13) => 'SHIRT_CHAIN_ARMOR',
chr(14) => 'SHIRT_STEEL_CHAIN_ARMOR',
chr(15) => 'SHIRT_TITANIUM_CHAIN_ARMOR',
chr(16) => 'SHIRT_IRON_PLATE_ARMOR',
chr(17) => 'SHIRT_ARMOR_6',
chr(18) => 'SHIRT_FUR',
chr(19) => 'SHIRT_STEEL_PLATE_ARMOR',
chr(20) => 'SHIRT_TITANIUM_PLATE_ARMOR',
);
our %HairColorsByID = (
chr(0) => 'HAIR_BLACK',
chr(1) => 'HAIR_BLOND',
chr(2) => 'HAIR_BROWN',
chr(3) => 'HAIR_GRAY',
chr(4) => 'HAIR_RED',
chr(5) => 'HAIR_WHITE',
chr(6) => 'HAIR_BLUE',
chr(7) => 'HAIR_GREEN',
chr(8) => 'HAIR_PURPLE',
);
our %ShieldsByID = (
chr(0) => 'SHIELD_WOOD',
chr(1) => 'SHIELD_WOOD_ENHANCED',
chr(2) => 'SHIELD_IRON',
chr(3) => 'SHIELD_STEEL',
chr(4) => 'SHIELD_TITANIUM',
chr(5) => 'SHIELD_HYDROGENIUM',
chr(11) => 'SHIELD_NONE',
);