REM © Copyright 2002 0etelaer
REM I didn't give you a temple to pray.
REM Keepers don't pray, you're in Hell!

REM ####### REALM #######

SET_GENERATE_SPEED(500)

MAX_CREATURES(PLAYER0,25)
MAX_CREATURES(PLAYER1,25)
MAX_CREATURES(PLAYER2,25)
MAX_CREATURES(PLAYER3,25)

START_MONEY(PLAYER0,25)
START_MONEY(PLAYER1,25)
START_MONEY(PLAYER2,25)
START_MONEY(PLAYER3,25)
START_MONEY(PLAYER_GOOD,9999999)

ALLY_PLAYERS(PLAYER_GOOD,PLAYER0)

COMPUTER_PLAYER(PLAYER1,0)

REM	SET_CREATURE_STRENGTH([creature],[a])
REM	SET_CREATURE_HEALTH([creature],[a])
REM	SET_CREATURE_ARMOUR([creature],[a])
REM	SET_CREATURE_FEAR([creature],[a])


REM ####### POOL #######

ADD_CREATURE_TO_POOL(IMP,25)
ADD_CREATURE_TO_POOL(FLY,25)
ADD_CREATURE_TO_POOL(BUG,25)
ADD_CREATURE_TO_POOL(SPIDER,25)
ADD_CREATURE_TO_POOL(DEMONSPAWN,25)
ADD_CREATURE_TO_POOL(SORCEROR,25)
ADD_CREATURE_TO_POOL(BILE_DEMON,25)
ADD_CREATURE_TO_POOL(DRAGON,25)
ADD_CREATURE_TO_POOL(TROLL,25)
ADD_CREATURE_TO_POOL(ORC,25)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,25)
ADD_CREATURE_TO_POOL(SKELETON,25)
ADD_CREATURE_TO_POOL(GHOST,25)
ADD_CREATURE_TO_POOL(HELL_HOUND,25)
ADD_CREATURE_TO_POOL(VAMPIRE,25)
ADD_CREATURE_TO_POOL(TENTACLE,25)
ADD_CREATURE_TO_POOL(HORNY,25)
ADD_CREATURE_TO_POOL(WIZARD,25)
ADD_CREATURE_TO_POOL(BARBARIAN,25)
ADD_CREATURE_TO_POOL(ARCHER,25)
ADD_CREATURE_TO_POOL(MONK,25)
ADD_CREATURE_TO_POOL(DWARFA,25)
ADD_CREATURE_TO_POOL(KNIGHT,25)
ADD_CREATURE_TO_POOL(AVATAR,25)
ADD_CREATURE_TO_POOL(TUNNELLER,25)
ADD_CREATURE_TO_POOL(WITCH,25)
ADD_CREATURE_TO_POOL(GIANT,25)
ADD_CREATURE_TO_POOL(FAIRY,25)
ADD_CREATURE_TO_POOL(THIEF,25)
ADD_CREATURE_TO_POOL(SAMURAI,25)

REM ####### MONSTERS #######
REM PLAYER0

CREATURE_AVAILABLE(ALL_PLAYERS,IMP,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,FLY,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,BUG,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,SPIDER,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DEMONSPAWN,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,SORCEROR,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,BILE_DEMON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DRAGON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,TROLL,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,ORC,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DARK_MISTRESS,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,SKELETON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,GHOST,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,HELL_HOUND,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,VAMPIRE,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,TENTACLE,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,HORNY,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,WIZARD,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,BARBARIAN,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,ARCHER,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,MONK,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DWARFA,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,KNIGHT,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,AVATAR,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,TUNNELLER,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,WITCH,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,GIANT,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,FAIRY,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,THIEF,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,SAMURAI,1,1)

REM ####### ROOMS #######
REM PLAYER0

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,0)
ROOM_AVAILABLE(ALL_PLAYERS,BRIDGE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,GUARD_POST,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,WORKSHOP,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,BARRACKS,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,PRISON,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TORTURE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,GRAVEYARD,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,SCAVENGER,1,0)

