REM PLAY Level 34 SET_GENERATE_SPEED(700) MAX_CREATURES(PLAYER0,25) MAX_CREATURES(PLAYER1,35) START_MONEY(PLAYER0,20000) START_MONEY(PLAYER1,60000) COMPUTER_PLAYER(PLAYER1,6) REM ALL PLAYERS ADD_CREATURE_TO_POOL(FLY,20) ADD_CREATURE_TO_POOL(SPIDER,25) ADD_CREATURE_TO_POOL(DEMONSPAWN,45) ADD_CREATURE_TO_POOL(TROLL,30) ADD_CREATURE_TO_POOL(SORCEROR,17) ADD_CREATURE_TO_POOL(BILE_DEMON,25) ADD_CREATURE_TO_POOL(DARK_MISTRESS,20) ADD_CREATURE_TO_POOL(VAMPIRE,11) ADD_CREATURE_TO_POOL(DRAGON,11) ADD_CREATURE_TO_POOL(HELL_HOUND,30) ADD_CREATURE_TO_POOL(ORC,30) REM Creature_Availability CREATURE_AVAILABLE(ALL_PLAYERS,TROLL,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,DEMONSPAWN,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,FLY,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,DARK_MISTRESS,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,SORCEROR,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,SPIDER,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,BILE_DEMON,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,HELL_HOUND,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,DRAGON,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,VAMPIRE,1,1) CREATURE_AVAILABLE(ALL_PLAYERS,ORC,1,1) REM Room_Availability ROOM_AVAILABLE(ALL_PLAYERS,TREASURE,1,1) ROOM_AVAILABLE(ALL_PLAYERS,LAIR,1,1) ROOM_AVAILABLE(ALL_PLAYERS,GARDEN,1,1) ROOM_AVAILABLE(ALL_PLAYERS,TRAINING,1,1) ROOM_AVAILABLE(ALL_PLAYERS,RESEARCH,1,1) ROOM_AVAILABLE(ALL_PLAYERS,WORKSHOP,1,0) ROOM_AVAILABLE(ALL_PLAYERS,BARRACKS,1,0) ROOM_AVAILABLE(ALL_PLAYERS,GUARD_POST,1,0) ROOM_AVAILABLE(ALL_PLAYERS,BRIDGE,1,0) ROOM_AVAILABLE(ALL_PLAYERS,PRISON,1,0) ROOM_AVAILABLE(ALL_PLAYERS,TORTURE,1,0) ROOM_AVAILABLE(ALL_PLAYERS,SCAVENGER,1,0) ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,1,0) ROOM_AVAILABLE(ALL_PLAYERS,GRAVEYARD,1,0) REM Spells MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HAND,1,1) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_IMP,1,1) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SLAP,1,1) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SIGHT,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CALL_TO_ARMS,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HEAL_CREATURE,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SPEED,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_LIGHTNING,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_PROTECT,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CONCEAL,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_DISEASE,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CAVE_IN,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CHICKEN,1,0) MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HOLD_AUDIENCE,1,0) REM doors & traps DOOR_AVAILABLE(ALL_PLAYERS,WOOD,1,0) TRAP_AVAILABLE(ALL_PLAYERS,ALARM,1,0) DOOR_AVAILABLE(ALL_PLAYERS,BRACED,1,0) TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0) DOOR_AVAILABLE(ALL_PLAYERS,STEEL,1,0) TRAP_AVAILABLE(ALL_PLAYERS,BOULDER,1,0) DOOR_AVAILABLE(ALL_PLAYERS,MAGIC,1,0) TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0) TRAP_AVAILABLE(ALL_PLAYERS,WORD_OF_POWER,1,0) REM research order rem CREATE_TEXT(0,134"YOUR MISSION HERE IS TO CAPTURE THE AVATAR AND TURN THIS WHOLE WORLD EVIL. A RIVAL KEEPER CHALLENGES YOU FOR THE CROWN OF THE MOST EVIL.") rem CREATE_TEXT(1,135"WELL DONE,YOU HAVE DESTROYED THE AVATAR'S CASTLE, BUT YOUR RIVAL HAS ALREADY MADE OFF WITH THE CAPTURED AVATAR.ONLY THE MOST EVIL OF DUNGEON KEEPER'S CAN KILL THE AVATAR. PROVE YOUR WORTH, RAMSACK YOUR RIVALS CASTLE AND KILL THE AVATAR") rem CREATE_TEXT(2,136"THE AVATAR IS DEAD BUT NOT BURIED, HE HAS RESSURECTED HIMSELF IN A HIDDEN HERO STRONGHOLD AND IS ENTHUSING HIS ARMIES TO DESTROY YOUR DUNGEON. THIS NOW IS THE ULTIMATE BATTLE BETWEEN GOOD AND EVIL, THERE CAN ONLY BE ONE SURVIVOR.") DISPLAY_OBJECTIVE(134,PLAYER0) CREATE_PARTY(ONE) ADD_TO_PARTY(ONE,ARCHER,2,300,ATTACK_ENEMIES,0) ADD_TO_PARTY(ONE,ARCHER,2,300,ATTACK_ENEMIES,0) ADD_TO_PARTY(ONE,ARCHER,2,300,ATTACK_ENEMIES,0) ADD_TO_PARTY(ONE,ARCHER,2,300,ATTACK_ENEMIES,0) ADD_TO_PARTY(ONE,ARCHER,2,300,ATTACK_ENEMIES,0) ADD_TO_PARTY(ONE,ARCHER,2,300,ATTACK_ENEMIES,0) CREATE_PARTY(TWO) ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0) ADD_TO_PARTY(TWO,BARBARIAN,3,500,ATTACK_ENEMIES,0) ADD_TO_PARTY(TWO,BARBARIAN,3,500,ATTACK_ENEMIES,0) ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0) ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0) ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0) CREATE_PARTY(THREE) ADD_TO_PARTY(THREE,DWARFA,4,550,ATTACK_ENEMIES,0) ADD_TO_PARTY(THREE,DWARFA,4,550,ATTACK_ENEMIES,0) ADD_TO_PARTY(THREE,DWARFA,4,550,ATTACK_ENEMIES,0) ADD_TO_PARTY(THREE,DWARFA,4,550,ATTACK_ENEMIES,0) ADD_TO_PARTY(THREE,DWARFA,4,550,ATTACK_ENEMIES,0) ADD_TO_PARTY(THREE,WIZARD,5,650,ATTACK_ENEMIES,0) CREATE_PARTY(FOUR) ADD_TO_PARTY(FOUR,WIZARD,5,650,ATTACK_ENEMIES,0) ADD_TO_PARTY(FOUR,WIZARD,5,650,ATTACK_ENEMIES,0) ADD_TO_PARTY(FOUR,WIZARD,5,650,ATTACK_ENEMIES,0) ADD_TO_PARTY(FOUR,WIZARD,5,650,ATTACK_ENEMIES,0) ADD_TO_PARTY(FOUR,DWARFA,5,650,ATTACK_ENEMIES,0) ADD_TO_PARTY(FOUR,DWARFA,5,650,ATTACK_ENEMIES,0) CREATE_PARTY(FIVE) ADD_TO_PARTY(FIVE,BARBARIAN,5,750,ATTACK_ENEMIES,0) ADD_TO_PARTY(FIVE,BARBARIAN,5,750,ATTACK_ENEMIES,0) ADD_TO_PARTY(FIVE,BARBARIAN,5,750,ATTACK_ENEMIES,0) ADD_TO_PARTY(FIVE,FAIRY,5,750,ATTACK_ENEMIES,0) ADD_TO_PARTY(FIVE,FAIRY,5,750,ATTACK_ENEMIES,0) CREATE_PARTY(THIEVES) ADD_TO_PARTY(THIEVES,THIEF,8,2000,STEAL_GOLD,0) ADD_TO_PARTY(THIEVES,THIEF,8,2000,STEAL_GOLD,0) CREATE_PARTY(SKELETON) ADD_TO_PARTY(SKELETON(SKELETON,6,300,ATTACK_ENEMIES,0) CREATE_PARTY(DWARVEN) ADD_TO_PARTY(DWARVEN,DWARFA,5,2000,ATTACK_ENEMIES,0) ADD_TO_PARTY(DWARVEN,DWARFA,5,2000,ATTACK_ENEMIES,0) ADD_TO_PARTY(DWARVEN,DWARFA,5,2000,ATTACK_ENEMIES,0) ADD_TO_PARTY(DWARVEN,DWARFA,5,2000,ATTACK_ENEMIES,0) ADD_TO_PARTY(DWARVEN,DWARFA,5,2000,ATTACK_ENEMIES,0) ADD_TO_PARTY(DWARVEN,DWARFA,5,2000,ATTACK_ENEMIES,0) CREATE_PARTY(TRAINERS) ADD_TO_PARTY(TRAINERS,BARBARIAN,4,1000,ATTACK_ENEMIES,0) ADD_TO_PARTY(TRAINERS,BARBARIAN,4,1000,ATTACK_ENEMIES,0) ADD_TO_PARTY(TRAINERS,WIZARD,5,1200,STEAL_SPELLS,0) ADD_TO_PARTY(TRAINERS,WIZARD,3,700,ATTACK_ENEMIES,0) ADD_TO_PARTY(TRAINERS,ARCHER,3,500,ATTACK_ENEMIES,0) ADD_TO_PARTY(TRAINERS,THIEF,7,3000,STEAL_GOLD,0) CREATE_PARTY(SAMURAIII) ADD_TO_PARTY(SAMURAIII,SAMURAI,6,2500,ATTACK_ENEMIES,0) ADD_TO_PARTY(SAMURAIII,SAMURAI,6,2500,ATTACK_ENEMIES,0) IF_ACTION_POINT(1,PLAYER0) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,2,1) SET_FLAG(PLAYER_GOOD,FLAG0,1) SET_TIMER(PLAYER_GOOD,TIMER0) ENDIF IF_ACTION_POINT(10,PLAYER0) SET_FLAG(PLAYER_GOOD,FLAG0,1) ENDIF IF_ACTION_POINT(17,PLAYER0) SET_FLAG(PLAYER_GOOD,FLAG0,1) ENDIF IF(PLAYER_GOOD,FLAG0 == 1) IF(PLAYER_GOOD,TIMER0 >= 1500) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,TWO,-4,1) SET_TIMER(PLAYER_GOOD,TIMER0) ENDIF ENDIF IF(PLAYER_GOOD,FLAG0 == 1) IF(PLAYER_GOOD,TIMER0 >= 6000) NEXT_COMMAND_REUSABLE ADD_PARTY_TO_LEVEL(PLAYER_GOOD,THREE,-4,1) next_command_reusable SET_TIMER(PLAYER_GOOD,TIMER0) ENDIF ENDIF IF(PLAYER_GOOD,FLAG0 == 1) IF(PLAYER0,TORTURE >= 1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,THIEVES,-4,1) ENDIF ENDIF IF_ACTION_POINT(3,PLAYER0) IF(PLAYER_GOOD,FLAG0 == 1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SKELETON,4,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SKELETON,5,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SKELETON,6,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SKELETON,7,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SKELETON,8,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SKELETON,9,1) SET_TIMER(PLAYER_GOOD,TIMER1) ENDIF ENDIF IF(PLAYER_GOOD,TIMER1 >= 250) ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,GHOST,6,1,8,0) ENDIF IF(PLAYER_GOOD,TIMER1 >= 290) ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,GHOST,9,1,8,0) ENDIF IF(PLAYER_good,DUNGEON_DESTROYED == 1) SET_FLAG(PLAYER_GOOD,FLAG0,2) DISPLAY_OBJECTIVE(135,PLAYER_GOOD) ADD_CREATURE_TO_LEVEL(PLAYER1,HORNY,PLAYER1,1,10,0) ENDIF IF_ACTION_POINT(10,PLAYER0) IF(PLAYER_GOOD,FLAG0 == 1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,TRAINERS,11,1) ENDIF ENDIF IF_ACTION_POINT(12,PLAYER0) IF(PLAYER_GOOD,FLAG0 == 1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,FIVE,-5,1) ENDIF ENDIF IF_ACTION_POINT(13,PLAYER0) IF(PLAYER_GOOD,FLAG0 == 1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SAMURAIII,14,1) ENDIF ENDIF IF_ACTION_POINT(13,PLAYER0) IF(PLAYER_GOOD,FLAG0 == 1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SAMURAIII,15,1) ENDIF ENDIF IF_ACTION_POINT(16,PLAYER0) IF(PLAYER_GOOD,FLAG0 == 1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,DWARVEN,-4,1) ENDIF ENDIF CREATE_PARTY(TUNNELLER) ADD_TO_PARTY(TUNNELLER,TUNNELLER,6,200,ATTACK_ENEMIES,0) ADD_TO_PARTY(TUNNELLER,TUNNELLER,6,200,ATTACK_ENEMIES,0) ADD_TO_PARTY(TUNNELLER,TUNNELLER,6,200,ATTACK_ENEMIES,0) ADD_TO_PARTY(TUNNELLER,TUNNELLER,6,200,ATTACK_ENEMIES,0) CREATE_PARTY(AVATAR_I) ADD_TO_PARTY(AVATAR_I,KNIGHT,7,3000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_I,BARBARIAN,5,750,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_I,BARBARIAN,5,750,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_I,ARCHER,3,550,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_I,ARCHER,3,550,ATTACK_ENEMIES,0) CREATE_PARTY(AVATAR_II) ADD_TO_PARTY(AVATAR_II,KNIGHT,8,3500,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_II,SAMURAI,5,1750,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_II,SAMURAI,5,1750,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_II,SAMURAI,5,1750,ATTACK_ENEMIES,0) CREATE_PARTY(AVATAR_III) ADD_TO_PARTY(AVATAR_III,KNIGHT,9,4000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_III,MONK,7,3000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_III,MONK,7,3000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR_III,MONK,7,3000,ATTACK_ENEMIES,0) CREATE_PARTY(AVATAR) ADD_TO_PARTY(AVATAR,KNIGHT,9,4000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR,KNIGHT,9,4000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR,KNIGHT,9,4000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR,KNIGHT,9,4000,ATTACK_ENEMIES,0) ADD_TO_PARTY(AVATAR,AVATAR,10,20000,ATTACK_ENEMIES,0) CREATE_PARTY(FAIRY) ADD_TO_PARTY(FAIRY,FAIRY,9,2000,ATTACK_ENEMIES,0) ADD_TO_PARTY(FAIRY,FAIRY,9,2000,ATTACK_ENEMIES,0) ADD_TO_PARTY(FAIRY,FAIRY,9,2000,ATTACK_ENEMIES,0) IF(PLAYER1,DUNGEON_DESTROYED == 1) SET_FLAG(PLAYER0,FLAG0,3) ENDIF IF(PLAYER_GOOD,FLAG0 == 3) IF(PLAYER_GOOD,AVATAR == 0) DISPLAY_OBJECTIVE(136,PLAYER0) SET_FLAG(PLAYER0,FLAG0,4) ENDIF ENDIF IF(PLAYER0,FLAG0 == 4) ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,TUNNELLER,18,DUNGEON,0,6,200) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,AVATAR_I,-1,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,AVATAR_II,-2,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,AVATAR_III,-3,1) SET_TIMER(PLAYER_GOOD,TIMER3) IF(PLAYER_GOOD,TIMER3 >= 300) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,AVATAR,-1,1) ADD_PARTY_TO_LEVEL(PLAYER_GOOD,FAIRY,-2,1) IF(PLAYER_GOOD,AVATAR == 0) WIN_GAME ENDIF ENDIF ENDIF IF(PLAYER0,DUNGEON_DESTROYED == 1) LOSE_GAME ENDIF