Below you can find a lot of tables that can be used when building
areas or playing around with mobiles, players or objects.
There are also a lot of tables not directly used in areas, but that
can be used when creating new spells, skills, etc. Some are also
rarely used anywhere else than in the code and are just given for complecity.
Note: It is okay if this information startles
you at first, because it is a LOT of bogus :). These numbers are to be
used when building an area. You need to LEARN these numbers, because the
builder won't help you at all times.
Note: A little note on bitvectors: those of you
out there that happen to fiddle some code out of their keyboards once in
while might know what this is: they are numbers representing one bit in
a double-word (32-bits) turned on. E.g. the number 32 represents the 5th bit
active and the rest set to 0. When you want to use more than 1 flag, just
add the values together!
Item types and values
Item types and values
| Name used in code |
Assigned value |
Use of value 1 |
Use of value 2 |
Use of value 3 |
Use of value 4 |
| ITEM_WEAPON |
1 |
condition |
number of dice |
size of dice |
type of weapon (see: FG_xxxx) |
| ITEM_ARMOR |
2 |
condition |
type of armor (see: ARMOR_xxxx) |
modifier |
unused |
| ITEM_FOOD |
3 |
condition |
poisoned |
hours of value |
unused |
| ITEM_DRINK |
4 |
capacity |
current quantity |
liquid type (see: LIQ_xxxx) |
poisoned |
| ITEM_LIGHT |
5 |
hours of light remaining (0=dead) |
unused |
unused |
unused |
| ITEM_TRASH |
6 |
unused |
unused |
unused |
unused |
| ITEM_MONEY |
7 |
amount |
unused |
unused |
unused |
| ITEM_SPECIAL |
8 |
unused |
unused |
unused |
unused |
| ITEM_GEM |
9 |
mana type (unused) |
spell level |
mana when charged |
unused |
| ITEM_CONTAINER |
10 |
unused |
unused |
unused |
unused |
| ITEM_CORPSE |
11 |
unused |
unused |
unused |
unused |
| ITEM_FOUNTAIN |
12 |
unused |
unused |
liquid type (see: LIQ_xxxx) |
unused |
| ITEM_BLOOD |
13 |
direction (see: DIR_xxxx) |
unused |
unused |
unused |
| ITEM_PORTAL |
14 |
unused |
unused |
unused |
unused |
| ITEM_KEY |
15 |
unique key number |
unused |
unused |
unused |
Constants
Wearing positions
| Name used in code |
Assigned value |
| WEAR_RFINGER |
1 |
| WEAR_LFINGER |
2 |
| WEAR_NECK1 |
3 |
| WEAR_NECK2 |
4 |
| WEAR_BODY |
5 |
| WEAR_HEAD |
6 |
| WEAR_LEGS |
7 |
| WEAR_FEET |
8 |
| WEAR_HANDS |
9 |
| WEAR_ARMS |
10 |
| WEAR_SHIELD |
11 |
| WEAR_ABOUT |
12 |
| WEAR_WAIST |
13 |
| WEAR_RWRIST |
14 |
| WEAR_LWRIST |
15 |
| WEAR_FLOAT |
16 |
| WEAR_RHAND |
17 |
| WEAR_LHAND |
18 |
| WEAR_RSHOULDER |
19 |
| WEAR_LSHOULDER |
20 |
| WEAR_FACE |
21 |
| WEAR_REAR |
22 |
| WEAR_LEAR |
23 |
| WEAR_RANKLE |
24 |
| WEAR_LANKLE |
25 |
| WEAR_EYES |
26 |
Weapon types
| Name used in code |
Assigned value |
| FG_NONE |
0 |
| FG_PUNCH |
1 |
| FG_SLASH |
2 |
| FG_PIERCE |
3 |
| FG_CLEAVE |
4 |
| FG_BLAST |
5 |
| FG_CRUSH |
6 |
| FG_BITE |
7 |
| FG_CLAW |
8 |
| FG_WHIP |
9 |
| FG_STAB |
10 |
| FG_GAZE |
11 |
| FG_BREATH |
12 |
| FG_STING |
13 |
Armor types
| Name used in code |
Assigned value |
| ARMOR_HAC |
1 |
| ARMOR_BAC |
2 |
| ARMOR_AAC |
3 |
| ARMOR_LAC |
4 |
Directions
| Name used in code |
Assigned value |
| DIR_NORTH |
1 |
| DIR_EAST |
2 |
| DIR_SOUTH |
3 |
| DIR_WEST |
4 |
| DIR_DOWN |
5 |
| DIR_UP |
6 |
| DIR_SOMEWHERE |
7 |
Conditions
| Name used in code |
Assigned value |
| COND_DRUNK |
1 |
| COND_FULL |
2 |
| COND_THIRST |
3 |
| COND_CAFFEINE |
4 |
| COND_HIGH |
5 |
| COND_MAX |
6 |
Liquid types
| Name used in code |
Assigned value |
| LIQ_WATER |
1 |
| LIQ_BEER |
2 |
| LIQ_ALE |
3 |
| LIQ_WHISKEY |
4 |
| LIQ_VODKA |
5 |
| LIQ_WINE |
6 |
| LIQ_JUICE |
7 |
| LIQ_MILK |
8 |
| LIQ_TEA |
9 |
| LIQ_COFFEE |
10 |
| LIQ_COLA |
11 |
| LIQ_SPECIAL |
12 |
| LIQ_MAX |
13 |
Target types
| Name used in code |
Assigned value |
| TARGET_OFF_ATTACK |
1 |
| TARGET_OFF_AREA |
2 |
| TARGET_DEF_SELF |
3 |
| TARGET_DEF_SINGLE |
4 |
| TARGET_DEF_AREA |
5 |
| TARGET_DEF_WORLD |
6 |
| TARGET_OBJECT |
7 |
Positions
| Name used in code |
Assigned value |
| POS_DEAD |
0 |
| POS_MORTAL |
1 |
| POS_INCAP |
2 |
| POS_STUNNED |
3 |
| POS_SLEEPING |
4 |
| POS_MEDITATE |
5 |
| POS_RESTING |
6 |
| POS_SITTING |
7 |
| POS_FIGHTING |
8 |
| POS_STANDING |
9 |
| POS_CASTING |
10 |
| POS_SEARCHING |
11 |
| POS_BACKSTAB |
12 |
| POS_CIRCLE |
13 |
| POS_BASHED |
14 |
Sector types
| Name used in code |
Assigned value |
| SECT_INSIDE |
1 |
| SECT_CITY |
2 |
| SECT_FIELD |
3 |
| SECT_FOREST |
4 |
| SECT_HILLS |
5 |
| SECT_MOUNTAIN |
6 |
| SECT_DESERT |
7 |
| SECT_WATER_SWIM |
8 |
| SECT_WATER_NOSWIM |
9 |
| SECT_UNDERWATER |
10 |
| SECT_OCEANFLOOR |
11 |
| SECT_UNDERGROUND |
12 |
| SECT_AIR |
13 |
| SECT_NOPASSAGE |
14 |
| SECT_UNKNOWN |
15 |
| SECT_MAX |
16 |
Bitvector Tables
NPC flags
| Name used in code |
Bitvector |
Resulting value |
| ACT_NPC |
BV00 |
1 |
| ACT_FLYING |
BV01 |
2 |
| ACT_AGGRESSIVE |
BV02 |
4 |
| ACT_SENTINEL |
BV03 |
8 |
| ACT_SCAVENGER |
BV04 |
16 |
| ACT_STAY_AREA |
BV05 |
32 |
| ACT_HUNTING |
BV06 |
64 |
| ACT_FASTHUNT |
BV07 |
128 |
| ACT_MOBINVIS |
BV08 |
256 |
| ACT_TEACHER |
BV09 |
512 |
| ACT_BANKER |
BV10 |
1024 |
| ACT_SPIRIT |
BV11 |
2048 |
| ACT_NOBASH |
BV12 |
4096 |
| ACT_SHOPKEEP |
BV13 |
8192 |
| ACT_IMMORTAL |
BV14 |
16384 |
| ACT_LOG |
BV15 |
32768 |
| ACT_PROTO |
BV31 |
2147483648 |
Spell affect flags
| Name used in code |
Bitvector |
Resulting value |
| AFF_BLIND |
BV00 |
1 |
| AFF_INVISIBLE |
BV01 |
2 |
| AFF_DETECT_INVIS |
BV02 |
4 |
| AFF_DETECT_HIDDEN |
BV03 |
8 |
| AFF_SANCTUARY |
BV04 |
16 |
| AFF_INFRAVISION |
BV05 |
32 |
| AFF_POISON |
BV06 |
64 |
| AFF_FLYING |
BV07 |
128 |
| AFF_BERSERK |
BV08 |
256 |
| AFF_AQUA_BREATH |
BV09 |
512 |
| AFF_PLAGUE |
BV10 |
1024 |
| AFF_HIDE |
BV11 |
2048 |
| AFF_SNEAK |
BV12 |
4096 |
| AFF_ENCHANT |
BV13 |
8192 |
Area flags
| Name used in code |
Bitvector |
Resulting value |
| AREA_NORESET |
BV00 |
1 |
| AREA_NOPC |
BV01 |
2 |
| AREA_PROTO |
BV02 |
4 |
Player config flags
| Name used in code |
Bitvector |
Resulting value |
| CFG_ASSIST |
BV01 |
2 |
| CFG_AUTOLOOT |
BV02 |
4 |
| CFG_AUTOSAC |
BV03 |
8 |
| CFG_AUTOSCALP |
BV04 |
16 |
| CFG_BLANK |
BV05 |
32 |
| CFG_BRIEF |
BV06 |
64 |
| CFG_ANSI |
BV07 |
128 |
| CFG_PAGER |
BV08 |
256 |
Exit flags
| Name used in code |
Bitvector |
Resulting value |
| EX_ISDOOR |
BV00 |
1 |
| EX_CLOSED |
BV01 |
2 |
| EX_LOCKED |
BV02 |
4 |
| EX_PICKPROOF |
BV03 |
8 |
| EX_SECRET |
BV04 |
16 |
| EX_SWIM |
BV05 |
32 |
| EX_FLY |
BV06 |
64 |
| EX_CLIMB |
BV07 |
128 |
| EX_PORTAL |
BV08 |
256 |
| EX_NOBREAK |
BV09 |
512 |
| EX_NOMOB |
BV10 |
1024 |
| EX_ENTER |
BV11 |
2048 |
| EX_UNDERWATER |
BV12 |
4096 |
Item flags
| Name used in code |
Bitvector |
Resulting value |
| OBJ_NOPICKUP |
BV00 |
1 |
| OBJ_GLOW |
BV01 |
2 |
| OBJ_HUM |
BV02 |
4 |
| OBJ_ANTI_GOOD |
BV03 |
8 |
| OBJ_ANTI_EVIL |
BV04 |
16 |
| OBJ_LOYAL |
BV05 |
32 |
| OBJ_NOREMOVE |
BV06 |
64 |
| OBJ_NODROP |
BV07 |
128 |
| OBJ_CLANOBJECT |
BV08 |
256 |
| OBJ_HIDDEN |
BV09 |
512 |
| OBJ_POISON |
BV10 |
1024 |
| OBJ_MISSILE |
BV11 |
2048 |
| OBJ_NOSAC |
BV12 |
4096 |
| OBJ_NODECAY |
BV13 |
8192 |
| OBJ_PROTO |
BV31 |
2147483648 |
Room flags
| Name used in code |
Bitvector |
Resulting value |
| ROOM_DARK |
BV00 |
1 |
| ROOM_DEATH |
BV01 |
2 |
| ROOM_NOMOB |
BV02 |
4 |
| ROOM_INDOORS |
BV03 |
8 |
| ROOM_GOOD |
BV04 |
16 |
| ROOM_EVIL |
BV05 |
32 |
| ROOM_NOCAST |
BV06 |
64 |
| ROOM_TUNNEL |
BV07 |
128 |
| ROOM_PRIVATE |
BV08 |
256 |
| ROOM_SAFE |
BV09 |
512 |
| ROOM_SOLITARY |
BV10 |
1024 |
| ROOM_NORECALL |
BV11 |
2048 |
| ROOM_NODROPALL |
BV12 |
4096 |
| ROOM_NOSUMMON |
BV13 |
8192 |
| ROOM_CLANSTORE |
BV14 |
16384 |
| ROOM_TELEPORT |
BV15 |
32768 |
| ROOM_NOFLOOR |
BV16 |
65536 |
| ROOM_MANAROOM |
BV17 |
131072 |
| ROOM_NOTRADE |
BV18 |
262144 |
| ROOM_PROTO |
BV31 |
2147483648 |
Player flags
| Name used in code |
Bitvector |
Resulting value |
| PLR_NPC |
BV00 |
1 |
| PLR_FLYCAP |
BV01 |
2 |
| PLR_WIZINVIS |
BV02 |
4 |
| PLR_LINKLESS |
BV04 |
16 |
| PLR_LOADED |
BV05 |
32 |
| PLR_DENY |
BV06 |
64 |
| PLR_FROZEN |
BV07 |
128 |
| PLR_SILENCED |
BV08 |
256 |