REM ####### SPELLS #######
REM PLAYER0

MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HAND,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SLAP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_IMP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SIGHT,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SPEED,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_OBEY,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CONCEAL,1,0) 
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HOLD_AUDIENCE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CAVE_IN,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HEAL_CREATURE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_LIGHTNING,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CHICKEN,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_DISEASE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_ARMAGEDDON,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_DESTROY_WALLS,1,0)

REM ####### WORKSHOP #######

DOOR_AVAILABLE(ALL_PLAYERS,WOOD,1,25)
DOOR_AVAILABLE(ALL_PLAYERS,BRACED,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,STEEL,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,MAGIC,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,ALARM,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LAVA,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,BOULDER,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,WORD_OF_POWER,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,MARRIAGE,1,0)

REM ####### CLIMAX #######
	
IF(PLAYER0,DUNGEON_DESTROYED == 1)
	LOSE_GAME
ENDIF

IF(PLAYER1,DUNGEON_DESTROYED == 1)
	IF(PLAYER2,DUNGEON_DESTROYED == 1)
		IF(PLAYER3,DUNGEON_DESTROYED == 1)
			IF(PLAYER_GOOD,DUNGEON_DESTROYED == 1)
		                IF(PLAYER_GOOD,TOTAL_CREATURES == 0)
                                        WIN_GAME
                                ENDIF
                        ENDIF
	        ENDIF
        ENDIF
ENDIF


REM ####### PARTIES ####### 

REM FOR TUNNELLER PARTIES 6 CREATURES, NOT 7
REM WIZARDBARBARIANARCHERMONKDWARFAKNIGHTAVATARTUNNELLERWITCHGIANTFAIRYTHIEFSAMURAI   
REM IMPHORNYSKELETONTROLLDRAGONDEMONSPAWNFLYDARK_MISTRESSSORCERORBILE_DEMONBUGVAMPIRESPIDERHELL_HOUNDGHOSTTENTACLEORC	

