Table of Contents

Attack Definitions

server/include/attack.h

Hexadecimals to Decimals

Whenever there is found something like attacktype 1024 (AT_POISON) in an archetype.arc file:

#define AT_PHYSICAL	 0x00000001 /*       1 */
#define AT_MAGIC	 0x00000002 /*       2 */
#define AT_FIRE		 0x00000004 /*       4 */
#define AT_ELECTRICITY	 0x00000008 /*       8 */
#define AT_COLD		 0x00000010 /*      16 */
#define AT_CONFUSION	 0x00000020 /*      32 The spell will use this one */
#define AT_ACID		 0x00000040 /*      64 Things might corrode when hit */
#define AT_DRAIN	 0x00000080 /*     128 */
#define AT_WEAPONMAGIC	 0x00000100 /*     256 Very special, use with care */
#define AT_GHOSTHIT	 0x00000200 /*     512 Attacker dissolves */
#define AT_POISON	 0x00000400 /*    1024 */
#define AT_SLOW		 0x00000800 /*    2048 */
#define AT_PARALYZE	 0x00001000 /*    4096 */
#define AT_TURN_UNDEAD	 0x00002000 /*    8192 */
#define AT_FEAR		 0x00004000 /*   16384 */
#define AT_CANCELLATION  0x00008000 /*   32768 ylitalo@student.docs.uu.se */
#define AT_DEPLETE       0x00010000 /*   65536 vick@bern.docs.uu.se */
#define AT_DEATH         0x00020000 /*  131072 peterm@soda.berkeley.edu */
#define AT_CHAOS         0x00040000 /*  262144 peterm@soda.berkeley.edu*/
#define AT_COUNTERSPELL  0x00080000 /*  524288 peterm@soda.berkeley.edu*/
#define AT_GODPOWER	 0x00100000 /* 1048576  peterm@soda.berkeley.edu */
#define AT_HOLYWORD	 0x00200000 /* 2097152 race selective attack thomas@astro.psu.edu */ 
#define AT_BLIND	 0x00400000 /* 4194304 thomas@astro.psu.edu */ 
#define AT_INTERNAL	 0x00800000 /* Only used for internal calculations */
#define AT_LIFE_STEALING 0x01000000 /* 16777216 for hp drain */
#define AT_DISEASE	 0x02000000 /* 33554432 disease attacktypes */

server/include/spell.h

Whenever there is found something like path_attuned 1024 (PATH_MIND) in an archetype.arc file:

Hexadecimals to Decimals

#define PATH_NULL	0x00000000      /* 0 */
#define PATH_PROT	0x00000001      /* 1 */
#define PATH_FIRE	0x00000002      /* 2 */
#define PATH_FROST	0x00000004	/* 4 */
#define PATH_ELEC	0x00000008      /* 8 */
#define PATH_MISSILE	0x00000010	/* 16 */
#define PATH_SELF	0x00000020      /* 32 */
#define PATH_SUMMON	0x00000040	/* 64 */
#define PATH_ABJURE	0x00000080	/* 128 */
#define PATH_RESTORE	0x00000100	/* 256 */
#define PATH_DETONATE	0x00000200	/* 512 */
#define PATH_MIND	0x00000400	/* 1024 */
#define PATH_CREATE	0x00000800	/* 2048 */
#define PATH_TELE	0x00001000	/* 4096 */
#define PATH_INFO	0x00002000	/* 8192 */
#define PATH_TRANSMUTE	0x00004000	/* 16384 */
#define PATH_TRANSFER	0x00008000	/* 32768 */
#define PATH_TURNING	0x00010000	/* 65536 */
#define PATH_WOUNDING	0x00020000	/* 131072 */
#define PATH_DEATH	0x00040000	/* 262144 */
#define PATH_LIGHT	0x00080000	/* 524288 */
 
#define PATH_SP_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \
				((op->path_repelled & spell->path_attuned) ? 1.25 : 1))