Files
quakemapping/tb/games/Hexen2/Hexen2.fgd
2019-12-30 17:23:05 +01:00

1907 lines
56 KiB
Plaintext

//
// Hexen 2 game definition file (.fgd)
// For Worldcraft 1.6 and above
// Updated March 17 1998 (By autolycus)
// Updated May 17 2012 (By Amran. Fixed errors, added/corrected entities, and revised original)
//
// Written by autolycus / autolycus@planetquake.com
// Revised by Amran
//
//
// worldspawn!
//
@SolidClass = worldspawn : "World entity"
[
message(string) : "Level name"
worldtype(choices) : "World Type" : 0 =
[
0 : "Castle"
1 : "Egypt"
2 : "Meso"
3 : "Roman"
]
CD(integer) : "CD track to play" : 1
MIDI(string) : "Midi file to play" : "casa1"
spawnflags2(choices) : "Func_Train type" : 0 = //Spawnflags don't show for worldspawn. Needs to be edited in the .map manually
[
0 : "Hexen2 Func_Trains"
1 : "PoP Func_Trains"
]
netname(string) : "Netname (PoP)"
]
//
// Base definitions!
//
@baseclass = Lights [
spawnflags(Flags) =
[
1 : "Start low" : 0
2 : "Hurt (PoP)" : 0
]
style(choices) : "Style (32-63 for groups)" : 0 =
[
0 : "Normal"
1 : "Soft flicker"
6 : "Faster flicker"
4 : "Low falloff"
5 : "Pulse"
2 : "Slow pulse in & out"
11 : "Quick pulse in & out"
3 : "Erratic pulse & flicker A"
7 : "Erratic pulse & flicker B"
8 : "Erratic pulse & flicker C"
9 : "Slow blink"
10 : "Fluorescent flicker"
]
light(integer) : "Brightness" : 300
health(integer) : "Health (shootable)"
lightvalue1(integer) : "Lowest light value" : 0
lightvalue2(integer) : "Highest light value" : 11
fadespeed(integer) : "Fade speed" : 1
]
@baseclass = Appearflags [
spawnflags(Flags) =
[
256 : "Not for Paladin" : 0
512 : "Not for Crusader" : 0
1024 : "Not for Necromancer" : 0
2048 : "Not for Assassin" : 0
4096 : "Not in Easy" : 0
8192 : "Not in Normal" : 0
16384 : "Not in Hard" : 0
32768 : "Not in Deathmatch" : 0
]
]
@baseclass = Targetname [ targetname(target_source) : "Name" ]
@baseclass = Target [ target(target_destination) : "Target" ]
@baseclass = Angles [
//angles_x(integer) : "Angles X"
//angles_Y(integer) : "Angles Y"
//angles_Z(integer) : "Angles Z"
angles(string) : "Angles (X Y Z)" : "0 0 0"
]
@baseclass = Spawn [
bluemana(integer) : "Blue mana"
greenmana(integer) : "Green mana"
cnt_torch(integer) : "Torch"
cnt_h_boost(integer) : "Quartz flask"
cnt_sh_boost(integer) : "Mystic urn"
cnt_mana_boost(integer) : "Krater of might"
cnt_teleport(integer) : "Chaos device"
cnt_tome(integer) : "Tome of power"
cnt_summon(integer) : "Stone of summoning"
cnt_invisibility(integer) : "Invisibility"
cnt_glyph(integer) : "Glyph of ancients"
cnt_haste(integer) : "Boots of speed"
cnt_blast(integer) : "Disc of repulsion"
cnt_polymorph(integer) : "Ovinimancer"
cnt_cubeofforce(integer) : "Force cube"
cnt_invincibility(integer) : "Invincibility"
]
//
// Entities!
//
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = air_bubbles : "Air bubbles (PoP)" [
cnt(integer) : "Number of Bubbles" : 1
wait(integer) : "Wait Style (-2 for burst)" : 0
]
//
// Artifacts!
//
@BaseClass base(Appearflags, Targetname, Target) size(-8 -8 -44, 8 8 20) = Artifact
[
spawnflags(Flags) =
[
1 : "Floating" : 0
]
message(string) : "Message"
style(integer) : "Light Style"
]
@PointClass base(Artifact) model({ "path": ":models/a_blast.mdl" }) = art_blastradius : "Blast Radius" []
@PointClass base(Artifact) model({ "path": ":models/a_cube.mdl" }) = art_cubeofforce : "Cube of Force" []
@PointClass base(Artifact) model({ "path": ":models/a_glyph.mdl" }) = art_glyph : "Glyph" []
@PointClass base(Artifact) model({ "path": ":models/a_haste.mdl" }) = art_haste : "Haste" []
@PointClass base(Artifact) model({ "path": ":models/a_hboost.mdl" }) = art_HealthBoost : "Health Boost" []
@PointClass base(Artifact) model({ "path": ":models/a_invinc.mdl" }) = art_invincibility : "Invincibility" []
@PointClass base(Artifact) model({ "path": ":models/a_invis.mdl" }) = art_invisibility : "Invisibility" []
@PointClass base(Artifact) model({ "path": ":models/a_mboost.mdl" }) = art_manaboost : "Mana Boost" []
@PointClass base(Artifact) model({ "path": ":models/a_poly.mdl" }) = art_polymorph : "Polymorph" []
@PointClass base(Artifact) model({ "path": ":models/a_summon.mdl" }) = art_summon : "Summoning" []
@PointClass base(Artifact) model({ "path": ":models/a_shbost.mdl" }) = art_SuperHBoost : "Super Health Boost" []
@PointClass base(Artifact) model(":models/xcalibur.mdl") = art_sword_and_crown : "Sword and Crown" []
@PointClass base(Artifact) model({ "path": ":models/a_telprt.mdl" }) = art_teleport : "Teleport" []
@PointClass base(Artifact) model({ "path": ":models/a_tome.mdl" }) = art_tomeofpower : "Tome of Power" []
@PointClass base(Artifact) model({ "path": ":models/a_torch.mdl" }) = art_torch : "Torch" []
//
// Entities!
//
@PointClass base(Appearflags, Targetname) = buddha_trigger_endgame : "Buddha trigger endgame (PoP)" []
@SolidClass base(Appearflags, Targetname, Target) = breakable_brush : "Breakable brush"
[
spawnflags(Flags) =
[
1 : "Kill All" : 0
2 : "Hierarchy" : 0
4 : "No Link" : 0
8 : "Check Name" : 0
16 : "Ordered" : 0
32 : "Translucent" : 0
64 : "Invincible" : 0
128 : "Invisible" : 0
]
killtarget(target_destination) : "KillTarget"
flags(integer) : "Hierachial order"
thingtype(choices) : "Material type" : 0 =
[
0 : "Glass"
1 : "Grey stone"
2 : "Wood"
3 : "Metal"
4 : "Flesh"
5 : "Fire"
6 : "Clay"
7 : "Leaves"
8 : "Hay"
9 : "Brown stone"
10 : "Cloth"
11 : "Wood & leaf"
12 : "Wood & metal"
13 : "Wood & stone"
14 : "Metal & stone"
15 : "Metal & cloth"
16 : "Spider web"
//17 : "Glass"
18 : "Ice"
19 : "Clear glass"
20 : "Red glass"
]
health(choices) : "Health" : 0 =
[
0 : "Based on material"
]
abslight(integer) : "Absolute light level"
]
@SolidClass base(Appearflags, Targetname) = brush_pushable : "Pushable brush"
[
mass(integer) : "Mass" : 5
thingtype(choices) : "Material type" : 1 =
[
0 : "No sound"
1 : "Stone/ceramic"
2 : "Wood"
//4 : "Metal" //Listed on Eye of Horus, doesn't work though?
]
]
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = camera_remote : "Camera"
[
target(target_destination) : "Target (target_null)"
wait(integer) : "Time in camera mode" : 3
angles_x(integer) : "Pitch (optional)"
angles_y(integer) : "Yaw (optional)"
netname(string) : "Netname (PoP)"
]
//
// Func Entities!
//
@SolidClass base(Appearflags, Targetname, Target) = func_angletrigger : "Angle trigger"
[
spawnflags(Flags) =
[
1 : "Reverse" : 0
2 : "X axis" : 0
4 : "Y axis" : 0
]
mangle(string) : "Mangle (x y z)"
cnt(integer) : "Degrees per move"
speed(integer) : "Speed" : 40
dmg(integer) : "Damage when blocked"
netname(string) : "Netname"
abslight(integer) : "Absolute light level"
]
@BaseClass base(Appearflags, Targetname, Target) = Button [
spawnflags(Flags) =
[
1 : "Deactivated" : 0
2 : "Fired only" : 0
4 : "Fire multiple" : 0
]
speed(integer) : "Speed" : 40
wait(choices) : "Wait" : 1 =
[
-1 : "Stay pressed"
]
message(string) : "Message"
delay(integer) : "Delay"
lip(integer) : "Lip" : 4
health(integer) : "Health"
soundtype(choices) : "Sounds" : 0 =
[
0 : "Steam metal"
1 : "Wooden clunk"
2 : "Metallic click"
3 : "In-out"
]
netname(string) : "Netname"
abslight(integer) : "Absolute light value"
]
@SolidClass base(Button) = func_button : "Button"
[
msg2(string) : "Deactivated Message"
aflag(integer) : "Order"
]
@SolidClass base(Appearflags, Targetname) = func_crusher : "Crusher"
[
spawnflags(Flags) =
[
1 : "Multiple" : 0
2 : "Slide" : 0
4 : "Start open" : 0
8 : "End open" : 0
]
speed(integer) : "Speed" : 150
dmg(integer) : "Damage" : 10
lip(integer) : "Lip" : 4
wait(integer) : "Wait" : 1
soundtype(choices) : "Sounds" : 1 =
[
1 : "Base fast"
2 : "Chain slow"
3 : "Guillotine"
]
]
@BaseClass base(Appearflags, Targetname, Target) = Door
[
spawnflags(Flags) =
[
1 : "Start open" : 0
2 : "Reverse" : 0
4 : "Don't link" : 0
]
message(string) : "Message"
health(integer) : "Health (shootable)"
speed(integer) : "Speed" : 100
wait(choices) : "Wait" : 3 =
[
3 : "Default (3)"
-1 : "Never return"
]
dmg(choices) : "Damage" : 2 =
[
2 : "Default (2)"
666 : "Instant kill (666)"
]
strength(integer) : "Strength" : 1 //What is this key for?
soundtype(choices) : "Sounds" : 2 =
[
0 : "No sound"
1 : "Big metal door, swinging"
2 : "Big stone door, sliding"
3 : "Big wood door, swinging"
4 : "Normal wood door, swinging"
5 : "Big wood door, sliding"
6 : "Drawbridge"
7 : "Rotating walkway"
8 : "Big metal door, sliding"
9 : "Pendulum swinging"
]
]
@SolidClass base(Door) = func_door : "Door"
[
spawnflags(Flags) =
[
8 : "Toggle" : 0
16 : "Slide" : 0
32 : "Normal move" : 0
64 : "Remove puzzle" : 0
128 : "No puzzle" : 0
]
level(integer) : "Movement length"
lip(integer) : "Lip" : 8
//v_angle(string) : "Angle to turn" : "0 0 0" //What is this key for?
//anglespeed(integer) : "Turning speed" : 0 //What is this key for?
puzzle_piece_1(integer) : "Puzzle Piece 1"
puzzle_piece_2(integer) : "Puzzle Piece 2"
puzzle_piece_3(integer) : "Puzzle Piece 3"
puzzle_piece_4(integer) : "Puzzle Piece 4"
no_puzzle_msg(string) : "Puzzle message"
close_target(string) : "Close Target (PoP)"
abslight(integer) : "Absolute light value"
]
@SolidClass base(Door) = func_door_rotating : "Rotating door"
[
spawnflags(Flags) =
[
8 : "Remove puzzle" : 0
16 : "No puzzle" : 0
32 : "Toggle" : 0
64 : "X axis" : 0
128 : "Y axis" : 0
]
flags(integer) : "Degrees of rotation"
flags2(integer) : "Damage when touched"
puzzle_piece_1(integer) : "Puzzle Piece 1"
puzzle_piece_2(integer) : "Puzzle Piece 2"
puzzle_piece_3(integer) : "Puzzle Piece 3"
puzzle_piece_4(integer) : "Puzzle Piece 4"
no_puzzle_msg(string) : "Puzzle message"
close_target(string) : "Close Target (PoP)"
abslight(integer) : "Absolute light value"
]
@SolidClass base(Door) = func_door_secret : "Secret door"
[
spawnflags(Flags) =
[
1 : "Open once" : 0
2 : "Move left first" : 0
4 : "Move down first" : 0
8 : "No shoot" : 0
16 : "Always shoot" : 0
32 : "" : 0
64 : "Remove puzzle" : 0
128: "No puzzle" : 0
]
t_width(integer) : "Override width"
t_length(integer) : "Override length"
]
@SolidClass base(Appearflags) = func_illusionary : "Illusionary brush"
[
spawnflags(Flags) =
[
1 : "Translucent" : 0
2 : "Light" : 0
]
abslight(integer) : "Absolute light value"
]
@PointClass base(Appearflags, Targetname) size(-16 -16 0, 16 16 56) = func_monsterspawner : "spawner"
[
spawnflags(Flags) =
[
1 : "Imp" : 0
2 : "Archer" : 0
4 : "Wizard" : 0
8 : "Scorpian" : 0
16 : "Spider" : 0
32 : "On death" : 0
64 : "Quiet" : 0
128 : "Trigger only" : 0
]
cnt(integer) : "Number of spawns" : 17
spawnername(string) : "Spawner name"
wait(integer) : "Time between spawns (0.5)" : 0
]
@PointClass base(Appearflags, Targetname) size(-16 -16 0, 16 16 56) = func_monsterspawner_mp : "spawner (PoP)"
[
spawnflags(Flags) =
[
1 : "Ice archer" : 0
2 : "Ice imp" : 0
4 : "Snow leopard" : 0
8 : "Weretiger" : 0
16 : "Yakman" : 0
32 : "On death" : 0
64 : "Quiet" : 0
128 : "Trigger only" : 0
]
cnt(integer) : "Number of spawns" : 17
spawnername(string) : "Spawner name"
wait(integer) : "Time between spawns (0.5)" : 0
]
@PointClass base(Appearflags, Targetname) size(-16 -16 0, 16 16 56) = func_monsterspawn_spot : "spawn spot"
[
spawnflags(Flags) =
[
1 : "Imp" : 0
2 : "Archer" : 0
4 : "Wizard" : 0
8 : "Scorpian" : 0
16 : "Spider" : 0
32 : "On death" : 0
64 : "Quiet" : 0
128 : "Trigger only" : 0
]
//cnt(integer) : "Number of spawns" : 17 //cnt should be filled out on monsterspawner, not the spot. (Crashes if it reaches the limit)
spawnername(string) : "Spawner name"
wait(integer) : "Time between spawns (0.5)" : 0
aflag(integer) : "Spawn order"
dflags(choices) : "Wait when failed" : 0 = //"If dflags is set to "1", the spawner will wait it's "wait" value every time it fails to spawn a monster."
[
0 : "No"
1 : "Yes"
]
]
@PointClass base(Appearflags, Targetname) size(-16 -16 0, 16 16 56) = func_monsterspawn_spot_mp : "spawn spot (PoP)"
[
spawnflags(Flags) =
[
1 : "Ice archer" : 0
2 : "Ice imp" : 0
4 : "Snow leopard" : 0
8 : "Weretiger" : 0
16 : "Yakman" : 0
32 : "On death" : 0
64 : "Quiet" : 0
128 : "Trigger only" : 0
]
//cnt(integer) : "Number of spawns" : 17 //cnt should be filled out on monsterspawner, not the spot. (Crashes if it reaches the limit)
spawnername(string) : "Spawner name"
wait(integer) : "Time between spawns (0.5)" : 0
aflag(integer) : "Spawn order"
dflags(choices) : "Wait when failed" : 0 = //"If dflags is set to "1", the spawner will wait it's "wait" value every time it fails to spawn a monster."
[
0 : "No"
1 : "Yes"
]
]
@SolidClass base(Appearflags, Targetname) = func_newplat : "New plat"
[
spawnflags(Flags) =
[
1 : "Bottom start" : 0
2 : "Return to start" : 0
4 : "Continuous" : 0
]
speed(integer) : "Speed" : 150
height(integer) : "Height"
soundtype(choices) : "Sounds" : 1 =
[
1 : "Pully"
2 : "Chain"
]
dmg(integer) : "Damage" : 0
wait(integer) : "Wait" : 3
]
@SolidClass base(Appearflags, Targetname) = func_plat : "Plat"
[
spawnflags(Flags) =
[
1 : "Trigger low" : 0
]
speed(integer) : "Speed" : 150
height(integer) : "Height"
soundtype(choices) : "Sounds" : 1 =
[
1 : "Pully"
2 : "Chain"
]
dmg(integer) : "Damage" : 0
wait(integer) : "Wait" : 3
]
@SolidClass base(Button) = func_pressure : "Pressure plate"
[
spawnflags(Flags) =
[
1 : "Activate" : 0
2 : "" : 0
4 : "" : 0
]
mass(integer) : "Mass required"
]
@SolidClass base(Appearflags, Targetname) = func_rotating : "Rotating object"
[
spawnflags(Flags) =
[
1 : "Start on" : 0
2 : "Reverse" : 0
4 : "X axis" : 0
8 : "Y axis" : 0
16 : "Breakable" : 0
32 : "Gradual" : 0
64 : "Toggle reverse" : 0
128 : "Keep start" : 0
]
speed(integer) : "Speed" : 100
dmg(integer) : "Damage when blocked" : 2
lifetime(choices) : "Lifetime" : 0 =
[
0 : "Continuous"
]
wait(integer) : "Time between lifetimes" : 3
thingtype(choices) : "Material type" : 2 =
[
0 : "Glass"
1 : "Grey stone"
2 : "Wood"
3 : "Metal"
4 : "Flesh"
5 : "Fire"
6 : "Clay"
7 : "Leaves"
8 : "Hay"
9 : "Brown stone"
10 : "Cloth"
11 : "Wood & leaf"
12 : "Wood & metal"
13 : "Wood & stone"
14 : "Metal & stone"
15 : "Metal & cloth"
16 : "Spider web"
//17 : "Glass"
18 : "Ice"
19 : "Clear glass"
20 : "Red glass"
]
health(choices) : "Health" : 0 =
[
0 : "Based on material"
]
anglespeed(integer) : "Accel/decell time" : 10
abslight(integer) : "Absolute light value"
]
@SolidClass base(Appearflags, Targetname) = func_rotating_movechain : "Move chain" //Is supposed to link rotating ents to moving ents. Untested
[
spawnflags(Flags) =
[
1 : "No angle chain" : 0
]
dmg(integer) : "Damage on touch"
noise(string) : "Noise"
noise1(string) : "Impact noise"
wait(integer) : "Length of sound (for looping)"
avelocity(string) : "Pitch/Yaw/Roll" : "0 0 0"
netname(string) : "Netname"
abslight(integer) : "Absolute light value"
]
@SolidClass base(Appearflags, Targetname, Target) = func_train : "Train"
[
spawnflags(Flags) =
[
1 : "Glow" : 0
2 : "Toggle" : 0
4 : "Return" : 0
8 : "Translucent" : 0
]
speed(integer) : "Speed" : 100
dmg(integer) : "Damage when blocked" : 2
soundtype(choices) : "Sound" : 1 =
[
0 : "No sound"
1 : "Ratchet metal"
]
anglespeed(integer) : "Speed of rotation" : 100
wait(choices) : "Wait between moves" : 0 =
[
0 : "No wait"
-1 : "Stop"
-2 : "Explode"
]
pausetime(integer) : "Pause before explode"
thingtype(choices) : "Material" : 1 =
[
0 : "Glass"
1 : "Grey stone"
2 : "Wood"
3 : "Metal"
4 : "Flesh"
5 : "Fire"
6 : "Clay"
7 : "Leaves"
8 : "Hay"
9 : "Brown stone"
10 : "Cloth"
11 : "Wood & leaf"
12 : "Wood & metal"
13 : "Wood & stone"
14 : "Metal & stone"
15 : "Metal & cloth"
16 : "Spider web"
//17 : "Glass"
18 : "Ice"
19 : "Clear glass"
20 : "Red glass"
]
abslight(integer) : "Absolute light value"
]
@SolidClass base(Appearflags, Targetname, Target) = func_train_mp : "Train (PoP)"
[
spawnflags(Flags) =
[
1 : "Invisible" : 0
2 : "Toggle" : 0
4 : "Return" : 0
8 : "Translucent" : 0
16 : "Slope" : 0
32 : "Angle match" : 0
64 : "Use origin" : 0
128 : "Angle wait" : 0
]
speed(integer) : "Speed" : 100
dmg(integer) : "Damage when blocked" : 2
soundtype(choices) : "Sound" : 1 =
[
0 : "No sound"
1 : "Ratchet metal"
2 : "Pullies"
3 : "Sliding"
4 : "Machine"
5 : "Gears"
6 : "Guillotine"
7 : "Chain"
8 : "Rolling boulder"
9 : "Prayer wheel"
]
level(choices) : "Sound falloff" : 0 =
[
0 : "Normal"
1 : "No falloff"
]
weaponmodel(string) : "Model path"
angles(string) : "Angles (x y z)"
health(integer) : "Health"
anglespeed(integer) : "Speed of rotation" : 100
wait(choices) : "Wait between moves" : 0 =
[
0 : "No wait"
-1 : "Stop"
-2 : "Explode"
-3 : "Wait at next corner"
]
pausetime(integer) : "Pause before explode"
thingtype(choices) : "Material" : 1 =
[
0 : "Glass"
1 : "Grey stone"
2 : "Wood"
3 : "Metal"
4 : "Flesh"
5 : "Fire"
6 : "Clay"
7 : "Leaves"
8 : "Hay"
9 : "Brown stone"
10 : "Cloth"
11 : "Wood & leaf"
12 : "Wood & metal"
13 : "Wood & stone"
14 : "Metal & stone"
15 : "Metal & cloth"
16 : "Spider web"
//17 : "Glass"
18 : "Ice"
19 : "Clear glass"
20 : "Red glass"
]
abslight(integer) : "Absolute light value"
]
@SolidClass base(Appearflags, Targetname) = func_wall : "Wall"
[
spawnflags(Flags) =
[
1 : "Translucent" : 0
]
abslight(integer) : "Absolute light value"
]
//
// FX Entities!
//
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = fx_colorbeam_end : "End of beam" []
@PointClass base(Appearflags, Targetname, Target) size(-8 -8 -8, 8 8 8) = fx_colorbeam_start : "Start of beam"
[
spawnflags(Flags) =
[
1 : "start off" : 0
]
noise(choices) : "Noise" : 1 =
[
1 : "No sound (default)"
2 : "Lightning"
]
wait(choices) : "Wait" : -1 =
[
-1 : "Triggerable"
]
color(choices) : "Color" : 0 =
[
0 : "Red"
1 : "Blue"
2 : "Green"
3 : "White"
4 : "Yellow"
]
lifespan(integer) : "Lifespan"
]
@SolidClass base(Appearflags, Targetname) = fx_friction_change : "Friction change (PoP)"
[
friction(choices) : "Friction" : 1 =
[
1 : "Normal (1)"
0 : "Slippery (> 0, < 1)"
2 : "High (> 1)"
]
]
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = fx_smoke_generator : "smoker"
[
wait(integer) : "Time between puffs" : 2
thingtype(choices) : "Type of smoke" : 0 =
[
0 : "White puff"
1 : "Red"
2 : "Green"
3 : "Grey"
]
lifespan(integer) : "Lifespan override"
]
//
// Info Entities!
//
@PointClass base(Appearflags) size(-16 -16 -16, 16 16 16) = info_intermission : "intermission camera"
[
mangle(string) : "Pitch/Roll/Yaw" : "0 0 0"
]
@PointClass base(Appearflags, Targetname) size(-4 -4 -4, 4 4 4) = info_null : "null target"
[
spawnflags(Flags) =
[
1 : "Don't remove" : 0
]
]
@baseclass base(Appearflags, Targetname) size(-16 -16 -32, 16 16 32) color(0 255 0) = PlayerClass []
@PointClass base(PlayerClass) = info_player_start : "Player 1 start" []
@PointClass base(PlayerClass) = info_player_start2 : "Player 1 start (PoP)" []
@PointClass base(PlayerClass) = info_player_coop : "Player cooperative start"
[
target(target_destination) : "Target (PoP)"
map(string) : "Map (PoP)"
playerclass(integer) : "Player class (PoP)"
]
@PointClass base(PlayerClass) = info_player_deathmatch : "Player deathmatch start" []
@PointClass base(PlayerClass) = info_teleport_destination : "Teleport destination"
[
spawnflags(Flags) =
[
1 : "No throw" : 0
]
]
//
// Items!
//
@BaseClass base(Appearflags, Targetname, Target) size(-8 -8 -20, 8 8 45) = Item
[
spawnflags(Flags) =
[
1 : "floating" : 0
]
message(string) : "Message"
style(integer) : "Light Style"
]
@PointClass base(Item) = item_armor_amulet : "Armor amulet" []
@PointClass base(Item) = item_armor_bracer : "Armor bracer" []
@PointClass base(Item) = item_armor_breastplate : "Breastplate" []
@PointClass base(Item) = item_armor_helmet : "Helmet" []
@PointClass base(Item) = item_health : "10 health" []
@PointClass base(Item) = item_mana_both : "Mana"
[
spawnflags(Flags) =
[
2 : "big (30)" : 0
]
]
@PointClass base(item_mana_both) = item_mana_blue : "blue mana" []
@PointClass base(item_mana_both) = item_mana_green : "green mana" []
@PointClass base(Appearflags, Targetname, Spawn) size(-8 -8 -20, 8 8 45) = item_spawner : "Item spawner"
[
]
//
// Lights!
//
@PointClass base(Appearflags, Targetname, Target, Lights) size(-8 -8 -8, 8 8 8) = light : "normal light" []
@baseclass = Lightdmg
[
dmg(integer) : "Damage (PoP)"
]
@PointClass base(light, Lightdmg) model(":models/flame1.mdl") size(-10 -10 -40, 10 10 40) = light_flame_large_yellow : "Flame large yellow"[]
@PointClass base(light) model(":models/flame2.mdl") size(-10 -10 -12, 12 12 18) = light_flame_small_white : "Flame small white"[]
@PointClass base(light, Lightdmg) model(":models/flame2.mdl") size(-10 -10 -12, 12 12 18) = light_flame_small_yellow : "Flame small yellow"[]
@PointClass base(light, Angles) size(-8 -8 -8, 8 8 8) = light_gem : "Gem light" []
@PointClass base(light) size(-8 -8 -8, 8 8 8) = light_globe : "Globe" []
@PointClass base(light) model(":models/cflmtrch.mdl") size(-8 -8 -8, 8 8 8) = light_torch_castle : "Castle torch" []
@PointClass base(light_torch_castle) model(":models/egtorch.mdl") = light_torch_egypt : "Egyptian torch" []
@PointClass base(light_torch_castle) model(":models/mflmtrch.mdl") = light_torch_meso : "Meso torch" []
@PointClass base(light_torch_castle) model(":models/rflmtrch.mdl") = light_torch_rome : "Roman torch" []
@PointClass base(light, Lightdmg) model(":models/flame.mdl") size(-10 -10 -20, 10 10 20) = light_torch_small_walltorch : "Walltorch"
[
light(integer) : "Brightness" : 200
]
@PointClass base(light, Lightdmg) size(-16 -16 -52, 16 16 16) = light_burner : "Burner (PoP)" []
@PointClass base(light) size(-8 -8 -16, 8 8 32) = light_candle : "Candle (PoP)" []
@PointClass base(light) size(-8 -8 -40, 8 8 8) = light_lantern : "Lantern (PoP)" []
@PointClass base(light, Lightdmg) size(-48 -48 -4, 48 48 224) = light_newfire : "Newfire (PoP)" []
@PointClass base(light, Lightdmg) size(-0 -16 -0, 22 16 32) = light_palace_torch : "Palace torch (PoP)" []
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = light_thunderstorm : "Thunderstorm"
[
light(integer) : "Brightness" : 300
wait(integer) : "Wait (1 - 100)" : 33
dmg(integer) : "Lightning frequency" : 10
lightvalue1(integer) : "Normal light value" : 11
frags(integer) : "Lightning area radius" : 1000
style(integer) : "Light Style"
]
//
// Misc Entities!
//
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = misc_fireball : "Lava balls" []
@PointClass base(Appearflags, Targetname) size(0 0 0, 32 32 32) = misc_fountain : "Fountain"
[
angles(string) : "Angles (x y z)" : "0 0 0"
movedir(string) : "Direction (x y z)" : "1 1 1"
color(integer) : "Color" : 407
cnt(integer) : "Number of particles" : 2
]
//
// Monsters!
//
@BaseClass base(Appearflags, Targetname, Target, Spawn) size(-16 -16 0, 16 16 50) = Monster
[
spawnflags(Flags) =
[
1 : "Ambush" : 0 //Only wakes up when player is within this enemies line of sight
2 : "Stuck" : 0 //Cannot move from original position (only some enemies)
4 : "Jump" : 0 //Has the ability to leap forward; automatically set on some enemies (such as spiders)
8 : "Play dead (PoP)" : 0 //Possibly no useful effect?
16 : "Dormant" : 0 //Possibly no useful effect?
32 : "No drop" : 0 //Doesn't drop to floor on spawn according to HC (may not be implemented)
64 : "Frozen (PoP)" : 0 //Enemy is made out of ice
]
health(integer) : "Health (PoP)"
experience(integer) : "Experience (PoP)" //Doesn't seem to work
]
@PointClass base(Monster) model(":models/archer.mdl") = monster_archer : "Archer" []
@PointClass base(Monster) model(":models/archer.mdl") = monster_archer_lord : "Archer lord" []
@PointClass base(Monster) model(":models/fangel.mdl") size(-14 -14 -41, 14 14 23) = monster_fallen_angel : "Fallen angel" []
@PointClass base(Monster) model(":models/fangel.mdl") size(-14 -14 -41, 14 14 23) = monster_fallen_angel_lord : "Fallen angel lord" []
@PointClass base(Monster) model(":models/golem_s.mdl") size(-32 -32 0, 32 32 112) = monster_golem_stone : "Stone golem" []
@PointClass base(Monster) model(":models/golem_i.mdl")size(-55 -55 0, 55 55 120) = monster_golem_iron : "Iron golem" []
@PointClass base(Monster) model(":models/golem_b.mdl") size(-64 -64 0, 64 64 194) = monster_golem_bronze : "Bronze golem" []
@PointClass base(Monster) model(":models/golem_s.mdl") size(-32 -32 -24, 32 32 64) = monster_golem_crystal : "Crystal golem" []
@PointClass base(Monster) model(":models/hydra.mdl") size(-40 -40 -42, 40 40 42) = monster_hydra : "Hydra"
[
spawnflags(Flags) =
[
1 : "Stand" : 0
2 : "Hover" : 0
]
]
@PointClass base(Monster) model(":models/imp.mdl") = monster_imp_fire : "Fire imp"
[
spawnflags(Flags) =
[
1 : "Stand" : 0
2 : "Hover" : 0
4 : "" : 0
8 : "" : 0
16 : "Gargoyle" : 0
32 : "" : 0
64 : "" : 0
]
wait(integer) : "Wait (-1 for decoration)"
]
@PointClass base(monster_imp_fire) model(":models/imp.mdl") = monster_imp_ice : "Ice imp" []
@PointClass base(monster_imp_fire) model(":models/imp.mdl") = monster_imp_lord : "Lord imp" []
@PointClass base(Monster) model(":models/medusa.mdl") = monster_medusa_green : "Green medusa" []
@PointClass base(monster_medusa_green) model(":models/medusa2.mdl") = monster_medusa_red : "Red medusa" []
@PointClass base(Monster) model(":models/mummy.mdl") size(-16 -16 0, 16 16 55) = monster_mummy : "Mummy" []
@PointClass base(monster_mummy) model(":models/mummy.mdl") = monster_mummy_lord : "Mummy lord" []
@PointClass base(Monster) model(":models/scorpion.mdl") size(-40 -40 0, 40 40 64) = monster_scorpion_yellow : "Yellow scorpion" []
@PointClass base(monster_scorpion_yellow) model(":models/scorpion.mdl") = monster_scorpion_black : "Black scorpion" []
@PointClass base(Monster) model(":models/skullwiz.mdl") size(-24 -24 0, 24 24 64) = monster_skull_wizard : "Skull wizard" []
@PointClass base(monster_skull_wizard) model(":models/skullwiz.mdl") = monster_skull_wizard_lord : "Skull wizard lord" []
@BaseClass base(Monster) model(":models/spider.mdl") = Spider
[
spawnflags(Flags) =
[
32 : "On wall" : 0
]
]
@PointClass base(Spider) size(-12 -12 0, 12 12 16) = monster_spider_red_small : "Small red spider" []
@PointClass base(Spider) size(-16 -16 0, 16 16 26) = monster_spider_red_large : "Big red spider" []
@PointClass base(Spider) size(-12 -12 0, 12 12 16) = monster_spider_yellow_small : "Small yellow spider" []
@PointClass base(Spider) size(-16 -16 0, 16 16 26) = monster_spider_yellow_large : "Big yellow spider" []
@PointClass base(Monster) model(":models/mezzoman.mdl") = monster_werejaguar : "Werejaguar" []
@PointClass base(monster_werejaguar) model(":models/mezzoman.mdl") = monster_werepanther : "Werepanther" []
@PointClass base(Appearflags, Targetname, Target) model(":models/fish.mdl") size(-16 -16 -8, 16 16 8) = monster_fish : "Fish"
[
skin(choices) : "Skin" : 0 =
[
0 : "Bright colored"
1 : "Darker colored"
]
]
@PointClass base(Appearflags, Targetname, Target) model(":models/rat.mdl") size(-3 -3 0, 3 3 7) = monster_rat : "Rat"
[
spawnflags(Flags) =
[
1 : "Ambush" : 0
]
]
@PointClass base(monster_rat) size(-20 -20 0, 20 20 10) = monster_ratnest : "Rat's nest" []
@PointClass base(Monster) model(":models/raven.mdl") size(-16 -16 0, 16 16 32) = monster_raven : "Raven" []
@PointClass base(Appearflags, Targetname, Target) model(":models/snake.mdl") size(-80 -80 0, 80 80 200) = monster_snake : "Snake"
[
spawnflags(Flags) =
[
1 : "Ambush" : 0
]
]
@PointClass base(Appearflags, Targetname, Target) model(":models/eidolon.mdl") size(-100 -100 0, 100 100 666) = monster_eidolon : "Eidolon" []
//
// PoP Monsters!
//
@PointClass base(Monster) model(":models/archer.mdl") = monster_archer_ice : "Ice archer (PoP)" []
@PointClass base(Monster) size(-20 -20 0, 20 20 40) = monster_pentacles : "Pentacle (PoP)"
[
skin(choices) : "Skin" : 0 =
[
0 : "Rocky brown"
1 : "Snowy white"
]
]
@PointClass base(Monster) model(":models/mezzoman.mdl") = monster_weretiger : "Were tiger (PoP)" []
@PointClass base(Monster) model(":models/mezzoman.mdl") = monster_weresnowleopard : "Were leopard (PoP)" []
@PointClass base(Monster) size(-32 -32 0, 32 32 104) model(":models/yakman.mdl") = monster_yakman : "Yakman (PoP)"
[
skin(choices) : "Skin" : 0 =
[
0 : "White" // Greater chance to shoot ice
1 : "Brown" // Even chance
2 : "Black" // Greater chance to charge
]
]
@PointClass base(Appearflags, Targetname, Target) size(-100 -100 0, 100 100 666) = monster_eidolon_weakling : "Eidolon weakling (PoP)" []
@PointClass base(Appearflags, Targetname, Target) model(":models/pravus.mdl") size(-8 -8 -8, 8 8 8) = monster_buddha : "Praevus (PoP)"
[
netname(string) : "Netname"
]
//
// Objects!
//
@PointClass base(Appearflags, Targetname, Target) model(":models/ballista.mdl") size(-45 -45 0, 45 45 60) = obj_ballista : "Ballista"
[
spawnflags(Flags) =
[
1 : "Track" : 0
]
health(choices) : "Health" : 0 =
[
0 : "Indestructible"
]
cnt(integer) : "Degrees of pitch off start" : 30
count(integer) : "Degrees per movement" : 5
dmg(integer) : "Damage of projectile" : 50
speed(integer) : "Delay between firings" : 5
//mass(integer) : "Mass"
]
@BaseClass base(Appearflags, Targetname, Target, Angles, Spawn) = Object
[
health(integer) : "Health"
scale(integer) : "Scale"
mass(integer) : "Mass"
message(string) : "Message"
abslight(integer) : "Absolute light value"
]
@BaseClass base(Object) model(":models/barrel.mdl") size(-13 -13 0, 13 13 36) = Barrels
[
spawnflags(Flags) =
[
1 : "Downhill" : 0
2 : "No drop" : 0
4 : "On side" : 0
8 : "Sink" : 0
]
]
@PointClass base(Barrels) = obj_barrel : "Barrel"
[
health(integer) : "Health" : 25
]
@PointClass base(Barrels) = obj_barrel_exploding : "Barrel exploding" []
@PointClass base(Barrels) = obj_barrel_indestructible : "Barrel indestructible" []
@PointClass base(Object) model(":models/stool.mdl") size(-10 -10 -5, 10 10 32) = obj_barstool : "Bar stool" []
@PointClass base(Object) size(-16 -16 0, 16 16 40) = obj_beefslab : "Slab o' beef" []
@PointClass base(Object) model(":models/bellring.mdl") size(-100 -100 -210, 100 100 8) = obj_bell : "Bell" []
@PointClass base(Object) model(":models/bench.mdl") size(-30 -30 0, 30 30 40) = obj_bench : "Bench" []
@PointClass base(Object) model(":models/bonepile.mdl") size(-10 -10 0, 10 10 10) = obj_bonepile : "Pile o' bones" []
@PointClass base(Object) size(-8 -8 0, 8 8 10) = obj_book_closed : "Closed book" []
@PointClass base(obj_book_closed) = obj_book_open : "Open book" []
@PointClass base(Object) model(":models/bush1.mdl") size(-16 -16 0, 16 16 40) = obj_bush1 : "Bush" []
@PointClass base(Object) model(":models/cart.mdl") size(-36 -32 -10, 36 75 64) = obj_cart : "Cart" []
@PointClass base(Appearflags, Targetname, Target, Angles) model(":models/cattest.mdl") size(-160 -160 -0, 160 160 160) = obj_catapult2 : "Catapult"
[
spawnflags(Flags) =
[
1 : "Not useable (PoP)" : 0
]
health(choices) : "Health" : 1000 =
[
0 : "Indestructible"
]
wait(integer) : "Delay before reset" : 3
speed(integer) : "Launch speed" : 300
thingtype(choices) : "Material" : 2 =
[
0 : "Glass"
1 : "Grey stone"
2 : "Wood"
3 : "Metal"
4 : "Flesh"
5 : "Fire"
6 : "Clay"
7 : "Leaves"
8 : "Hay"
9 : "Brown stone"
10 : "Cloth"
11 : "Wood & leaf"
12 : "Wood & metal"
13 : "Wood & stone"
14 : "Metal & stone"
15 : "Metal & cloth"
16 : "Spider web"
//17 : "Glass"
18 : "Ice"
19 : "Clear glass"
20 : "Red glass"
]
//mass(integer) : "Mass"
//sounds
//soundtype
]
@PointClass base(Object) model(":models/cauldron.mdl") size(-16 -16 0, 16 16 40) = obj_cauldron : "Cauldron" []
@PointClass base(Object) model(":models/chair.mdl") size(-10 -10 -5, 10 10 40) = obj_chair : "Chair" []
@PointClass base(Object) size(-100 -100 0, 100 100 200) = obj_chaos_orb : "Chaos orb" []
@PointClass base(Object) model(":models/chest1.mdl") size(-16 -16 0, 16 16 32) = obj_chest1 : "Chest #1"
[
skin(choices) : "Skin" : 0 =
[
0 : "Generic texture"
1 : "Roman texture"
]
]
@PointClass base(Object) model(":models/chest2.mdl") size(-16 -16 0, 16 16 32) = obj_chest2 : "Chest #2"
[
skin(choices) : "Skin" : 0 =
[
0 : "Generic texture"
1 : "Meso texture"
2 : "Egypt texture"
]
]
@PointClass base(Object) model(":models/chest3.mdl") size(-16 -16 0, 16 16 32) = obj_chest3 : "Chest #3" []
@PointClass base(Object) model(":models/corps1.mdl") size(-32 -32 0, 32 32 10) = obj_corpse1 : "Corpse #1"
[
skin(choices) : "Skin" : 0 =
[
0 : "Burnt, nude guy"
1 : "Normal, nude guy"
2 : "Diseased, nude guy"
3 : "Wound, has pants"
]
]
@PointClass base(obj_corpse1) model(":models/corps2.mdl") = obj_corpse2 : "Corpse #2"
[
skin(choices) : "Skin" : 0 =
[
0 : "Shoulder and face wound"
1 : "Clawed chest"
2 : "Stomach wound"
3 : "Just dead"
4 : "Webbed"
]
]
@PointClass base(Object) model(":models/fence.mdl") size(-26 -26 0, 26 26 70) = obj_fence : "Fence" []
@PointClass base(Object) model(":models/flag.mdl") size(-16 -16 0, 16 16 160) = obj_flag : "Flag" []
@PointClass base(Object) model(":models/fountain.mdl") size(-24 -24 0, 24 24 80) = obj_fountain : "Fountain" []
@PointClass base(Object) model(":models/hedge1.mdl") size(-16 -16 0, 16 16 80) = obj_hedge1 : "X-Mas tree" []
@PointClass base(Object) model(":models/hedge2.mdl") = obj_hedge2: "Square, medium hedge" []
@PointClass base(Object) model(":models/hedge3.mdl") = obj_hedge3 : "Tall, thin hedge" []
@SolidClass base(Appearflags) = obj_ice : "Ice"
[
spawnflags(Flags) =
[
1 : "No transparency" : 0
]
health(integer) : "Health" : 20
friction(integer) : "Friction" : 0
abslight(integer) : "Absolute light value"
]
@PointClass base(Object) size(-16 -40 0, 16 40 50) = obj_pew : "Pew" []
@PointClass base(Object, Spawn) model(":models/plantgen.mdl") size(-10 -10 0, 10 10 20) = obj_plant_generic : "Generic plant" []
@PointClass base(Object, Spawn) model(":models/plantmez.mdl") size(-10 -10 0, 10 10 40) = obj_plant_meso : "Meso plant" []
@PointClass base(Object, Spawn) model(":models/plantrom.mdl") size(-24 -24 0, 24 24 90) = obj_plant_rome : "Roman plant" []
@PointClass base(Object) model(":models/h_ass.mdl") size(-8 -8 0, 8 8 16) = obj_playerhead_assassin : "Assassin head" []
@PointClass base(obj_playerhead_assassin) model(":models/h_cru.mdl") = obj_playerhead_crusader : "Crusader head" []
@PointClass base(obj_playerhead_assassin) model(":models/h_nec.mdl") = obj_playerhead_necromancer : "Necro head" []
@PointClass base(obj_playerhead_assassin) model(":models/h_ass.mdl") = obj_playerhead_paladin : "Paladin head" []
@PointClass base(Object, Spawn) model(":models/pot1.mdl") size(-24 -24 0, 24 24 50) = obj_pot1 : "Pot #1" []
@PointClass base(obj_pot1) model(":models/pot2.mdl") size(-16 -16 0, 16 16 40) = obj_pot2 : "Pot #2" []
@PointClass base(obj_pot2) model(":models/pot3.mdl") = obj_pot3 : "Pot #3" []
@PointClass base(Object) model(":models/seaweed.mdl") size(-8 -8 0, 8 8 32) = obj_seaweed : "Sea weed" []
@PointClass base(Object) model(":models/skull.mdl") size(-8 -8 0, 8 8 16) = obj_skull : "Skull" []
@PointClass base(Object) model(":models/skllstk1.mdl") size(-16 -16 0, 16 16 40) = obj_skullstick : "1 skull, stick" []
@PointClass base(Object) model(":models/skllstk2.mdl") size(-16 -16 0, 16 16 40) = obj_skull_stick2 : "2 skulls, stick" []
@PointClass base(Object) model(":models/anglstat.mdl") size(-60 -60 0, 60 60 120) = obj_statue_angel : "Angel" []
@PointClass base(Object) model(":models/athena.mdl") size(-30 -30 0, 30 30 90) = obj_statue_athena : "Athena" []
@PointClass base(Object) model(":models/caesar.mdl") size(-24 -24 0, 24 24 90) = obj_statue_caesar : "Caesar" []
@PointClass base(Object) model(":models/king.mdl") size(-30 -30 0, 30 30 120) = obj_statue_king : "King" []
@PointClass base(Object) model(":models/lion.mdl") size(-56 -14 0, 56 14 60) = obj_statue_lion : "Lion" []
@PointClass base(Object) model(":models/mars.mdl") size(-30 -30 0, 30 30 80) = obj_statue_mars : "Mars" []
@PointClass base(Object) model(":models/mumstatu.mdl") size(-16 -16 0, 16 16 160) = obj_statue_mummy : "Mummy" []
@PointClass base(Object) model(":models/muhead.mdl") size(-16 -16 -26, 16 16 160) = obj_statue_mummy_head : "Mummy head"[]
@PointClass base(Object) model(":models/neptune.mdl") size(-30 -30 0, 30 30 100) = obj_statue_neptune : "Neptune" []
@PointClass base(Object) model(":models/olmec1.mdl") size(-40 -40 0, 40 40 130) = obj_statue_olmec : "Olmec???" []
@PointClass base(Object) model(":models/snkstatu.mdl") size(-16 -16 0, 16 16 80) = obj_statue_snake : "Snake" []
@PointClass base(Object) size(-44 -44 0, 44 44 90) = obj_statue_snake_coil : "Coiling snake" []
@PointClass base(Object) model(":models/tutstatu.mdl") size(-36 -36 0, 36 36 248) = obj_statue_tut : "Tut" []
@PointClass base(Object) model(":models/sword.mdl") size(-16 -16 -8, 16 16 8) = obj_sword : "Sword" []
@PointClass base(Object) model(":models/tombstn1.mdl") size(-24 -24 0, 24 24 60) = obj_tombstone1 : "Cross tombstone" []
@PointClass base(Object) model(":models/tombstn2.mdl") size(-16 -16 0, 16 16 40) = obj_tombstone2 : "Rounded tombstone" []
@PointClass base(Object) model(":models/tree.mdl") size(-42 -42 0, 42 42 160) = obj_tree : "Leaveless tree" []
@PointClass base(Object) model(":models/tree2.mdl") size(-140 -140 -16, 140 140 220) = obj_tree2 : "Normal tree" []
@PointClass base(Object) model(":models/webs.mdl") size(-25 -25 -25, 25 25 25) = obj_webs : "Spider web"
[
spawnflags(Flags) =
[
1 : "Solid" : 0
2 : "Animate" : 0
4 : "Weak" : 0
8 : "Touch & move" : 0
16 : "Flat" : 0
32 : "No transparency" : 0
]
skin(choices) : "Skin" : 0 =
[
0 : "Many little webs"
1 : "Corner web"
2 : "Cobwebs"
3 : "Giant web"
4 : "Big web (15x)"
]
v_angle(string) : "Angle of web (x y z)" : "0 0 0"
]
//
// PoP Objects!
//
@PointClass base(Object) size(-8 -8 -0, 8 8 8) = obj_book_o_the_dead : "Book (PoP)" []
@PointClass base(Object) size(-32 -32 -128, 32 32 0) = obj_chinese_kite_lamp : "Kite lamp (PoP)" []
@PointClass base(Object) size(-8 -8 -96, 8 8 0) = obj_chinese_sign : "Sign (PoP)" [] //size(-8 -72 -96, 8 72 0)
@PointClass base(Object) size(-0 -48 -0, 96 48 120) = obj_demon_statue : "Demon statue (PoP)" []
@PointClass base(Object) size(-20 -20 -0, 20 20 80) = obj_samurai : "Samurai statue (PoP)" []
@PointClass base(Object) size(-16 -16 -0, 16 16 72) = obj_shiva : "Shiva (PoP)" []
@PointClass base(Object) size(-12 -12 -0, 12 12 12) = obj_skeleton : "Skeleton (PoP)" [] //size(-40 -12 -0, 40 12 12)
@PointClass base(Object) size(-32 -32 -0, 32 32 120) = obj_skeleton_throne : "Skeleton on throne (PoP)" []
@PointClass base(Object) size(-40 -56 -0, 40 56 64) = obj_snow_corner : "Snow corner (PoP)" []
@PointClass base(Object) size(-24 -32 -0, 24 32 16) = obj_snow_pile : "Snow pile (PoP)" []
@PointClass base(Object) size(-0 -80 -0, 40 80 40) = obj_snow_wall : "Snow wall (PoP)" []
@PointClass base(Object) size(-32 -32 -16, 32 32 32) = obj_stalagmite1 : "Stalagmite1 (PoP)" []
@PointClass base(Object) size(-40 -40 -24, 40 40 24) = obj_stalagmite2 : "Stalagmite2 (PoP)" []
@PointClass base(Object) size(-16 -16 -0, 16 16 64) = obj_statue_dragon_lion : "Dragon statue (PoP)" [] //size(-40 -16 -0, 40 16 64)
@PointClass base(Object) size(-8 -8 -64, 8 8 64) = obj_talking_door : "Talking door (PoP)" []
//
// Entities!
//
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = path_corner : "Monster and train path"
[
spawnflags(Flags) =
[
1 : "Synch" : 0
]
target(target_destination) : "Next path_corner"
angles(string) : "Angles (x y z)"
wait(integer) : "Wait (-1 stops, -2 destroys)" : 0
speed(integer) : "Speed"
anglespeed(integer) : "Rotation speed"
]
@PointClass base(Monster) model(":models/sheep.mdl") size(-8 -8 0, 8 8 32) = player_sheep : "Sheep"
[
spawnflags(Flags) =
[
1 : "No not move" : 0
]
]
@SolidClass base(Appearflags, Targetname) = plaque : "Readable plaque"
[
spawnflags(Flags) =
[
1 : "Invisible" : 0
2 : "Deactivated" : 0
4 : "No LoS (PoP)" : 0
8 : "Not solid (PoP)" : 0
]
message(integer) : "String index #"
//noise1(string) : "Noise (dir/sound.wav)"
]
@PointClass base(Appearflags, Targetname, Target) size(-8 -8 -8, 8 8 16) = puzzle_piece : "Puzzle piece"
[
spawnflags(Flags) =
[
1 : "Spawn" : 0
2 : "Floating" : 0
4 : "Auto get" : 0
]
puzzle_id(string) : "Puzzle id" //Model name also works (without path or .mdl)
message(string) : "Message"
netname(string) : "Puzzle piece name" //Name of piece, displayed when picked up
style(integer) : "Light Style"
]
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = puzzle_static_piece : "Static puzzle piece"
[
puzzle_id(string) : "Puzzle id" //Model name also works (without path or .mdl)
lifespan(integer) : "Lifespan"
]
//
// Rider Stuff!
//
@PointClass base(Appearflags, Targetname) size(-55 -55 -24, 55 55 100) = rider_death : "Death!"
[
spawnflags(Flags) =
[
1 : "Trigger wait" : 0
]
target(string) : "Start spot on next map"
map(string) : "Next map after killing"
]
@PointClass base(rider_death) = rider_famine : "Famine!" []
@PointClass base(rider_death) = rider_pestilence : "Pestilence!" []
@PointClass base(rider_death) size(-50 -50 -24, 50 50 100) = rider_war : "War!" []
@PointClass base(Appearflags, Targetname) = rider_path : "Rider path"
[
path_id(string) : "Path id"
next_path_1(string) : "Next path 1"
next_path_2(string) : "Next path 2"
next_path_3(string) : "Next path 3"
next_path_4(string) : "Next path 4"
next_path_5(string) : "Next path 5"
next_path_6(string) : "Next path 6"
]
@SolidClass base(Appearflags, Targetname) = rider_quake : "Rider quake"
[
model(string) : "Model"
rt_chance(integer) : "Chance of triggering (0-1)"
abslight(integer) : "Absolute light value"
]
@PointClass base(Appearflags, Targetname) = rider_quake_center : "Rider quake center"
[
rt_chance(integer) : "Chance of triggering (0-1)"
]
@SolidClass base(Appearflags, Targetname, Target) = rider_trigger_multiple : "Rider trigger multiple"
[
rt_chance(integer) : "Chance of triggering (0-1)" : 1
]
@SolidClass base(rider_trigger_multiple) = rider_trigger_once : "Rider trigger once"
[
model(string) : "Model"
]
//
// Rings!
//
@PointClass base(Item) size(-8 -8 -44, 8 8 20) = Ring_Flight : "Ring o' flight" []
@PointClass base(Ring_Flight) = Ring_Regeneration : "Ring o' regeneration" []
@PointClass base(Ring_Flight) = Ring_Turning : "Ring o' turning" []
@PointClass base(Ring_Flight) = Ring_WaterBreathing : "Ring o' water breathing" []
//
// Entities!
//
@PointClass base(Appearflags) = sound_ambient : "Ambient sound"
[
soundtype(choices) : "Sound" : 4 = //9-15 Do not work properly
[
1 : "Windmill"
2 : "Sewer water sound"
3 : "Dripping water, no echo"
4 : "Subtle sky/wind"
5 : "Crickets / night sounds"
6 : "Birds"
7 : "Raven caw"
8 : "Rocks falling"
//9 : "Lava bubble"
//10 : "Water gurgle"
//11 : "Metal"
//12 : "Pounding"
//13 : "Moans and screams"
//14 : "Creaking"
//15 : "Chain rattling"
]
]
@PointClass base(Appearflags, Targetname) size(-10 -10 -8, 10 10 8) = sound_maker : "Triggerable sound"
[
soundtype(choices) : "Sound" : 1 =
[
1 : "Bell ringing"
2 : "Organ music"
3 : "Tomb sound"
]
delay(integer) : "Delay"
]
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = target_null : "Null target" []
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = teleport_buddha : "Praevus teleport (PoP)"
[
cnt(integer) : "Cnt" : 0
]
//
// Traps!
//
@PointClass base(Appearflags, Targetname, Target) size(-8 -8 -8, 8 8 8) = trap_fireball : "Triggerable fireball"
[
spawnflags(Flags) =
[
1 : "Once per trigger" : 0 //(aka trigger only)
]
wait(integer) : "Time between firings" : 1
dmg(integer) : "Damage" : 10
]
@PointClass base(Appearflags, Targetname, Target) size(-8 -8 -8, 8 8 8) = trap_lightning : "Lightning"
[
spawnflags(Flags) =
[
1 : "Track" : 0 //Tracks player
2 : "Once" : 0 //Fires only once
]
noise(choices) : "Sounds" : 2 =
[
1 : "No sound"
2 : "Lightning"
]
wait(integer) : "Time between shots" : 1
dmg(integer) : "Damage"
//aflag(integer) : "Radius limit" //Crashes to console when used
]
@PointClass base(Appearflags, Targetname, Angles) size(-8 -8 -8, 8 8 8) = trap_shooter : "Shooter"
[
//spawnflags(Flags) = //These do not work, same for the spikeshooter below
//[
// 1 : "Super spike" : 0
// 2 : "Laser" : 0
//]
wait(integer) : "Time between shots" : 1
nextthink(integer) : "Delay before start"
]
@PointClass base(Appearflags, Targetname, Angles) size(-8 -8 -8, 8 8 8) = trap_spikeshooter : "Shooter"
[
//spawnflags(Flags) =
//[
// 1 : "Super spike" : 0
// 2 : "Laser" : 0
//]
wait(integer) : "Time between shots" : 1
nextthink(integer) : "Delay before start"
]
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = trap_spikeshooter_spray : "Shooter"
[
wait(integer) : "Time between shots" : 1
nextthink(integer) : "Delay before start"
]
//
// Triggers!
//
@BaseClass base(Appearflags, Targetname, Target) = Trigger
[
killtarget(target_destination) : "KillTarget"
netname(string) : "Netname"
aflag(integer) : "Order"
wait(integer) : "Wait" : 2
health(integer) : "Health"
delay(integer) : "Delay before trigger"
message(string) : "Message"
style(integer) : "Light Style"
]
@baseclass = Puzzles
[
spawnflags(Flags) =
[
16 : "Remove puzzle" : 0
32 : "No puzzle" : 0
]
puzzle_piece_1(string) : "Puzzle Piece 1"
puzzle_piece_2(string) : "Puzzle Piece 2"
puzzle_piece_3(string) : "Puzzle Piece 3"
puzzle_piece_4(string) : "Puzzle Piece 4"
no_puzzle_msg(string) : "No puzzle message"
]
@baseclass = Triggerflags
[
spawnflags(Flags) =
[
1 : "No touch" : 0
2 : "Monster touch" : 0
4 : "Push touch" : 0
8 : "Deactivated" : 0
64 : "Light toggle" : 0
128 : "Light start low" : 0
]
]
@SolidClass base(Trigger, Puzzles) = trigger_activate : "Activate"
[
spawnflags(Flags) =
[
1 : "Once" : 0
2 : "Relay" : 0
8 : "Deactivated" : 0
]
soundtype(choices) : "Sound" : 2 =
[
0 : "No sound"
1 : "Secret"
2 : "Bell"
3 : "Metal"
]
]
@SolidClass base(Trigger) = trigger_attack : "Trigger on weapon fire" []
@SolidClass base(Trigger) = trigger_changelevel : "Changes level"
[
spawnflags(Flags) =
[
1 : "No intermission" : 0
//2 : "End of unit" : 0
//4 : "End of episode" : 0
]
map(string) : "Map name"
]
@SolidClass base(Appearflags, Targetname, Target) = trigger_check : "Check" //Not triggered by players
[
killtarget(target_destination) : "KillTarget"
netname(string) : "Netname"
aflag(integer) : "Order"
health(integer) : "Health"
delay(integer) : "Delay before trigger"
message(string) : "Message"
style(integer) : "Light Style"
failtarget(target_destination) : "Fail target (PoP)"
wait(integer) : "Wait (PoP)"
]
@SolidClass base(Trigger) = trigger_combination_assign : "Combination assign"
[
mangle(string) : "Mangle (x y z)"
]
@SolidClass base(Appearflags, Targetname, Target) = trigger_control : "Ballista control" []
@SolidClass base(Trigger) = trigger_counter : "Counter"
[
spawnflags(Flags) =
[
1 : "No message" : 0
2 : "Ordered" : 0
4 : "Always return" : 0
8 : "Deactivated" : 0
]
msg2(integer) : "Count fail message"
puzzle_id(target_destination) : "Count fail target"
count(integer) : "Number of triggers - 1"
mangle(string) : "Mangle (x1 x2 x3)"
]
@SolidClass base(Trigger) = trigger_counter_reset : "Counter reset"
[
spawnflags(Flags) =
[
1 : "No touch" : 0
2 : "Monster touch" : 0
4 : "Push touch" : 0
8 : "Deactivated" : 0
16 : "Remove puzzle" : 0
32 : "No puzzle" : 0
64 : "Light toggle" : 0
128 : "Light start low" : 0
]
]
@SolidClass base(Trigger) = trigger_crosslevel : "Cross level trigger"
[
spawnflags(Flags) =
[
1 : "Trigger 1" : 0
2 : "Trigger 2" : 0
4 : "Trigger 3" : 0
8 : "Trigger 4" : 0
16 : "Trigger 5" : 0
32 : "Trigger 6" : 0
64 : "Trigger 7" : 0
128 : "Trigger 8" : 0
]
map(string) : "Map"
]
@SolidClass base(trigger_crosslevel) = trigger_crosslevel_target : "Crosslevel trigger target" []
@SolidClass base(trigger_activate) = trigger_deactivate : "Deactivate" []
@SolidClass base(Appearflags, Targetname, Target) = trigger_deathtouch : "Removes whatever it touches (PoP)"
[
spawnflags(Flags) =
[
1 : "No touch" : 0
2 : "Any player" : 0
4 : "Gib" : 0
8 : "Deactivated" : 0
]
th_die(integer) : "Death type"
]
@PointClass base(Appearflags, Targetname, Target) = trigger_hub_intermission : "Trigger hub intermission (PoP)"
[
map(string) : "Map"
]
@SolidClass base(Appearflags, Targetname) = trigger_hurt : "Hurt brush" [
spawnflags(Flags) =
[
1 : "Player only (PoP)" : 0
2 : "Monster only (PoP)" : 0
8 : "Deactivated (PoP)" : 0
]
dmg(integer) : "Damage" : 5
level(integer) : "Minimum health (PoP)"
wait(integer) : "Delay between damage(PoP)" : 1
]
@PointClass base(Appearflags, Targetname, Target) size(-8 -8 -8, 8 8 8) = trigger_interval : "Interval trigger"
[
spawnflags(Flags) =
[
8 : "Deactivated" : 0
]
killtarget(target_destination) : "KillTarget"
netname(string) : "Netname"
delay(integer) : "Delay before trigger"
wait(integer) : "Wait"
]
@SolidClass base(Appearflags, Targetname, Target) = trigger_message_transfer : "Message transferer"
[
message(string) : "Message (required)" : "139"
]
@SolidClass base(Appearflags, Targetname) = trigger_monsterjump : "Monster jumper"
[
spawnflags(Flags) =
[
1 : "Deactivated (PoP)" : 0
]
speed(integer) : "Speed forward" : 200
height(integer) : "Speed upwards" : 200
wait(integer) : "Wait" : 0
]
@SolidClass base(Appearflags, Targetname, Target, Trigger, Triggerflags, Puzzles) = trigger_multiple : "Multiple trigger"
[
soundtype(choices) : "Sounds" : 0 =
[
0 : "No sound"
1 : "Secret"
2 : "Bell"
3 : "Large switch"
]
]
@SolidClass base(Appearflags) = trigger_no_friction : "Removes friction"
[
style(integer) : "Light toggle style (33 - 63)"
lightvalue1(integer) : "Low light value" : 0
lightvalue2(integer) : "High light value" : 11
fadespeed(integer) : "Fade speed (0.5)" : 0
]
@PointClass base(Appearflags, Targetname, Target) = trigger_objective : "Trigger objective (PoP)"
[
spawnflags(Flags) =
[
1 : "Force on" : 0
2 : "Force off" : 0
]
frags(integer) : "Objective (0-63)"
]
@SolidClass base(Appearflags, Targetname, Target, Trigger, Puzzles, trigger_multiple) = trigger_once : "Single trigger" []
@SolidClass base(Appearflags, Targetname) = trigger_push : "Push"
[
spawnflags(Flags) =
[
1 : "Push once" : 0
]
speed(integer) : "Speed of push"
angles(string) : "Angle of push (X Y Z)"
]
@PointClass base(Appearflags, Targetname, Target) = trigger_quake : "Quake"
[
spawnflags(Flags) =
[
1 : "Do damage" : 0
2 : "Multiple" : 0
//8 : "Deactivated" : 0 //Quake doesn't appear to function properly after activating
]
killtarget(target_destination) : "KillTarget"
message(string) : "Message"
items(integer) : "Radius of quake"
dmg(integer) : "Damage" : 5
lifespan(integer) : "Duration" : 2
wait(integer) : "Delay before quake" : 1
]
@PointClass base(Appearflags, Targetname, Target) size(-8 -8 -8, 8 8 8) = trigger_relay : "Relay"
[
killtarget(target_destination) : "KillTarget"
netname(string) : "Netname"
wait(integer) : "Wait"
delay(integer) : "Delay before trigger"
message(string) : "Message"
fadespeed(integer) : "Fade speed"
style(integer) : "Light Style"
]
@SolidClass base(Appearflags, Targetname) = trigger_setskill : "Set skill level (PoP)"
[
noise(choices) : "Skill level" : 1 =
[
0 : "Easy"
1 : "Medium"
2 : "Hard"
3 : "Nightmare!"
]
]
@SolidClass base(Appearflags, Targetname, Target) = trigger_stop : "Trigger stop (PoP)"
[
spawnflags(Flags) =
[
1 : "No touch" : 0
]
//wait(integer) : "Wait" //Crashes to console when used
]
@SolidClass base(Appearflags, Targetname, Target) = trigger_teleport : "Trigger teleport"
[
spawnflags(flags) =
[
1 : "Player only" : 0
2 : "Silent" : 0
4 : "Deactivated" : 0
]
]
//
// Weather!
//
@SolidClass base(Appearflags) = weather_dust : "Dusty area"
[
color(integer) : "Color" : 101
]
@PointClass base(Appearflags, Targetname) = weather_lightning_end : "End of lightning bolt" []
@PointClass base(Appearflags, Targetname, Target) = weather_lightning_start : "Beginning of lighting"
[
spawnflags(Flags) =
[
1 : "Start off" : 0
2 : "Thunder sound" : 0
]
noise(choices) : "Sounds" : 2 =
[
1 : "No sound"
2 : "Lightning"
]
wait(choices) : "Time between strikes" : -1 =
[
-1 : "Once per trigger"
]
lifespan(integer) : "Duration"
dmg(integer) : "Damage"
]
@SolidClass base(Appearflags) = weather_rain : "Rain area"
[
spawnflags(Flags) =
[
1 : "Fall straight" : 0
2 : "No splat" : 0
]
color(integer) : "Base color" : 414
counter(integer) : "Density" : 300
wait(integer) : "Frequency (0.1)" : 0
soundtype(choices) : "Sounds" : 1 =
[
0 : "Rain"
1 : "Drip"
]
]
@SolidClass base(Appearflags) = weather_snow : "Snow (PoP)"
[
spawnflags(Flags) =
[
1 : "Fluffy" : 0
2 : "Mixed" : 0
4 : "Half bright" : 0
8 : "No melt" : 0
16 : "In bounds" : 0
32 : "No translucent" : 0
]
counter(integer) : "Density" : 100
speed(integer) : "Falling speed" : 200
anglespeed(integer) : "Lateral movement" : 125
movedir(string) : "Blow direction (# # #)"
]
@PointClass base(Appearflags, Targetname) size(-8 -8 -8, 8 8 8) = weather_sunbeam_end : "End of sunbeam" []
@PointClass base(Appearflags, Targetname, Target) = weather_sunbeam_start : "Start of sunbeam"
[
spawnflags(Flags) =
[
1 : "Start off" : 0
]
noise(choices) : "Sounds" : 2 =
[
1 : "No sound"
2 : "Buzzing"
]
wait(choices) : "Time between strikes" : -1 =
[
-1 : "Once per trigger"
]
lifespan(integer) : "Duration"
dmg(integer) : "Damage"
]
//
// Weapons!
//
@PointClass base(Appearflags, Targetname, Target) size(-8 -8 -44, 8 8 20) = wp_weapon2 : "Weapon 2"
[
spawnflags(Flags) =
[
1 : "Floating" : 0
]
message(string) : "Message"
style(integer) : "Light Style"
]
@PointClass base(wp_weapon2) = wp_weapon3 : "Weapon 3" []
@PointClass base(wp_weapon2) = wp_weapon4_head : "Weapon 4 head" []
@PointClass base(wp_weapon2) = wp_weapon4_staff : "Weapon 4 staff" []
@SolidClass base() = func_detail: "ericw compilers - not calculated in VIS"
[]
@SolidClass base() = func_detail_illusionary: "ericw compilers - not solid and bit calculated in VIS"
[]
@SolidClass base() = func_group: "ericw compilers"
[]