Rot/deity/
Rot/player/
Rot/src/utils/pfiles/
Rot/src/utils/www/
#!/usr/local/bin/perl

$flag{"A"} = 1;
$flag{"B"} = 2;
$flag{"C"} = 4;
$flag{"D"} = 8;
$flag{"E"} = 16;
$flag{"F"} = 32;
$flag{"G"} = 64;
$flag{"H"} = 128;
$flag{"I"} = 256;
$flag{"J"} = 512;
$flag{"K"} = 1024;
$flag{"L"} = 2048;
$flag{"M"} = 4096;
$flag{"N"} = 8192;
$flag{"O"} = 16384;
$flag{"P"} = 32768;
$flag{"Q"} = 65536;
$flag{"R"} = 131072;
$flag{"S"} = 262144;
$flag{"T"} = 524288;
$flag{"U"} = 1048576;
$flag{"V"} = 2097152;
$flag{"W"} = 4194304;
$flag{"X"} = 8388608;
$flag{"Y"} = 16777216;
$flag{"Z"} = 33554432;
$flag{"a"} = 67108864;
$flag{"b"} = 134217728;
$flag{"c"} = 268435456;
$flag{"d"} = 536870912;
$flag{"e"} = 1073741824;
$flag{"f"} = 2147483648;
$flag{"g"} = 4294967296;
$flag{"h"} = 8589934592;
$flag{"i"} = 17179869184;
$flag{"j"} = 34359738368;
$flag{"k"} = 68719476736;
$flag{"l"} = 137438953472;
$flag{"m"} = 274877906944;
$flag{"n"} = 549755813888;

$race{"unique"} = "unique";
$race{"human"} = "human";
$race{"elf"} = "elf";
$race{"dwarf"} = "dwarf";
$race{"giant"} = "giant";
$race{"pixie"} = "pixie";
$race{"halfling"} = "halfling";
$race{"halforc"} = "halforc";
$race{"goblin"} = "goblin";
$race{"halfelf"} = "halfelf";
$race{"avian"} = "avian";
$race{"gnome"} = "gnome";
$race{"draconian"} = "draconian";
$race{"centaur"} = "centaur";
$race{"gnoll"} = "gnoll";
$race{"heucuva"} = "heucuva";
$race{"kenku"} = "kenku";
$race{"minotaur"} = "minotaur";
$race{"satyr"} = "satyr";
$race{"titan"} = "titan";
$race{"bat"} = "bat";
$race{"bear"} = "bear";
$race{"cat"} = "cat";
$race{"centipede"} = "centipede";
$race{"dog"} = "dog";
$race{"doll"} = "doll";
$race{"dragon"} = "dragon";
$race{"fido"} = "fido";
$race{"fox"} = "fox";
$race{"hobgoblin"} = "hobgoblin";
$race{"kobold"} = "kobold";
$race{"lizard"} = "lizard";
$race{"modron"} = "modron";
$race{"orc"} = "orc";
$race{"pig"} = "pig";
$race{"rabbit"} = "rabbit";
$race{"school monster"} = "school monster";
$race{"snake"} = "snake";
$race{"song bird"} = "song bird";
$race{"troll"} = "troll";
$race{"water fowl"} = "water fowl";
$race{"wolf"} = "wolf";
$race{"wyvern"} = "wyvern";

@weapons = 	('exotic',	'sword',	'dagger',
		 'spear',	'mace',		'axe',
		 'flail',	'whip',		'polearm');

