Last active
August 13, 2024 19:47
-
-
Save spacehare/426e4f7461f614cda6aa1d3952199193 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // Quoth additions by Preach([email protected]) | |
| // 2024: edits for Meat Jam by rabbit | |
| // https://gist.github.com/spacehare/426e4f7461f614cda6aa1d3952199193 | |
| // worldspawn | |
| // | |
| @SolidClass = worldspawn : "World entity" | |
| [ | |
| message(string) : "Text on entering the world" | |
| worldtype(choices) : "Ambience" : 0 = | |
| [ | |
| 0 : "Medieval" | |
| 1 : "Runic (metal)" | |
| 2 : "Present (base)" | |
| 3 : "Elder" | |
| ] | |
| sounds(integer) : "CD track to play" : 1 | |
| light(integer) : "Ambient light" | |
| _sunlight(integer) : "Sunlight" | |
| _sun_mangle(string) : "Sun mangle (Yaw pitch roll)" | |
| gravity(integer) : "Set gravity for this level (default 800)" | |
| keep_keys(choices) : "Player retains keys between levels" : 0 = | |
| [ | |
| 0 : "Keys are lost, as usual" | |
| 1 : "Send keys to next map, don't get keys from previous map" | |
| 2 : "Get keys from previous map, don't send over to next map " | |
| 3 : "Send and get keys" | |
| ] | |
| lose_items(choices) : "Player's inventory" : 0 = | |
| [ | |
| 0 : "Player keeps weapons, ammo and health" | |
| 1 : "Player is reset to shotgun, 25 shells, 100 health" | |
| ] | |
| aflag(integer) : "Enable optimisations(see tutorial for details)" | |
| sky(string) : "Set a skybox" | |
| corpse_time(choices) : "Corpse removal delay" : 0 = | |
| [ | |
| -1 : "Corpses stay" | |
| ] | |
| noise1(string) : "Triggered ambient 1" | |
| noise2(string) : "Triggered ambient 2" | |
| noise3(string) : "Triggered ambient 3" | |
| noise4(string) : "Triggered ambient 4" | |
| ] | |
| // | |
| // 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 | |
| ] | |
| quothflags(choices) : "Coopflags" : 0 = | |
| [ | |
| 0 : "(no coop flags)" | |
| 4096 : "Not in coop" | |
| 8192 : "Only in coop" | |
| ] | |
| ] | |
| @BaseClass = Targetname [ targetname(target_source) : "Name" ] | |
| @BaseClass = Target [ | |
| target(target_destination) : "Target" | |
| killtarget(target_destination) : "Killtarget" | |
| message(string) : "Message on trigger" | |
| delay(string) : "Delay before trigger" | |
| ] | |
| @BaseClass base(Targetname, Target) = AllTargets [ | |
| targetname2(target_destination) : "2nd Name" | |
| targetname3(target_destination) : "3rd Name" | |
| targetname4(target_destination) : "4th Name" | |
| target2(target_destination) : "2nd Target" | |
| target3(target_destination) : "3rd Target" | |
| target4(target_destination) : "4th Target" | |
| killtarget2(target_destination) : "Extra Killtarget" | |
| spawnflags(flags) = | |
| [ | |
| 256: "not on Easy" : 0 | |
| 512: "not on Normal" : 0 | |
| 1024: "not on Hard" : 0 | |
| ] | |
| ] | |
| // | |
| // player starts, deathmatch, coop, teleport | |
| // | |
| @BaseClass base(Appearflags) size(-16 -16 -24, 16 16 32) | |
| color(0 255 0) model({ "path": ":progs/player.mdl" }) = PlayerClass [] | |
| @PointClass base(PlayerClass) = info_player_start : "Player 1 start" [] | |
| @PointClass base(PlayerClass) = info_player_coop : "Player cooperative start" [] | |
| @PointClass base(PlayerClass) = info_player_start2 : "Player episode return point" [] | |
| @PointClass base(PlayerClass) = info_player_deathmatch : "DM start" [] | |
| @PointClass size(-32 -32 0, 32 32 64) base(PlayerClass, Targetname) = info_teleport_destination : "Teleport destination" [] | |
| @PointClass = info_null : "info_null (spotlight target)" | |
| [ | |
| targetname(target_source) : "Name" | |
| ] | |
| // old comment from original fgd: | |
| //info_notnull is not defined, to allow both Brush and Point entities to be created without issue | |
| // @SolidClass base(Appearflags, Targetname, Target, Deathtype, Selfshadow) = info_notnull : "" | |
| // [ | |
| // use(string) : "" | |
| // ] | |
| // @PointClass base() = info_notnull : "" [] | |
| @PointClass base(Appearflags, Target, Targetname) = info_logic_insolid : "Test point is in solid" [] | |
| @PointClass base(Appearflags, Target, Targetname) = info_logic_inopen : "Test point is in open" [] | |
| @PointClass base(Appearflags, AllTargets) = info_logic_random : "Trigger targets at random" [ | |
| chance(string) : "Activation probability" | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Branch" : 0 | |
| ] | |
| ] | |
| @PointClass base(Appearflags, Target) = info_gug_seismometer: "Detect earthquakes from gugs" | |
| [ | |
| health(string): "Threshold of damage to trigger" | |
| ] | |
| @PointClass base(Appearflags) = info_intermission : "Intermission camera" | |
| [ | |
| mangle(string) : "Mangle (Pitch Yaw Roll)" | |
| message(string) : "Finale Text" | |
| ] | |
| @BaseClass = Deathtype [ | |
| deathtype(string) : "Obituary message" | |
| ] | |
| // | |
| // items | |
| // | |
| @BaseClass base(Target, Targetname) = Item | |
| [ | |
| ritem(choices) : "Respawning" : 0 = | |
| [ | |
| 0 : "Respawning off" | |
| 1 : "Respawning on" | |
| ] | |
| respawndelay(integer) : "Respawn delay" | |
| respawncount(integer) : "Respawn count" | |
| ] | |
| @BaseClass size(0 0 0, 32 32 32) color(80 0 200) base(Item, Appearflags) = Ammo | |
| [ | |
| spawnflags(flags) = | |
| [ | |
| 1 : "Large box" : 0 | |
| ] | |
| ] | |
| @PointClass | |
| base(Ammo) | |
| model( | |
| {{ | |
| spawnflags & 1 -> ":maps/b_batt1.bsp", | |
| ":maps/b_batt0.bsp" | |
| }} | |
| ) = | |
| item_cells : "Thunderbolt ammo" [] | |
| @PointClass | |
| size(0 0 0, 32 16 32) | |
| base(Ammo) | |
| model( | |
| {{ | |
| spawnflags & 1 -> ":maps/b_rock1.bsp", | |
| ":maps/b_rock0.bsp" | |
| }} | |
| ) = | |
| item_rockets : "Rockets" [] | |
| @PointClass | |
| base(Ammo) | |
| model( | |
| {{ | |
| spawnflags & 1 -> ":maps/b_shell1.bsp", | |
| ":maps/b_shell0.bsp" | |
| }} | |
| ) = item_shells : "Shells" [] | |
| @PointClass | |
| base(Ammo) | |
| model( | |
| {{ | |
| spawnflags & 1 -> ":maps/b_nail1.bsp", | |
| ":maps/b_nail0.bsp" | |
| }} | |
| ) = item_spikes : "Perforator/Nailgun ammo" [] | |
| @PointClass | |
| size(0 0 0, 32 32 16) | |
| base(Appearflags) | |
| model( | |
| {{ | |
| spawnflags & 2 -> ":maps/b_bh100.bsp", | |
| spawnflags & 1 -> ":maps/b_bh10.bsp", | |
| ":maps/b_bh25.bsp" | |
| }} | |
| ) = | |
| item_health : "Health pak" | |
| [ | |
| spawnflags(flags) = | |
| [ | |
| 1 : "Rotten" : 0 | |
| 2 : "Megahealth" : 0 | |
| ] | |
| ] | |
| @PointClass base(Item, Appearflags) model({ "path": ":progs/suit.mdl" }) = | |
| item_artifact_envirosuit : "Environmental protection suit" [] | |
| @PointClass base(Item, Appearflags) model({ "path": ":progs/quaddama.mdl" }) = | |
| item_artifact_super_damage : "Quad damage" [] | |
| @PointClass base(Item, Appearflags) model({ "path": ":progs/invulner.mdl" }) = | |
| item_artifact_invulnerability : "Pentagram of Protection" [] | |
| @PointClass base(Item, Appearflags) model({ "path": ":progs/invisibl.mdl" }) = | |
| item_artifact_invisibility : "Ring of Shadows" [] | |
| @PointClass base(Item, Appearflags) model({ "path": ":progs/cross.mdl" }) = | |
| item_artifact_cross : "Cross of Deflection" [] | |
| @PointClass base(Item, Appearflags) model({ "path": ":progs/trinity.mdl" }) = | |
| item_artifact_trinity : "Trinity" [] | |
| @PointClass size(-16 -16 0, 16 16 56) base(Item, Appearflags) model({ "path": ":progs/armor.mdl", "skin": 2 }) = | |
| item_armorInv : "200% armor (Red)" [] | |
| @PointClass size(-16 -16 0, 16 16 56) base(Item, Appearflags) model({ "path": ":progs/armor.mdl", "skin": 1 }) = | |
| item_armor2 : "150% armor (Yellow)" [] | |
| @PointClass size(-16 -16 0, 16 16 56) base(Item, Appearflags) model({ "path": ":progs/armor.mdl" }) = | |
| item_armor1 : "100% armor (Green)" [] | |
| @PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/w_s_key.mdl" }) = | |
| item_key1 : "Silver key" [] | |
| @PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/w_g_key.mdl" }) = | |
| item_key2 : "Gold key" [] | |
| @PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/end1.mdl" }) = | |
| item_sigil : "Sigil" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Episode 1" : 1 | |
| 2 : "Episode 2" : 0 | |
| 4 : "Episode 3" : 0 | |
| 8 : "Episode 4" : 0 | |
| ] | |
| ] | |
| @PointClass base(Item, Appearflags) model({ "path": ":progs/flashlight.mdl" }) = | |
| item_flashlight : "Flashlight" [] | |
| @SolidClass = func_group : "Group of brushes for in-editor use" [ | |
| _phong(string) : "Applies Phong to this entity"] | |
| @SolidClass = func_detail : "Group of brushes for certain compilers" [ | |
| _phong(string) : "Applies Phong to this entity"] | |
| @SolidClass = func_detail_illusionary : "func_detail variant with no collision (players / monsters / gunfire) and doesn't split world faces." [ | |
| _phong(string) : "Applies Phong to this entity" | |
| _mirrorinside(string) : "Applies Phong to this entity"] | |
| @SolidClass = func_detail_wall : "func_detail variant that doesn't split world faces." [ | |
| _phong(string) : "Applies Phong to this entity"] | |
| @SolidClass base(FuncOffline) = func_detail_fence : "Group of brushes which aren't solid, or abusive to bsp or geometry, and are two-sided" [] | |
| // | |
| // weaponses | |
| // | |
| @BaseClass size(-16 -16 0, 16 16 32) color(0 0 200) base(Item, Appearflags) = Weapon [] | |
| @PointClass base(Weapon) model({ "path": ":progs/g_shot.mdl" }) = weapon_supershotgun : "Super shotgun" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/g_nail.mdl" }) = weapon_nailgun : "Nailgun" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/g_nail2.mdl" }) = weapon_supernailgun : "Perforator" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/g_rock.mdl" }) = weapon_grenadelauncher : "Grenade launcher" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/g_rock2.mdl" }) = weapon_rocketlauncher : "Rocket launcher" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/g_light.mdl" }) = weapon_lightning : "Thunderbolt" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/v_ham.mdl" }) = weapon_hammer : "Warhammer" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/v_lance.mdl" }) = weapon_plasmagun : "Plasma Gun" [] | |
| @PointClass base(Weapon) model({ "path": ":progs/v_bomb.mdl" }) = weapon_bomb : "The Bomb" [] | |
| // | |
| // badasses | |
| // | |
| @BaseClass base(Appearflags, Target, Targetname) color(220 0 0) = Monster | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Ambush" : 0 | |
| 32 : "Teleport Silently" : 0 | |
| 64 : "Teleport Spawn" : 0 | |
| 128 : "Alert When Teleported" : 0 | |
| ] | |
| spawndelay(choices) : "Spawn Delay" : 0 = | |
| [ | |
| -1 : "Short random delay" | |
| ] | |
| corpse_time(choices) : "Corpse removal delay" : 0 = | |
| [ | |
| -1 : "Corpses stay" | |
| ] | |
| ] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/soldier.mdl" }) = monster_army : "Grunt" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 40) model({ "path": ":progs/dog.mdl" }) = monster_dog : "Nasty Doggie" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/ogre.mdl" }) = monster_ogre : "Ogre" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/ogre.mdl" }) = monster_ogre_marksman : "Ogre marksman" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/knight.mdl" }) = monster_knight : "Knight" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/wizard.mdl" }) = monster_wizard : "Scrag" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/demon.mdl" }) = monster_demon1 : "Fiend" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/shambler.mdl" }) = monster_shambler : "Shambler" [] | |
| @PointClass base(Monster) size(-128 -128 -24, 128 128 256) model({ "path": ":progs/boss.mdl" }) = monster_boss : "Chthon" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/enforcer.mdl" }) = monster_enforcer : "Enforcer" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 48) model({ "path": ":progs/shalrath.mdl" }) = monster_shalrath : "Shalrath" [] | |
| @PointClass base(Monster) size(32 32 48) model({ "path": ":progs/tarbaby.mdl" }) = monster_tarbaby : "Tarbaby" [] | |
| @PointClass base(Monster) size(32 32 48) model({ "path": ":progs/fish.mdl" }) = monster_fish : "Rotfish" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 32) model({ "path": ":progs/oldone.mdl" }) = monster_oldone : "Shub-Niggurath" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 32) model({ "path": ":progs/zombie.mdl" }) = monster_zombie : "Zombie" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Crucified" : 0 | |
| 2 : "Ambush" : 0 | |
| ] | |
| ] | |
| //quoth monsters | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/bob.mdl" }) = monster_bob : "Bob" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/soldier.mdl", "skin": 1 }) = monster_army_rocket : "Rocketeer" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/enforcer.mdl", "skin": 1 }) = monster_defender: "Defender" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/enforcer.mdl", "skin": 2 }) = monster_pyro: "Pyro" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/enforcer.mdl", "skin": 3 }) = monster_eliminator: "Eliminator" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/scor.mdl" }) = monster_scourge: "Centroid" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/sentinel.mdl" }) = monster_sentinel: "Sentinel" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 4 : "Nail sentinel" : 0 | |
| ] | |
| ] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/edie.mdl" }) = monster_edie: "Edie" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/ogre.mdl", "skin": 1 }) = monster_ogre_flak: "Flak Ogre" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 32) | |
| model( | |
| {{ | |
| dangle == "1" -> { "path": ":progs/voreling.mdl", "skin": 0, "frame": 13 }, | |
| ":progs/voreling.mdl" | |
| }} | |
| ) = | |
| monster_voreling: "Voreling" | |
| [ | |
| dangle(choices) : "Dangling" : 0 = | |
| [ | |
| 0 : "On floor" | |
| 1 : "On ceiling" | |
| ] | |
| ] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) | |
| model( | |
| {{ | |
| startonground == "1" -> ":progs/polyp.mdl", | |
| { "path": ":progs/polyp.mdl", "skin": 0, "frame": 153 } | |
| }} | |
| ) = | |
| monster_polyp: "Polyp" | |
| [ | |
| startonground(choices) : "Starting pose" : 0 = | |
| [ | |
| 0 : "Flying" | |
| 1 : "On ground" | |
| ] | |
| ] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/hknight.mdl" }) = monster_death_knight : "Death knight" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/dguard.mdl" }) = monster_death_guard : "Death guard" [] | |
| @PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/hknight.mdl", "skin": 1 }) = monster_death_lord : "Death lord" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) | |
| model( | |
| {{ | |
| perch == "1" -> ":progs/gaunt.mdl", | |
| { "path": ":progs/gaunt.mdl", "skin": 0, "frame": 24 } | |
| }} | |
| ) = | |
| monster_gaunt : "Gaunt" | |
| [ | |
| perch(choices) : "Starting pose" : 0 = | |
| [ | |
| 0 : "Flying" | |
| 1 : "On ground" | |
| ] | |
| ] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/drole.mdl" }) = monster_drole: "Drole" [] | |
| @PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/gug.mdl" }) = monster_gug: "Gug" [] | |
| @PointClass base(Monster) size(-64 -64 -448, 64 64 256) | |
| model( | |
| {{ | |
| coiled == "1" -> { "path": ":progs/vermis.mdl", "skin": 0, "frame": 2 }, | |
| { "path": ":progs/vermis.mdl", "skin": 0, "frame": 52 } | |
| }} | |
| ) = | |
| monster_vermis: "Vermis" | |
| [ | |
| coiled(choices) : "Starting pose" : 0 = | |
| [ | |
| 0 : "Full height" | |
| 1 : "Coiled up" | |
| ] | |
| skin(choices) : "Skin effect" : 0 = | |
| [ | |
| 0 : "Regular" | |
| 1 : "Fades to black at tail" | |
| 2 : "Slime glow at tail" | |
| 3 : "Lava glow at tail" | |
| ] | |
| ] | |
| // | |
| // lights | |
| // | |
| @BaseClass color(255 255 40) = Static [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Force Static" : 0 | |
| 2 : "Force Dynamic" : 0 | |
| ] | |
| ] | |
| @BaseClass color(255 255 40) = Grill [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Force Static" : 0 | |
| 2 : "Solid Blocking" : 0 | |
| ] | |
| ] | |
| @BaseClass color(255 255 40) = Light [ | |
| _color(string) : "" : "255 255 255" | |
| light(integer) : "Brightness" : 300 | |
| wait(integer) : "Fade distance multiplier" : 1 | |
| delay(choices) : "Attenuation" = | |
| [ | |
| 0 : "Linear falloff (Default)" | |
| 1 : "Inverse distance falloff" | |
| 2 : "Inverse distance squared" | |
| 3 : "No falloff" | |
| ] | |
| mangle(string) : "Spotlight angle" | |
| 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, Target, Targetname) = | |
| light_fluoro : "Fluorescent light" | |
| [ | |
| spawnflags(Flags) = [ 1 : "Initially dark" : 0 ] | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Light, Target) = | |
| light_fluorospark : "Sparking fluorescent light" | |
| [ | |
| ] | |
| @PointClass size(-8 -8 -12, 8 8 20) base(Light, Target, Targetname, Static) model({ "path": ":progs/flame2.mdl" }) = | |
| light_flame_large_yellow : "Large yellow flame" [] | |
| @PointClass size(-4 -4 -12, 4 4 20) base(Light, Target, Targetname, Static) model({ "path": ":progs/flame2.mdl" }) = | |
| light_flame_small_yellow : "Small yellow flame" | |
| [] | |
| @PointClass size(-4 -4 -12, 4 4 20) base(Light, Target, Targetname, Static) model({ "path": ":progs/flame2.mdl" }) = | |
| light_flame_small_white : "Small white flame" | |
| [ | |
| spawnflags(Flags) = [ 1 : "Initially dark" : 0 ] | |
| ] | |
| @PointClass size(-4 -4 -12, 4 4 20) base(Light, Target, Targetname, Static) model({ "path": ":progs/flame.mdl" }) = | |
| light_torch_small_walltorch : "Small walltorch" [] | |
| // quoth lights | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname, Static) model({ "path": ":progs/lightpost.mdl" }) = | |
| light_postlight : "Post light" | |
| [ | |
| spawnflags(Flags) = [ 1 : "Initially dark" : 0 ] | |
| color(choices) : "Colour of light object" : 0 = | |
| [ | |
| 0 : "Yellow-white" | |
| 1 : "Blue-white" | |
| 2 : "Red" | |
| ] | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname, Static) model({ "path": ":progs/lighttube.mdl" }) = | |
| light_tubelight : "Tube light" | |
| [ | |
| spawnflags(Flags) = [ 1 : "Initially dark" : 0 ] | |
| color(choices) : "Colour of light object" : 0 = | |
| [ | |
| 0 : "Yellow-white" | |
| 1 : "Blue-white" | |
| 2 : "Red" | |
| ] | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname, Static) = | |
| light_globe : "Globe light" | |
| [ | |
| color(choices) : "Colour of globe" : 0 = | |
| [ | |
| 0 : "Gold" | |
| 1 : "Red" | |
| 2 : "Green" | |
| 3 : "Blue" | |
| 4 : "White" | |
| 5 : "Evile" | |
| 6 : "Evile zombie" | |
| ] | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname) = | |
| light_marsh : "Marsh lights" | |
| [ | |
| color(choices) : "Colour of globe" : 0 = | |
| [ | |
| 0 : "white ( default )" | |
| 1 : "bluish white" | |
| 2 : "blue" | |
| 3 : "green" | |
| 4 : "orange" | |
| 5 : "red" | |
| 6 : "purple" | |
| ] | |
| ] | |
| @PointClass size(-8 -8 -48, 8 8 80) base(Light, Target, Targetname, Static) model({ "path": ":progs/longtrch.mdl" }) = | |
| light_torch_long_walltorch : "Long wall torch" [] | |
| @PointClass size(-8 -8 -16, 8 8 8) | |
| base(Light, Target, Targetname, Static) | |
| model( | |
| {{ | |
| skin == "5" -> { "path": ":progs/brazshrt.mdl", "skin": 5 }, | |
| skin == "4" -> { "path": ":progs/brazshrt.mdl", "skin": 4 }, | |
| skin == "3" -> { "path": ":progs/brazshrt.mdl", "skin": 3 }, | |
| skin == "2" -> { "path": ":progs/brazshrt.mdl", "skin": 2 }, | |
| skin == "1" -> { "path": ":progs/brazshrt.mdl", "skin": 1 }, | |
| ":progs/brazshrt.mdl" | |
| }} | |
| ) = | |
| light_flame_brazier_short : "Short brazier" | |
| [ | |
| skin(choices) : "Texture" : 0 = | |
| [ | |
| 0 : "knave ( default ) " | |
| 1 : "rust " | |
| 2 : "redbrick " | |
| 3 : "copper " | |
| 4 : "altar " | |
| 5 : "wizmet" | |
| ] | |
| ] | |
| @PointClass size(-8 -8 -64, 8 8 8) | |
| base(Light, Target, Targetname, Static) | |
| model( | |
| {{ | |
| skin == "5" -> { "path": ":progs/braztall.mdl", "skin": 5 }, | |
| skin == "4" -> { "path": ":progs/braztall.mdl", "skin": 4 }, | |
| skin == "3" -> { "path": ":progs/braztall.mdl", "skin": 3 }, | |
| skin == "2" -> { "path": ":progs/braztall.mdl", "skin": 2 }, | |
| skin == "1" -> { "path": ":progs/braztall.mdl", "skin": 1 }, | |
| ":progs/braztall.mdl" | |
| }} | |
| ) = | |
| light_flame_brazier_tall : "Tall brazier" | |
| [ | |
| skin(choices) : "Texture" : 0 = | |
| [ | |
| 0 : "knave ( default ) " | |
| 1 : "rust " | |
| 2 : "redbrick " | |
| 3 : "copper " | |
| 4 : "altar " | |
| 5 : "wizmet" | |
| ] | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Static, Appearflags) | |
| model({ | |
| "path" : model, | |
| "skin" : skin, | |
| "frame": frame | |
| }) | |
| = mapobject_custom: "Custom mapobject" | |
| [ | |
| model(string) : "Model" | |
| frame(integer) : "Frame" | |
| skin(string) : "Skin" | |
| mangle(string) : "Angles(overrides angle above)" | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Static, Targetname, Appearflags) = mapobject_waterfall: "Waterfall mapobject" | |
| [ | |
| skin(choices) : "Skin": 0 = | |
| [ | |
| 0 : "Clean water" | |
| 1 : "Dirty water" | |
| 2 : "Blood" | |
| 3 : "Slime" | |
| 4 : "Lava" | |
| ] | |
| frame(integer) : "Initial frame" | |
| mangle(string) : "Angles(overrides angle above)" | |
| sounds(choices) : "Sound effects": 0 = | |
| [ | |
| 0 : "Sounds Off" | |
| 1 : "Sounds On" | |
| ] | |
| noise(string) : "Custom active sound" | |
| noise1(string) : "Custom stop sound" | |
| speed(integer) : "Attenuation of sound" : 0 | |
| volume(integer) : "Volume (0 - 1)" | |
| spawnflags(flags) = | |
| [ | |
| 1 : "Initially dry" : 0 | |
| ] | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Grill, Appearflags) = mapobject_grill: "Custom grill mapobject" | |
| [ | |
| model(string) : "Model" | |
| frame(string) : "Frame" | |
| mangle(string) : "Angles(overrides angle above)" | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Grill, Appearflags) = mapobject_grill128: "128 unit grill mapobject" | |
| [ | |
| frame(choices) : "Frame": 0 = | |
| [ | |
| 0 : "Red idbase grill" | |
| 1 : "Dark idbase grill" | |
| 2 : "Rusty idbase grill" | |
| 3 : "Pale idbase grill" | |
| 4 : "Large vent grid" | |
| 5 : "Large vent - horizontal bars" | |
| 6 : "Slimy brown floor grills" | |
| 7 : "Wizmet medium grid panels" | |
| 8 : "Wizmet fine grid panels" | |
| 9 : "Fury square floor panels" | |
| 10 : "Fury small floor panels" | |
| 11 : "Copper floor panels" | |
| 12 : "Copper floor grill" | |
| 13 : "Copper grill with warning trim" | |
| 14 : "Rusted diagonal wire mesh" | |
| 15 : "Beaten diagonal wire mesh" | |
| 16 : "Bright square wire mesh" | |
| 17 : "Stained square wire mesh" | |
| 18 : "Warning pattern wire mesh" | |
| 19 : "Rusted square wire mesh" | |
| 20 : "Knave steel strut pattern" | |
| 22 : "Knave gold strut pattern" | |
| 24 : "Knave rust strut pattern" | |
| 26 : "Knave red strut pattern" | |
| 28 : "Knave blue strut pattern" | |
| ] | |
| mangle(string) : "Angles(overrides angle above)" | |
| ] | |
| @PointClass size(-8 -8 -8, 8 8 8) base(Grill, Appearflags) = mapobject_grill64: "64 unit grill mapobject" | |
| [ | |
| frame(choices) : "Frame": 0 = | |
| [ | |
| 0 : "Red idbase grill" | |
| 1 : "Dark idbase grill" | |
| 2 : "Rusty idbase grill" | |
| 3 : "Pale idbase grill" | |
| 4 : "Small vent grid" | |
| 5 : "Small vent - horizontal bars" | |
| 6 : "Slimy brown floor grills" | |
| 7 : "Wizmet medium grid panels" | |
| 8 : "Wizmet fine grid panels" | |
| 9 : "Fury square floor panels" | |
| 10 : "Fury small floor panels" | |
| 11 : "Copper floor panels" | |
| 12 : "Copper floor grill" | |
| 13 : "Copper grill with warning trim" | |
| 14 : "Rusted diagonal wire mesh" | |
| 15 : "Beaten diagonal wire mesh" | |
| 16 : "Bright square wire mesh" | |
| 17 : "Stained square wire mesh" | |
| 18 : "Warning pattern wire mesh" | |
| 19 : "Rusted square wire mesh" | |
| 20 : "Knave steel strut pattern" | |
| 21 : "Knave steel pentagram" | |
| 22 : "Knave gold strut pattern" | |
| 23 : "Knave gold pentagram" | |
| 24 : "Knave rust strut pattern" | |
| 25 : "Knave rust pentagram" | |
| 26 : "Knave red strut pattern" | |
| 27 : "Knave red pentagram" | |
| 28 : "Knave blue strut pattern" | |
| 29 : "Knave blue pentagram" | |
| ] | |
| mangle(string) : "Angles(overrides angle above)" | |
| ] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/corpse_imp.mdl", "skin": 7, "frame": 9 }) = corpse_crucified1 : "Corpse(crucified)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/corpse_imp.mdl", "skin": 8, "frame": 10 }) = corpse_crucified2 : "Corpse(crucified,headless)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -96, 16 16 0) model({ "path": ":progs/corpse_lynch.mdl" }) = corpse_lynched1 : "Corpse(lynched,clothed)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -96, 16 16 0) model({ "path": ":progs/corpse_lynch.mdl", "skin": 1}) = corpse_lynched2 : "Corpse(lynched)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -96, 16 16 0) model({ "path": ":progs/corpse_lynch.mdl", "skin": 2, "frame": 1 }) = corpse_lynched3 : "Corpse(lynched,eaten)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -96, 16 16 0) model({ "path": ":progs/corpse_flay.mdl" }) = corpse_flayed1 : "Corpse(flayed,clothed)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -96, 16 16 0) model({ "path": ":progs/corpse_flay.mdl", "skin": 1 }) = corpse_flayed2 : "Corpse(flayed)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -96, 16 16 0) model({ "path": ":progs/corpse_flay.mdl", "skin": 2, "frame": 2 }) = corpse_flayed3 : "Corpse(flayed,eaten)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -96, 16 16 0) model({ "path": ":progs/corpse_flay.mdl", "skin": 1, "frame": 1 }) = corpse_flayed4 : "Corpse(flayed,broken leg)" [] | |
| @PointClass base(Static, Appearflags) size(-32 -32 -40, 32 32 0) model({ "path": ":progs/corpse_imp.mdl" }) = corpse_impaled_back1 : "Corpse(impaled in back,clothed)" [] | |
| @PointClass base(Static, Appearflags) size(-32 -32 -40, 32 32 0) model({ "path": ":progs/corpse_imp.mdl", "skin": 1 }) = corpse_impaled_back2 : "Corpse(impaled in back)" [] | |
| @PointClass base(Static, Appearflags) size(-32 -32 -40, 32 32 0) model({ "path": ":progs/corpse_imp.mdl", "skin": 2, "frame": 1 }) = corpse_impaled_back3 : "Corpse(impaled in back,eaten)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 0, "frame": 2 }) = corpse_impaled_front1 : "Corpse(impaled in front,clothed)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 1, "frame": 2 }) = corpse_impaled_front2 : "Corpse(impaled in front)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 3, "frame": 3 }) = corpse_impaled_front3 : "Corpse(impaled in front,eaten)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 0, "frame": 4 }) = | |
| corpse_impaled_horizontal1 : "Corpse(impaled horizontal,clothed)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 1, "frame": 4 }) = | |
| corpse_impaled_horizontal2 : "Corpse(impaled horizontal)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 4, "frame": 5 }) = | |
| corpse_impaled_horizontal3 : "Corpse(impaled horizontal,nibbled)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 5, "frame": 6 }) = | |
| corpse_impaled_horizontal4 : "Corpse(impaled horizontal,eaten)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 0, "frame": 7 }) = | |
| corpse_impaled_vertical1 : "Corpse(impaled vertical,clothed)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 1, "frame": 7 }) = | |
| corpse_impaled_vertical2 : "Corpse(impaled vertical)" [] | |
| @PointClass base(Static, Appearflags) size(-16 -16 -24, 16 16 16) model({ "path": ":progs/corpse_imp.mdl", "skin": 6, "frame": 8 }) = | |
| corpse_impaled_vertical3 : "Corpse(impaled vertical,eaten)" [] | |
| // | |
| // 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 size(0 0 0, 32 32 64) model({ "path": ":maps/b_explob.bsp" }) = misc_explobox : "Large nuclear container" [] | |
| @PointClass size(0 0 0, 32 32 32) model({ "path": ":maps/b_exbox2.bsp" }) = misc_explobox2 : "Small nuclear container" [] | |
| @PointClass size(0 0 0, 32 32 64) model({ "path": ":progs/b_bio_l.bsp" }) = misc_biobox : "Large bio-waste container" [] | |
| @PointClass size(0 0 0, 32 32 32) model({ "path": ":progs/b_bio_s.bsp" }) = misc_biobox2 : "Small bio-waste container" [] | |
| @PointClass size(0 0 0, 32 32 64) model({ "path": ":progs/b_plas_l.bsp" }) = misc_plasmabox_l : "Large plasma container" [] | |
| @PointClass size(0 0 0, 32 32 32) model({ "path": ":progs/b_plas_s.bsp" }) = misc_plasmabox_s : "Small plasma container" [] | |
| @SolidClass = func_illusionary : "Static model" | |
| [ | |
| ] | |
| @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" [] | |
| @PointClass = ambient_generalpurpose : "Custom ambient sound" | |
| [ | |
| noise(string) : "Sound file to play" | |
| speed(integer) : "Attenuation of sound" : 0 | |
| volume(integer) : "Volume (0 - 1)" | |
| ] | |
| @PointClass base( Targetname, Appearflags) = play_sound_triggered : "Custom sound trigger" | |
| [ | |
| noise(string) : "Sound file to play" | |
| speed(integer) : "Attenuation of sound" : 0 | |
| volume(integer) : "Volume (0 - 1)" | |
| impulse(integer) : "Channel" | |
| wait(integer) : "Wait before retrigger" : 0 | |
| ] | |
| @PointClass base( Targetname, Appearflags) = play_sound : "Repeated custom sound" | |
| [ | |
| noise(string) : "Sound file to play" | |
| speed(integer) : "Attenuation of sound" : 0 | |
| volume(integer) : "Volume (0 - 1)" | |
| impulse(integer) : "Channel" | |
| wait(integer) : "Random time between sounds" : 0 | |
| delay(integer) : "Minimum time between sounds" : 2 | |
| ] | |
| @BaseClass = Command | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 2 : "Command only to activator" : 0 | |
| 4 : "Set as 'onload command' on use" : 0 | |
| ] | |
| ] | |
| @PointClass base(Appearflags, Targetname, Command) = info_command : "Target-fired command to clients" | |
| [ | |
| message(string) : "Console command" | |
| ] | |
| @SolidClass base(Appearflags, Command) = trigger_command : "Trigger: Command to clients" | |
| [ | |
| message(string) : "Console command" | |
| ] | |
| @PointClass base(Appearflags) = info_command_spawn : "Command to clients on spawn" | |
| [ | |
| message(string) : "Console command" | |
| ] | |
| @SolidClass base(Appearflags) = trigger_command_contact : "Trigger: Command on entry" | |
| [ | |
| message(string) : "Console command" | |
| spawnflags(Flags) = | |
| [ | |
| 4 : "Set as 'onload command' on use" : 0 | |
| ] | |
| ] | |
| @PointClass base (Appearflags,Targetname) = info_command_server : "Target-fired command to server" | |
| [ | |
| message(string) : "Console command" | |
| ] | |
| @PointClass base (Appearflags, Targetname) = info_bomb : "Triggered explosion"[] | |
| @PointClass base (Appearflags, Targetname) = info_effect_pulse : "Pulses of lights" | |
| [ | |
| mangle(string) : "Angles (override)" | |
| speed(integer) : "Speed" | |
| wait(choices) : "Wait between pulses" = | |
| [ | |
| -1 : "Does not refire" | |
| ] | |
| ] | |
| @BaseClass = Spawner | |
| [ | |
| spawnclassname(string) : "Desired classname" | |
| spawnfunction(string) : "Desired classname(must match above)" | |
| count(integer): "Number of spawns" | |
| awake(choices) : "Monster state on spawn" : 0 = | |
| [ | |
| 0 : "Idle" | |
| 1 : "Awake" | |
| ] | |
| ] | |
| @PointClass base (Appearflags, Targetname, Spawner) = info_multispawn : "Spawn multiple monsters" | |
| [ | |
| wait(integer) : "Wait between spawns" | |
| ] | |
| @PointClass base( Appearflags, Targetname, Spawner) = info_groupspawn : "Spawn monster group" | |
| [ | |
| lip(integer) : "Gap between monsters" | |
| t_width(integer) : "Width of row" | |
| ] | |
| @PointClass base (Appearflags, Targetname) = info_screenshake : "Earthquake event" | |
| [ | |
| ltime(integer) : "Duration of quake" | |
| lip(integer) : "Frequency of shaking" | |
| height(integer) : "Strength of quake" : 500 | |
| multiplier(integer) : "Strength multiplier" : 1 | |
| noise(string) : "Looping sound" | |
| noise1(string) : "Ending sound" | |
| ] | |
| @PointClass base (Appearflags, Target) = info_endgate : "Info endgate" | |
| [ | |
| mapindex(integer) : "Map index" | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Inverse logic" : 0 | |
| ] | |
| ] | |
| @PointClass base (info_endgate) = info_mapgate : "Info mapgate" [] | |
| @PointClass base (Appearflags, Targetname, Deathtype) = info_trap : "Custom shooter" | |
| [ | |
| preset(choices) : "Preset" : 0 = | |
| [ | |
| 0 : "No preset" | |
| 1 : "Player Rockets" | |
| 2 : "Player Grenades" | |
| 3 : "Player Plasma" | |
| 4 : "Player Nails" | |
| 5 : "Player Super Nails" | |
| ] | |
| target(string) : "Target to fire towards" | |
| modelpath(string) : "Projectile model" | |
| wait(integer) : "Wait between shots" | |
| delay(integer) : "Delay for first shot" : 0 | |
| speed(integer) : "Projectile speed" : 600 | |
| mindamage(integer) : "Minimum projectile damage" : 20 | |
| maxdamage(integer) : "Maximum projectile damage" | |
| dmg(integer) : "Radius of blast" : 0 | |
| duration(integer) : "Projectile fuse" : 5 | |
| style(choices) : "Projectile flight" : 0 = | |
| [ | |
| 0 : "Flying" | |
| 1 : "Ballistic (Explode on Impact)" | |
| 2 : "Bounce (grenade)" | |
| ] | |
| noise(string) : "Firing sound" | |
| noise1(string) : "Impact sound" | |
| noise2(string) : "Bounce sound(grenade only)" | |
| tracking(choices) : "Projectile tracking" : 0 = | |
| [ | |
| 0 : "None" | |
| 1 : "Vore style" | |
| 2 : "Death Lord/Rocketeer style" | |
| ] | |
| multiplier(integer) : "Func_breakable damage multiplier" | |
| flashlight(choices) : "Projectile glow" : 0 = | |
| [ | |
| 0 : "Glow off" | |
| 1 : "Glow on" | |
| ] | |
| ] | |
| @PointClass base (Appearflags, Targetname, Deathtype) = trap_lightning_triggered : "Triggered Lightning Trap" | |
| [ | |
| target(string) : "Target to fire towards" | |
| duration(string) : "Beam duration" : "0.1" //daft thing doesn't have a sensible number class, so fractions are strings... | |
| dmg(integer) : "Damage" : 30 | |
| noise(string) : "Firing sound" | |
| style(choices) : "Beam type" : 0 = | |
| [ | |
| 0 : "Thinner beam" | |
| 1 : "Wider beam" | |
| ] | |
| spawnflags(flags) = | |
| [ | |
| 1 : "Boom" : 0 | |
| ] | |
| ] | |
| @BaseClass = Breakable [ | |
| preset(choices): "Preset" : 0 = | |
| [ | |
| 0 : "Rock" | |
| 1 : "Wood" | |
| 2 : "Flesh" | |
| 3 : "Machine" | |
| 4 : "Glass" | |
| 5 : "Brick(8 unit)" | |
| 6 : "Brick(16 unit)" | |
| 7 : "Brick(32 unit)" | |
| 8 : "Metal" | |
| 9 : "Circuitboard" | |
| ] | |
| ritem(choices): "Skin(rock.wood.glass.brick.metal)" = | |
| [ | |
| 0: "Ochre.Medi.Gray.Wiz.Cr8top" | |
| 1: "Moss.Driftwood.Dark.Cityochre.Cr8side" | |
| 2: "Cobalt.Rotten.Bone.Ctyred.panel" | |
| 3: "Black.Cord.Sepia.Ctycrack.Tech09" | |
| 4: "Earth.Pine.Brown.Ctygreen.Idbase" | |
| 5: "Grave.Red_wiz.Ale.IKBlue.Compbrown" | |
| 6: "Red.Dark_wiz.Bottle.P_blue.Compgrey" | |
| 7: "Grey.Crate.Green.Red.Sfloor" | |
| 8: "Rock3_7.=.Sun.Off-grey.Tech red" | |
| 9: "Rock3_8.=.Gold.Mayan.Speedbase" | |
| 10:"Mayan.=.Orange.Grey.Mmetal1_8" | |
| 11:"Knave.=.Blood.Eggshell.Wizmet" | |
| 12:"Azfloor.=.Crimson.=.Wizmet blue" | |
| 13:"'crete.=.Blue.=.Wizmet green" | |
| 14:"Ice. = .Sapphire. = .Dark copper" | |
| 15:"White. = . = . = .Light copper" | |
| 16:"=.=.=.=.Metal5_8" | |
| 17:"=.=.=.=.Metal4_5" | |
| 18:"=.=.=.=.Metal4_4" | |
| 19:"=.=.=.=.Metal2_4" | |
| 20:"=.=.=.=.Mmetal1_1" | |
| 21:"=.=.=.=.Cop1_3" | |
| 22:"=.=.=.=.Cop1_6" | |
| 23:"=.=.=.=.Metal1_2" | |
| 24:"=.=.=.=.Knave bronze" | |
| 25:"=.=.=.=.Knave rust" | |
| 26:"=.=.=.=.Weathered tin" | |
| 27:"=.=.=.=.Circuits(olive)" | |
| 28:"=.=.=.=.Circuits(sea-green)" | |
| ] | |
| count(integer) : "Number of fragments" | |
| health(integer) : "Health" | |
| noise(choices) : "Breaking sound" = | |
| [ | |
| "" : "Preset default" | |
| "impact/wood_bk.wav" : "Wood crack" | |
| "player/gib.wav" : "Player gib" | |
| "impact/mach_bk.wav" : "Machine explosion" | |
| "progs/glass.mdl" : "Glass shatter" | |
| "impact/rockbrk.wav" : "Rock crumble" | |
| "impact/metal_bk.wav" : "Metal shearing" | |
| ] | |
| noise1(choices) : "Bounce sound 1" = | |
| [ | |
| "" : "Preset default" | |
| "impact/wood_i1.wav" : "Wood1" | |
| "zombie/z_miss.wav" : "Flesh1" | |
| "impact/glass_i1.wav" : "Glass1" | |
| "impact/rock1.wav" : "Rock1" | |
| "impact/metal_i1.wav" : "Metal1" | |
| ] | |
| noise2(choices) : "Bounce sound 2" = | |
| [ | |
| "" : "Preset default" | |
| "impact/wood_i2.wav" : "Wood2" | |
| "impact/gib_i2.wav": "Flesh2" | |
| "impact/glass_i2.wav" : "Glass2" | |
| "impact/rock2.wav" : "Rock2" | |
| "impact/metal_i2.wav" : "Metal2" | |
| ] | |
| noise3(choices) : "Bounce sound 3" = | |
| [ | |
| "" : "Preset default" | |
| "impact/wood_i3.wav" : "Wood3" | |
| "impact/gib_i3.wav": "Flesh3" | |
| "impact/glass_i3.wav" : "Glass3" | |
| "impact/rock3.wav" : "Rock3" | |
| "impact/metal_i3.wav" : "Metal3" | |
| ] | |
| noise4(choices) : "Bounce sound 4" = | |
| [ | |
| "" : "Preset default" | |
| "impact/wood_i4.wav" : "Wood4" | |
| "impact/gib_i4.wav": "Flesh4" | |
| "impact/glass_i4.wav" : "Glass4" | |
| "impact/rock4.wav" : "Rock4" | |
| "impact/metal_i4.wav" : "Metal4" | |
| ] | |
| modelpath(string) : "Custom rubble model" | |
| rsize(integer) : "Minimum rubble frame" | |
| t_width(integer) : "Maximum rubble frame" | |
| ] | |
| @BaseClass = Shadow | |
| [ | |
| _shadow(choices) : "Shadows settings" : 1 = | |
| [ | |
| 0: "Casts no shadows" | |
| 1: "Casts shadows" | |
| ] | |
| ] | |
| @BaseClass = Selfshadow | |
| [ | |
| _selfshadow(choices) : "Self-shadows settings" : 1 = | |
| [ | |
| 0: "Casts no shadows" | |
| 1: "Casts shadows on itself" | |
| ] | |
| ] | |
| @SolidClass base(Appearflags, Targetname, Breakable, Selfshadow) = func_breakable : "Breakable object" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Explosion on death" : 0 | |
| ] | |
| ] | |
| @PointClass base(Appearflags, Targetname, Breakable) = info_rubble : "Spawn rubble" | |
| [ | |
| ] | |
| // | |
| // moving things | |
| // | |
| @SolidClass base(Appearflags, Targetname, Target, Deathtype, Selfshadow) = func_door : "Basic door" | |
| [ | |
| speed(integer) : "Speed" : 100 | |
| angle(integer) : "-2 down, -1 up" : 0 | |
| angles(string) : "Yaw pitch roll" | |
| sounds(choices) : "Sound" : 0 = | |
| [ | |
| 0: "No sounds" | |
| 1: "Stone" | |
| 2: "Machine" | |
| 3: "Stone Chain" | |
| 4: "Screechy Metal" | |
| 5: "Custom sounds" | |
| ] | |
| noise2(string) : "Move sound" | |
| noise1(string) : "Stop sound" | |
| wait(string) : "Delay before close" : "4" | |
| lip(integer) : "Lip" : 8 | |
| dmg(integer) : "Damage inflicted when blocked" : 0 | |
| health(integer) : "Health (shoot open)" : 0 | |
| 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(Appearflags, Targetname, Target, Selfshadow) = func_door_secret : "Triggered door" | |
| [ | |
| t_width(integer) : "First move length" | |
| t_length(integer) : "Second move length" | |
| dmg(integer) : "Damage when blocked" : 2 | |
| wait(string) : "Time before close" : "2" | |
| sounds(choices) : "Sounds" : 3 = | |
| [ | |
| 1: "Medieval" | |
| 2: "Metal" | |
| 3: "Base" | |
| ] | |
| 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(Targetname, Appearflags, Shadow) = func_wall : "Wall" [] | |
| @SolidClass base(Targetname, Target, Selfshadow) = func_button : "Button" | |
| [ | |
| speed(integer) : "Speed" : 40 | |
| angle(integer) : "-2 down, -1 up" : 0 | |
| lip(integer) : "Lip" : 4 | |
| health(integer) : "Health (shootable if > 0)" | |
| sounds(choices) : "Sounds" = | |
| [ | |
| 0 : "Steam metal" | |
| 1 : "Wooden clunk" | |
| 2 : "Metallic clink" | |
| 3 : "In-out" | |
| ] | |
| wait(string) : "Delay before reset" : "1" | |
| ] | |
| @SolidClass base(Targetname, Selfshadow) = func_door_button : "Door-mounted Button" | |
| [ | |
| bind(target_source) : "Name of door to bind to" | |
| ] | |
| @PointClass base(Targetname) model({ "path": ":progs/teleport.mdl" }) = func_teleporttrain : "Moving teleport destination" | |
| [ | |
| speed(integer) : "Speed (units per second)" : 64 | |
| target(target_source) : "First stop target" | |
| ] | |
| @SolidClass base(Targetname, Deathtype, Selfshadow) = 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 | |
| count(integer) : "Number of clones" : 0 | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Smooth" : 0 | |
| 2 : "Blockable" : 0 | |
| ] | |
| ] | |
| @PointClass base(Targetname) size(16 16 16) = | |
| path_corner : "Moving platform stop" | |
| [ | |
| target(target_source) : "Next stop target" | |
| wait(integer) : "Wait" : 0 | |
| event(target_source) : "Event to fire on arrival" | |
| duration(integer) : "Movetime for next motion(if set)" | |
| speed(integer) : "Speed for next motion(if set)" | |
| ] | |
| @PointClass base(Targetname) size(16 16 16) = | |
| path_corner_precise : "Advanced monster waypoint" | |
| [ | |
| target(target_source) : "Next waypoint" | |
| wait(integer) : "Wait" : 0 | |
| ] | |
| @PointClass base(Targetname) size(16 16 16) = | |
| path_corner_contact : "Monster waypoint" | |
| [ | |
| target(target_source) : "Next waypoint" | |
| ] | |
| @SolidClass base(Targetname, Deathtype) = func_togglewall : "Toggleable wall" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Starts off" : 0 | |
| 2 : "Particles" : 0 | |
| 4 : "Monsters ignore" : 0 | |
| ] | |
| dmg(integer) : "Contact damage" | |
| wait(string) : "Wait between damage" : "0.5" | |
| noise(string) : "Toggle off sound" | |
| noise1(string) : "Toggle on sound" | |
| noise2(string) : "Damage sound" | |
| speed(integer) : "Particle speed" : 75 | |
| style(integer) : "Particle count" : 10 | |
| color(integer) : "Particle colour" | |
| worldtype(choices) : "particle direction" : 0 = | |
| [ | |
| 0 : "Up" | |
| 1 : "Down" | |
| 2 : "East" | |
| 3 : "West" | |
| 4 : "North" | |
| 5 : "South" | |
| ] | |
| ] | |
| @SolidClass base(Targetname) = func_particlefield : "particle burst effect" | |
| [ | |
| event(string) : "Group name" | |
| cnt(integer) : "Index within group" | |
| wait(string) : "Delay between flashes" : "0.2" | |
| count(integer) : "Particle count" : 2 | |
| color(integer) : "Particle colour" : 192 | |
| ] | |
| @SolidClass base(Targetname, Selfshadow) = func_plat : "Elevator" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Low trigger" : 0 | |
| ] | |
| speed(integer) : "Speed" : 150 | |
| height(integer) : "Travel altitude (can be negative)" : 0 | |
| sounds(choices) : "Sound group" : 1 = | |
| [ | |
| 0: "None" | |
| 1: "Base fast" | |
| 2: "Chain Slow" | |
| ] | |
| ] | |
| @SolidClass base(Shadow) = func_episodegate : "Episode Gate" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Episode 1" : 1 | |
| 2 : "Episode 2" : 0 | |
| 4 : "Episode 3" : 0 | |
| 8 : "Episode 4" : 0 | |
| ] | |
| ] | |
| @SolidClass base(Shadow) = func_bossgate : "Boss gate" [] | |
| // | |
| // triggers | |
| // | |
| @BaseClass base(AllTargets) = Trigger | |
| [ | |
| sounds(choices) : "Sound style" : 0 = | |
| [ | |
| 0 : "None" | |
| 1 : "Secret sound" | |
| 2 : "Beep beep" | |
| 3 : "Large switch" | |
| 4 : "Set message to text string" | |
| ] | |
| spawnflags(flags) = [ 2: "Broadcast message" : 0 ] | |
| noise(string) : "Custom noise(set sounds 4)" | |
| ] | |
| @SolidClass base(Target) = trigger_changelevel : "Trigger: Change level" | |
| [ | |
| map(string) : "New map name" | |
| spawnflags(flags) = | |
| [ | |
| 1: "No Intermission" : 0 | |
| ] | |
| ] | |
| @SolidClass base(Trigger) = trigger_once : "Trigger: Activate once" | |
| [ | |
| health(integer) : "Health" | |
| spawnflags(flags) = [ 1: "Entity only" : 0 ] | |
| ] | |
| @SolidClass base(Trigger) = trigger_multiple : "Trigger: Activate multiple" | |
| [ | |
| wait(string) : "Wait before reset" : "4" | |
| health(integer) : "Health" | |
| spawnflags(flags) = [ 1: "Entity only" : 0 ] | |
| ] | |
| @SolidClass base(Trigger) = trigger_onlyregistered : "Trigger: Registered only" | |
| [ | |
| spawnflags(flags) = [ 1: "Entity only" : 0 ] | |
| ] | |
| @SolidClass base(Trigger) = trigger_secret : "Trigger: Secret" | |
| [ | |
| sounds(choices) : "Sound style" : 1 = | |
| [ | |
| 0 : "None" | |
| 1 : "Secret sound" | |
| 2 : "Beep beep" | |
| 3 : "Large switch" | |
| 4 : "Set message to text string" | |
| ] | |
| spawnflags(flags) = [ 1: "Entity only" : 0 ] | |
| ] | |
| @SolidClass base(Target, Targetname) = trigger_teleport : "Trigger teleport" | |
| [ | |
| spawnflags(Flags) = | |
| [ | |
| 1 : "Player only" : 0 | |
| 2 : "Silent" : 0 | |
| ] | |
| onlymonster(choices) : "Limited to monsters?" : 0 = | |
| [ | |
| 0 : "No" | |
| 1 : "Yes" | |
| ] | |
| notelefrag(choices) : "Wait instead of telefrag?" : 0 = | |
| [ | |
| 0 : "No" | |
| 1 : "Yes" | |
| ] | |
| state(choices) : "Disable momentum" : 0 = | |
| [ | |
| 0 : "No" | |
| 1 : "Yes" | |
| ] | |
| ] | |
| // need updates: | |
| @SolidClass = trigger_setskill : "Trigger set skill" | |
| [ | |
| message(choices) : "Skill to change to" : 1 = | |
| [ | |
| 0 : "Easy" | |
| 1 : "Medium" | |
| 2 : "Hard" | |
| 3 : "Nightmare!" | |
| ] | |
| ] | |
| @PointClass base(Trigger) = trigger_relay : "Trigger relay" | |
| [ | |
| ] | |
| @SolidClass = trigger_monsterjump : "Trigger monster jump" | |
| [ | |
| speed(integer) : "Jump Speed" : 200 | |
| height(integer) : "Jump Height" : 200 | |
| angle(integer) : "angle" : 0 | |
| ] | |
| @SolidClass base(trigger_monsterjump) = trigger_drolejump : "Trigger drolejump"[] | |
| @PointClass base(AllTargets) = trigger_counter : "Trigger counter" | |
| [ | |
| spawnflags(flags) = | |
| [ | |
| 1: "No Message" : 0 | |
| 2: "Broadcast message" : 0 | |
| ] | |
| count(integer) : "Count before activation" : 2 | |
| ] | |
| @SolidClass = trigger_push : "Trigger player push" | |
| [ | |
| spawnflags(flags) = [ 1: "Once Only" : 0 ] | |
| speed(integer) : "Speed of push" : 1000 | |
| noise(string) : "Sound while pushing" | |
| ] | |
| @SolidClass base(Targetname, Deathtype) = trigger_hurt : "Trigger player hurt" | |
| [ | |
| dmg(integer) : "Damage" : 5 | |
| wait(string) : "Frequency of damage" : "0.2" | |
| message(string) : "Message" | |
| cnt(integer) : "Count before deactivated" | |
| ] | |
| @SolidClass base(Target) = trigger_damagethreshold : "Trigger damagethreshold" | |
| [ | |
| health(integer) : "Health" | |
| spawnflags(flags) = | |
| [ | |
| 1: "Multi Use" : 0 | |
| 2: "Invisible" : 0 | |
| ] | |
| ] | |
| @SolidClass = trigger_setgravity : "Trigger setgravity" | |
| [ | |
| gravity(integer) : "Gravity" | |
| ] | |
| @SolidClass base(Deathtype) = trigger_void : "Trigger void"[] | |
| @SolidClass = trigger_ladder : "Trigger ladder" | |
| [ | |
| noise(string) : "Climbing noise" | |
| noise1(string) : "Attach noise" | |
| ] | |
| // Rotating entities | |
| @PointClass base(Targetname) = info_rotate : "Info rotate" | |
| [] | |
| @SolidClass = rotate_object : "Visible rotating object" | |
| [ | |
| target(target_destination) : "Target (an info_rotate)" | |
| targetname(target_source) : "Name (for controller)" | |
| ] | |
| @PointClass base(Targetname) = func_rotate_entity : "Simple rotating entity controller" | |
| [ | |
| target(target_destination) : "Target (a rotate_object)" | |
| rotate(string) : "Rotate speed (x y z)" | |
| speed(string) : "Acceleration time" | |
| spawnflags(flags) = | |
| [ | |
| 1: "Toggle" : 0 | |
| 2: "Starts On" : 0 | |
| ] | |
| ] | |
| @PointClass base(Targetname) = func_rotate_door : "Rotating door controller" | |
| [ | |
| target(target_destination) : "Target (the rotate_object/movewalls)" | |
| rotate(string) : "Rotate axes (x y z)" | |
| angles(string) : "Rotate distance" | |
| speed(string) : "Acceleration time" | |
| sounds(choices) : "Sounds" : 3 = | |
| [ | |
| 1: "Medieval" | |
| 2: "Metal" | |
| 3: "Base" | |
| ] | |
| spawnflags(flags) = | |
| [ | |
| 1: "Stay open" : 0 | |
| ] | |
| ] | |
| @SolidClass = func_movewall : "Func movewall" | |
| [ | |
| targetname(target_source) : "Name (to match rotate_object)" | |
| spawnflags(flags) = | |
| [ | |
| 1: "Visible" : 0 | |
| 2: "Damage on touch" : 0 | |
| 4: "Non-solid" : 0 | |
| ] | |
| ] | |
| @PointClass base(Targetname) = path_rotate : "Rotate train path" | |
| [ | |
| spawnflags(flags) = | |
| [ | |
| 1: "Rotation" : 0 | |
| 2: "Angles" : 0 | |
| 4: "Stop" : 0 | |
| 8: "Stop rotate" : 0 | |
| 16: "Damage" : 0 | |
| 32: "Speed sets movetime" : 0 | |
| 64: "Set damage" : 0 | |
| ] | |
| target(target_destination) : "Next path_rotate" | |
| noise(string) : "Stop sound" | |
| noise1(string) : "Start sound" | |
| event(target_source) : "Event to trigger" | |
| dmg(integer) : "Set train damage(set spawnflag too)" | |
| rotate(string) : "Set rotate for next motion" | |
| speed(choices) : "Speed(or movetime) for next motion" : 0 = | |
| [ | |
| -1 : "jumps to next waypoints" | |
| ] | |
| message(string) : "Message" | |
| angles(string) : "Desired angle at this point" | |
| wait(integer) : "Wait" : 0 | |
| ] | |
| @PointClass base(Targetname) = func_rotate_train : "Rotating train controller" | |
| [ | |
| target(target_destination) : "Target (the rotate_object/movewalls)" | |
| path(target_destination) : "First path entity" | |
| speed(string) : "Initial speed" | |
| dmg(string) : "Initial damage" | |
| sounds(choices) : "Sound" : 1 = | |
| [ | |
| 0: "None" | |
| 1: "Ratchet Metal" | |
| ] | |
| spawnflags(flags) = | |
| [ | |
| 1: "Stay open" : 0 | |
| ] | |
| ] | |
| //point versions | |
| @PointClass base(func_door) = func_door_point : "Basic door" [] | |
| @PointClass base(func_door_secret) = func_door_secret_point : "Triggered door" [] | |
| @PointClass base(func_breakable) = func_breakable_point : "Breakable object"[] | |
| @PointClass base(func_wall) = func_wall_point : "Wall"[] | |
| @PointClass base(func_button) = func_button_point : "Button" [] | |
| @PointClass base(func_train) = func_train_point : "Moving platform" [] | |
| @PointClass base(func_plat) = func_plat_point : "Elevator" [] | |
| @PointClass base(func_episodegate) = func_episodegate_point : "Episode Gate" [] | |
| @PointClass base(func_bossgate) = func_bossgate_point : "Boss gate"[] | |
| @PointClass base(trigger_changelevel) = trigger_changelevel_point : "Trigger: Change level"[] | |
| @PointClass base(trigger_once) = trigger_once_point : "Trigger: Activate once"[] | |
| @PointClass base(trigger_multiple) = trigger_multiple_point : "Trigger: Activate multiple"[] | |
| @PointClass base(trigger_onlyregistered) = trigger_onlyregistered_point : "Trigger: Registered only"[] | |
| @PointClass base(trigger_secret) = trigger_secret_point : "Trigger: Secret" [] | |
| @PointClass base(trigger_teleport) = trigger_teleport_point : "Trigger teleport" [] | |
| @PointClass base(trigger_setskill) = trigger_setskill_point : "Trigger set skill" [] | |
| @PointClass base(trigger_relay) = trigger_relay_point : "Trigger relay"[] | |
| @PointClass base(trigger_monsterjump) = trigger_monsterjump_point : "Trigger monster jump" [] | |
| @PointClass base(trigger_counter) = trigger_counter_point : "Trigger counter" [] | |
| @PointClass base(trigger_push) = trigger_push_point : "Trigger player push"[] | |
| @PointClass base(trigger_hurt) = trigger_hurt_point : "Trigger player hurt" [] | |
| @PointClass base(trigger_damagethreshold) = trigger_damagethreshold_point : "Trigger damagethreshold"[] | |
| @PointClass base(trigger_drolejump) = trigger_drolejump_point : "Trigger drolejump"[] | |
| @PointClass base(trigger_setgravity) = trigger_setgravity_point : "Trigger setgravity" [] | |
| @PointClass base(trigger_void) = trigger_void_point : "Trigger void"[] | |
| @PointClass base(trigger_ladder) = trigger_ladder_point : "Trigger ladder"[] | |
| @PointClass base(func_door_button) = func_door_button_point : "Door-mounted Button"[] | |
| @PointClass base(func_togglewall) = func_togglewall_point : "Toggleable wall" [] | |
| @PointClass base(rotate_object) = rotate_object_point : "Visible rotating object" [] | |
| @PointClass base(func_movewall) = func_movewall_point : "Func movewall" [] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment