/* **************************************** * file: awake.h -- AwakeMUD Header File * * A centralized definition file for all * * the major defines, etc... * * (c)2001 the AwakeMUD Consortium * * Code migrated from other header files * * (such as spells.h) (c) 1993, 94 by the * * trustees of the John Hopkins University * * and (c) 1990-1991 The DikuMUD group * **************************************** */ #ifndef _awake_h_ #define _awake_h_ #define NUM_RESERVED_DESCS 8 /* pertaining to vnums/rnums */ #define REAL 0 #define VIRTUAL 1 /* gender */ #define SEX_NEUTRAL 0 #define SEX_MALE 1 #define SEX_FEMALE 2 /* positions */ #define POS_DEAD 0 /* dead */ #define POS_MORTALLYW 1 /* mortally wounded */ #define POS_INCAP 2 /* incapacitated */ #define POS_STUNNED 3 /* stunned */ #define POS_SLEEPING 4 /* sleeping */ #define POS_RESTING 5 /* resting */ #define POS_SITTING 6 /* sitting */ #define POS_FIGHTING 7 /* fighting */ #define POS_STANDING 8 /* standing */ /* attribute defines */ #define ATT_BOD 400 #define ATT_QUI 401 #define ATT_STR 402 #define ATT_CHA 403 #define ATT_INT 404 #define ATT_WIL 405 #define ATT_MAG 406 #define ATT_REA 407 #define ATT_ESS 408 /* attributes (mostly for trainers) */ #define BOD (1 << 0) #define QUI (1 << 1) #define STR (1 << 2) #define CHA (1 << 3) #define INT (1 << 4) #define WIL (1 << 5) #define ESS (1 << 6) #define REA (1 << 7) #define MAG (1 << 8) /* char and mob related defines */ /* PC archetypes */ #define AT_UNDEFINED -1 #define AT_MAGE 0 #define AT_SHAMAN 1 #define AT_DECKER 2 #define AT_SAMURAI 3 #define AT_ADEPT 4 #define NUM_ATS 5 /* This must be the number of archetypes!! */ /* magical traditions */ #define TRAD_HERMETIC 0 #define TRAD_SHAMANIC 1 #define TRAD_MUNDANE 2 #define TRAD_ADEPT 4 /* totems */ #define TOTEM_UNDEFINED 0 #define TOTEM_BEAR 1 #define TOTEM_EAGLE 2 #define TOTEM_RAVEN 3 #define TOTEM_WOLF 4 #define TOTEM_SHARK 5 #define TOTEM_LION 6 #define TOTEM_COYOTE 7 #define TOTEM_GATOR 8 #define TOTEM_OWL 9 #define TOTEM_SNAKE 10 #define TOTEM_RACCOON 11 #define TOTEM_CAT 12 #define TOTEM_DOG 13 #define TOTEM_RAT 14 /* PC races */ #define RACE_UNDEFINED -1 #define RACE_HUMAN 0 #define RACE_DWARF 1 #define RACE_ELF 2 #define RACE_ORK 3 #define RACE_TROLL 4 #define NUM_RACES 5 /* This must be the number of races */ /* level definitions */ #define LVL_OWNER 9 #define LVL_PRESIDENT 8 #define LVL_DIRECTOR 7 #define LVL_ADVISOR 6 #define LVL_MANAGER 5 #define LVL_ARCHITECT 4 #define LVL_BUILDER 3 #define LVL_LEGEND 2 #define LVL_FREEZE LVL_PRESIDENT /* character equipment positions: used as index for char_data.equipment[] */ /* note: don't confuse these constants with the ITEM_ bitvectors which control the valid places you can wear a piece of equipment */ #define WEAR_LIGHT 0 #define WEAR_FINGER_R 1 #define WEAR_FINGER_L 2 #define WEAR_NECK_1 3 #define WEAR_NECK_2 4 #define WEAR_BODY 5 #define WEAR_HEAD 6 #define WEAR_LEGS 7 #define WEAR_FEET 8 #define WEAR_HANDS 9 #define WEAR_ARMS 10 #define WEAR_SHIELD 11 #define WEAR_ABOUT 12 #define WEAR_WAIST 13 #define WEAR_WRIST_R 14 #define WEAR_WRIST_L 15 #define WEAR_WIELD 16 #define WEAR_HOLD 17 #define WEAR_EYES 18 #define WEAR_EAR 19 #define WEAR_PATCH 20 /* this must be last! */ #define NUM_WEARS 21 /* This must be the # of eq positions!! */ /* player flags: used by char_data.char_specials.act */ #define PLR_KILLER (1 << 0) /* Player is a player-killer */ #define PLR_THIEF (1 << 1) /* Player is a player-thief */ #define PLR_FROZEN (1 << 2) /* Player is frozen */ #define PLR_DONTSET (1 << 3) /* Don't EVER set (ISNPC bit) */ #define PLR_NEWBIE (1 << 4) /* Player is a newbie still */ #define PLR_JUST_DIED (1 << 5) /* Player just died */ #define PLR_CRASH (1 << 6) /* Player needs to be crash-saved */ #define PLR_CRYO (1 << 7) /* Player is cryo-saved (purge prog) */ #define PLR_SITEOK (1 << 8) /* Player has been site-cleared */ #define PLR_NOSHOUT (1 << 9) /* Player not allowed to shout/goss */ #define PLR_NOTITLE (1 << 10) /* Player not allowed to set title */ #define PLR_DELETED (1 << 11) /* Player deleted - space reusable */ #define PLR_NODELETE (1 << 12) /* Player shouldn't be deleted */ #define PLR_NOWIZLIST (1 << 13) /* Player shouldn't be on wizlist */ #define PLR_NOSTAT (1 << 14) /* Player cannot be statted, etc */ #define PLR_LOADROOM (1 << 15) /* Player uses nonstandard loadroom */ #define PLR_INVSTART (1 << 16) /* Player should enter game wizinvis */ #define PLR_GUEST (1 << 17) /* Players is guest of owner */ #define PLR_QUESTER (1 << 18) /* Player has access to quest comms */ #define PLR_OLC (1 << 19) /* Player has access to olc commands */ #define PLR_MATRIX (1 << 20) /* Player is in the Matrix */ #define PLR_PERCEIVE (1 << 21) /* player is astrally perceiving */ #define PLR_PROJECT (1 << 22) /* player is astrally projecting */ #define PLR_SWITCHED (1 << 23) /* player is switched to a mob */ #define PLR_WRITING (1 << 24) /* Player writing (board/mail/olc) */ #define PLR_MAILING (1 << 25) /* Player is writing mail */ #define PLR_EDITING (1 << 26) /* Player is zone editing */ #define PLR_SPELL_CREATE (1 << 27) /* Player is creating a spell */ #define PLR_CUSTOMIZE (1 << 28) /* Player is customizing persona */ #define PLR_NOSNOOP (1 << 29) /* Player is not snoopable */ /* mobile flags: used by char_data.char_specials.act */ #define MOB_SPEC (1 << 0) /* Mob has a callable spec-proc */ #define MOB_SENTINEL (1 << 1) /* Mob should not move */ #define MOB_SCAVENGER (1 << 2) /* Mob picks up stuff on the ground */ #define MOB_ISNPC (1 << 3) /* (R) Automatically set on all Mobs */ #define MOB_AWARE (1 << 4) /* Mob can't be backstabbed */ #define MOB_AGGRESSIVE (1 << 5) /* Mob hits players in the room */ #define MOB_STAY_ZONE (1 << 6) /* Mob shouldn't wander out of zone */ #define MOB_WIMPY (1 << 7) /* Mob flees if severely injured */ #define MOB_AGGR_ORK (1 << 8) /* auto attack ork PC's */ #define MOB_AGGR_ELF (1 << 9) /* auto attack elf PC's */ #define MOB_AGGR_DWARF (1 << 10) /* auto attack dwarf PC's */ #define MOB_MEMORY (1 << 11) /* remember attackers if attacked */ #define MOB_HELPER (1 << 12) /* attack PCs fighting other NPCs */ #define MOB_NOCHARM (1 << 13) /* Mob can't be charmed */ #define MOB_DUAL_NATURE (1 << 14) /* mob is dual-natured */ #define MOB_IMMEXPLODE (1 << 15) /* mob is immune to explosions */ #define MOB_AGGR_TROLL (1 << 16) /* auto attack troll PC's */ #define MOB_NOBLIND (1 << 17) /* Mob can't be blinded */ #define MOB_ASTRAL (1 << 18) /* Mob is solely in the astral plane */ #define MOB_GUARD (1 << 19) /* mob carries out security */ #define MOB_AGGR_HUMAN (1 << 20) /* auto attack human PC's */ #define MOB_SNIPER (1 << 21) /* mob searches area for PCs */ #define MOB_PRIVATE (1 << 22) /* mob cannot be statted */ #define MOB_TRACK (1 << 23) /* (R) for security routines */ /* preference flags: used by char_data.player_specials.pref */ #define PRF_BRIEF (1 << 0) /* Room descs won't normally be shown */ #define PRF_COMPACT (1 << 1) /* No extra CRLF pair before prompts */ #define PRF_AUTOEXIT (1 << 2) /* Display exits in a room */ #define PRF_FIGHTGAG (1 << 3) /* Gag extra fight messages */ #define PRF_MOVEGAG (1 << 4) /* Gag extra movement messages */ #define PRF_DEAF (1 << 5) /* Can't hear shouts */ #define PRF_NOTELL (1 << 6) /* Can't receive tells */ #define PRF_NORADIO (1 << 7) /* Can't hear radio frequencies */ #define PRF_NONEWBIE (1 << 8) /* Can't hear newbie channel */ #define PRF_NOREPEAT (1 << 9) /* No repetition of comm commands */ #define PRF_NOWIZ (1 << 10) /* Can't hear wizline */ #define PRF_PKER (1 << 11) /* is able to pk/be pked */ #define PRF_QUEST (1 << 12) /* On quest */ #define PRF_AFK (1 << 13) /* Afk */ #define PRF_COLOR_1 (1 << 14) /* Color (low bit) */ #define PRF_COLOR_2 (1 << 15) /* Color (high bit) */ #define PRF_NOHASSLE (1 << 16) /* Aggr mobs won't attack */ #define PRF_ROOMFLAGS (1 << 17) /* Can see room flags (ROOM_x) */ #define PRF_HOLYLIGHT (1 << 18) /* Can see in dark */ #define PRF_CONNLOG (1 << 19) /* Views ConnLog */ #define PRF_DEATHLOG (1 << 20) /* Views DeathLog */ #define PRF_MISCLOG (1 << 21) /* Views MiscLog */ #define PRF_WIZLOG (1 << 22) /* Views WizLog */ #define PRF_SYSLOG (1 << 23) /* Views SysLog */ #define PRF_ZONELOG (1 << 24) /* Views ZoneLog */ #define PRF_MSP (1 << 25) /* has enabled MSP */ #define PRF_ROLLS (1 << 26) /* sees details on rolls */ #define PRF_NOOOC (1 << 27) /* can't hear ooc channel */ #define PRF_AUTOINVIS (1 << 28) /* to toggle auto-invis for immortals */ /* log watch */ #define LOG_CONNLOG 0 #define LOG_DEATHLOG 1 #define LOG_MISCLOG 2 #define LOG_WIZLOG 3 #define LOG_SYSLOG 4 #define LOG_ZONELOG 5 /* player conditions */ #define DRUNK 0 #define FULL 1 #define THIRST 2 /* affect bits: used in char_data.char_specials.saved.affected_by */ /* WARNING: In the world files, NEVER set the bits marked "R" ("Reserved") */ #define AFF_BLIND (1 << 0) /* (R) Char is blind */ #define AFF_INVISIBLE (1 << 1) /* Char is invisible */ #define AFF_DETECT_ALIGN (1 << 2) /* Char is sensitive to align */ #define AFF_DETECT_INVIS (1 << 3) /* Char can see invis chars */ #define AFF_DETECT_MAGIC (1 << 4) /* Char is sensitive to magic */ #define AFF_SENSE_LIFE (1 << 5) /* Char can sense hidden life */ #define AFF_WATERWALK (1 << 6) /* Char can walk on water */ #define AFF_GROUP (1 << 7) /* (R) Char is grouped */ #define AFF_CURSE (1 << 8) /* Char is cursed */ #define AFF_INFRAVISION (1 << 9) /* Char can see in dark */ #define AFF_POISON (1 << 10) /* (R) Char is poisoned */ #define AFF_SLEEP (1 << 11) /* (R) Char magically asleep */ #define AFF_NOTRACK (1 << 12) /* Char can't be tracked */ #define AFF_LOW_LIGHT (1 << 13) /* Char has low light eyes */ #define AFF_LASER_SIGHT (1 << 14) /* Char using laser sight */ #define AFF_SNEAK (1 << 15) /* Char can move quietly */ #define AFF_HIDE (1 << 16) /* Char is hidden */ #define AFF_VISION_MAG_1 (1 << 17) /* Magnification level 1 */ #define AFF_CHARM (1 << 18) /* Char is charmed */ #define AFF_ACTION (1 << 19) /* Player gets -10 on next init roll */ #define AFF_VISION_MAG_2 (1 << 20) /* Magnification level 2 */ #define AFF_VISION_MAG_3 (1 << 21) /* Magnification level 3 */ #define AFF_COUNTER_ATT (1 << 22) /* plr just attacked */ #define AFF_STABILIZE (1 << 23) /* player won't die due to phys loss */ #define AFF_PETRIFY (1 << 24) /* player's commands don't work */ #define AFF_IMP_INVIS (1 << 25) /* char is improved invis */ /* room-related defines */ /* The cardinal directions: used as index to room_data.dir_option[] */ #define NORTH 0 #define NORTHEAST 1 #define EAST 2 #define SOUTHEAST 3 #define SOUTH 4 #define SOUTHWEST 5 #define WEST 6 #define NORTHWEST 7 #define UP 8 #define DOWN 9 #define MATRIX 10 #define NUM_OF_DIRS 11 /* number of directions in a room (nsewud) */ /* also, ne, se, sw, nw, and matrix */ /* "extra" bitvector settings for movement */ #define CHECK_SPECIAL 1 #define LEADER 2 /* Room flags: used in room_data.room_flags */ /* WARNING: In the world files, NEVER set the bits marked "R" ("Reserved") */ #define ROOM_DARK (1 << 0) /* Dark */ #define ROOM_DEATH (1 << 1) /* Death trap */ #define ROOM_NOMOB (1 << 2) /* MOBs not allowed */ #define ROOM_INDOORS (1 << 3) /* Indoors */ #define ROOM_PEACEFUL (1 << 4) /* Violence not allowed */ #define ROOM_SOUNDPROOF (1 << 5) /* Shouts, gossip blocked */ #define ROOM_NOTRACK (1 << 6) /* Track won't go through */ #define ROOM_NOMAGIC (1 << 7) /* Magic not allowed */ #define ROOM_TUNNEL (1 << 8) /* room for only 1 pers */ #define ROOM_PRIVATE (1 << 9) /* Can't teleport in */ #define ROOM_BUILDERROOM (1 << 10) /* LVL_GOD+ only allowed */ #define ROOM_HOUSE (1 << 11) /* (R) Room is a house */ #define ROOM_HOUSE_CRASH (1 << 12) /* (R) House needs saving */ #define ROOM_ATRIUM (1 << 13) /* (R) The door to a house */ #define ROOM_OLC (1 << 14) /* (R) Modifyable/!compress */ #define ROOM_BFS_MARK (1 << 15) /* (R) breath-first srch mrk */ #define ROOM_LOW_LIGHT (1 << 16) /* Room viewable with ll-eyes */ #define ROOM_MATRIX (1 << 17) /* Room is part of Matrix */ #define ROOM_CRIME_OK (1 << 18) /* Crimes can be committed here */ #define ROOM_HERMETIC_LIBRARY (1 << 19) /* Room is spell library */ #define ROOM_MEDICINE_LODGE (1 << 20) /* Room is a medicin lodge */ #define ROOM_FALL (1 << 21) // room is a 'fall' room #define ROOM_MGRROOM (1 << 22) #define ROOM_DIRECTORROOM (1 << 23) #define ROOM_PRESROOM (1 << 24) #define ROOM_NOQUIT (1 << 25) #define ROOM_SENT (1 << 26) /* Exit info: used in room_data.dir_option.exit_info */ #define EX_ISDOOR (1 << 0) /* Exit is a door */ #define EX_CLOSED (1 << 1) /* The door is closed */ #define EX_LOCKED (1 << 2) /* The door is locked */ #define EX_PICKPROOF (1 << 3) /* Lock can't be picked */ #define EX_DESTROYED (1 << 4) /* door has been destroyed */ #define EX_HIDDEN (1 << 5) /* exit is hidden */ /* Sector types: used in room_data.sector_type */ #define SECT_INSIDE 0 /* Indoors */ #define SECT_CITY 1 /* In a city */ #define SECT_FIELD 2 /* In a field */ #define SECT_FOREST 3 /* In a forest */ #define SECT_HILLS 4 /* In the hills */ #define SECT_MOUNTAIN 5 /* On a mountain */ #define SECT_WATER_SWIM 6 /* Swimmable water */ #define SECT_WATER_NOSWIM 7 /* Water - need a boat */ #define SECT_UNDERWATER 8 /* Underwater */ #define SECT_FLYING 9 /* Wheee! */ #define SECT_BLUE 10 /* Blue node for matrix */ #define SECT_GREEN 11 /* Green node for matrix */ #define SECT_ORANGE 12 /* Orange node for matrix */ #define SECT_RED 13 /* Red node for matrix */ #define SECT_BLACK 14 /* Black node for matrix */ /* npc types */ #define CLASS_OTHER 0 #define CLASS_SPIRIT 1 #define CLASS_HUMANOID 2 #define CLASS_ANIMAL 3 #define CLASS_DRAGON 4 #define CLASS_ACCESS 5 #define CLASS_BARRIER 6 #define CLASS_SCRAMBLE 7 #define CLASS_BLASTER 8 #define CLASS_KILLER 9 #define CLASS_TAR_BABY 10 #define CLASS_TAR_PIT 11 #define CLASS_TRACE_REPORT 12 #define CLASS_TRACE_DUMP 13 #define CLASS_TRACE_BURN 14 #define CLASS_BLACK 15 /* spirit powers */ #define PWR_ACCIDENT 0 #define PWR_ALIENATE 1 #define PWR_AURA 2 #define PWR_BIND 3 #define PWR_BREATHE 4 #define PWR_CONCEAL 5 #define PWR_CONFUSE 6 #define PWR_ENGULF 7 #define PWR_FEAR 8 #define PWR_FIND 9 #define PWR_GUARD 10 #define PWR_MANIFEST 11 #define PWR_PROJECT 12 #define NUM_SPIRIT_POWERS 13 /* allergies */ #define ALLERGIC_NONE 0 #define ALLERGIC_SILVER 1 #define ALLERGIC_IRON 2 #define ALLERGIC_PLASTIC 3 #define ALLERGIC_SUNLIGHT 4 /* reaction to allergies */ #define REACT_NONE 0 #define REACT_NUISANCE 1 #define REACT_MILD 2 #define REACT_MODERATE 3 #define REACT_SEVERE 4 /* magic global defines */ /* Note, we add the 100/10 and subtract 10 later to adjust for * spells with negative drain.*/ #define DRAIN_POWER(x) ((int)(((x)+100) / 10)-10) /* Add 100 so -6 gives us 4. */ #define DRAIN_LEVEL(x) (((x)+100)%10) #define DEFAULT_STAFF_LVL 12 #define DEFAULT_WAND_LVL 12 #define CAST_UNDEFINED -1 #define CAST_SPELL 0 #define CAST_POTION 1 #define CAST_WAND 2 #define CAST_STAFF 3 #define CAST_SCROLL 4 #define MAG_DAMAGE (1 << 0) #define MAG_AFFECTS (1 << 1) #define MAG_UNAFFECTS (1 << 2) #define MAG_POINTS (1 << 3) #define MAG_ALTER_OBJS (1 << 4) #define MAG_GROUPS (1 << 5) #define MAG_MASSES (1 << 6) #define MAG_AREAS (1 << 7) #define MAG_SUMMONS (1 << 8) #define MAG_CREATIONS (1 << 9) #define MAG_MANUAL (1 << 10) #define MAG_COMBAT (1 << 11) #define MANA 0 #define MENTAL 0 #define PHYSICAL 1 /* reserved skill defines */ #define TYPE_UNDEFINED -1 #define SPELL_RESERVED_DBC 0 /* SKILL NUMBER ZERO -- RESERVED */ /* PLAYER SPELLS -- Numbered from 1 to MAX_SPELLS */ #define SPELL_X 1 #define SPELL_XX 2 #define SPELL_ANALYZE_DEVICE 3 #define SPELL_ANTI_BULLET 4 #define SPELL_ANTI_SPELL 5 #define SPELL_ANTIDOTE 6 #define SPELL_ARMOR 7 #define SPELL_CHAOS 8 #define SPELL_CHAOTIC_WORLD 9 #define SPELL_CLAIRVOYANCE 10 #define SPELL_CLOUT 11 #define SPELL_COMBAT_SENSE 12 #define SPELL_CONFUSION 13 #define SPELL_CURE_DISEASE 14 #define SPELL_DEATH_TOUCH 15 #define SPELL_DETECT_ALIGNMENT 16 #define SPELL_DETECT_INVIS 17 #define SPELL_DETECT_MAGIC 18 #define SPELL_HEAL 19 #define SPELL_HELLBLAST 20 #define SPELL_IMPROVED_INVIS 21 #define SPELL_INFLUENCE 22 #define SPELL_INVISIBILITY 23 #define SPELL_MANABALL 24 #define SPELL_MANABLAST 25 #define SPELL_MANA_BOLT 26 #define SPELL_MANA_CLOUD 27 #define SPELL_MANA_DART 28 #define SPELL_MANA_MISSILE 29 #define SPELL_OVERSTIMULATION 30 #define SPELL_PETRIFY 31 #define SPELL_POWERBALL 32 #define SPELL_POWERBLAST 33 #define SPELL_POWER_BOLT 34 #define SPELL_POWER_CLOUD 35 #define SPELL_POWER_DART 36 #define SPELL_POWER_MISSILE 37 #define SPELL_RAM 38 #define SPELL_RAM_TOUCH 39 #define SPELL_RESIST_PAIN 40 #define SPELL_SHAPE_CHANGE 41 #define SPELL_STABILIZE 42 #define SPELL_STUNBALL 43 #define SPELL_STUNBLAST 44 #define SPELL_STUN_BOLT 45 #define SPELL_STUN_CLOUD 46 #define SPELL_STUN_MISSILE 47 #define SPELL_STUN_TOUCH 48 #define SPELL_TOXIC_WAVE 49 #define SPELL_POWER_SHAFT 50 #define SPELL_POWER_BURST 51 #define SPELL_MANA_SHAFT 52 #define SPELL_MANA_BURST 53 #define SPELL_STUN_SHAFT 54 #define SPELL_STUN_BURST 55 #define SPELL_STUN_DART 56 /* new spells can be added here */ /* spirit powers */ #define SPELL_ALIENATE 83 #define SPELL_AURA 84 #define SPELL_BIND 85 #define SPELL_GUARD 86 /* player created spells */ #define SPELL_ANALYZE_MAGIC 87 #define SPELL_ANALYZE_PERSON 88 #define SPELL_DECREASE_ATTRIB 89 #define SPELL_ELEMENTBALL 90 #define SPELL_ELEMENT_BOLT 91 #define SPELL_ELEMENT_CLOUD 92 #define SPELL_ELEMENT_DART 93 #define SPELL_ELEMENT_MISSILE 94 #define SPELL_INCREASE_ATTRIB 95 #define SPELL_INCREASE_REFLEXES 96 #define SPELL_LIGHT 97 /* mobile-only spells */ #define SPELL_POISON 98 #define SPELL_TELEPORT 99 /* Insert new spells here, up to MAX_SPELLS */ #define MAX_SPELLS 99 /* player skills defined here, numbered from MAX_SPELLS+1 to MAX_SKILLS */ /* combat-oriented skills */ #define SKILL_STEALTH 100 #define SKILL_ATHLETICS 101 #define SKILL_ARMED_COMBAT 102 #define SKILL_EDGED_WEAPONS 103 #define SKILL_POLE_ARMS 104 #define SKILL_WHIPS_FLAILS 105 #define SKILL_CLUBS 106 #define SKILL_UNARMED_COMBAT 107 #define SKILL_GRAPPLE 108 #define SKILL_CYBER_IMPLANTS 109 #define SKILL_FIREARMS 110 #define SKILL_PISTOLS 111 #define SKILL_RIFLES 112 #define SKILL_SHOTGUNS 113 #define SKILL_ASSAULT_RIFLES 114 #define SKILL_SMG 115 #define SKILL_GRENADE_LAUNCHERS 116 #define SKILL_TASERS 117 #define SKILL_GUNNERY 118 #define SKILL_MACHINE_GUNS 119 #define SKILL_MISSILE_LAUNCHERS 120 #define SKILL_ASSAULT_CANNON 121 #define SKILL_ARTILLERY 122 #define SKILL_PROJECTILES 123 #define SKILL_BOWS 124 #define SKILL_CROSSBOWS 125 #define SKILL_THROWING_WEAPONS 126 #define SKILL_NONAERODYNAMIC 127 #define SKILL_AERODYNAMIC 128 #define SKILL_DEMOLITIONS 129 /* non-combat oriented skills */ #define SKILL_COMPUTER 130 #define SKILL_ELECTRONICS 131 #define SKILL_COMPUTER_THEORY 132 #define SKILL_BIOTECH 133 #define SKILL_MEDICAL 134 #define SKILL_CYBERSURGERY 135 #define SKILL_BIOLOGY 136 #define SKILL_LEADERSHIP 137 #define SKILL_INTERROGATION 138 #define SKILL_NEGOTIATION 139 #define SKILL_MAGICAL_THEORY 140 #define SKILL_CONJURING 141 #define SKILL_SORCERY 142 #define SKILL_SHAMANIC_STUDIES 143 #define SKILL_CORPORATE_ETIQUETTE 144 #define SKILL_MEDIA_ETIQUETTE 145 #define SKILL_STREET_ETIQUETTE 146 #define SKILL_TRIBAL_ETIQUETTE 147 #define SKILL_ELF_ETIQUETTE 148 /* reserved skills -- do not change */ #define SKILL_BACKSTAB 149 #define SKILL_BASH 150 #define SKILL_HIDE 151 #define SKILL_KICK 152 #define SKILL_PICK_LOCK 153 #define SKILL_PUNCH 154 #define SKILL_RESCUE 155 #define SKILL_SNEAK 156 #define SKILL_STEAL 157 #define SKILL_TRACK 158 /* more non-combat skills */ #define SKILL_CLIMBING 160 /* concentration of athletics */ #define SKILL_PERCEPTION 161 #define SKILL_COMBAT_SENSE 162 #define SKILL_REFLEXES 163 #define SKILL_KILL_HANDS 164 #define SKILL_RESISTANCE 165 /* new skills may be added here up to MAX_SKILLS (200) */ /* mobile and object spells and skills */ #define SPELL_IDENTIFY 201 #define SPELL_FIRE_BREATH 202 #define SPELL_GAS_BREATH 203 #define SPELL_FROST_BREATH 204 #define SPELL_ACID_BREATH 205 #define SPELL_LIGHTNING_BREATH 206 /* new mobile/object spells/skills can be inserted here up to 299 */ #define TOP_SPELL_DEFINE 299 /* object-spell related defines */ #define SPELL_TYPE_SPELL 0 #define SPELL_TYPE_POTION 1 #define SPELL_TYPE_WAND 2 #define SPELL_TYPE_STAFF 3 #define SPELL_TYPE_SCROLL 4 /* ban defines -- do not change */ #define BAN_NOT 0 #define BAN_NEW 1 #define BAN_SELECT 2 #define BAN_ALL 3 #define BANNED_SITE_LENGTH 50 /* weapon attack types */ #define TYPE_HIT 300 // melee #define TYPE_STING 301 #define TYPE_WHIP 302 #define TYPE_SLASH 303 #define TYPE_BITE 304 #define TYPE_BLUDGEON 305 #define TYPE_CRUSH 306 #define TYPE_POUND 307 #define TYPE_CLAW 308 #define TYPE_MAUL 309 #define TYPE_THRASH 310 #define TYPE_PIERCE 311 #define TYPE_PUNCH 312 #define TYPE_STAB 313 #define TYPE_TASER 314 #define TYPE_SHURIKEN 315 // throwing weapons - 1 room #define TYPE_THROWING_KNIFE 316 #define TYPE_ARROW 317 #define TYPE_HAND_GRENADE 318 // explosive weapons #define TYPE_GRENADE_LAUNCHER 319 #define TYPE_ROCKET 320 #define TYPE_PISTOL 321 // gun #define TYPE_BLAST 322 #define TYPE_RIFLE 323 #define TYPE_SHOTGUN 324 #define TYPE_MACHINE_GUN 325 #define TYPE_CANNON 326 #define TYPE_BIFURCATE 327 /* new attack types can be added here - up to TYPE_SUFFERING */ /* death messages */ #define TYPE_SUFFERING 399 #define TYPE_EXPLOSION 400 #define TYPE_SCATTERING 401 #define TYPE_FALL 402 #define TYPE_DROWN 403 #define TYPE_ALLERGY 404 #define TYPE_BIOWARE 405 #define TYPE_RECOIL 406 /* all those attack types can be used plus these for damage types to * objects */ /* magic attack types */ #define TYPE_COMBAT_SPELL 500 #define TYPE_MANIPULATION_SPELL 501 /* used in void hit, for counter attacks */ #define TYPE_MELEE 1234 /* combat spell effects */ #define SPELL_EFFECT_NONE 0 #define SPELL_EFFECT_ACID 1 #define SPELL_EFFECT_AIR 2 #define SPELL_EFFECT_EARTH 3 #define SPELL_EFFECT_FIRE 4 #define SPELL_EFFECT_ICE 5 #define SPELL_EFFECT_LIGHTNING 6 #define SPELL_EFFECT_WATER 7 /* detection spell effects */ #define SPELL_EFFECT_ANALYZE_MAGIC 0 #define SPELL_EFFECT_ANALYZE_DEVICE 1 #define SPELL_EFFECT_ANALYZE_PERSON 2 #define SPELL_EFFECT_CLAIRVOYANCE 3 #define SPELL_EFFECT_COMBAT_SENSE 4 #define SPELL_EFFECT_DETECT_ALIGN 5 #define SPELL_EFFECT_DETECT_INVIS 6 #define SPELL_EFFECT_DETECT_MAGIC 7 /* health spell effects */ #define SPELL_EFFECT_ANTIDOTE 0 #define SPELL_EFFECT_CURE 1 #define SPELL_EFFECT_DECREASE_BOD 2 #define SPELL_EFFECT_DECREASE_CHA 3 #define SPELL_EFFECT_DECREASE_INT 4 #define SPELL_EFFECT_DECREASE_QUI 5 #define SPELL_EFFECT_DECREASE_REA 6 #define SPELL_EFFECT_DECREASE_STR 7 #define SPELL_EFFECT_DECREASE_WIL 8 #define SPELL_EFFECT_HEAL 9 #define SPELL_EFFECT_INCREASE_BOD 10 #define SPELL_EFFECT_INCREASE_CHA 11 #define SPELL_EFFECT_INCREASE_INT 12 #define SPELL_EFFECT_INCREASE_QUI 13 #define SPELL_EFFECT_INCREASE_REA 14 #define SPELL_EFFECT_INCREASE_REFLEX 15 #define SPELL_EFFECT_INCREASE_STR 16 #define SPELL_EFFECT_INCREASE_WIL 17 #define SPELL_EFFECT_RESIST_PAIN 18 #define SPELL_EFFECT_STABILIZE 19 /* illusion spell effects */ #define SPELL_EFFECT_CHAOS 0 #define SPELL_EFFECT_CONFUSION 1 #define SPELL_EFFECT_IMP_INVIS 2 #define SPELL_EFFECT_INVIS 3 #define SPELL_EFFECT_OVERSTIM 4 /* manipulation spell effects */ #define SPELL_EFFECT_ARMOR 8 #define SPELL_EFFECT_LIGHT 9 #define SPELL_EFFECT_INFLUENCE 10 /* object-related defines */ /* item types: used by obj_data.obj_flags.type_flag */ #define ITEM_LIGHT 1 /* Item is a light source */ #define ITEM_SCROLL 2 /* Item is a scroll */ #define ITEM_WAND 3 /* Item is a wand */ #define ITEM_STAFF 4 /* Item is a staff */ #define ITEM_WEAPON 5 /* Item is a weapon */ #define ITEM_FIREWEAPON 6 /* Item is bow/xbow */ #define ITEM_MISSILE 7 /* Item is arrow/bolt */ #define ITEM_TREASURE 8 /* Item is a treasure, not nuyen */ #define ITEM_ARMOR 9 /* Item is armor */ #define ITEM_POTION 10 /* Item is a potion */ #define ITEM_WORN 11 /* Item is worn, not armor */ #define ITEM_OTHER 12 /* Misc object */ #define ITEM_TRASH 13 /* Trash - shopkeeps won't buy */ #define ITEM_DOCWAGON 14 /* Item is a docwagon contract */ #define ITEM_CONTAINER 15 /* Item is a container */ #define ITEM_RADIO 16 /* Item is radio */ #define ITEM_DRINKCON 17 /* Item is a drink container */ #define ITEM_KEY 18 /* Item is a key */ #define ITEM_FOOD 19 /* Item is food */ #define ITEM_MONEY 20 /* Item is money (nuyen/credstick) */ #define ITEM_PHONE 21 /* Item is a phone */ #define ITEM_BIOWARE 22 /* Item is bioware */ #define ITEM_FOUNTAIN 23 /* Item is a fountain */ #define ITEM_CYBERWARE 24 /* Item is cyberware */ #define ITEM_CYBERDECK 25 /* Item is a cyberdeck */ #define ITEM_PROGRAM 26 /* Item is a program */ #define ITEM_GUN_CLIP 27 /* Item is a gun clip */ #define ITEM_GUN_ACCESSORY 28 /* Item is a gun accessory */ #define ITEM_SPELL_FORMULA 29 /* Item is a spell formula */ #define ITEM_WORKING_GEAR 30 /* kit, shop, facility */ #define ITEM_FOCUS 31 /* magical foci of various types */ #define ITEM_PATCH 32 /* type of slap patch */ #define ITEM_CLIMBING 33 /* climbing gear */ #define ITEM_QUIVER 34 /* holds projectiles */ #define ITEM_DECK_ACCESSORY 35 /* decking accessory */ /* take/wear flags: used by obj_data.obj_flags.wear_flags */ #define ITEM_WEAR_TAKE (1 << 0) /* Item can be takes */ #define ITEM_WEAR_FINGER (1 << 1) /* Can be worn on finger */ #define ITEM_WEAR_NECK (1 << 2) /* Can be worn around neck */ #define ITEM_WEAR_BODY (1 << 3) /* Can be worn on body */ #define ITEM_WEAR_HEAD (1 << 4) /* Can be worn on head */ #define ITEM_WEAR_LEGS (1 << 5) /* Can be worn on legs */ #define ITEM_WEAR_FEET (1 << 6) /* Can be worn on feet */ #define ITEM_WEAR_HANDS (1 << 7) /* Can be worn on hands */ #define ITEM_WEAR_ARMS (1 << 8) /* Can be worn on arms */ #define ITEM_WEAR_SHIELD (1 << 9) /* Can be used as a shield */ #define ITEM_WEAR_ABOUT (1 << 10) /* Can be worn about body */ #define ITEM_WEAR_WAIST (1 << 11) /* Can be worn around waist */ #define ITEM_WEAR_WRIST (1 << 12) /* Can be worn on wrist */ #define ITEM_WEAR_WIELD (1 << 13) /* Can be wielded */ #define ITEM_WEAR_HOLD (1 << 14) /* Can be held */ #define ITEM_WEAR_EYES (1 << 15) /* worn on eyes */ #define ITEM_WEAR_EAR (1 << 16) /* can be worn on/in ear */ /* extra object flags: used by obj_data.obj_flags.extra_flags */ #define ITEM_GLOW (1 << 0) /* Item is glowing */ #define ITEM_HUM (1 << 1) /* Item is humming */ #define ITEM_NORENT (1 << 2) /* Item cannot be rented */ #define ITEM_NODONATE (1 << 3) /* Item cannot be donated */ #define ITEM_NOINVIS (1 << 4) /* Item cannot be made invis */ #define ITEM_INVISIBLE (1 << 5) /* Item is invisible */ #define ITEM_MAGIC (1 << 6) /* Item is magical */ #define ITEM_NODROP (1 << 7) /* Item is cursed: can't drop */ #define ITEM_BLESS (1 << 8) /* Item is blessed */ #define ITEM_NOSELL (1 << 9) /* Shopkeepers won't touch it */ #define ITEM_CORPSE (1 << 10) /* Item is a corpse */ #define ITEM_GODONLY (1 << 11) /* Only a god may use this item */ #define ITEM_TWOHANDS (1 << 12) /* weapon takes 2 hands to use */ #define ITEM_STARTER (1 << 13) /* REMOVE!!!! item is from character gen */ #define ITEM_VOLATILE (1 << 14) /* connected item loaded in ip zone */ #define ITEM_IMMLOAD (1 << 15) /* decays after timer runs out */ /* always keep immload the last */ /* material type for item */ #define ITEM_NONE 0 #define ITEM_PLASTIC 1 #define ITEM_IRON 2 #define ITEM_SILVER 3 /* decking accessory types */ #define TYPE_FILE 0 #define TYPE_UPGRADE 1 /* types of cyberware for value[2] on a cyberware object */ #define CYB_DATAJACK 1 /* program types */ #define PROG_BOD 1 #define PROG_EVASION 2 #define PROG_MASKING 3 #define PROG_SENSOR 4 #define PROG_ATTACK 5 #define PROG_SLOW 6 #define PROG_MEDIC 7 #define PROG_MIRRORS 8 #define PROG_SHIELD 9 #define PROG_SMOKE 10 #define PROG_ANALYZE 11 #define PROG_DECRYPT 12 #define PROG_DECEPTION 13 #define PROG_RELOCATE 14 #define PROG_SLEAZE 15 /* modifier constants used with obj affects ('A' fields) */ #define APPLY_NONE 0 /* No effect */ #define APPLY_BOD 1 /* Apply to Body */ #define APPLY_QUI 2 /* Apply to Quickness */ #define APPLY_STR 3 /* Apply to Strength */ #define APPLY_CHA 4 /* Apply to Charisma */ #define APPLY_INT 5 /* Apply to Intelligence */ #define APPLY_WIL 6 /* Apply to Willpower */ #define APPLY_ESS 7 /* Apply to Essence */ #define APPLY_MAG 8 /* Apply to Magic */ #define APPLY_REA 9 /* Apply to Reaction */ #define APPLY_AGE 10 /* Apply to age */ #define APPLY_CHAR_WEIGHT 11 /* Apply to weight */ #define APPLY_CHAR_HEIGHT 12 /* Apply to height */ #define APPLY_MENTAL 13 /* Apply to max mental */ #define APPLY_PHYSICAL 14 /* Apply to max physical points */ #define APPLY_MOVE 15 /* Apply to max move points */ #define APPLY_BALLISTIC 16 /* Apply to Ballistic armor */ #define APPLY_IMPACT 17 /* Apply to Impact armor rating */ #define APPLY_ASTRAL_POOL 18 /* Apply to Astral Pool */ #define APPLY_DEFENSE_POOL 19 /* Apply to Defense Pool */ #define APPLY_COMBAT_POOL 20 /* Apply to Dodge Pool */ #define APPLY_HACKING_POOL 21 /* Apply to Hacking Pool */ #define APPLY_MAGIC_POOL 22 /* Apply to Magic Pool */ #define APPLY_INITIATIVE_DICE 23 /* Apply to Initiative Dice */ #define APPLY_TARGET 24 /* Apply to Target Numbers */ /* container flags - value[1] */ #define CONT_CLOSEABLE (1 << 0) /* Container can be closed */ #define CONT_PICKPROOF (1 << 1) /* Container is pickproof */ #define CONT_CLOSED (1 << 2) /* Container is closed */ #define CONT_LOCKED (1 << 3) /* Container is locked */ /* some different kind of liquids for use in values of drink containers */ #define LIQ_WATER 0 #define LIQ_BEER 1 #define LIQ_WINE 2 #define LIQ_ALE 3 #define LIQ_DARKALE 4 #define LIQ_WHISKY 5 #define LIQ_LEMONADE 6 #define LIQ_FIREBRT 7 #define LIQ_LOCALSPC 8 #define LIQ_SLIME 9 #define LIQ_MILK 10 #define LIQ_TEA 11 #define LIQ_COFFE 12 #define LIQ_BLOOD 13 #define LIQ_SALTWATER 14 #define LIQ_CLEARWATER 15 #define LIQ_TEQUILA 16 #define LIQ_HOTSAUCE 17 /* focus values */ #define VALUE_FOCUS_TYPE 0 #define VALUE_FOCUS_RATING 1 #define VALUE_FOCUS_CAT 2 #define VALUE_FOCUS_BONDED 5 /* #define VALUE_FOCUS_WEAPON_VNUM 7 */ #define VALUE_FOCUS_SPECIFY 8 #define VALUE_FOCUS_CHAR_IDNUM 9 /* types of foci */ #define FOCI_SPELL 0 #define FOCI_SPELL_CAT 1 #define FOCI_SPIRIT 2 #define FOCI_POWER 3 #define FOCI_LOCK 4 #define FOCI_WEAPON 5 /* ANTI-LAR ADDITION */ #define CHAN_SAY 0 #define CHAN_EMOTE 1 #define CHAN_NEWBIE 2 #define CHAN_RADIO 3 #define CHAN_OOC 4 #define CHAN_OSAY 5 #define CHAN_WT 6 #define CHAN_WF 7 #define CHAN_TELL 8 #define CHAN_WHISPER 9 #define CHAN_TITLE 10 /* Only added as a CHAN for consistancy */ #define CHAN_SHOUT 11 /* End ANTI-LAR */ /* house value defines */ #define MAX_HOUSES 100 #define MAX_GUESTS 10 #define NORMAL_MAX_GUESTS 2 #define OBJS_PER_LIFESTYLE 35 #define HOUSE_LOW 0 #define HOUSE_MIDDLE 1 #define HOUSE_HIGH 2 #define HOUSE_LUXURY 3 /* alias defines */ #define ALIAS_SIMPLE 0 #define ALIAS_COMPLEX 1 #define ALIAS_SEP_CHAR ';' #define ALIAS_VAR_CHAR '$' #define ALIAS_GLOB_CHAR '*' /* Subcommands section: Originally from interpreter.h */ /* directions */ #define SCMD_NORTH 1 #define SCMD_NORTHEAST 2 #define SCMD_EAST 3 #define SCMD_SOUTHEAST 4 #define SCMD_SOUTH 5 #define SCMD_SOUTHWEST 6 #define SCMD_WEST 7 #define SCMD_NORTHWEST 8 #define SCMD_UP 9 #define SCMD_DOWN 10 /* do_gen_ps */ #define SCMD_INFO 0 #define SCMD_HANDBOOK 1 #define SCMD_CREDITS 2 #define SCMD_NEWS 3 #define SCMD_WIZLIST 4 #define SCMD_POLICIES 5 #define SCMD_VERSION 6 #define SCMD_IMMLIST 7 #define SCMD_MOTD 8 #define SCMD_IMOTD 9 #define SCMD_CLEAR 10 #define SCMD_WHOAMI 11 /* do_wizutil */ #define SCMD_REROLL 0 #define SCMD_PARDON 1 #define SCMD_NOTITLE 2 #define SCMD_SQUELCH 3 #define SCMD_FREEZE 4 #define SCMD_THAW 5 #define SCMD_UNAFFECT 6 /* do_say */ #define SCMD_SAY 0 #define SCMD_OSAY 1 /* do_spec_com */ #define SCMD_WHISPER 0 #define SCMD_ASK 1 /* do_gen_com */ #define SCMD_SHOUT 0 #define SCMD_NEWBIE 1 #define SCMD_OOC 2 /* do_last */ #define SCMD_LAST 0 #define SCMD_FINGER 1 /* do_shutdown */ #define SCMD_SHUTDOW 0 #define SCMD_SHUTDOWN 1 /* do_quit */ #define SCMD_QUI 0 #define SCMD_QUIT 1 /* do_date */ #define SCMD_DATE 0 #define SCMD_UPTIME 1 /* do disconnect */ #define SCMD_DISCONNECT 0 #define SCMD_MORTED 1 /* do wiztitle */ #define SCMD_WHOTITLE 0 #define SCMD_PRETITLE 1 /* do_commands */ #define SCMD_COMMANDS 0 #define SCMD_SOCIALS 1 /* do_drop */ #define SCMD_DROP 0 #define SCMD_JUNK 1 #define SCMD_DONATE 2 #define SCMD_UPLOAD 3 /* do_gen_write */ #define SCMD_BUG 0 #define SCMD_TYPO 1 #define SCMD_IDEA 2 /* do_look */ #define SCMD_LOOK 0 #define SCMD_READ 1 /* do_qcomm */ #define SCMD_QSAY 0 #define SCMD_QECHO 1 /* do_pour */ #define SCMD_POUR 0 #define SCMD_FILL 1 /* do_poof */ #define SCMD_POOFIN 0 #define SCMD_POOFOUT 1 /* do_astral */ #define SCMD_PROJECT 0 #define SCMD_PERCEIVE 1 /* do_hit */ #define SCMD_HIT 0 #define SCMD_MURDER 1 #define SCMD_KILL 2 /* do_eat */ #define SCMD_EAT 0 #define SCMD_TASTE 1 #define SCMD_DRINK 2 #define SCMD_SIP 3 /* do_use */ #define SCMD_USE 0 #define SCMD_QUAFF 1 #define SCMD_RECITE 2 /* do_echo */ #define SCMD_ECHO 0 #define SCMD_EMOTE 1 #define SCMD_XECHO 2 #define SCMD_XEMOTE 3 /* do_gen_door */ #define SCMD_OPEN 0 #define SCMD_CLOSE 1 #define SCMD_UNLOCK 2 #define SCMD_LOCK 3 #define SCMD_PICK 4 /* matrix subcommands */ #define SCMD_INSTALL 1 #define SCMD_UNINSTALL 2 #define SCMD_DOWNLOAD 3 /* do_skills */ #define SCMD_SKILLS 0 #define SCMD_ABILITIES 1 /* do_time */ #define SCMD_NORMAL 0 #define SCMD_PRECISE 1 /* END SUBCOMMANDS SECTION */ /* modes of connectedness: used by descriptor_data.state */ #define CON_PLAYING 0 /* Playing - Nominal state */ #define CON_CLOSE 1 /* Disconnecting */ #define CON_GET_NAME 2 /* By what name ..? */ #define CON_NAME_CNFRM 3 /* Did I get that right, x? */ #define CON_PASSWORD 4 /* Password: */ #define CON_NEWPASSWD 5 /* Give me a password for x */ #define CON_CNFPASSWD 6 /* Please retype password: */ #define CON_CCREATE 7 #define CON_RMOTD 8 /* PRESS RETURN after MOTD */ #define CON_MENU 9 /* Your choice: (main menu) */ #define CON_EXDESC 10 /* Enter a new description: */ #define CON_CHPWD_GETOLD 11 /* Changing passwd: get old */ #define CON_CHPWD_GETNEW 12 /* Changing passwd: get new */ #define CON_CHPWD_VRFY 13 /* Verify new password */ #define CON_DELCNF1 14 /* Delete confirmation 1 */ #define CON_DELCNF2 15 /* Delete confirmation 2 */ #define CON_QMENU 16 /* quit menu */ #define CON_QGETOLDPW 17 #define CON_QGETNEWPW 18 #define CON_QVERIFYPW 19 #define CON_QDELCONF1 20 #define CON_QDELCONF2 21 #define CON_SPELL_CREATE 22 /* Spell creation menus */ #define CON_PCUSTOMIZE 23 /* customize persona description menu */ #define CON_ACUSTOMIZE 24 /* customize reflection description menu */ #define CON_IEDIT 25 /* olc edit mode */ #define CON_REDIT 26 /* olc edit mode */ #define CON_MEDIT 27 #define CON_QEDIT 28 #define CON_SHEDIT 29 #define CON_ZEDIT 30 #define CON_IDCONING 31 /* waiting for ident connection */ #define CON_IDCONED 32 /* ident connection complete */ #define CON_IDREADING 33 /* waiting to read ident sock */ #define CON_IDREAD 34 /* ident results read */ #define CON_ASKNAME 35 /* Ask user for name */ /* chargen connected modes */ #define CCR_AWAIT_CR -1 #define CCR_SEX 0 #define CCR_RACE 1 #define CCR_TYPE 2 #define CCR_ARCHETYPE 3 #define CCR_TOTEM 4 #define CCR_PRIORITY 5 #define CCR_ASSIGN 6 #define CCR_EQUIP 7 #define CCR_WEAPON 8 #define CCR_ARMOR 9 #define CCR_CYBERDECK 10 #define CCR_CYBERWARE 11 #define CCR_SPELLS 12 #define CCR_FORCE 13 #define CCR_TRADITION 14 /* priority choosing chargen modes */ #define PR_NONE 0 #define PR_ATTRIB 1 #define PR_MAGIC 2 #define PR_RESOURCE 3 #define PR_SKILL 4 #define PR_RACE 5 /* arbitrary constants used by index_boot() (must be unique) */ #define DB_BOOT_WLD 0 #define DB_BOOT_MOB 1 #define DB_BOOT_OBJ 2 #define DB_BOOT_ZON 3 #define DB_BOOT_SHP 4 #define DB_BOOT_QST 5 /* Defines for sending text */ #define TO_ROOM 1 #define TO_VICT 2 #define TO_NOTVICT 3 #define TO_CHAR 4 #define TO_ROLLS 5 #define TO_SLEEP 128 /* to char, even if sleeping */ /* Boards */ #define NUM_OF_BOARDS 22 /* change if needed! */ #define MAX_BOARD_MESSAGES 85 /* arbitrary -- change if needed */ #define MAX_MESSAGE_LENGTH 5120 /* arbitrary -- change if needed */ #define INDEX_SIZE ((NUM_OF_BOARDS*MAX_BOARD_MESSAGES) + 5) /* teacher modes */ #define NEWBIE 0 #define AMATEUR 1 #define ADVANCED 2 /* sun state for weather_data */ #define SUN_DARK 0 #define SUN_RISE 1 #define SUN_LIGHT 2 #define SUN_SET 3 /* sky conditions for weather_data */ #define SKY_CLOUDLESS 0 #define SKY_CLOUDY 1 #define SKY_RAINING 2 #define SKY_LIGHTNING 3 /* rent codes */ #define RENT_UNDEF 0 #define RENT_CRASH 1 #define RENT_RENTED 2 #define RENT_CRYO 3 #define RENT_FORCED 4 #define RENT_TIMEDOUT 5 /* miscellaneous value defines */ #define OPT_USEC 100000 /* 10 passes per second */ #define PASSES_PER_SEC (1000000 / OPT_USEC) #define RL_SEC * PASSES_PER_SEC #define PULSE_ZONE (10 RL_SEC) #define PULSE_MOBILE (10 RL_SEC) #define PULSE_VIOLENCE (1 RL_SEC) #define PULSE_HTML (30 RL_SEC) #define PULSE_INITIATIVE (4 * PULSE_VIOLENCE) #define SMALL_BUFSIZE 1024 #define LARGE_BUFSIZE (12 * 1024) #define GARBAGE_SPACE 32 #define MAX_STRING_LENGTH 8192 #define MAX_INPUT_LENGTH 256 /* Max length per *line* of input */ #define MAX_RAW_INPUT_LENGTH 512 /* Max size of *raw* input */ #define MAX_MESSAGES 100 #define MAX_NAME_LENGTH 20 /* Used in char_file_u *DO*NOT*CHANGE* */ #define MAX_PWD_LENGTH 10 /* Used in char_file_u *DO*NOT*CHANGE* */ #define MAX_TITLE_LENGTH 50 /* Used in char_file_u *DO*NOT*CHANGE* */ #define HOST_LENGTH 30 /* Used in char_file_u *DO*NOT*CHANGE* */ #define LINE_LENGTH 80 /* Used in char_file_u *DO*NOT*CHANGE* */ #define EXDSCR_LENGTH 400 /* Used in char_file_u *DO*NOT*CHANGE* */ #define MAX_TONGUE 3 /* Used in char_file_u *DO*NOT*CHANGE* */ #define MAX_SKILLS 200 /* Used in char_file_u *DO*NOT*CHANGE* */ #define MAX_AFFECT 32 /* Used in char_file_u *DO*NOT*CHANGE* */ #define MAX_OBJ_AFFECT 6 /* Used in obj_file_elem *DO*NOT*CHANGE* */ #define IDENT_LENGTH 8 /* ban struct */ struct ban_list_element { char site[BANNED_SITE_LENGTH+1]; int type; time_t date; char name[MAX_NAME_LENGTH+1]; struct ban_list_element *next; }; #endif