$special{"spec_boaz"} = "spec_boaz";
$special{"spec_breath_any"} = "spec_breath_any";
$special{"spec_breath_acid"} = "spec_breath_acid";
$special{"spec_breath_fire"} = "spec_breath_fire";
$special{"spec_breath_frost"} = "spec_breath_frost";
$special{"spec_breath_gas"} = "spec_breath_gas";
$special{"spec_breath_lightning"} = "spec_breath_lightning";
$special{"spec_cast_adept"} = "spec_cast_adept";
$special{"spec_cast_cleric"} = "spec_cast_cleric";
$special{"spec_cast_judge"} = "spec_cast_judge";
$special{"spec_cast_mage"} = "spec_cast_mage";
$special{"spec_cast_undead"} = "spec_cast_undead";
$special{"spec_executioner"} = "spec_executioner";
$special{"spec_fido"} = "spec_fido";
$special{"spec_guard"} = "spec_guard";
$special{"spec_janitor"} = "spec_janitor";
$special{"spec_mayor"} = "spec_mayor";
$special{"spec_poison"} = "spec_poison";
$special{"spec_thief"} = "spec_thief";
$special{"spec_nasty"} = "spec_nasty";
$special{"spec_troll_member"} = "spec_troll_member";
$special{"spec_ogre_member"} = "spec_ogre_member";
$special{"spec_patrolman"} = "spec_patrolman";
$special{"spec_dog_pee"} = "spec_dog_pee";
$special{"spec_cast_clan_adept"} = "spec_cast_clan_adept";


$mobhp{0} = "1d3+5";
$mobhp{1} = "1d5+8";
$mobhp{2} = "2d2+12";
$mobhp{3} = "2d4+16";
$mobhp{4} = "2d6+21";
$mobhp{5} = "3d5+26";
$mobhp{6} = "4d5+35";
$mobhp{7} = "5d5+43";
$mobhp{8} = "5d6+51";
$mobhp{9} = "2d21+59";
$mobhp{10} = "5d8+67";
$mobhp{11} = "4d12+75";
$mobhp{12} = "7d7+82";
$mobhp{13} = "6d9+91";
$mobhp{14} = "6d10+99";
$mobhp{15} = "6d11+107";
$mobhp{16} = "7d10+116";
$mobhp{17} = "7d11+125";
$mobhp{18} = "8d10+135";
$mobhp{19} = "6d15+146";
$mobhp{20} = "9d10+157";
$mobhp{21} = "9d11+168";
$mobhp{22} = "3d39+181";
$mobhp{23} = "10d11+194";
$mobhp{24} = "6d21+208";
$mobhp{25} = "7d19+223";
$mobhp{26} = "6d24+238";
$mobhp{27} = "11d13+254";
$mobhp{28} = "7d23+271";
$mobhp{29} = "7d24+289";
$mobhp{30} = "12d14+307";
$mobhp{31} = "7d27+327";
$mobhp{32} = "4d51+347";
$mobhp{33} = "14d14+367";
$mobhp{34} = "13d16+389";
$mobhp{35} = "7d33+411";
$mobhp{36} = "8d30+434";
$mobhp{37} = "14d17+458";
$mobhp{38} = "9d29+482";
$mobhp{39} = "16d16+508";
$mobhp{40} = "15d18+534";
$mobhp{41} = "13d22+561";
$mobhp{42} = "7d44+589";
$mobhp{43} = "14d21+623";
$mobhp{44} = "17d17+658";
$mobhp{45} = "5d65+687";
$mobhp{46} = "10d35+705";
$mobhp{47} = "10d36+737";
$mobhp{48} = "14d26+769";
$mobhp{49} = "15d25+802";
$mobhp{50} = "16d24+835";
$mobhp{51} = "13d31+869";
$mobhp{52} = "11d38+904";
$mobhp{53} = "20d20+946";
$mobhp{54} = "16d27+977";
$mobhp{55} = "17d26+1015";
$mobhp{56} = "8d59+1054";
$mobhp{57} = "6d81+1095";
$mobhp{58} = "17d28+1136";
$mobhp{59} = "18d27+1178";
$mobhp{60} = "8d65+1221";
$mobhp{61} = "9d59+1266";
$mobhp{62} = "20d26+1313";
$mobhp{63} = "13d42+1361";
$mobhp{64} = "22d24+1418";
$mobhp{65} = "23d24+1463";
$mobhp{66} = "18d32+1516";
$mobhp{67} = "24d24+1572";
$mobhp{68} = "11d56+1629";
$mobhp{69} = "22d27+1696";
$mobhp{70} = "23d27+1752";
$mobhp{71} = "20d32+1817";
$mobhp{72} = "24d27+1884";
$mobhp{73} = "10d69+1956";
$mobhp{74} = "22d31+2029";
$mobhp{75} = "14d51+2107";
$mobhp{76} = "23d31+2188";
$mobhp{77} = "21d35+2272";
$mobhp{78} = "15d51+2361";
$mobhp{79} = "14d56+2454";
$mobhp{80} = "10d81+2552";
$mobhp{81} = "16d51+2654";
$mobhp{82} = "28d29+2762";
$mobhp{83} = "24d35+2874";
$mobhp{84} = "26d33+2992";
$mobhp{85} = "19d47+3117";
$mobhp{86} = "28d32+3247";
$mobhp{87} = "25d37+3384";
$mobhp{88} = "27d35+3527";
$mobhp{89} = "14d71+3678";
$mobhp{90} = "31d31+3848";
$mobhp{91} = "17d61+4003";
$mobhp{92} = "21d49+4190";
$mobhp{93} = "32d33+4361";
$mobhp{94} = "14d80+4553";
$mobhp{95} = "28d39+4767";
$mobhp{96} = "25d45+4979";
$mobhp{97} = "15d80+5187";
$mobhp{98} = "30d39+5433";
$mobhp{99} = "33d37+5662";
$mobhp{100} = "18d71+5917";
$mobhp{101} = "22d59+6184";
$mobhp{102} = "28d47+6463";
$mobhp{103} = "35d38+6755";
$mobhp{104} = "27d51+7060";
$mobhp{105} = "27d52+7380";
$mobhp{106} = "31d46+7713";
$mobhp{107} = "37d39+8061";
$mobhp{108} = "15d101+8425";
$mobhp{109} = "13d119+8804";
$mobhp{110} = "39d39+9201";