CREATE_PARTY(BAPHOMET)
	ADD_TO_PARTY(BAPHOMET,[HERO],[EXP LEVEL],[GOLD],ATTACK_ENEMIES,0)
	ADD_TO_PARTY(BAPHOMET,,,,STEAL_GOLD,0)
	ADD_TO_PARTY(BAPHOMET,,,,STEAL_SPELLS,0)
	ADD_TO_PARTY(BAPHOMET,,,,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(BAPHOMET,,,,ATTACK_ROOMS,0)
	ADD_TO_PARTY(BAPHOMET,,,,DEFEND_PARTY,0)

CREATE_PARTY(CHORONZON)
	ADD_TO_PARTY(CHORONZON,,,,DEFEND_PARTY,0)
	ADD_TO_PARTY(CHORONZON,,,,DEFEND_PARTY,0)
	ADD_TO_PARTY(CHORONZON,,,,DEFEND_PARTY,0)
	ADD_TO_PARTY(CHORONZON,,,,DEFEND_PARTY,0)
        ADD_TO_PARTY(CHORONZON,,,,DEFEND_PARTY,0)
	ADD_TO_PARTY(CHORONZON,,,,DEFEND_PARTY,0)
	ADD_TO_PARTY(CHORONZON,,,,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(CHAOS)
	ADD_TO_PARTY(CHAOS,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(CHAOS,,,,STEAL_GOLD,0)
	ADD_TO_PARTY(CHAOS,,,,STEAL_GOLD,0)
	ADD_TO_PARTY(CHAOS,,,,STEAL_GOLD,0)
	ADD_TO_PARTY(CHAOS,,,,STEAL_SPELLS,0)
        ADD_TO_PARTY(CHAOS,,,,STEAL_SPELLS,0)
	ADD_TO_PARTY(CHAOS,,,,STEAL_SPELLS,0)

CREATE_PARTY(TYPHON)
	ADD_TO_PARTY(TYPHON,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(TYPHON,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(TYPHON,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(TYPHON,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(TYPHON,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(TYPHON,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(TYPHON,,,,ATTACK_ROOMS,0)

CREATE_PARTY(SATAARAN)
	ADD_TO_PARTY(SATAARAN,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SATAARAN,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SATAARAN,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SATAARAN,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SATAARAN,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SATAARAN,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SATAARAN,,,,ATTACK_ENEMIES,0)

CREATE_PARTY(BAAL)
	ADD_TO_PARTY(BAAL,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(BAAL,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(BAAL,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(BAAL,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(BAAL,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(BAAL,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(BAAL,,,,ATTACK_ENEMIES,0)

CREATE_PARTY(VHNORI)
	ADD_TO_PARTY(VHNORI,,,,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(VHNORI,,,,STEAL_GOLD,0)
	ADD_TO_PARTY(VHNORI,,,,STEAL_SPELLS,0)
	ADD_TO_PARTY(VHNORI,,,,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(VHNORI,,,,ATTACK_ROOMS,0)
	ADD_TO_PARTY(VHNORI,,,,DEFEND_PARTY,0)

REM ####### OCCURENCES #######

IF(PLAYER0,BRIDGE > 0)
REM	ADD_CREATURE_TO_LEVEL(PLAYER?,[MONSTER],AP,[AMOUNT],[EXP LEVEL],[MONEY])
REM	ADD_TUNNELLER_PARTY_TO_LEVEL([player],[party name],[action point],[head for],[action point/target player],[experience],[gold])
REM	ADD_TUNNELLER_TO_LEVEL([player],[action point],[head for],[action point/target player],[experience],[gold])
REM	ADD_PARTY_TO_LEVEL(PLAYER?,[party name],[action point],[COPIES])
REM	SET_TIMER(PLAYER0,TIMER0)
REM	DISPLAY_OBJECTIVE(DATA.TXT_NR,PLAYER0)
REM	DISPLAY_INFORMATION(DATA.TXT_NR,PLAYER0)
ENDIF

REM IN "IF(PLAYER0,BRIDGE > 0)", YOU CAN EXCHANGE "BRIDGE" FOR ALL THINGS, LIKE A MONSTER ;AMOUNT, TRAPS ;AMOUNT, TIMER ;UNITS
REM MONEY GAME_TURN TOTAL_IMPS TOTAL_CREATURES TOTAL_RESEARCH TOTAL_DOORS TOTAL_AREA TOTAL_CREATURES_LEFT CREATURES_ANNOYED BATTLES_WON BATTLES_LOST ROOMS_DESTROYED SPELLS_STOLEN TIMES_BROKEN_INTO DUNGEON_DESTROYED CREATURES_SCAVENGED_LOST CREATURES_SCAVENGED_GAINED ALL_DUNGEONS_DESTROYED
REM == | != | > | < | <= | >=

IF_ACTION_POINT([NUMBER OF AP],PLAYER?)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,BAPHOMET,-1,25)
ENDIF

IF_ACTION_POINT(,PLAYER)
	
ENDIF

IF_ACTION_POINT(,PLAYER)
	
ENDIF

IF_ACTION_POINT(,PLAYER)
	
ENDIF

IF_ACTION_POINT(,PLAYER)
	
ENDIF

IF_ACTION_POINT(,PLAYER)
	
ENDIF

REM Good luck. Be carefull for hellish jokes. 
REM http://www.geocities.com/dungkeep/dungeon.html
REM O, this COMPUTER_PLAYER(PLAYER_GOOD,1) works on some spells(1,1); speed etc. No, not Armageddon.
REM And 25 doors is good for privacy. Also works, I'm not sure about traps though. 
REM Don't forget your library, you need it.

    Source: geocities.com/dungkeep/deeper

               ( geocities.com/dungkeep)