home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC Gamer 3.7
/
1997-10_Disc_3.7.iso
/
qwcraft
/
quake.fgd
< prev
next >
Wrap
Text File
|
1997-02-18
|
13KB
|
478 lines
//
// QUAKE game definition file (.fgd)
//
@Main =
[
Name: "Quake"
Palette: "wc.pal"
DefaultClass: "func_door"
]
//
// worldspawn
//
@SolidClass = worldspawn : "World entity"
[
message(string) : "Text on entering the world"
worldtype(choices) : "Ambience" : 0 =
[
0 : "Medieval"
1 : "Runic (metal)"
2 : "Present (base)"
]
sounds(integer) : "CD track to play" : 1
light(integer) : "Default light level"
]
//
// base marker definitions
//
@baseclass = Appearflags [
spawnflags(Flags) =
[
256 : "Not in Easy" : 0
512 : "Not in Normal" : 0
1024 : "Not in Hard" : 0
2048 : "Not in Deathmatch" : 0
]
]
@baseclass = Targetname [ targetname(target_source) : "Name" ]
@baseclass = Target [ target(target_destination) : "Target" ]
//
// player starts, deathmatch, coop, teleport
//
@baseclass base(Appearflags) size(-16 -16 -24, 16 16 24)
color(0 255 0) = PlayerClass []
@PointClass base(PlayerClass) = info_player_start : "Player 1 start" []
@PointClass base(PlayerClass) = info_player_deathmatch : "Player deathmatch start" []
@PointClass base(PlayerClass) = info_player_coop : "Player cooperative start" []
@PointClass base(PlayerClass) = info_player_start2 : "Player episode return point" []
@PointClass base(PlayerClass, Targetname) = info_teleport_destination : "Teleport destination" []
@PointClass = info_null : "info_null (spotlight target)"
[
targetname(target_source) : "Name"
]
//
// CTF stuff
//
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_flag_team1 : "CTF: Red Team Flag" []
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_flag_team2 : "CTF: Blue Team Flag" []
@PointClass base(PlayerClass) = info_player_team1 : "CTF: Red team base start" []
@PointClass base(PlayerClass) = info_player_team2 : "CTF: Blue team base start" []
@PointClass base(Appearflags) = info_intermission : "Intermission camera" []
//
// items
//
@baseclass size(32 32 32) color(80 0 200) base(Appearflags) = Ammo
[
spawnflags(flags) =
[
1 : "Large box" : 0
]
]
@PointClass base(Ammo) = item_cells : "Thunderbolt ammo" []
@PointClass base(Ammo) = item_rockets : "Rockets" []
@PointClass base(Ammo) = item_shells : "Shells" []
@PointClass base(Ammo) = item_spikes : "Perforator/Nailgun ammo" []
@PointClass size(32 32 32) base(Appearflags) = item_health : "Health pak"
[
spawnflags(flags) =
[
1 : "Rotten" : 0
2 : "Megahealth" : 0
]
]
@PointClass base(Appearflags) =
item_artifact_envirosuit : "Environmental protection suit" []
@PointClass base(Appearflags) =
item_artifact_super_damage : "Quad damage" []
@PointClass base(Appearflags) =
item_artifact_invulnerability : "Pentagram of Protection" []
@PointClass base(Appearflags) =
item_artifact_invisibility : "Ring of Shadows" []
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_armorInv : "200% armor (Red)" []
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_armor2 : "150% armor (Yellow)" []
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_armor1 : "100% armor (Green)" []
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_key1 : "Silver key" []
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_key2 : "Gold key" []
@PointClass size(-16 -16 -24, 16 16 32) base(Appearflags) =
item_sigil : "Sigil"
[
spawnflags(Flags) =
[
1 : "Episode 1" : 1
2 : "Episode 2" : 0
4 : "Episode 3" : 0
8 : "Episode 4" : 0
]
]
//
// weaponses
//
@baseclass size(-16 -16 0, 16 16 32) color(0 0 200) base(Appearflags) = Weapon []
@PointClass base(Weapon) = weapon_supershotgun : "Super shotgun" []
@PointClass base(Weapon) = weapon_nailgun : "Nailgun" []
@PointClass base(Weapon) = weapon_supernailgun : "Perforator" []
@PointClass base(Weapon) = weapon_grenadelauncher : "Grenade launcher" []
@PointClass base(Weapon) = weapon_rocketlauncher : "Rocket launcher" []
@PointClass base(Weapon) = weapon_lightning : "Thunderbolt" []
//
// badasses
//
@baseclass base(Appearflags, Target, Targetname) color(220 0 0) = Monster
[
spawnflags(Flags) =
[
1 : "Ambush" : 0
]
]
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) = monster_army : "Grunt" []
@PointClass base(Monster) size(-32 -32 -24, 32 32 40) = monster_dog : "Nasty Doggie" []
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) = monster_ogre : "Ogre" []
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) = monster_ogre_marksman : "Ogre marksman" []
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) = monster_knight : "Knight" []
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) = monster_hell_knight : "Hell knight" []
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) = monster_wizard : "Scrag" []
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) = monster_demon1 : "Fiend" []
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) = monster_shambler : "Shambler" []
@PointClass base(Monster) size(-128 -128 -24, 128 128 256) = monster_boss : "Chthon" []
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) = monster_enforcer : "Enforcer" []
@PointClass base(Monster) size(-32 -32 -24, 32 32 48) = monster_shalrath : "Shalrath" []
@PointClass base(Monster) size(32 32 48) = monster_tarbaby : "Tarbaby" []
@PointClass base(Monster) size(32 32 48) = monster_fish : "Rotfish" []
@PointClass base(Monster) size(-16 -16 -24, 16 16 32) = monster_oldone : "Shub-Niggurath" []
@PointClass base(Monster) size(-16 -16 -24, 16 16 32) = monster_zombie : "Zombie"
[
spawnflags(Flags) =
[
1 : "Crucified" : 0
2 : "Ambush" : 0
]
]
//
// lights
//
@baseclass = Light [
light(integer) : "Brightness" : 200
style(Choices) : "Appearance" : 0 =
[
0 : "Normal"
10: "Fluorescent flicker"
2 : "Slow, strong pulse"
11: "Slow pulse, noblack"
5 : "Gentle pulse"
1 : "Flicker A"
6 : "Flicker B"
3 : "Candle A"
7 : "Candle B"
8 : "Candle C"
4 : "Fast strobe"
9 : "Slow strobe"
]
]
@PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname) =
light : "Invisible lightsource"
[
spawnflags(Flags) = [ 1 : "Initially dark" : 0 ]
]
@PointClass size(-8 -8 -8, 8 8 8) base(Light, Targetname) =
light_fluoro : "Fluorescent light"
[
spawnflags(Flags) = [ 1 : "Initially dark" : 0 ]
]
@PointClass size(-8 -8 -8, 8 8 8) base(Light, Targetname) =
light_fluorospark : "Sparking fluorescent light"
[
spawnflags(Flags) = [ 1 : "Initially dark" : 0 ]
]
@PointClass size(-8 -8 -8, 8 8 8) base(Light, Targetname) =
light_globe : "Globe light" []
@PointClass size(-10 -10 -12, 12 12 18) base(Light, Targetname) =
light_flame_large_yellow : "Large yellow flame" []
@PointClass size(-10 -10 -12, 12 12 18) base(Light, Targetname) =
light_flame_small_yellow : "Small yellow flame"
[
spawnflags(Flags) = [ 1 : "Initially dark" : 0 ]
]
@PointClass size(-10 -10 -12, 12 12 18) base(Light, Targetname) =
light_flame_small_white : "Small white flame"
[
spawnflags(Flags) = [ 1 : "Initially dark" : 0 ]
]
@PointClass size(-10 -10 -20, 10 10 20) base(Light, Targetname) =
light_torch_small_walltorch : "Small walltorch" []
//
// misc
//
@PointClass base(Appearflags) = air_bubbles : "Air bubbles" []
@PointClass base(Appearflags, Targetname) =
event_lightning : "Chthon's lightning" []
@PointClass base(Appearflags) = misc_fireball : "Small fireball"
[ speed(integer) : "Speed" : 40 ]
@PointClass = misc_explobox : "Large nuclear container" []
@PointClass = misc_explobox2 : "Small nuclear container" []
@PointClass base(Targetname) = trap_spikeshooter : "Triggered shooter"
[
spawnflags(Flags) =
[
1 : "Superspike" : 0
2 : "Laser" : 0
]
]
@PointClass base(trap_spikeshooter) = trap_shooter : "Continuous shooter" []
//
// ambient sounds
//
@PointClass = ambient_drip : "Dripping sound" []
@PointClass = ambient_drone : "Engine/machinery sound" []
@PointClass = ambient_comp_hum : "Computer background sounds" []
@PointClass = ambient_flouro_buzz : "Fluorescent buzzing sound" []
@PointClass = ambient_light_buzz : "Buzzing sound from light" []
@PointClass = ambient_suck_wind : "Wind sound" []
@PointClass = ambient_swamp1 : "Frogs croaking" []
@PointClass = ambient_swamp2 : "Frogs croaking B" []
@PointClass = ambient_thunder : "Thunder sound" []
//
// moving things
//
@baseclass base(Appearflags, Targetname) = Door
[
speed(integer) : "Speed" : 100
sounds(choices) : "Sound" : 1 =
[
1: "Stone"
2: "Machine"
3: "Stone Chain"
4: "Screechy Metal"
]
wait(choices) : "Delay before close" : 4 =
[
-1 : "Stays open"
]
lip(integer) : "Lip"
dmg(integer) : "Damage inflicted when blocked" : 0
message(string) : "Message if triggered"
health(integer) : "Health (shoot open)" : 0
]
@SolidClass base(Door) = func_door : "Basic door"
[
spawnflags(flags) =
[
1 : "Starts Open" : 0
4 : "Don't link" : 0
8 : "Gold Key required" : 0
16: "Silver Key required" : 0
32: "Toggle" : 0
]
]
@SolidClass base(Door) = func_door_secret : "Triggered door"
[
spawnflags(flags) =
[
1 : "Open once only" : 0
2 : "Moves left first" : 0
4 : "Moves down first" : 0
8 : "Not shootable" : 0
16 : "Always shootable" : 0
]
]
@SolidClass base(Appearflags) = func_wall : "Moving wall" []
@SolidClass = func_button : "Button"
[
speed(integer) : "Speed" : 5
target(target_source) : "Targetted object"
health(integer) : "Health (shootable if > 0)"
sounds(choices) : "Sounds" : 1 =
[
1: "Steam metal"
2: "Wooden clunk"
3: "Metallic clink"
4: "In-out"
]
wait(choices) : "Delay before reset" : 3 =
[
-1: "Stays pressed"
]
delay(integer) : "Delay before trigger"
]
@SolidClass base(Targetname) = func_train : "Moving platform"
[
sounds(choices) : "Sound" : 1 =
[
0: "None"
1: "Ratchet Metal"
]
speed(integer) : "Speed (units per second)" : 64
target(target_source) : "First stop target"
dmg(integer) : "Damage on crush" : 0
]
@PointClass base(Targetname) size(16 16 16) =
path_corner : "Moving platform stop"
[
target(target_source) : "Next stop target"
]
@SolidClass = func_plat : "Elevator"
[
height(integer) : "Travel altitude (can be negative)" : 0
sounds(choices) : "Sound group" : 1 =
[
0: "None"
1: "Base fast"
2: "Chain Slow"
]
]
@SolidClass = func_dm_only : "Deathmatch teleporter" []
@SolidClass = func_illusionary : "Solids can be walked through" []
@SolidClass = func_episodegate : "Episode Gate"
[
spawnflags(Flags) =
[
1 : "Episode 1" : 1
2 : "Episode 2" : 0
4 : "Episode 3" : 0
8 : "Episode 4" : 0
]
]
@SolidClass = func_bossgate : "Boss gate" []
//
// triggers
//
@baseclass base(Target) = Trigger
[
style(integer) : "Style" : 32
killtarget(target_source) : "Kill target"
sounds(choices) : "Sound style" : 3 =
[
1 : "Secret sound"
2 : "Beep beep"
3 : "Large switch"
4 : "Set message to text string"
]
delay(integer) : "Delay before trigger" : 2
message(string) : "Message (set sound too!)"
]
@SolidClass = trigger_changelevel : "Trigger: Change level"
[
map(string) : "New map name"
spawnflags(flags) =
[
1: "No Intermission" : 0
]
]
@SolidClass base(Trigger) = trigger_once : "Trigger: Activate once"
[
spawnflags(flags) = [ 1: "Entity only" : 0 ]
]
@SolidClass base(Trigger) = trigger_multiple : "Trigger: Activate multiple"
[
spawnflags(flags) = [ 1: "Entity only" : 0 ]
wait(integer) : "Delay before reset" : 10
]
@SolidClass base(Trigger) = trigger_onlyregistered : "Trigger: Registered only"
[
spawnflags(flags) = [ 1: "Entity only" : 0 ]
]
@SolidClass base(Trigger) = trigger_secret : "Trigger: Secret"
[
spawnflags(flags) = [ 1: "Entity only" : 0 ]
wait(integer) : "Delay before reset" : 10
]
@SolidClass base(Target, Targetname) = trigger_teleport : "Trigger teleport"
[
spawnflags(Flags) =
[
1 : "Player only" : 0
2 : "Silent" : 0
]
]
// need updates:
@SolidClass = trigger_setskill : "Trigger set skill"
[
message(choices) : "Skill to change to" : 1 =
[
0 : "Easy"
1 : "Medium"
2 : "Hard"
3 : "Nightmare!"
]
]
@SolidClass base(Trigger, Targetname) = trigger_relay : "Trigger relay"
[
]
@SolidClass base(Trigger) = trigger_monsterjump : "Trigger monster jump"
[
speed(integer) : "Jump Speed" : 40
height(integer) : "Jump Height" : 128
]
@SolidClass base(Trigger, Targetname) = trigger_counter : "Trigger counter"
[
spawnflags(flags) = [ 1: "No Message" : 0 ]
count(integer) : "Count before activation" : 2
]
@SolidClass base(Trigger) = trigger_push : "Trigger player push"
[
spawnflags(flags) = [ 1: "Once Only" : 0 ]
speed(integer) : "Speed of push" : 40
]
@SolidClass base(Trigger) = trigger_hurt : "Trigger player hurt"
[
dmg(integer) : "Damage" : 10
]