$mobdm{0} = "1d2+2";
$mobdm{1} = "1d2+2";
$mobdm{2} = "1d3+2";
$mobdm{3} = "1d3+2";
$mobdm{4} = "1d3+3";
$mobdm{5} = "1d5+3";
$mobdm{6} = "1d5+4";
$mobdm{7} = "2d2+4";
$mobdm{8} = "2d3+5";
$mobdm{9} = "2d3+6";
$mobdm{10} = "2d4+6";
$mobdm{11} = "2d4+7";
$mobdm{12} = "2d5+8";
$mobdm{13} = "2d6+8";
$mobdm{14} = "2d6+9";
$mobdm{15} = "3d4+9";
$mobdm{16} = "3d5+10";
$mobdm{17} = "3d5+11";
$mobdm{18} = "2d9+11";
$mobdm{19} = "2d9+12";
$mobdm{20} = "4d4+13";
$mobdm{21} = "3d7+13";
$mobdm{22} = "3d7+14";
$mobdm{23} = "4d5+14";
$mobdm{24} = "3d8+15";
$mobdm{25} = "3d8+16";
$mobdm{26} = "4d6+16";
$mobdm{27} = "4d6+17";
$mobdm{28} = "5d5+18";
$mobdm{29} = "4d7+18";
$mobdm{30} = "4d7+19";
$mobdm{31} = "3d11+19";
$mobdm{32} = "5d6+20";
$mobdm{33} = "5d6+21";
$mobdm{34} = "3d12+21";
$mobdm{35} = "3d12+22";
$mobdm{36} = "5d7+23";
$mobdm{37} = "2d21+23";
$mobdm{38} = "2d21+24";
$mobdm{39} = "4d10+24";
$mobdm{40} = "5d8+25";
$mobdm{41} = "5d8+26";
$mobdm{42} = "4d11+26";
$mobdm{43} = "4d11+27";
$mobdm{44} = "5d9+28";
$mobdm{45} = "4d12+28";
$mobdm{46} = "4d12+29";
$mobdm{47} = "2d27+29";
$mobdm{48} = "5d10+30";
$mobdm{49} = "6d8+31";
$mobdm{50} = "7d7+31";
$mobdm{51} = "7d7+32";
$mobdm{52} = "5d11+33";
$mobdm{53} = "6d9+33";
$mobdm{54} = "6d9+34";
$mobdm{55} = "4d15+34";
$mobdm{56} = "7d8+35";
$mobdm{57} = "7d8+36";
$mobdm{58} = "6d10+36";
$mobdm{59} = "6d10+37";
$mobdm{60} = "5d13+38";
$mobdm{61} = "7d9+38";
$mobdm{62} = "7d9+39";
$mobdm{63} = "6d11+39";
$mobdm{64} = "8d8+40";
$mobdm{65} = "8d8+41";
$mobdm{66} = "2d39+41";
$mobdm{67} = "2d39+42";
$mobdm{68} = "6d12+43";
$mobdm{69} = "3d27+43";
$mobdm{70} = "3d27+44";
$mobdm{71} = "4d20+44";
$mobdm{72} = "5d16+45";
$mobdm{73} = "6d13+46";
$mobdm{74} = "4d21+46";
$mobdm{75} = "4d21+47";
$mobdm{76} = "5d17+48";
$mobdm{77} = "6d14+48";
$mobdm{78} = "8d10+49";
$mobdm{79} = "9d9+49";
$mobdm{80} = "5d18+50";
$mobdm{81} = "5d18+51";
$mobdm{82} = "6d15+51";
$mobdm{83} = "6d15+52";
$mobdm{84} = "7d13+53";
$mobdm{85} = "2d51+53";
$mobdm{86} = "2d51+54";
$mobdm{87} = "4d25+54";
$mobdm{88} = "5d20+55";
$mobdm{89} = "5d20+56";
$mobdm{90} = "7d14+56";
$mobdm{91} = "8d12+57";
$mobdm{92} = "6d17+58";
$mobdm{93} = "9d11+58";
$mobdm{94} = "9d11+59";
$mobdm{95} = "7d15+59";
$mobdm{96} = "8d13+60";
$mobdm{97} = "10d10+61";
$mobdm{98} = "3d39+61";
$mobdm{99} = "3d39+62";
$mobdm{100} = "5d23+63";
$mobdm{101} = "7d16+63";
$mobdm{102} = "9d12+64";
$mobdm{103} = "8d14+64";
$mobdm{104} = "10d11+65";
$mobdm{105} = "10d11+66";
$mobdm{106} = "7d17+66";
$mobdm{107} = "7d17+67";
$mobdm{108} = "9d13+68";
$mobdm{109} = "8d15+68";
$mobdm{110} = "8d15+69";

$ac{0} = 10;
$ac{1} = 10;
$ac{2} = 9;
$ac{3} = 9;
$ac{4} = 8;
$ac{5} = 8;
$ac{6} = 7;
$ac{7} = 7;
$ac{8} = 6;
$ac{9} = 6;
$ac{10} = 5;
$ac{11} = 5;
$ac{12} = 4;
$ac{13} = 4;
$ac{14} = 3;
$ac{15} = 3;
$ac{16} = 2;
$ac{17} = 2;
$ac{18} = 1;
$ac{19} = 1;
$ac{20} = 0;
$ac{21} = 0;
$ac{22} = -1;
$ac{23} = -1;
$ac{24} = -2;
$ac{25} = -2;
$ac{26} = -3;
$ac{27} = -3;
$ac{28} = -4;
$ac{29} = -4;
$ac{30} = -5;
$ac{31} = -5;
$ac{32} = -6;
$ac{33} = -6;
$ac{34} = -7;
$ac{35} = -7;
$ac{36} = -8;
$ac{37} = -8;
$ac{38} = -9;
$ac{39} = -9;
$ac{40} = -10;
$ac{41} = -10;
$ac{42} = -11;
$ac{43} = -11;
$ac{44} = -12;
$ac{45} = -12;
$ac{46} = -13;
$ac{47} = -13;
$ac{48} = -14;
$ac{49} = -14;
$ac{50} = -15;
$ac{51} = -15;
$ac{52} = -16;
$ac{53} = -16;
$ac{54} = -17;
$ac{55} = -17;
$ac{56} = -18;
$ac{57} = -18;
$ac{58} = -19;
$ac{59} = -19;
$ac{60} = -20;
$ac{61} = -20;
$ac{62} = -21;
$ac{63} = -21;
$ac{64} = -22;
$ac{65} = -22;
$ac{66} = -23;
$ac{67} = -23;
$ac{68} = -24;
$ac{69} = -24;
$ac{70} = -25;
$ac{71} = -25;
$ac{72} = -26;
$ac{73} = -26;
$ac{74} = -27;
$ac{75} = -27;
$ac{76} = -28;
$ac{77} = -28;
$ac{78} = -29;
$ac{79} = -29;
$ac{80} = -30;
$ac{81} = -30;
$ac{82} = -31;
$ac{83} = -31;
$ac{84} = -32;
$ac{85} = -32;
$ac{86} = -33;
$ac{87} = -33;
$ac{88} = -34;
$ac{89} = -34;
$ac{90} = -35;
$ac{91} = -35;
$ac{92} = -36;
$ac{93} = -36;
$ac{94} = -37;
$ac{95} = -37;
$ac{96} = -38;
$ac{97} = -38;
$ac{98} = -39;
$ac{99} = -39;
$ac{100} = -40;
$ac{101} = -40;
$ac{102} = -41;
$ac{103} = -41;
$ac{104} = -42;
$ac{105} = -42;
$ac{106} = -43;
$ac{107} = -43;
$ac{108} = -44;
$ac{109} = -44;
$ac{110} = -45;

$objac{0} = 1;
$objac{1} = 1;
$objac{2} = 1;
$objac{3} = 1;
$objac{4} = 1;
$objac{5} = 1;
$objac{6} = 2;
$objac{7} = 2;
$objac{8} = 2;
$objac{9} = 2;
$objac{10} = 2;
$objac{11} = 3;
$objac{12} = 3;
$objac{13} = 3;
$objac{14} = 3;
$objac{15} = 3;
$objac{16} = 4;
$objac{17} = 4;
$objac{18} = 4;
$objac{19} = 4;
$objac{20} = 4;
$objac{21} = 5;
$objac{22} = 5;
$objac{23} = 5;
$objac{24} = 5;
$objac{25} = 5;
$objac{26} = 6;
$objac{27} = 6;
$objac{28} = 6;
$objac{29} = 6;
$objac{30} = 6;
$objac{31} = 7;
$objac{32} = 7;
$objac{33} = 7;
$objac{34} = 7;
$objac{35} = 7;
$objac{36} = 8;
$objac{37} = 8;
$objac{38} = 8;
$objac{39} = 8;
$objac{40} = 8;
$objac{41} = 8;
$objac{42} = 9;
$objac{43} = 9;
$objac{44} = 9;
$objac{45} = 9;
$objac{46} = 9;
$objac{47} = 10;
$objac{48} = 10;
$objac{49} = 10;
$objac{50} = 10;
$objac{51} = 10;
$objac{52} = 11;
$objac{53} = 11;
$objac{54} = 11;
$objac{55} = 11;
$objac{56} = 11;
$objac{57} = 12;
$objac{58} = 12;
$objac{59} = 12;
$objac{60} = 12;
$objac{61} = 12;
$objac{62} = 13;
$objac{63} = 13;
$objac{64} = 13;
$objac{65} = 13;
$objac{66} = 13;
$objac{67} = 14;
$objac{68} = 14;
$objac{69} = 14;
$objac{70} = 14;
$objac{71} = 14;
$objac{72} = 15;
$objac{73} = 15;
$objac{74} = 15;
$objac{75} = 15;
$objac{76} = 15;
$objac{77} = 16;
$objac{78} = 16;
$objac{79} = 16;
$objac{80} = 16;
$objac{81} = 16;
$objac{82} = 16;
$objac{83} = 17;
$objac{84} = 17;
$objac{85} = 17;
$objac{86} = 17;
$objac{87} = 17;
$objac{88} = 18;
$objac{89} = 18;
$objac{90} = 18;
$objac{91} = 18;
$objac{92} = 18;
$objac{93} = 19;
$objac{94} = 19;
$objac{95} = 19;
$objac{96} = 19;
$objac{97} = 19;
$objac{98} = 20;
$objac{99} = 20;
$objac{100} = 20;
$objac{101} = 20;
$objac{102} = 20;
$objac{103} = 21;
$objac{104} = 21;
$objac{105} = 21;
$objac{106} = 21;
$objac{107} = 21;
$objac{108} = 22;
$objac{109} = 22;
$objac{110} = 22;

$weapdice{0} = "1 4";
$weapdice{1} = "1 5";
$weapdice{2} = "1 6";
$weapdice{3} = "1 7";
$weapdice{4} = "1 9";
$weapdice{5} = "2 3";
$weapdice{6} = "2 4";
$weapdice{7} = "2 5";
$weapdice{8} = "3 3";
$weapdice{9} = "2 6";
$weapdice{10} = "2 7";
$weapdice{11} = "3 4";
$weapdice{12} = "2 8";
$weapdice{13} = "3 5";
$weapdice{14} = "2 9";
$weapdice{15} = "3 6";
$weapdice{16} = "4 4";
$weapdice{17} = "3 7";
$weapdice{18} = "2 12";
$weapdice{19} = "4 5";
$weapdice{20} = "3 8";
$weapdice{21} = "3 9";
$weapdice{22} = "4 6";
$weapdice{23} = "5 5";
$weapdice{24} = "4 7";
$weapdice{25} = "2 17";
$weapdice{26} = "3 11";
$weapdice{27} = "4 8";
$weapdice{28} = "2 19";
$weapdice{29} = "3 12";
$weapdice{30} = "4 9";
$weapdice{31} = "2 21";
$weapdice{32} = "3 14";
$weapdice{33} = "4 10";
$weapdice{34} = "5 8";
$weapdice{35} = "4 11";
$weapdice{36} = "5 9";
$weapdice{37} = "6 7";
$weapdice{38} = "4 12";
$weapdice{39} = "2 27";
$weapdice{40} = "5 10";
$weapdice{41} = "6 8";
$weapdice{42} = "7 7";
$weapdice{43} = "5 11";
$weapdice{44} = "6 9";
$weapdice{45} = "3 21";
$weapdice{46} = "4 15";
$weapdice{47} = "7 8";
$weapdice{48} = "6 10";
$weapdice{49} = "5 13";
$weapdice{50} = "4 17";
$weapdice{51} = "7 9";
$weapdice{52} = "6 11";
$weapdice{53} = "5 14";
$weapdice{54} = "2 39";
$weapdice{55} = "5 15";
$weapdice{56} = "3 27";
$weapdice{57} = "4 20";
$weapdice{58} = "8 9";
$weapdice{59} = "7 11";
$weapdice{60} = "4 21";
$weapdice{61} = "5 17";
$weapdice{62} = "8 10";
$weapdice{63} = "9 9";
$weapdice{64} = "5 18";
$weapdice{65} = "6 15";
$weapdice{66} = "7 13";
$weapdice{67} = "8 11";
$weapdice{68} = "2 51";
$weapdice{69} = "9 10";
$weapdice{70} = "5 20";
$weapdice{71} = "8 12";
$weapdice{72} = "6 17";
$weapdice{73} = "9 11";
$weapdice{74} = "7 15";
$weapdice{75} = "10 10";
$weapdice{76} = "3 39";
$weapdice{77} = "5 23";
$weapdice{78} = "9 12";
$weapdice{79} = "8 14";
$weapdice{80} = "10 11";
$weapdice{81} = "7 17";
$weapdice{82} = "9 13";
$weapdice{83} = "8 15";
$weapdice{84} = "6 21";
$weapdice{85} = "10 12";
$weapdice{86} = "11 11";
$weapdice{87} = "9 14";
$weapdice{88} = "7 19";
$weapdice{89} = "4 35";
$weapdice{90} = "10 13";
$weapdice{91} = "9 15";
$weapdice{92} = "11 12";
$weapdice{93} = "6 24";
$weapdice{94} = "3 51";
$weapdice{95} = "10 14";
$weapdice{96} = "9 16";
$weapdice{97} = "11 13";
$weapdice{98} = "2 81";
$weapdice{99} = "12 12";
$weapdice{100} = "10 15";
$weapdice{101} = "4 41";
$weapdice{102} = "7 23";
$weapdice{103} = "2 87";
$weapdice{104} = "12 13";
$weapdice{105} = "7 24";
$weapdice{106} = "8 21";
$weapdice{107} = "11 15";
$weapdice{108} = "9 19";
$weapdice{109} = "10 17";
$weapdice{110} = "12 14";

1;