Counter-Strike: Condition Zero Deleted Scenes FGD: Difference between revisions
Jump to navigation
Jump to search
Tip:Select the beginning of the line (usually the "//" comment) by clicking it, scroll down then hold ⇧ Shift, and click at the end of the line to select all.
No edit summary |
No edit summary |
||
(21 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
This FGD is considered to be a work-in-progress, while it does have all the functionality to make maps to the same quality of the main game, there might be some wonky stuff, mistakes or non-complete information about entities. There are still keys that are not fully understood and might not be understood until more experimentation is done. | |||
== Important == | |||
This is | Here are some things to remember when choosing to use this FGD. Alternatively, you can pick this FGD up [https://twhl.info/vault/view/6501 from TWHL vault]. | ||
* Hammer 3.5 only supports entity classnames with up to 32 characters. Therefore, This version of the CS:CZDS FGD file is not compatible with the default Hammer Editor that is provided with HL1. In this case, It is suggested to use {{jack|4.1}}, an alternative to Hammer for GoldSource. The program supports Windows and Linux and adds a number of features for level editing and modding. If you still want to use Hammer, you should refer to this [[Condition_Zero_Deleted_Scenes.fgd|page]] and just add in the missing content. | |||
=Important= | * This is the most up-to-date FGD for CS:CZDS. It is an ongoing effort to bring users the best version of this FGD. If there are any bugs or things missing, please contact me and I will do my best to update it in a timely manner. | ||
Here are some things to remember when choosing to use this FGD. | |||
* Hammer 3.5 only supports entity classnames with up to 32 characters. Therefore, This version of the CS:CZDS FGD file is not compatible with the default Hammer Editor that is provided with HL1. In this case, | |||
* This is | |||
* There are fixes provided in the FGD for the most common bugs in the game. | * There are fixes provided in the FGD for the most common bugs in the game. | ||
* If you are using J.A.C.K, the help button has a lot of information on usage of the entities. | * If you are using J.A.C.K, the help button has a lot of information on usage of the entities. | ||
* There is a section of the FGD dedicated to things that are slightly janky. This space is | * There is a section of the FGD dedicated to things that are slightly janky. This space is a space to document oddities within the game. | ||
=FGD= | == FGD == | ||
< | {{TextFile|FGD}} | ||
{{codeblock|lang=fgd|src=czds_full.fgd|<!-- | |||
--><nowiki>//////////////////////////////////////////////////////////////////////////////// | |||
// | |||
// :INTRODUCTION AND IMPORTANT THINGS: | |||
// | |||
// Finally, the FGD is done! I'd like to thank all those that have helped me get this FGD into a more complete state. I am planning on updating this | |||
// When I have more information or something to fix. So please check back as there might be an update waiting for you! | |||
// There are most likely a lot of missing things and undocumented stuff. I've tried to include as much information on the entities in the help section of JACK. | |||
// If anyone who was a dev of CS:CZDS and has any knowledge of any data or insights into the specifics of it, please contact me ('I have a plan') at the TWHL forum/discord. | |||
// | |||
// | |||
// :A WORD FROM CASTLE: FORMER LD FOR RITUAL ENTERTAINMENT: | |||
// | |||
// A few days ago I had the honour of talking with CASTLE, the former LD for many of the levels in CS:CZDS, here is a snippet of what he said about CS:CZ. | |||
// | |||
// 'When we got the Gearbox build, they had practically finished the game and just that would have been great, but we went at it with a machete and cut a lot of the content. | |||
// Valve told us to make a HL1 experience in the Counter-Strike world and what we delivered was very far from it. There was no connection | |||
// to the previous levels, no 'Show, don't tell' theories in the levels, characters constantly spewing lore and there was always an objective to do. So it | |||
// was never really a HL1 experience. It was a super linear, mostly scripted game with annoying sections that didn't need to be there. | |||
// | |||
// At the time, we had too much power and we were way too ambitious when it came to CZ. For example, The AI was over scripted, the first time a dude falls down the stairs is cool, | |||
// but the hundreth time is just frustrating. We didn't need to have a .SEQ file system or anything like that, Mutimanagers would have worked for everything. | |||
// The same thing can be said about the annoying stealth sections, we didn't need those and the game would had probably done better without them. | |||
// If you do remake or port the levels, make sure to get rid of the fail state stealth parts for good. | |||
// After CZ got taken out of our hands, they released our work as 'Deleted Scenes'. Till this day I have no idea why they decided to do that, it is what it is, but I would have liked it to be under a different name.' | |||
// | |||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
// | // | ||
// :DETAILS AND NOTES: | // :DETAILS AND NOTES: | ||
// | // | ||
// Release version: 1.1. | // Release version: 1.1.6 'Another One' Edition | ||
// Release date: | // Release date: 16/7/2023 | ||
// Authors: cs_expert-tom793 : 小冬冬 / Dong : I have a plan | // Authors: cs_expert-tom793 : 小冬冬 / Dong : I have a plan : Castle | ||
// | // | ||
// This FGD is for Counter-Strike: Condition Zero Deleted Scenes. | // This FGD is for Counter-Strike: Condition Zero Deleted Scenes. | ||
Line 29: | Line 52: | ||
// | // | ||
// Unfortunatly, I am not an expert in reading decompiled code. Some keys, values and spawnflags will be missing or have no 'Help' information. | // Unfortunatly, I am not an expert in reading decompiled code. Some keys, values and spawnflags will be missing or have no 'Help' information. | ||
// I would need the old | // I would need the old UberRadiant .def that Ritual Entertainment used. But, we will never fully know what they were/ or do until the .def or SDK is found/given to us by Valve. | ||
// I'm very sorry if there are missing keys, values or spawnflags. I'll continue trying to find the contacts I need to speak to in order to complete this. | // I'm very sorry if there are missing keys, values or spawnflags. I'll continue trying to find the contacts I need to speak to in order to complete this. | ||
// List of keys that are used in the game files! | // List of keys that are used in the game files! | ||
// | // | ||
// > CBaseTrigger (Things like trigger_once, trigger_multiple, etc...) | //!NOTE! CBaseTrigger Still trying to work out what they do!! | ||
// - | //> CBaseTrigger (Things like trigger_once, trigger_multiple, etc...) >> QUEARY TARGET NEEDS TO BE SET FOR THESE TO WORK!!!! | ||
// - | // - isdead > ??? something about a deadflag, could be a normal trigger condition ??? | ||
// - | // - hasclassname > if classname is 'xyz', trigger this (this one is a bit tricky. >> SEEMS TO WORK SOMETIMES WITH Terrorist_xyz) | ||
// - | // - usingweapon > Takes the weapon model (v/w/p_m4a1.mdl) AS the input value??? > Could seems to be related to the Monster `weapon` KV. | ||
// - | // - takingdamage > Seems to be under the normal trigger condtions of the monster. | ||
// - | // - hearcombat > Seems to be under the normal trigger condtions of the monster. | ||
// | // - enemyisplayer > Seems to be under the normal trigger condtions of the monster. | ||
// - hearplayer > Seems to be under the normal trigger condtions of the monster. | |||
// | |||
// >monster_T/CT | // >monster_T/CT | ||
// - poisoned (Causes Crash on level load IF not paired with healthModifier) | // - poisoned (Causes Crash on level load IF not paired with healthModifier) | ||
// - pumped | // - pumped // ??? | ||
// - | // - blastradius //m_blastRadius// > seems the code is gimped | ||
// | // - blastdamage //m_blastDamage// > seeems the code is gimped | ||
// | |||
// - blastdamage | |||
// | // | ||
// | // | ||
// > monster_hostage | // > monster_hostage | ||
Line 59: | Line 79: | ||
// - dmdelay (code suggests that func_recharge is supported, but not func_healthcharger.) | // - dmdelay (code suggests that func_recharge is supported, but not func_healthcharger.) | ||
// | // | ||
// | // | ||
// :SKILLS.CFG: | // :SKILLS.CFG: | ||
Line 66: | Line 84: | ||
// The skills.cfg can be used in a custom mod to define certain properties within CS:CZDS. Some entites in this FGD are tagged with a 'help' | // The skills.cfg can be used in a custom mod to define certain properties within CS:CZDS. Some entites in this FGD are tagged with a 'help' | ||
// dialog that can be accessed in JACK that will let you know. But, here is a quick reference list. | // dialog that can be accessed in JACK that will let you know. But, here is a quick reference list. | ||
// - | // - sk_hgrunt_health (CT/T health) | ||
// | // - sk_turret_health (Turret health) | ||
// | // - sk_miniturret_health (Turret health) | ||
// | // - sk_sentry_health (Turret health) | ||
// | // - sk_suitcharger (Armor charger amount) | ||
// - | // - sk_battery1 (Armor pickup amount) | ||
// - | // - sk_healthkit (Healthkit pickup amount) | ||
// - | // - sk_scientist_heal (Scientist 'syringe boost' amount) | ||
// - sk_plr_buckshot (Player shotgun) | |||
// | // | ||
// :CONVERTING BRUSH ENTITIES TO POINT ENTITIES: | // :CONVERTING BRUSH ENTITIES TO POINT ENTITIES: | ||
Line 87: | Line 106: | ||
// You will not be able to see the entity next time you | // You will not be able to see the entity next time you | ||
// load it on Hammer. Next time you save, the origin will be erased. | // load it on Hammer. Next time you save, the origin will be erased. | ||
// | // | ||
// :INFO_TEXLIGHTS: | // :INFO_TEXLIGHTS: | ||
Line 114: | Line 125: | ||
// since there's a bug where cameras still use the player position for visibility testing this is used to get things to still render | // since there's a bug where cameras still use the player position for visibility testing this is used to get things to still render | ||
// if an entity isn't including in visibility testing it always gets added to the list of visible entities' -SOLOKILLER | // if an entity isn't including in visibility testing it always gets added to the list of visible entities' -SOLOKILLER | ||
// | // | ||
// :TRIGGER_ZIPLINE (AKA FANCY TELEPORTER): | // :TRIGGER_ZIPLINE (AKA FANCY TELEPORTER): | ||
Line 167: | Line 172: | ||
// :MAPTIER KEY: | // :MAPTIER KEY: | ||
// | // | ||
// This is an interesting key. The code suggests that, depending on the | // This is an interesting key. The code suggests that, depending on the number given, enemy behavior and schedules are changed. | ||
// | // | ||
// :ENV_PARTICLE CRASH: | // :ENV_PARTICLE CRASH: | ||
Line 173: | Line 178: | ||
// Potential fix : Load into a different map that doesn't have an env_particle entity, prior to loading into a map with env_particle. | // Potential fix : Load into a different map that doesn't have an env_particle entity, prior to loading into a map with env_particle. | ||
// Perma fix isn't going to be availible until I get an SDK from Valve. | // Perma fix isn't going to be availible until I get an SDK from Valve. | ||
// | |||
// :ITEM_GENERIC FOG FIX: | |||
// | |||
// Here is how to fix item_generic not interacting with fog properly. Go into the entity properties and give it these settings. | |||
// > Target Name : all_level_models | |||
// > Render Mode : Color | |||
// > FX Amount : 255 | |||
// > Light Multiplier : 1 | |||
// > Model : (whatever model you want) | |||
// | |||
// :BULLETPROOF GLASS FIX: | |||
// | |||
// There seems to be a bug with func_breakable that deletes certain entities (in this case, a live grenade) from interacting with it. Go into the entity properties and give it these settings. | |||
// THESE NEED TO BE SET IN KEYVALUE MODE (No smart-edit) | |||
// > grenadetouch : 0 | |||
// > renderamt : (Whatever you want) | |||
// > rendermode : 2 | |||
// > material : 7 | |||
// | // | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
Line 189: | Line 212: | ||
// | // | ||
// !NOTE! > is used to tag important things! Feel free to add your own! | // !NOTE! > is used to tag important things! Feel free to add your own! | ||
// | |||
// > 16/7/2023 1.1.6 'Another One' Edition | |||
// | |||
// - !!NOTE!! For the sake of parity between the original game maps and user maps. monster_terrorist will remain. One can manually change it to monster_t for a shorter list in JACK. | |||
// Hammer will have to be monster_t due to 32 bit limits on ent names. | |||
// - Added all weapon_ tools and ambient_generic to game_player_equip | |||
// - Added "killtarget" KV to "trigger_usetool" | |||
// - Added all music tracks to "Trigger_cdaudio" | |||
// - Rewrote "Viewcone Degree" KV description in the "Trigger" baseclass to more accurately discribe how to use it. | |||
// - Fixed and added more info to Func_mortar_zone. | |||
// - Added model selections for Monster_apache to better align with the ingame decompiles. | |||
// - Changed "Clips" from ammo entites to either magazines or boxes respectively. | |||
// | |||
// > 20/4/2022 1.1.5 'A lil update' Edition | |||
// | |||
// - Added in 'ammo_bomb'. The ammo that the RCbomb tool uses. | |||
// - Added in all of the custom gibs list from Czero for easy access. | |||
// - Added test_effect > Leftover from early builds of the HL1 SDK. | |||
// - Added `weaponbox`. | |||
// - Added in "healthvalue" for func_door_rotating. Functions as an HL1 Beta wallkit health dispenser that can be set by the level designer. | |||
// - Added in a choices section in "game_player_equip". Should make it easier to access every dispenser-able item in the game. | |||
// - Implemented `Item_xxx` into func_breakables so they can be spawned. | |||
// - Updated some information with the :DETAILS AND NOTES: section. | |||
// - Fixed MonsterMaker spawnflag discription. Thanks WINDAWZ! | |||
// - Fixed monster NPC. default value should have had quotes around it. Thanks PENGUINBOY! | |||
// | |||
// > 18/12/2021 1.1.4 'Fixin' stuff' fix | |||
// | |||
// - Added flavor text and other specifications (Ammo, uses etc...) to WEAPON ENTITIES, ITEM ENTITIES and AMMO ENTITIES. | |||
// - Added Lever sounds to 'func_button'. | |||
// - Added zhlt_copylight to ZHLT baseclass. | |||
// - Added a fix description for bugged bullet-proof glass within func_breakable. | |||
// - Added and tested all trigger modes. Opens up a few useful features. | |||
// - Added choices to 'numclip' key for all Ammo_xyz variants, includes info for what gun the ammo goes to and how many mags to fill x gun. | |||
// - Added and new trigger modes (querytarget, viewtarget, viewconedegrees, globalstate). | |||
// - Added zhlt_copylight to ZHLT baseclass. Because it is handy. | |||
// - Added trigger_autosave 'use only' flag. | |||
// - Added monster_apache 'No Wreckage' flag (Not sure if this one works though). | |||
// - Reverted extended JACK FGD feature 'flags (Light)'. | |||
// - Re-wrote the discription for 'weaponaccuracy' key in BaseClass 'Monster'. | |||
// - Rewrote the descriptions for what 'lightmultiplier' does on Item_generic and Worldspawn. | |||
// - Re-wrote the discription for 'weaponaccuracy' key in BaseClass 'Monster'. | |||
// - Removed the rest of the 'lightmultiplier' keys from everything but item_generic and worldspawn. | |||
// - Fixed flags 1 'monsters', 2 'no clients' on 'trigger_teleport'. | |||
// - Fixed 'trigger_once' from having 2 'master' keys. | |||
// - Fixed 'monster_generic' from having 2 render FX arrays. | |||
// - Fixed 'language' key in BaseClass 'Monster' to have choices. | |||
// - Fixed 'env_sprite' from having 0.0 on the 'scale' key. | |||
// - Fixed 'lightmultiplier' keyvalue discription in 'Worldspawn' | |||
// - Fixed 'env_liveammoshooter' help info showing in value spot. | |||
// - Fixed item_generic KV load order... (argh) | |||
// - Fixed the mdl error for the tripmine. | |||
// - Fixed 'env_explosion' help info showing in value spot. | |||
// - Fixed env_render dupe keys. | |||
// - Set 'FX amount' key to a default '255' for convenience. | |||
// - Switched default monster_npc model to npc_scientest model. | |||
// - Partially renamed the door/button sounds to a non-HL1 description. | |||
// > 30/06/2021 1.1.2 'CASTLE was here' Edition | |||
// - Added item_generic Fog fix to the :DETAILS AND NOTES: section. | |||
// - Added some Comments from one of the LD of Ritual Entertainment, CASTLE, on BaseClase Monster keys 'Behavior' and 'Weapons' and a few other entities. As well as in the introduction. | |||
// - Added missing materials 'None' and 'Last Material' to BaseClase 'Breakable'. | |||
// - Added iconsprite compatibility for all point entities in the FGD (Thanks Kenny.NL for the 1-bit Pack of tiles!) | |||
// - Added a custom version of ZHLT.FGD that includes compatibility with its own sprites to show in editor. | |||
// - Added all items to 'item' key on 'player_weaponstrip' for easy access. | |||
// - Added a fully working version of 'func_model_brush' into the FGD. | |||
// - Re-added BaseClase Monster keys 'Behavior' and 'Weapons'. Having a better understanding of them. | |||
// - Re-added the 'rescueanim' key to 'monster_hostage'. Try it out and see if you can get it to work. :) | |||
// - Removed unwanted notes from the 1.1.1 HF release. | |||
// - Removed 'dot_product_weight','spherical_ambient','angle_hotspot','falloff_curvature','angle_penumbra', 'falloff_start_dist' and 'falloff_end_dist'. They were from Ritual Entertainments build of Ubertools, most likely they used a custom ZHLT build tool too. | |||
// - Removed 'env_particle', it seems too broken to work at the moment. | |||
// - Rewrote discription for 'MaxRange' in entity 'worldspawn'. | |||
// - Rewrote trigger_zipline description. | |||
// - Rewrote some of the discriptions for BaseClase Worldspawn. | |||
// - Rewrote the descriptions for the Path Entities. | |||
// - Fixed a lot of format issues to do with sprites and models. On some entities, it removes the ability to see the models in editor for monstermaker and the cycler entities. | |||
// - Fixed BaseClass 'Monster' keyvalues 'Pumped/Wander/etc' choices. | |||
// - Fixed the Cycler entity set from showing it's help info in a a keyvalue area. | |||
// - Moved 'fleeondanger', 'cower', 'provoke' keys from BaseClass Monster to 'monster_npc' (Checked and these seem to be NPC exclusive). | |||
// | // | ||
// > 30/03/2021 V1.1.1 HOTFIX EDITION | // > 30/03/2021 V1.1.1 HOTFIX EDITION | ||
Line 248: | Line 350: | ||
// :ISSUES: | // :ISSUES: | ||
// | // | ||
// - | // - Monster_flyer uses 'boid' sounds from HL1. Has pigeon sounds in CZEROR /Sounds. | ||
// - | // - JACK problem manager reports that some things have dupe keys. > Still don't understand why JACK complains of key-value double ups... | ||
// - env_particle throws this error on map load sometimes > 'Tried to create message with bogus message type (0)'. | // - func_recharge uses HEV sounds. | ||
// - Monster_sentry doesn't precache it's firing sound properly. > Dodgy fix is to make 3 ambient_generics with the hks1/2/3 sounds in them !!!Can't fix unless Valve gives the CZEROR SDK!!! | |||
// - env_particle throws this error on map load sometimes > 'Tried to create message with bogus message type (0)'. !!!Can't fix unless Valve gives the CZEROR SDK!!! | |||
// - env_particle disappears when in players view, no fix as of yet. | // - env_particle disappears when in players view, no fix as of yet. | ||
// - | // - Unlocked sounds on doors and buttons seem to be broken. > !!!Can't fix unless Valve gives the CZEROR SDK!!! | ||
// - | // - player_weaponstrip: some things [weapon_blowtorch/weapon_camera/] dont seem to work and crash the game. | ||
// - | // - Item_soda needs to have a can.mdl in the active directory. Easy fix, move the can.mdl from HL1 into the mod directory | ||
// | |||
// :1.1.x 'x' x : Candidate Release version list: | |||
// | |||
// > KEY: {x = Completed} {r = Remove} {f = Future} {? = Unknown} {P = Partial} | |||
// | |||
// - [] trigger_endmission might have a use only spawnflag > check line 124343 | |||
// - [] Still working on `weapons` > 64 is no weps and no ammo | |||
// | // | ||
// | // | ||
// :FUTURE: | // :FUTURE: | ||
// | // | ||
// - [ | // This is for things that will take awhile or are not really urgent. | ||
// - [f] | // | ||
// - [ | // - [?] Figure out what spawnflag 1 does on env_liveammoshooter. | ||
// - [f] Make | // - [f] Find a place for 'globalstate' to go on because it relates to CBaseToggle ents. | ||
// - [ | // - [?] Find out what spawnflag 1 does on trigger_endmission. | ||
// - [ | // - [f] Make pigeon sounds for monster_flyer. < Pigeon sounds may already exist in the base game, just need to change the file names to 'boidxyz'. | ||
// - [ | // - [?] Figure out what flag 2 does on trigger_sequence. | ||
// - [ | // - [?] Fix 'weapon' and 'behavior' key choices on BaseClass Monster to properly reflect code. < I don't know if this works at all... | ||
// - [] BASECLASS Monster is overriding the monstermaker "cyclic" discription. Need to seperate. | |||
// - [] Find the differences between the Trigger_tool > info_camera > info_landmark. If this functions as a waypoint to store the player location in reletive to whatever sight line thing in the trigger_once "look at key" | |||
// | // | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
Line 278: | Line 390: | ||
@SolidClass = worldspawn : "World entity" | @SolidClass = worldspawn : "World entity" | ||
[ | [ | ||
maptier(choices) : "Map Tier" : : "Apparently, This is may control what the enemy AI does in game. Not much information on this." = | maptier(choices) : "Map Tier" : "" : "Apparently, This is may control what the enemy AI does in game. Not much information on this. CASTLE: This could have been for the Multiplayer section of the game, maybe nothing, its hard to say." = | ||
[ | [ | ||
"": "None" : "Nothing." | |||
1 : "1" | 1 : "1" | ||
2 : "2" | 2 : "2" | ||
Line 288: | Line 401: | ||
7 : "7" | 7 : "7" | ||
8 : "8" | 8 : "8" | ||
9 : " | 9 : "9" | ||
10 : "10" | 10 : "10" | ||
] | ] | ||
message(string) : "Map Description / Title" : : "Not working, this is a SP game afterall." | message(string) : "Map Description / Title" : : "Not working, this is a SP game afterall." | ||
gametitle(choices) : "Game Title" : 0 : " | gametitle(choices) : "Game Title" : 0 : "show the game title sprite when the map loads." = | ||
[ | [ | ||
0 : "No" | 0 : "No" | ||
Line 299: | Line 412: | ||
] | ] | ||
skyname(sky) : "Environment map (cl_skyname)" : : "Choose what sky image you want.'" | skyname(sky) : "Environment map (cl_skyname)" : : "Choose what sky image you want.'" | ||
sounds(integer) : "CD track to play" : | sounds(integer) : "CD track to play" : : "CD track to play when the level begins. Not working." | ||
light(integer) : "Default light level" : : " | light(integer) : "Default light level" : : "" | ||
WaveHeight(integer) : "Default Wave Height" : : "Set the default wave height here." | WaveHeight(integer) : "Default Wave Height" : : "Set the default wave height here. A func_water will overide what is set here." | ||
MaxRange(integer) : "Max viewable distance" : 8192 : "Maximum distance the | MaxRange(integer) : "Max viewable distance" : 8192 : "Maximum distance the world is rendered at. Can be changed for better performance." | ||
chaptertitle(string) : "Chapter Title Message" : : "Text displayed when entering the level." | chaptertitle(string) : "Chapter Title Message" : : "Text displayed when entering the level." | ||
lightmultiplier(integer) : "Light multiplier" : : " | lightmultiplier(integer) : "Light multiplier" : : "Sets a global illumination on items, ammo and weapons. Pretty much anything that is a model." | ||
radfile(string) : "Radfile" : : "Specifies a RAD file to use." | radfile(string) : "Radfile" : : "Specifies a xyz.RAD file to use." | ||
mapversion(integer) : "Map Version" : 220 : "Not sure what this does. Could be something to do with the way map versions were compiled from | mapversion(integer) : "Map Version" : 220 : "Not sure what this does. Could be something to do with the way map versions were compiled from UBERRadiant." | ||
startdark(choices) : "Level Fade In" : 0 : "If Yes, then the level will start black and fade into normal light." = | startdark(choices) : "Level Fade In" : 0 : "If Yes, then the level will start black and fade into normal light." = | ||
[ | [ | ||
Line 332: | Line 445: | ||
@BaseClass studio() = FuncAddition | @BaseClass studio() = FuncAddition | ||
[ | [ | ||
model(studio) : "Model (if not brush)" : : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | model(studio) : "Model (if not brush)" : "" : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | ||
body(integer) : "Body (if not brush)" : : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | body(integer) : "Body (if not brush)" : "" : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | ||
origin(string) : "Origin (XYZ) (if not brush)" : : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | origin(string) : "Origin (XYZ) (if not brush)" : "" : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | ||
zhlt_usemodel(string) : "Model Stealer" : : "Input the name of an item_generic that has a model, and it should steal the model from it to be used. Can also be used with brush entities." | zhlt_usemodel(string) : "Model Stealer" : "" : "Input the name of an item_generic that has a model, and it should steal the model from it to be used. Can also be used with brush entities." | ||
style(choices) : "Texlight style" : 0 : "Set a style of lighting for the texlight. Can be applied to any brush based entity." = | style(choices) : "Texlight style" : 0 : "Set a style of lighting for the texlight. Can be applied to any brush based entity." = | ||
[ | [ | ||
Line 357: | Line 470: | ||
@BaseClass base(FuncAddition) = Func2 | @BaseClass base(FuncAddition) = Func2 | ||
[ | [ | ||
skin(integer) : "Skin (if not brush)" : : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | skin(integer) : "Skin (if not brush)" : "" : "Refer to the 'COVERTING BRUSH ENTITIES' section of this FGD." | ||
] | ] | ||
@BaseClass = BeamStartEnd | @BaseClass = BeamStartEnd | ||
[ | [ | ||
LightningStart(target_destination) : "Start Entity" : : "The name of an entity to be used as the starting point for the beam. If undefined, the beam will choose a surface within the Radius to use as the starting point. (Note that if the Start Entity is undefined, the Ending Entity must also be undefined.)" | LightningStart(target_destination) : "Start Entity" : "" : "The name of an entity to be used as the starting point for the beam. If undefined, the beam will choose a surface within the Radius to use as the starting point. (Note that if the Start Entity is undefined, the Ending Entity must also be undefined.)" | ||
LightningEnd(target_destination) : "Ending Entity" : : "The name of an entity to be used as the end point for the beam. If undefined, the beam will choose a surface within the Radius to use as the end point." | LightningEnd(target_destination) : "Ending Entity" : "" : "The name of an entity to be used as the end point for the beam. If undefined, the beam will choose a surface within the Radius to use as the end point." | ||
] | ] | ||
@BaseClass = Global | @BaseClass = Global | ||
[ | [ | ||
globalname(string) : "Global Entity Name" : : "Global name of an entity, allows to have one entity in multiple maps (e.g. elevator in map1 and map2 have the same Global Entity Name which tells the engine to treat those entities as one single entity, so all elevator settings, positions, actions e.t.c. are copied to another map in map transitions)." | globalname(string) : "Global Entity Name" : "" : "Global name of an entity, allows to have one entity in multiple maps (e.g. elevator in map1 and map2 have the same Global Entity Name which tells the engine to treat those entities as one single entity, so all elevator settings, positions, actions e.t.c. are copied to another map in map transitions)." | ||
] | ] | ||
@BaseClass studio() = ModelFile | @BaseClass studio() = ModelFile | ||
[ | [ | ||
model(studio) : "Model" : : "Select an Model file to use." | model(studio) : "Model" : "" : "Select an Model file to use." | ||
body(integer) : "Body" : | body(integer) : "Body" : "" : "Input the value for the bodygroup to use. (Use SOLOKILLERS HLMV for the value)." | ||
skin(integer) : "Skin" : | skin(integer) : "Skin" : "" : "Input the value for the skin to use. (Use SOLOKILLERS HLMV for the value)." | ||
head(integer) : "Head" : | head(integer) : "Head" : "" : "Input the value for the head to use. (Use SOLOKILLERS HLMV for the value)." | ||
] | ] | ||
Line 389: | Line 502: | ||
6 : "Opaque + Concave Fix" : "The 'ConcaveFix' is needed for curved func_wall's, notably arch shapes. When they are set to opaque, the inner curve (the concave porition) will frequently have black fringes at the joins where brushes touch up. Setting the ConcaveFix flag fixes the black seams in these cases, but then the entity cannot have the EmbeddedFix set." | 6 : "Opaque + Concave Fix" : "The 'ConcaveFix' is needed for curved func_wall's, notably arch shapes. When they are set to opaque, the inner curve (the concave porition) will frequently have black fringes at the joins where brushes touch up. Setting the ConcaveFix flag fixes the black seams in these cases, but then the entity cannot have the EmbeddedFix set." | ||
] | ] | ||
zhlt_customshadow(integer) : "Shadow Transparency" : | zhlt_customshadow(integer) : "Shadow Transparency" : "" : "Defines the transparency and colouring of brush based entities for the purposes of the shadows that those brushes cast. Can be applied to any brush based entity." | ||
zhlt_embedlightmap(choices) : "Embed Light Map" : : "Transparent brush entities only. Set it to 'Yes' and this transparent entity will take light from the environment, making it look much more natural. This effect is pretty expensive so be careful with it." = | zhlt_embedlightmap(choices) : "Embed Light Map" : "" : "Transparent brush entities only. Set it to 'Yes' and this transparent entity will take light from the environment, making it look much more natural. This effect is pretty expensive so be careful with it." = | ||
[ | [ | ||
0 : "No" | 0 : "No" | ||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
zhlt_embedlightmapresolution(integer) : "Embed Light Map Resolution" : : "Set to a power of 2 number. Controls the resolution of embedded lightmaps on transparent textures (see keyvalue above). Higher value for better optimization. Default and recommended value is 4." | zhlt_embedlightmapresolution(integer) : "Embed Light Map Resolution" : "" : "Set to a power of 2 number. Controls the resolution of embedded lightmaps on transparent textures (see keyvalue above). Higher value for better optimization. Default and recommended value is 4." | ||
light_origin(string) : "Light Origin (Zhlt 2.2+)" : : "Set optional light placement. Can be applied to any brush based entity. light_origin can be used to place a brush based entity to a new location for the purposes of lighting. Typical use requires placing an info_target at the relevant location, and then setting the light_origin to point the info_target's name. If the entity is opaque, it will also cast shadows from that location in addition to being lit as if it were there." | light_origin(string) : "Light Origin (Zhlt 2.2+)" : "" : "Set optional light placement. Can be applied to any brush based entity. light_origin can be used to place a brush based entity to a new location for the purposes of lighting. Typical use requires placing an info_target at the relevant location, and then setting the light_origin to point the info_target's name. If the entity is opaque, it will also cast shadows from that location in addition to being lit as if it were there." | ||
zhlt_copylight(string) : "Copy Light Information" : "" : "You can specify a name of an entity to copy it's lightning values. It can be a model-based entity, Brush entity or a simply info_target" | |||
] | ] | ||
Line 420: | Line 534: | ||
15 : "Distort" | 15 : "Distort" | ||
16 : "Hologram (Distort + fade)" | 16 : "Hologram (Distort + fade)" | ||
21 : "Light Multiplier" | |||
] | ] | ||
] | ] | ||
Line 434: | Line 549: | ||
5 : "Additive" : "Adds the texture colours to the background. Darker colours become less visible - black is removed. Glows in the dark." | 5 : "Additive" : "Adds the texture colours to the background. Darker colours become less visible - black is removed. Glows in the dark." | ||
] | ] | ||
renderamt(integer) : "FX Amount (1 - 255)" : | renderamt(integer) : "FX Amount (1 - 255)" : 255 : "Input how visible the object is. (Depending on the render mode, this could change the outcome of visibility.)" | ||
rendercolor(color255) : "FX Color (R G B)" : "0 0 0" : "Input 3 values (R G B) that determine a colour." | rendercolor(color255) : "FX Color (R G B)" : "0 0 0" : "Input 3 values (R G B) that determine a colour." | ||
] | ] | ||
@BaseClass = Master | @BaseClass = Master | ||
[ | [ | ||
master(target_destination) : "Master" : : "The name of a multisource (or game_team_master) entity. A master must usually be active in order for the entity to work. Thus they act almost like an on/off switch, in their simplest form, and like an AND gate in the case of the multisource." | master(target_destination) : "Master" : "" : "The name of a multisource (or game_team_master) entity. A master must usually be active in order for the entity to work. Thus they act almost like an on/off switch, in their simplest form, and like an AND gate in the case of the multisource." | ||
] | ] | ||
@BaseClass = Target | @BaseClass = Target | ||
[ | [ | ||
target(target_destination) : "Target" : : "When an entity is activated, it triggers the entity with the name specified by Target." | target(target_destination) : "Target" : "" : "When an entity is activated, it triggers the entity with the name specified by Target." | ||
] | ] | ||
@BaseClass = Targetname | @BaseClass = Targetname | ||
[ | [ | ||
targetname(target_source) : "Name" : : "Property used to identify entities." | targetname(target_source) : "Name" : "" : "Property used to identify entities." | ||
] | ] | ||
@BaseClass = Classtype | @BaseClass = Classtype | ||
[ | [ | ||
classtype(choices) : "Class type" : : "This is for selecting the faction that the monster or NPC is on. Great for infighting | classtype(choices) : "Class type" : "" : "This is for selecting the faction that the monster or NPC is on. Great for infighting monsters. Classes are: TS1/TS2/CTS1/CTS2/TH/CTH/TVIP/CTVIP/CIV." = | ||
[ | [ | ||
"" : "No classtype" | |||
TS1 : "TS1" | TS1 : "TS1" | ||
TS2 : "TS2" | TS2 : "TS2" | ||
Line 473: | Line 587: | ||
@BaseClass base(Target) = Targetx | @BaseClass base(Target) = Targetx | ||
[ | [ | ||
delay(string) : "Delay before trigger" : " | delay(string) : "Delay before trigger" : "" : "Usually the time in seconds before an entity should trigger its target (after being triggered itself). Under other SmartEdit names, delay might also be the time to wait before performing some other action." | ||
killtarget(target_destination) : "KillTarget" : : "When an entity is triggered, it will remove from the game the entity specified by this property." | killtarget(target_destination) : "KillTarget" : "" : "When an entity is triggered, it will remove from the game the entity specified by this property." | ||
] | ] | ||
Line 484: | Line 598: | ||
@BaseClass base(Target, Targetname, RenderFields, Angles) color(0 200 200) = Monster | @BaseClass base(Target, Targetname, RenderFields, Angles) color(0 200 200) = Monster | ||
[ | [ | ||
forcedtarget(target_destination) : "Forced Target" : : "Forces the monster to aggressively persue and kill what ever target name is input." | forcedtarget(target_destination) : "Forced Target" : "" : "Forces the monster to aggressively persue and kill what ever target name is input." | ||
TriggerTarget(target_destination) : "TriggerTarget" : : "The event to trigger when the TriggerCondition is met. Used by monsters." | TriggerTarget(target_destination) : "TriggerTarget" : "" : "The event to trigger when the TriggerCondition is met. Used by monsters." | ||
TriggerCondition(Choices) : "Trigger Condition" : | TriggerCondition(Choices) : "Trigger Condition" : "" : "This controls the condition under which a monster will trigger its TriggerTarget. The options are:" = | ||
[ | [ | ||
0 : "No Trigger" | 0 : "No Trigger" | ||
Line 510: | Line 624: | ||
512 : "Fade Corpse" : 0 : "If enabled, fade the monsters corpse after death." | 512 : "Fade Corpse" : 0 : "If enabled, fade the monsters corpse after death." | ||
] | ] | ||
deathangle(integer) : "Death Angle" : : "The angle at which the monster will face on death." | deathangle(integer) : "Death Angle" : "" : "The angle at which the monster will face on death." | ||
deathanim(string) : "Death animation name" : : "Choose a specific animation that will play on death." | deathanim(string) : "Death animation name" : "" : "Choose a specific animation that will play on death." | ||
deathtrigger(target_destination) : "Death Trigger" : : "Choose a target to trigger on death." | deathtrigger(target_destination) : "Death Trigger" : "" : "Choose a target to trigger on death." | ||
language( | language(choices) : "language (AM, SP, JA)" : "" : "Choose a language that the monster or NPC will speak. Can also accept a custom suffix defined in a .SEQ file." = | ||
cantmove(choices) : "Movement" : | [ | ||
"" : "Default" | |||
AM : "American" | |||
BR : "British" | |||
FR : "French" | |||
GE : "German" | |||
JA : "Japanese" | |||
RU : "Russian" | |||
AR : "Arabic" | |||
SP : "Spanish" | |||
] | |||
cantmove(choices) : "Movement" : "" : "Define the type of movement that the monster or NPC will use." = | |||
[ | [ | ||
0 : "Normal" | 0 : "Normal" | ||
Line 520: | Line 645: | ||
2 : "Turret" | 2 : "Turret" | ||
] | ] | ||
weaponaccuracy(integer) : "Weapon accuracy" : : "The accuracy of the monster or NPC weapons. | weaponaccuracy(integer) : "Weapon accuracy" : "" : "The accuracy of the monster or NPC weapons. Higher the number, the less accuracy the monster has." | ||
healthmult(integer) : "Health Multiplier" : : "The multiplier that is added to the enemy health pool." | healthmult(integer) : "Health Multiplier" : "" : "The multiplier that is added to the enemy health pool." | ||
healthUpdateRate(integer) : "Health recharge rate" : : "Rate that, in seconds, health is recharged at." | healthUpdateRate(integer) : "Health recharge rate" : "" : "Rate that, in seconds, health is recharged at." | ||
healthModifier(integer) : "Health modifier" : : "Amount of health that is restored after every second. Use 'Health recharge rate' with this." | healthModifier(integer) : "Health modifier" : "" : "Amount of health that is restored after every second. Use 'Health recharge rate' with this." | ||
netname(target_destination) : "Squad Name" : : "In a monster or NPC case, this would be used as a squad identifier. Any monster with the same input will join the same squad." | netname(target_destination) : "Squad Name" : "" : "In a monster or NPC case, this would be used as a squad identifier. Any monster with the same input will join the same squad." | ||
unkillable(choices) : "Unkillable" : | unkillable(choices) : "Unkillable" : "" : "Choose if the monster or NPC is unable to be killed." = | ||
[ | [ | ||
0 : "No" | 0 : "No" | ||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
invulnerable(choices) : "Invulnerable" : | invulnerable(choices) : "Invulnerable" : "" : "Choose if the monster or NPC is impervious to all damage." = | ||
[ | [ | ||
0 : "No" | 0 : "No" | ||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
spawnawake(choices) : "Spawn awake" : | spawnawake(choices) : "Spawn awake" : "" : "Spawns a monster that is 'awake', meaning that the AI is active. Not sure if this key is working properly." = | ||
[ | [ | ||
0 : "No" | 0 : "No" | ||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
idleanim(string) : "Idle Animation Name" : : "input the idle animation for the monster or NPC to use. (Use SOLOKILLERS HLMV for the value) | idleanim(string) : "Idle Animation Name" : "" : "input the idle animation for the monster or NPC to use. (Use SOLOKILLERS HLMV for the value)" | ||
usetarget(target_destination) : "Use Target" : "" : "If left blank, the Monster or NPC will can be a follower. If not, It will trigger the entity with the same name as what is filled in." | |||
alertable(choices) : "Alertable" : "" : "Choose if the enemy is immediatly alerted or not." = | |||
usetarget(target_destination) : "Use Target" : : "If left blank, the Monster or NPC will can be a follower. If not, It will trigger the entity with the same name as what is filled in." | |||
alertable(choices) : "Alertable" : | |||
[ | [ | ||
0 : "No" | 0 : "No" | ||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
weapons(choices) : "Weapons" : "" : "CASTLE> This was used to override the monsters defined weapon attributes. Still not sure if this is sound." = | |||
[ | |||
1 : "1" | |||
2 : "2" | |||
4 : "4" | |||
silentdeath(choices) : "Silent Death" : | 8 : "8" | ||
16 : "16" | |||
32 : "32" | |||
64 : "No weapons" : "Makes the monster hold nothing. When aggro, they constantly reload due to having 0 ammo at all times." | |||
128 : "128" : "s" | |||
256 : "256" | |||
] | |||
silentdeath(choices) : "Silent Death" : "" : "Not sure what this does." = | |||
[ | [ | ||
0 : "No" | 0 : "No" | ||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
alertradius(integer) : "Alert Radius" : : "Supposedly, Sets the alert radius for the Terrorists. Not sure if working" | alertradius(integer) : "Alert Radius" : "" : "Supposedly, Sets the alert radius for the Terrorists. Not sure if working" | ||
behavior(choices) : "Behavior" : : "This | behavior(choices) : "Behavior" : "" : "CASTLE> This was used to override the behavior of the set monster_T/CT_xyz class, making them adopt different movement and schedules, regardless of the weapon they have." = | ||
[ | [ | ||
0 : "PISTOL" | 0 : "PISTOL" | ||
Line 571: | Line 701: | ||
7 : "GRENADER" | 7 : "GRENADER" | ||
8 : "MP5" | 8 : "MP5" | ||
] | ] | ||
//count(integer) : "Count" : : "Not sure what this does. Could be a count to activate something." | //count(integer) : "Count" : : "Not sure what this does. Could be a count to activate something." | ||
Line 580: | Line 709: | ||
1 : "No" | 1 : "No" | ||
] | ] | ||
dontfall(integer) : "Don't Fall to Floor" : : " | dontfall(integer) : "Don't Fall to Floor" : "" : "Suspends the monster in the air." | ||
dropchance( | dropchance(integer) : "Chance of Drop" : "" : "Item drop chance. Put a value between 0.0 and 1.0." | ||
dropitem(choices) : "Drop" : : "Define the item that drops from the NPC or monster. Make sure the item you | dropitem(choices) : "Drop" : "" : "Define the item that drops from the NPC or monster. Make sure the item you spawn is actually in the map first, some items WILL cause an error and throw you back to the menu." = | ||
[ | [ | ||
"" : "Nothing" : "Drops nothing" | |||
"weapon_knife" : "Knife" : "Spawn a Knife." | "weapon_knife" : "Knife" : "Spawn a Knife." | ||
"weapon_p228" : "P228" : "Spawn a P228 pistol." | "weapon_p228" : "P228" : "Spawn a P228 pistol." | ||
Line 633: | Line 763: | ||
"ammo_buckshot" : "12 Gauge Ammo" : "Spawn 12 Gauge ammo. For the M3 and XM1014." | "ammo_buckshot" : "12 Gauge Ammo" : "Spawn 12 Gauge ammo. For the M3 and XM1014." | ||
"ammo_generic" : "Generic Ammo" : "Spawn Generic ammo. Every ammo type at max is given." | "ammo_generic" : "Generic Ammo" : "Spawn Generic ammo. Every ammo type at max is given." | ||
"item_armor" : "Armor Vest" : "Spawn a normal armor vest. 100 AP on pickup." | |||
"item_battery" : "Moddable Armor" : "Spawn a moddable armor pickup. Set to whatever the battery is set to in skill.cfg." | |||
"item_healthkit" : "Normal Healthkit" : "Spawn a normal healthkit. 50 HP on pickup." | |||
"item_healthkitold" : "Moddable Healthkit" : "Spawn a moddable healthkit. Set to whatever the Healthkit is set to in skill.cfg." | |||
"item_antidote" : "Antidote" : "Spawn an antidote. Leftover code from HL1. Not sure if it functions." | |||
] | ] | ||
weaponrange(integer) : "Weapon Range" : : "Defines the range (in units) that the Monster or NPC will attack the player at." | weaponrange(integer) : "Weapon Range" : "" : "Defines the range (in units) that the Monster or NPC will attack the player at." | ||
// poisoned(integer) : "Poisoned (?)" !WARNING! > CAUSES CRASH ON LEVEL LOAD | // poisoned(integer) : "Poisoned (?)" !WARNING! > CAUSES CRASH ON LEVEL LOAD | ||
pumped( | pumped(choices) : "Pumped" : "" : "Not sure what this does. The code suggests it changes how the monster's health works." = | ||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
wander( | ] | ||
fadespeed(integer) : "Fade Speed" : : "Speed at which bodies will fade out at. Higher number means faster fade.." | wander(choices) : "Wander" : "" : "Makes the NPC move randomly around the area. Just wandering around with no goal." = | ||
deathfadedelay(integer) : "Death Fade Delay" : : "Delay (in seconds) at which bodies will begin to fade at." | [ | ||
0 : "No" | |||
1 : "Yes" | |||
] | |||
fadespeed(integer) : "Fade Speed" : "" : "Speed at which bodies will fade out at. Higher number means faster fade.." | |||
deathfadedelay(integer) : "Death Fade Delay" : "" : "Delay (in seconds) at which bodies will begin to fade at." | |||
deathfade(choices) : "Death Fade" : 0 : "Choose if the body fades after death." = | deathfade(choices) : "Death Fade" : 0 : "Choose if the body fades after death." = | ||
[ | [ | ||
Line 648: | Line 788: | ||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
] | ] | ||
@BaseClass base(Targetname, Classtype, Global, Target, RenderFields, Angles) = BaseTank | @BaseClass base(Targetname, Classtype, Global, Target, RenderFields, Angles) = BaseTank | ||
[ | [ | ||
master(target_destination) : "(Team) Master" : : "This version of the master keyvalue is mainly for use with 1009 team settings (game_team_master)." | master(target_destination) : "(Team) Master" : "" : "This version of the master keyvalue is mainly for use with 1009 team settings (game_team_master)." | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
Line 672: | Line 811: | ||
spriteflash(sprite) : "Flash Sprite" : "" : "Sprite that will be shown at the end of the barrel when the gun is fired." | spriteflash(sprite) : "Flash Sprite" : "" : "Sprite that will be shown at the end of the barrel when the gun is fired." | ||
spritescale(string) : "Sprite scale" : "1.0" : "Scale of the sprites that appear at the end of the barrel. 1 is normal, 0.5 is half, etc." | spritescale(string) : "Sprite scale" : "1.0" : "Scale of the sprites that appear at the end of the barrel. 1 is normal, 0.5 is half, etc." | ||
rotatesound(sound) : "Rotate Sound" : | rotatesound(sound) : "Rotate Sound" : : "Choose a sound to use when the turret is moving." | ||
firerate(string) : "Rate of Fire" : "1.0" : "Number of bullets fired per second." | firerate(string) : "Rate of Fire" : "1.0" : "Number of bullets fired per second." | ||
bullet_damage(integer) : "Damage Per Bullet" : 0 : "Default is 0, so if you want it to kill things you must enter something." | bullet_damage(integer) : "Damage Per Bullet" : 0 : "Default is 0, so if you want it to kill things you must enter something." | ||
Line 684: | Line 823: | ||
4 : "Extra-large cone" | 4 : "Extra-large cone" | ||
] | ] | ||
minRange(string) : "Minimum target range" : " | minRange(string) : "Minimum target range" : "" : "Minimum range the target can be at for a non-player-controlled gun to fire." | ||
maxRange(string) : "Maximum target range" : " | maxRange(string) : "Maximum target range" : "" : "Maximum range the target can be at for a non-player-controlled gun to fire." | ||
_minlight(integer) : "Minimum light level" : | _minlight(integer) : "Minimum light level" : "" : "Brush entities only. Sets the minimum light level. Useful for when textures should always appear bright e.g. computer screens or holograms. Default is 0, max 1." | ||
] | ] | ||
Line 695: | Line 834: | ||
[ | [ | ||
0 : "No Sound" | 0 : "No Sound" | ||
1 : " | 1 : "Pneumatic door" : "A door that sounds futuristic." | ||
2 : " | 2 : "Sliding door - Wood" : "Small sliding wood door." | ||
3 : " | 3 : "Sliding door - Metal" : "Smaller, lightweight sliding metal door." | ||
4 : " | 4 : "Sliding door - Metal 2" : "Larger, heavy sliding metal door." | ||
5 : " | 5 : "Normal door - Metal" : "Normal metal door sound." | ||
6 : " | 6 : "Rising water" : "Used for water rising." | ||
7 : " | 7 : "Vault door" : "Large vault door. Sounds similar to 'Pneumatic door' but with more ambient sounds." | ||
8 : " | 8 : "Normal door - Metal 2" : "A slightly more cartoony sounding metal door." | ||
9 : " | 9 : "Normal door - Wood" : "Normal sounding wooden door." | ||
10 : " | 10 : "Normal door - Wood 2" : "Normal sounding wooden door. Slightly longer." | ||
11 : " | 11 : "Electric gate" : "A very garage door like sound." | ||
] | ] | ||
stopsnd(choices) : "Stop Sound" : 0 : "Choose a stop sound for the door. Options are:" = | stopsnd(choices) : "Stop Sound" : 0 : "Choose a stop sound for the door. Options are:" = | ||
[ | [ | ||
0 : "No Sound" | 0 : "No Sound" | ||
1 : " | 1 : "Pneumatic door - Stop" : "A Pneumatic stopping sound." | ||
2 : " | 2 : "Pneumatic door - Stop 2" : "A Pneumatic stopping sound. More steam and reverb." | ||
3 : " | 3 : "Sliding door - Metal" : "Sounds like a normal sliding door, rather than a stop sound." | ||
4 : " | 4 : "Metal clunk" : "A metal clunk sound." | ||
5 : " | 5 : "Metal clunk 2" : "A metal clunk sound. More reverb." | ||
6 : " | 6 : "Clanging Pneumatic" : "A clang, then a Pneumatic stopping sound." | ||
7 : " | 7 : "Clanging Pneumatic 2" : "A clanging, Pneumatic stopping sound. Mixed at roughly the same time." | ||
8 : " | 8 : "Electric gate" : "Sounds like an electric gate locking." | ||
11 : " | 11 : "Electric gate 2" : "Shorter, more muted electric gate locking sound." | ||
] | ] | ||
wait(integer) : "delay before close" : | wait(integer) : "delay before close" : "" : "Time to wait before the door closes after opening (-1 or 0 makes it stay open, or else use >0.1)" | ||
lip(integer) : "Lip" : : "Number of units left after move (the lip value is subtracted from the move distance)." | lip(integer) : "Lip" : "" : "Number of units left after move (the lip value is subtracted from the move distance)." | ||
dmg(integer) : "Damage inflicted when blocked" : | dmg(integer) : "Damage inflicted when blocked" : "" : "Set the damage given to something if it blocks a door." | ||
message(string) : "Message if triggered" : : "Set if the door fires a message. This key might not work." | message(string) : "Message if triggered" : "" : "Set if the door fires a message. This key might not work." | ||
netname(target_destination) : "Fire on Close" : : "Input a entity name that will be triggered when the door is closed. This key might not work." | netname(target_destination) : "Fire on Close" : "" : "Input a entity name that will be triggered when the door is closed. This key might not work." | ||
health(integer) : "Health (shoot open)" : | health(integer) : "Health (shoot open)" : "" : "With a non-zero value here, the door will have to be damaged to this extent to open. This key might not work." | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
Line 738: | Line 877: | ||
[ | [ | ||
0 : "No Sound" | 0 : "No Sound" | ||
1 : " | 1 : "Normal door knob - Wood" : "Normal wooden door. Door knob sound." | ||
2 : " | 2 : "Normal door lock - Wood" : "Normal wooden door. Locked sound." | ||
3 : " | 3 : "Normal door shake - Wood" : "Normal wooden door. Shaking sound" | ||
4 : " | 4 : "Normal door latch - Metal" : "Normal metal door. Latch sound." | ||
5 : " | 5 : "Normal door shake - Metal" : "Normal metal door. Shaking sound." | ||
6 : " | 6 : "Gate shake - Metal 2" : "Metal gate. Shaking sound." | ||
7 : " | 7 : "Normal door lock - Metal" : "Normal metal door. Locked sound." | ||
8 : " | 8 : "Normal door hit - Metal" : "Normal metal door. Hitting sound." | ||
9 : " | 9 : "Pneumatic door lock" : "Lock sound, then a beep." | ||
10 : " | 10 : "Pneumatic door buzz" : "An electirc buzzing sound." | ||
] | ] | ||
unlocked_sound(choices) : "Unlocked Sound" : 0 : "Choose an unlock sound for the door. Options are:" = | unlocked_sound(choices) : "Unlocked Sound" : 0 : "Choose an unlock sound for the door. This is broken for some reason in the game. Options are:" = | ||
[ | [ | ||
0 : "No Sound" | 0 : "No Sound" | ||
1 : " | 1 : "Old button" : "Sounds like an old button." | ||
2 : " | 2 : "Digital - Chirping" : "Digital chirping sound." | ||
3 : " | 3 : "Digital - Chirping 2" : "An alternative digital chirping sound." | ||
4 : " | 4 : "Digital - Old button" : "Deep button press with a digital chirp at the end." | ||
5 : " | 5 : "2-tone with digital chirp" : "A 2-tone alert with a digital chirp sound." | ||
6 : " | 6 : "Digital - Old button 2" : "Digital chirping with a old button press at the end." | ||
7 : " | 7 : "Digital - Old button 3" : "An old button with an alternative digital chirping sound." | ||
8 : " | 8 : "Old button 2" : "Industrial button sound." | ||
9 : " | 9 : "Digital - old button 4" : "Another old button sound with a digital chirping sound." | ||
10 : " | 10 : "Buzzer" : "A buzzer sound." | ||
11 : " | 11 : "Buzzer - Off" : "A buzzer. Has a lower tone to " | ||
13 : "Latchunlocked1 (HL1)" | 13 : "Latchunlocked1 (HL1)" | ||
] | ] | ||
locked_sentence(choices) : "Locked Sentence" : 0 : "Choose a locked sentence for VOX to say for the door. Refer to the notes section of this FGD. Options are:" = | locked_sentence(choices) : "Locked Sentence" : 0 : "Choose a locked sentence for VOX to say for the door. Refer to the notes section of this FGD. Options are:" = | ||
Line 795: | Line 932: | ||
8 : "Maintenance area" | 8 : "Maintenance area" | ||
] | ] | ||
_minlight(integer) : "Minimum light level" : | _minlight(integer) : "Minimum light level" : "" : "Brush entities only. Sets the minimum light level. Useful for when textures should always appear bright e.g. computer screens or holograms. Default is 0, max 1." | ||
skin(choices) : "Contents" : 0 = | skin(choices) : "Contents" : 0 = | ||
[ | [ | ||
Line 806: | Line 943: | ||
-16 : "Ladder" | -16 : "Ladder" | ||
] | ] | ||
explodemagnitude(integer) : "Explosion Magnitude" : : "Not sure what this does." | //explodemagnitude(integer) : "Explosion Magnitude" : : "Not sure what this does." | ||
] | ] | ||
@BaseClass size(-16 -16 -16, 16 16 16) base(Targetname, Angles) = gibshooterbase | @BaseClass size(-16 -16 -16, 16 16 16) base(Targetname, Angles) = gibshooterbase | ||
[ | [ | ||
m_iGibs(integer) : "Number of Gibs" : | m_iGibs(integer) : "Number of Gibs" : "" : "How many gibs to make." | ||
delay(string) : "Delay between shots" : " | delay(string) : "Delay between shots" : "" : "Delay (in seconds) between shots. If 0, all gibs shoot at once." | ||
m_flVelocity(string) : "Gib Velocity" : " | m_flVelocity(string) : "Gib Velocity" : "" : "How fast the gibs are fired." | ||
m_flVariance(string) : "Course Variance" : " | m_flVariance(string) : "Course Variance" : "" : "How much spread is added to the gibs." | ||
m_flGibLife(string) : "Gib Life" : " | m_flGibLife(string) : "Gib Life" : "" : "Time in seconds before the gibs disappear." | ||
bodygroup(integer) : "Bodygroup" : : "allows a specific bodygroup to be selected." | bodygroup(integer) : "Bodygroup" : "" : "allows a specific bodygroup to be selected." | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
Line 843: | Line 980: | ||
12 : "Underwater" | 12 : "Underwater" | ||
] | ] | ||
pattern(string) : "Custom Appearance" : : "Use a string of letters to provide a custom light style. The property allows you to enter a string of letters from a to z, representing brightness. If you entered 'abcdefghihgfedcba' then the light would go from bright to dim and back again and then repeat. Complicating things, to use this feature, you must name the light. However, if you then use a trigger to activate it, then it will behave as a normal light." | pattern(string) : "Custom Appearance" : "" : "Use a string of letters to provide a custom light style. The property allows you to enter a string of letters from a to z, representing brightness. If you entered 'abcdefghihgfedcba' then the light would go from bright to dim and back again and then repeat. Complicating things, to use this feature, you must name the light. However, if you then use a trigger to activate it, then it will behave as a normal light." | ||
_fade(integer) : "Fade (ZHLT Only)" : 1 : "In the simplest words, it customizes light fading. '1.0' for normal fade, larger values for 'shorter' lights." | _fade(integer) : "Fade (ZHLT Only)" : 1 : "In the simplest words, it customizes light fading. '1.0' for normal fade, larger values for 'shorter' lights." | ||
_falloff(Choices) : "Falloff (ZHLT Only)" : 0 : "Changes the way that light is calculated. Inverse square is default. Linear creates collimated lighting, similar to that of a projector." = | _falloff(Choices) : "Falloff (ZHLT Only)" : 0 : "Changes the way that light is calculated. Inverse square is default. Linear creates collimated lighting, similar to that of a projector." = | ||
[ | [ | ||
Line 856: | Line 992: | ||
1 : "Initially dark" : 0 : "If enabled, the entity will need to be triggered to work." | 1 : "Initially dark" : 0 : "If enabled, the entity will need to be triggered to work." | ||
] | ] | ||
] | ] | ||
Line 914: | Line 1,043: | ||
] | ] | ||
rotation(integer) : "Spin amount" : 0 : "This is the amount in degrees the track will turn on its way up / down." | rotation(integer) : "Spin amount" : 0 : "This is the amount in degrees the track will turn on its way up / down." | ||
train(target_destination) : "Train to switch" : "The Name of the train that is using the track." | train(target_destination) : "Train to switch" : "" : "The Name of the train that is using the track." | ||
toptrack(target_destination) : "Top track" : "This is the Name of the last path_corner in the upper track." | toptrack(target_destination) : "Top track" : "" : "This is the Name of the last path_corner in the upper track." | ||
bottomtrack(target_destination) : "Bottom track" : "The Name of the first path_corner in the lower track." | bottomtrack(target_destination) : "Bottom track" : "" : "The Name of the first path_corner in the lower track." | ||
speed(integer) : "Move/Rotate speed" : 0 : "The speed in units/sec that the track platform will move. If the Rotate Only flag is set this will be the speed of rotation only." | speed(integer) : "Move/Rotate speed" : 0 : "The speed in units/sec that the track platform will move. If the Rotate Only flag is set this will be the speed of rotation only." | ||
] | ] | ||
@BaseClass base(Targetname, Master, Target) = Trigger | @BaseClass base(Targetname, Master, Target) = Trigger | ||
[ | [ | ||
delay(string) : "Delay before trigger" : " | delay(string) : "Delay before trigger" : "" : "Time delay before triggering the target" | ||
killtarget(target_destination) : "Kill target" : : "Removes the targeted entity from the game." | killtarget(target_destination) : "Kill target" : "" : "Removes the targeted entity from the game." | ||
netname(target_destination) : "Target | netname(target_destination) : "Target path" : "" : "If a trigger has a netname, that netname will become the target of the triggered object." | ||
querytarget(string) : "Query target" : "" : "Used to query a target. It can be set to a variety of entities. can be set to 'player'." | |||
viewtarget(string) : "View target" : "" : "Define a view target. Commonly used to define a spot that the player must be looking at in order to trigger something. Can be an info_target." | |||
viewconedegrees(integer) : "Viewcone angle" : "" : "Used with 'View target'. Define the angle that the target must be seen from in order to trigger something. Value can be set between '1' > '360'. Use the compass in JACK to get an accurate angle." | |||
healthover(string) : "Health over" : "" : "Used with 'Query target'. Tigger X when health is over Y amount." | |||
healthunder(string) : "Health under" : "" : "Used with 'Query target'. Tigger X when health is under Y amount." | |||
style(integer) : "Style" : 32 : "Not sure what this does." | healthequal(string) : "Health equal" : "" : "Used with 'Query target'. Tigger X when health is equal to Y amount." | ||
sounds(choices) : "Sound style" : | globalstate(string) : "Global state" : "" : "Queries a global state to make sure it is active before triggering something, kinda like a second master key but for the view target." | ||
//style(integer) : "Style" : 32 : "Not sure what this does." | |||
sounds(choices) : "Sound style" : "" : "This use to be the secret sounds found in Quake. It seems to not work anymore." = | |||
[ | [ | ||
0 : "No Sound" | 0 : "No Sound" | ||
] | ] | ||
message(string) : "Message" : : "A message to display when triggered." | message(string) : "Message" : "" : "A message to display when triggered." | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
Line 947: | Line 1,077: | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
@PointClass base(Targetname, Targetx, Angles) size(-16 -16 0, 16 16 72) color(255 0 255) = aiscripted_sequence : "AI Scripted Sequence: Like the scripted_sequence entity, the aiscripted_sequence entity allows you to make a monster entity move to a specific location and/or perform a given animation. Unlike scripted_sequence, aiscripted_sequence completely overrides the targeted monster's AI. Regardless of what you do to the monster, it will follow this sequence." | @PointClass base(Targetname, Targetx, Angles) size(-16 -16 0, 16 16 72) color(255 0 255) flags (angle) = aiscripted_sequence : "AI Scripted Sequence: Like the scripted_sequence entity, the aiscripted_sequence entity allows you to make a monster entity move to a specific location and/or perform a given animation. Unlike scripted_sequence, aiscripted_sequence completely overrides the targeted monster's AI. Regardless of what you do to the monster, it will follow this sequence." | ||
[ | [ | ||
m_iszEntity(target_destination) : "Target Monster" : : "The name of the monster entity that this sequence affects. You can also input a monster type (monster_scientist, for example. But, only one monster will be chosen to follow the sequence.)" | m_iszEntity(target_destination) : "Target Monster" : "" : "The name of the monster entity that this sequence affects. You can also input a monster type (monster_scientist, for example. But, only one monster will be chosen to follow the sequence.)" | ||
m_iszPlay(string) : "Action Animation" : : "The name of the animation that will be performed by Target Monster." | m_iszPlay(string) : "Action Animation" : "" : "The name of the animation that will be performed by Target Monster." | ||
m_flRadius(string) : "Search Radius" : "512.0" : "If you input a monster type into Target Monster, the entity will pick a monster within this radius of the entity to follow the sequence. If none are within the radius, the first monster to enter the radius will follow the sequence." | m_flRadius(string) : "Search Radius" : "512.0" : "If you input a monster type into Target Monster, the entity will pick a monster within this radius of the entity to follow the sequence. If none are within the radius, the first monster to enter the radius will follow the sequence." | ||
m_flRepeat(string) : "Repeat Rate ms" : " | m_flRepeat(string) : "Repeat Rate ms" : "" : "Seems to not work." | ||
m_fMoveTo(Choices) : "Move to Position" : 0 : "Sets how (or if) the monster moves before performing the animation. Choices are:" = | m_fMoveTo(Choices) : "Move to Position" : 0 : "Sets how (or if) the monster moves before performing the animation. Choices are:" = | ||
[ | [ | ||
Line 961: | Line 1,091: | ||
5 : "No - Turn to Face" : "The monster will not move, but will turn to the aiscripted_sequence's angle before performing the animation." | 5 : "No - Turn to Face" : "The monster will not move, but will turn to the aiscripted_sequence's angle before performing the animation." | ||
] | ] | ||
m_iFinishSchedule(Choices) : "AI Schedule when done" : | m_iFinishSchedule(Choices) : "AI Schedule when done" : "" : "Allows you to have the monster's AI schedule change to 'Ambush' when the sequence is done, which means that the monster will be in an attentive state and encounter enemies more actively. This key might not work." = | ||
[ | [ | ||
0 : "Default AI" | 0 : "Default AI" | ||
Line 979: | Line 1,109: | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/AmbientGeneric.spr") base(Targetname, Angles) = ambient_generic : "Universal Ambient" | ||
[ | [ | ||
message(sound) : "Path/filename.wav of WAV" : : "This defines which sound file will be played by the entity. This accepts an input of the form: path/filename.wav (starting from the sound folder). (Example: ambience/drips.wav). The name of a sentence defined in sentences.txt will also be accepted with the form: !SENTENCENAME. (Example: !HG_ALERT1)" | message(sound) : "Path/filename.wav of WAV" : "" : "This defines which sound file will be played by the entity. This accepts an input of the form: path/filename.wav (starting from the sound folder). (Example: ambience/drips.wav). The name of a sentence defined in sentences.txt will also be accepted with the form: !SENTENCENAME. (Example: !HG_ALERT1)" | ||
health(integer) : "Volume (10 = loudest)" : 10 : "Sets the volume of the sound. Scales from 0 (completely silent) to 10 (maximum, default). (If using dynamics attributes below, this is the maximum volume the sound will reach)." | health(integer) : "Volume (10 = loudest)" : 10 : "Sets the volume of the sound. Scales from 0 (completely silent) to 10 (maximum, default). (If using dynamics attributes below, this is the maximum volume the sound will reach)." | ||
preset(choices) :"Dynamic Presets" : 0 : "Sets the ambient_generic to use a predefined set of dynamics. If set to anything other than :None:, this will override every other attribute apart from Name and WAV Name." = | preset(choices) :"Dynamic Presets" : 0 : "Sets the ambient_generic to use a predefined set of dynamics. If set to anything other than :None:, this will override every other attribute apart from Name and WAV Name." = | ||
Line 1,014: | Line 1,144: | ||
27 : "Haunted" : "Slow switch between normal and slow speed. Quick fade out." | 27 : "Haunted" : "Slow switch between normal and slow speed. Quick fade out." | ||
] | ] | ||
volstart(integer) : "Start Volume" : | volstart(integer) : "Start Volume" : "" : "Sets the volume that the sound should start at when fading in, and that it should stop at when fading out. Scales from 0 (completely silent) to 10 (maximum). (Should be lower than Volume.)." | ||
fadein(integer) : "Fade in time (0-100)" : | fadein(integer) : "Fade in time (0-100)" : "" : "Sets how long the sound should take to fade in from Start Volume to Volume. Scales from 0 (instant) to 100 (very long)." | ||
fadeout(integer) : "Fade out time (0-100)" : | fadeout(integer) : "Fade out time (0-100)" : "" : "Sets how long the sound should take to fade out from Volume to Start Volume. Scales from 0 (instant) to 100 (very long)." | ||
pitch(integer) : "Pitch (> 100 = higher)" : | pitch(integer) : "Pitch (> 100 = higher)" : "" : "Sets the pitch of the sound. Scales from 100 (default), with lower values meaning lower pitch and higher values meaning higher pitch." | ||
pitchstart(integer) : "Start Pitch" : | pitchstart(integer) : "Start Pitch" : "" : "Sets the pitch that the sound should start at when spinning up, and that it should stop at when spinning down. Scales from 100 (default), with lower values meaning lower pitch and higher values meaning higher pitch. (Should be lower than Pitch.)" | ||
spinup(integer) : "Spin up time (0-100)" : | spinup(integer) : "Spin up time (0-100)" : "" : "Sets how long the sound should take to spin up from Start Pitch to Pitch. Scales from 0 (instant) to 100 (very long)." | ||
spindown(integer) : "Spin down time (0-100)" : | spindown(integer) : "Spin down time (0-100)" : "" : "Sets how long the sound should take to spin down from Pitch to Start Pitch. Scales from 0 (instant) to 100 (very long)." | ||
lfotype(choices) : "LFO type" : : "Allows the sound to have certain oscillating effects applied to its pitch." = | lfotype(choices) : "LFO type" : 0 : "Allows the sound to have certain oscillating effects applied to its pitch." = | ||
[ | [ | ||
0 : "Off" : "Disables the LFO effects." | 0 : "Off" : "Disables the LFO effects." | ||
Line 1,028: | Line 1,158: | ||
3 : "RND" : "Randomly switches pitches." | 3 : "RND" : "Randomly switches pitches." | ||
] | ] | ||
lforate(integer) : "LFO rate (0-1000)" : | lforate(integer) : "LFO rate (0-1000)" : "" : "Sets how quickly the pitch changes with the LFO effects. Scales between 0 (does not change) and 1000 (changes extremely quickly)." | ||
lfomodpitch(integer) : "LFO mod pitch (0-100)" : | lfomodpitch(integer) : "LFO mod pitch (0-100)" : "" : "Sets how much the pitch should change with the LFO effects. Scales between 0 (does not change) and 100 (very large changes)." | ||
lfomodvol(integer) : "LFO mod vol (0-100)" : | lfomodvol(integer) : "LFO mod vol (0-100)" : "" : "Sets how much the volume should change with the LFO effects. Seems to coincide with lower pitches. Scales between 0 (does not change) and 100 (silent)." | ||
cspinup(integer) : "Incremental spinup count" : | cspinup(integer) : "Incremental spinup count" : "" : "Sets how many times the ambient_generic can be triggered to have the pitch spin up on top of the pitch it was already playing at. Setting this to a value other than 0 will disable toggling the sound, and will prevent the sound from being turned off even it has been triggered that many times." | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
Line 1,047: | Line 1,177: | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
@ | @PointClass base(RenderFields, Angles) studio("models/w_338magnum.mdl") = ammo_338magnum : ".338 Lapua Magnum Ammo: For the AWP." | ||
[ | [ | ||
numclips( | numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | ||
[ | |||
1 : "1 Magazine (10 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines (Fill AWP)" | |||
] | |||
] | ] | ||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_357sig.mdl") = ammo_357sig : ".357 SIG Ammo: For the P228." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (13 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines" | |||
4 : "4 Magazines (Fill P-228)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_45acp.mdl") = ammo_45acp : ".45 ACP Ammo: For the USP, UMP45 and MAC-10." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (12 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines" | |||
4 : "4 Magazines (Fill USP45)" | |||
5 : "5 Magazines" | |||
6 : "6 Magazines" | |||
7 : "7 Magazines" | |||
8 : "8 Magazines (Fill Mac-10)" | |||
9 : "9 Magazines (Fill UMP 45)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_50ae.mdl") = ammo_50ae : ".50 Action Express Ammo: For the Desert Eagle." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (7 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines" | |||
4 : "4 Magazines" | |||
5 : "5 Magazines (Fill Desert Eagle)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_556nato.mdl") = ammo_556nato : "5.56mm NATO Ammo: For the AUG, Famas, Galil, SG550, SG552 and M4A1." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (30 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines (Fill SG552, M4A1, Aug and SG550)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_556natobox.mdl") = ammo_556natobox : "5.56mm NATO Box Ammo: For the M249." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (30 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines" | |||
4 : "4 Magazines" | |||
5 : "5 Magazines" | |||
6 : "6 Magazines" | |||
7 : "7 Magazines (Fill FN M249 Para)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_762natobox.mdl") = ammo_762natobox : "7.62 NATO Box Ammo: For the M60." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (60 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines" | |||
4 : "4 Magazines (Fill M60)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_57mm.mdl") = ammo_57mm : "5.7mm Ammo: For the P90 and Five-Seven." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (50 Bullets Per Magazine)" | |||
2 : "2 Magazines (Fill Five-Seven & P90)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_762nato.mdl") = ammo_762nato : "7.62mm NATO Ammo: For the AK47, Scout, and G3SG1." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (30 Bullets Per Magazine)" | |||
2 : "2 Magazines (Fill Scout & G3/S-G1)" | |||
3 : "3 Magazines (Fill AK-47)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_9mmclip.mdl") = ammo_9mm : "9mm Parabellum Ammo: For the Glock 18, Elites, MP5 and TMP." | ||
[ | |||
numclips(choices) : "Number of magazines" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Magazine (30 Bullets Per Magazine)" | |||
2 : "2 Magazines" | |||
3 : "3 Magazines (Fill Glock 18)" | |||
4 : "4 Magazines (Fill Elites, MP5 & TMP)" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_shotbox.mdl") = ammo_buckshot : "12 Gauge Ammo: For the M3 and XM1014." | ||
[ | |||
numclips(choices) : "Number of shells" : 1 : "This defines the number of magazines in the ammo entity. If the value is more than 1, it will change the model(Example: 9mmBig.mdl)." = | |||
[ | |||
1 : "1 Box (8 Shells Per Magazine)" | |||
2 : "2 Boxes" | |||
3 : "3 Boxes" | |||
4 : "4 Boxes (Fill Benelli M3, XM1014)" | |||
] | |||
] | |||
@PointClass base(Ammo) studio("models/ | @PointClass base(RenderFields, Angles) studio("models/w_weaponbox.mdl") = ammo_generic : "Generic Ammo: Every ammo type at max is given." [] | ||
@PointClass size(-16 -16 0, 16 16 64) color(0 128 0) studio("models/w_weaponbox.mdl") = weaponbox : "Ammo Container: Can specify a specific amount of ammo to give the player. 1 = 1 unit of ammo." | |||
[ | |||
357SIG : "357SIG Amount" : "" : "Amount of 357SIG to give the player." | |||
9mm : "9mm Amount" : "" : "Amount of 9mm to give the player." | |||
45acp : "45acp Amount" : "" : "Amount of 45acp to give the player." | |||
50AE : "50AE Amount" : "" : "Amount of 50AE to give the player." | |||
57mm : "57mm Amount" : "" : "Amount of 57mm to give the player." | |||
556Nato : "556Nato Amount" : "" : "Amount of 556Nato to give the player." | |||
762Nato : "762Nato Amount" : "" : "Amount of 762Nato to give the player." | |||
556NatoBox : "556NatoBox Amount" : "" : "Amount of 556NatoBox to give the player." | |||
762NatoBox : "762NatoBox Amount" : "" : "Amount of 762NatoBox to give the player." | |||
338Magnum : "338Magnum Amount" : "" : "Amount of 338Magnum to give the player." | |||
buckshot : "Buckshot Amount" : "" : "Amount of buckshot to give the player." | |||
bomb : "Bomb Amount" : "" : "Amount of bombs to give the player." | |||
skin(integer) : "Skin" : "" : "Input the value for the skin to use. (Use SOLOKILLERS HLMV for the value)" | |||
body(choices) : "Body" : "1" : "Input the value for the bodygroup to use. (Use SOLOKILLERS HLMV for the value)" = | |||
[ | |||
1 : "Bomb pack" | |||
2 : "Supply pack" | |||
] | |||
] | |||
@PointClass base( | @PointClass base(RenderFields, Angles) studio("models/w_357sig.mdl") = ammo_bomb : "RC Bomb ammo. Gives 5 bombs. Functions like any other ammo, only issue is the spawned model is a 9mm box. Best to use a ent setup with game_player_equip." [] | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
Line 1,093: | Line 1,345: | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
@PointClass base(Targetname, Angles, RenderFields | @PointClass iconsprite("sprites/Hammer/Cycler.spr") base(Targetname, Angles, RenderFields) = cycler : "Monster Cycler: The cycler entity is a model viewer of sorts. It places a model within the map which, when attacked, will cycle its animation. Given the way this entity behaves, there is little practical use for this entity beyond viewing animations (for which there are programs that are far more convenient)." | ||
[ | [ | ||
model(studio) : "Model" : : "This defines which model file will be displayed by the entity." | model(studio) : "Model" : : "This defines which model file will be displayed by the entity." | ||
Line 1,102: | Line 1,354: | ||
] | ] | ||
@PointClass base(Targetname, Angles, RenderFields | @PointClass iconsprite("sprites/Hammer/CyclerSprite.spr") base(Targetname, Angles, RenderFields) = cycler_sprite : "Sprite Cycler: Kinda of obsolete in CS:CZDS due to item_generic. The cycler_sprite entity is a sprite viewer of sorts. It places a sprite within the map which, when attacked, will step through its animation. Although it seems strange, this entity is one of the better entities for placing a decorative model into a map. It will not stop players nor bullets. Simply place a model into the Sprite attribute." | ||
[ | [ | ||
model(studio) : "Model / Sprite" : "This defines which sprite/model file will be displayed by the entity." | model(studio) : "Model / Sprite" : : "This defines which sprite/model file will be displayed by the entity." | ||
framerate(string) : "Framerate(SPRITE ONLY)" : "1.0" : "Sets how many frames the sprite will automatically step through per second." | framerate(string) : "Framerate(SPRITE ONLY)" : "1.0" : "Sets how many frames the sprite will automatically step through per second." | ||
sequence(integer) : "Animation # (MODELS ONLY)" : 0 : "Sets the animation the model should start in. Setting this to anything other than 0 seems to place the cycler into its triggered mode." | sequence(integer) : "Animation # (MODELS ONLY)" : 0 : "Sets the animation the model should start in. Setting this to anything other than 0 seems to place the cycler into its triggered mode." | ||
Line 1,110: | Line 1,362: | ||
] | ] | ||
@PointClass base(Targetname) = cycler_weapon : "cycler_weapon: The cycler entity is a weapon model viewer of sorts. It places a model within the map that acts as a weapon pickup. When picked up, the model will be placed in front of the player as a viewmodel. Secondary attack will cycle animations of the model, while primary attack will restart the current animation." | @PointClass iconsprite("sprites/Hammer/CyclerWeapon.spr") base(Targetname) = cycler_weapon : "cycler_weapon: The cycler entity is a weapon model viewer of sorts. It places a model within the map that acts as a weapon pickup. When picked up, the model will be placed in front of the player as a viewmodel. Secondary attack will cycle animations of the model, while primary attack will restart the current animation." | ||
[ | [ | ||
model(studio) : "Model" : "This defines which model file will be used by the entity." | model(studio) : "Model" : : "This defines which model file will be used by the entity." | ||
] | ] | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/CyclerWreckage.spr") base(Targetname, Angles, RenderFxChoices) size(-4 -4 -4, 4 4 4) = cycler_wreckage : "Wreckage" | ||
[ | [ | ||
rendermode(choices) : "Render Mode" : 2 : "Controls the type of rendering that is used for an object. Options are:" = | rendermode(choices) : "Render Mode" : 2 : "Controls the type of rendering that is used for an object. Options are:" = | ||
Line 1,142: | Line 1,394: | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
@PointClass iconsprite("sprites/Hammer/EnvSnow.spr") base(Targetname, RenderFields) size(-16 -16 -16, 16 16 16) = env_snow : "env_snow: Point class version of the entity of the same name." | |||
// | |||
[ | [ | ||
Radius(integer) : "Radius" : 256 : "If the beam has undefined start/end points, this attribute defines how far away the beam can choose to use as its start/end points." | spawnflags(flags) = | ||
[ | |||
1 : "Start On" : 0 : "If enabled, This entity will start at level load." | |||
] | |||
] | |||
@PointClass iconsprite("sprites/Hammer/EnvRain.spr") base(Targetname, RenderFields) size(-16 -16 -16, 16 16 16) = env_rain : "env_rain: Point class version of the entity of the same name." [] | |||
@PointClass iconsprite("sprites/Hammer/EnvBeam.spr") base(Targetname, RenderFields) size(-16 -16 -16, 16 16 16) = test_effect : "test_effect: A strange sprite based entity that looks like a HL1 vortigaunt spawn." [] | |||
@PointClass iconsprite("sprites/Hammer/EnvBeam.spr") base(Targetname, BeamStartEnd, RenderFields) size(-16 -16 -16, 16 16 16) = env_beam : "Energy Beam Effect: The env_beam entity creates a line composed of a loop of sprites with various effects. It is often used to create lasers or electricity." | |||
[ | |||
Radius(integer) : "Radius" : 256 : "If the beam has undefined start/end points, this attribute defines how far away the beam can choose to use as its start/end points." | |||
life(string) : "Life (0 = infinite)" : "0.0" : "Sets how many seconds the beam will stay on before deactivating. It will reactivate through Strike again time. Setting this to 0 will make the beam never deactivate automatically." | life(string) : "Life (0 = infinite)" : "0.0" : "Sets how many seconds the beam will stay on before deactivating. It will reactivate through Strike again time. Setting this to 0 will make the beam never deactivate automatically." | ||
BoltWidth(integer) : "Width of beam (pixels*0.1 0-255)" : 20 : "Sets the width of the beam. Measured in tenths of a unit. This attribute works like a radius; the beam will actually be twice as wide as the defined value." | BoltWidth(integer) : "Width of beam (pixels*0.1 0-255)" : 20 : "Sets the width of the beam. Measured in tenths of a unit. This attribute works like a radius; the beam will actually be twice as wide as the defined value." | ||
Line 1,178: | Line 1,432: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvBeverage.spr") base(Targetname, Angles) size(-4 -4 -4, 4 4 4) = env_beverage : "Beverage Dispenser: When triggered, spawns a soft drink can that will give the player 1 health when picked up. The spawn will make a clunking sound." | ||
[ | [ | ||
health(integer) : "Capacity" : 10 : "The number of times the entity can be triggered. Once this number of cans has been spawned, further triggers will do nothing." | health(integer) : "Capacity" : 10 : "The number of times the entity can be triggered. Once this number of cans has been spawned, further triggers will do nothing." | ||
Line 1,193: | Line 1,447: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvBlood.spr") base(Targetname, Angles, RenderFields) size(-16 -16 -16, 16 16 16) color(255 0 0) = env_blood : "Blood Effects: When triggered, an env_blood entity will spawn a spray of blood, similar to the blood effect generated when one attacks an enemy." | ||
[ | [ | ||
color(choices) : "Blood Color" : | color(choices) : "Blood Color" : "" : "Sets the colour of the blood." = | ||
[ | [ | ||
"" : "Grey" | |||
1 : "Yellow (Alien)" | 1 : "Yellow (Alien)" | ||
2 : "Red" | 2 : "Red" | ||
Line 1,222: | Line 1,476: | ||
] | ] | ||
@PointClass iconsprite("sprites/Hammer/EnvExplosion.spr") base(Targetname) = env_explosion : "Explosion" | |||
@PointClass | |||
[ | [ | ||
iMagnitude(Integer) : "Magnitude (iMagnitude)" : 0 : "Sets the power of the explosion. Smaller values are less powerful, larger values are more powerful." | iMagnitude(Integer) : "Magnitude (iMagnitude)" : 0 : "Sets the power of the explosion. Smaller values are less powerful, larger values are more powerful." | ||
Line 1,235: | Line 1,488: | ||
32 : "No Sparks" : 0 : "If enabled, the explosion will have no sparks." | 32 : "No Sparks" : 0 : "If enabled, the explosion will have no sparks." | ||
] | ] | ||
firesprite(sprite) : "Fire sprite" : "The fire ball sprite that will appear when the env_explosion is triggered." | firesprite(sprite) : "Fire sprite" : : "The fire ball sprite that will appear when the env_explosion is triggered." | ||
smokesprite(sprite) : " | smokesprite(sprite) : "Smoke sprite" : : "The smoke ball sprite that will appear after the env_explosion is triggered." | ||
spritescale(integer) : "Sprite scale" : "Set the size that the sprite is rendered at." | spritescale(integer) : "Sprite scale" : 1.0 : "Set the size that the sprite is rendered at." | ||
poisongas(choices) : "Poison explosion | poisongas(choices) : "Poison explosion" : "" : "Choose if poison gas FX replaces the explosion(Poison gas has no damage.)" = | ||
[ | [ | ||
"" : "No" | |||
1 : " | 1 : "Yes" | ||
] | ] | ||
nosound(choices) : "No sound" : "TESTING: Turns the explosion sound off." = | nosound(choices) : "No sound" : "" : "TESTING: Turns the explosion sound off." = | ||
[ | [ | ||
"" : "No" | |||
1 : " | 1 : "Yes" | ||
] | ] | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvFade.spr") base(Targetname) = env_fade : "Screen Fade: The env_fade entity, when triggered, gradually covers the screen with a single-colour overlay. Typically used for fading a scene in or out." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
Line 1,264: | Line 1,517: | ||
] | ] | ||
@PointClass base(Targetname) = env_missionfailure : "Failure Management: Will cause objective failure and checkpoint reload when triggered. In most cases, this is coupled with a trigger_sequence." | @PointClass iconsprite("sprites/Hammer/EnvMissionFail.spr") base(Targetname) = env_missionfailure : "Failure Management: Will cause objective failure and checkpoint reload when triggered. In most cases, this is coupled with a trigger_sequence." | ||
[ | [ | ||
message(string) : "Message in MAPNAME.seq" : : "Name the message that should be linked from 'czeror_english' or .SEQ. For example: '#aidev_failure01'." | message(string) : "Message in MAPNAME.seq" : : "Name the message that should be linked from 'czeror_english' or .SEQ. For example: '#aidev_failure01'." | ||
Line 1,279: | Line 1,532: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvFog.spr") base(Targetname) = env_fog : "Global Fog Properties" | ||
[ | [ | ||
rendercolor(color255) : "Fog color (R G B)" : "128 128 128" : "Fog colour." | rendercolor(color255) : "Fog color (R G B)" : "128 128 128" : "Fog colour." | ||
Line 1,291: | Line 1,544: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvFunnel.spr") base(Targetname) = env_funnel : "Large Portal Funnel: When triggered, this entity produces a cone of sprites that get sucked into a point, as seen in the Half-Life disaster sequence. Suffers from limited options." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
Line 1,299: | Line 1,552: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvGlobal.spr") base(Targetname) = env_global : "Global State: The env_global entity provides a way to store global variables — that is, values that can be retrieved and used across level changes. For example, you could use an env_global to have a switch in one level unlock a door in another." | ||
[ | [ | ||
globalstate(string) : "Global State to Set" : : "The name of the global variable you want to set the value of. This name is what you need to reference in other entities to be able to read the value." | globalstate(string) : "Global State to Set" : : "The name of the global variable you want to set the value of. This name is what you need to reference in other entities to be able to read the value." | ||
Line 1,321: | Line 1,574: | ||
] | ] | ||
@PointClass sprite() base(Targetname, RenderFields, Angles) size(-4 -4 -4, 4 4 4) color(30 100 0) = env_glow : "Light Glow/Haze: The env_glow entity is much like the env_sprite in that it places a sprite within the map. The only differences seem to be that the env_glow does not animate its sprite, it cannot be triggered, and that it lacks some of the options that the env_sprite has." | @PointClass iconsprite("sprites/Hammer/EnvSprite.spr") sprite() base(Targetname, RenderFields, Angles) size(-4 -4 -4, 4 4 4) color(30 100 0) = env_glow : "Light Glow/Haze: The env_glow entity is much like the env_sprite in that it places a sprite within the map. The only differences seem to be that the env_glow does not animate its sprite, it cannot be triggered, and that it lacks some of the options that the env_sprite has." | ||
[ | [ | ||
model(sprite) : "Sprite" : "sprites/ | model(sprite) : "Sprite" : "sprites/3dmflaora.spr" : "Defines which sprite file will be displayed by the entity." | ||
scale(string) : "Sprite Scale" : "1.0" : "Sets the scale of the sprite, in the form of a size multiplier." | scale(string) : "Sprite Scale" : "1.0" : "Sets the scale of the sprite, in the form of a size multiplier." | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvLaser.spr") base(Targetname, RenderFxChoices, Angles) = env_laser : "Laser Beam Effect: The env_laser entity creates a damaging line composed of a loop of sprites with various effects. It is a derivative of the env_beam entity." | ||
[ | [ | ||
LaserTarget(target_destination) : "Target of Laser" : "Sets the entity that marks the end of the laser. The laser will start at the env_laser entity and end at the entity named here." | LaserTarget(target_destination) : "Target of Laser" : "Sets the entity that marks the end of the laser. The laser will start at the env_laser entity and end at the entity named here." | ||
Line 1,348: | Line 1,601: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvLiveAmmoShooter.spr") base(Targetname, Target, Angles) = env_liveammoshooter : "Live Ammo Shooter: Shoots active explosives at its target. This one has to have a 'target' otherwise it does nothing. Very amusing to use the type 'player' as a target." | ||
[ | [ | ||
type(choices) : "Ammo Type" : "Choose the type of ammo that this entity fires. Options are:" = | type(choices) : "Ammo Type" : "" : "Choose the type of ammo that this entity fires. Options are:" = | ||
[ | [ | ||
"hegrenade" : "HE Grenade" | "hegrenade" : "HE Grenade" | ||
Line 1,359: | Line 1,612: | ||
] | ] | ||
//shootsounds(integer) : "Shoot sound" : 0 : "Sound the entity makes when triggered." | //shootsounds(integer) : "Shoot sound" : 0 : "Sound the entity makes when triggered." | ||
velmod(string) : "Velocity | velmod(string) : "Velocity" : "1.0" : "Changes the velocity of the explosive being fired." | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
Line 1,366: | Line 1,619: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvMessage.spr") base(Targetname, Target) = env_message : "HUD Text Message: The env_message entity allows you to display predefined text messages on the screen. The messages it can display are defined in the titles.txt file. Due to the titles.txt file being a generic file (not map specific), editing this file is not recommended unless you are creating a custom mod. You should use a game_text entity if you require custom messages outside of a custom mod." | ||
[ | [ | ||
message(string) : "Message Name" : "This should specify the name of the message that will be displayed, as defined in the titles.txt file." | message(string) : "Message Name" : "" : "This should specify the name of the message that will be displayed, as defined in the titles.txt file." | ||
messagesound(sound) : "Sound effect" : "This allows you to specify a sound that should play when the message is shown to the player." | messagesound(sound) : "Sound effect" : : "This allows you to specify a sound that should play when the message is shown to the player." | ||
messagevolume(integer) : "Volume 0-10" : 10 : "Sets the volume of the sound. Scales from 0 (completely silent) to 10 (maximum, default)." | messagevolume(integer) : "Volume 0-10" : 10 : "Sets the volume of the sound. Scales from 0 (completely silent) to 10 (maximum, default)." | ||
messageattenuation(Choices) : "Sound Radius" : 0 : "Sets how far away from the env_message entity the sound can be heard." = | messageattenuation(Choices) : "Sound Radius" : 0 : "Sets how far away from the env_message entity the sound can be heard." = | ||
Line 1,387: | Line 1,640: | ||
@SolidClass base(Targetname, RenderFields) = env_rain : "Rain Entity"[] | @SolidClass base(Targetname, RenderFields) = env_rain : "Rain Entity"[] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvRender.spr") base(Targetname, RenderFields, Targetx, Angles) = env_render : "Render Controls: This entity can be used to alter render properties on the fly. Among other uses, this can allow you to create the illusion of complex-moving objects that would be impossible to create with a single entity." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
Line 1,405: | Line 1,658: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvShake.spr") base(Targetname) = env_shake : "Screen Shake: The env_shake entity creates a shake effect that jostles the player's view around. Used to emphasize explosions, quakes, large footsteps and the like." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
Line 1,417: | Line 1,670: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvShooter.spr") base(RenderFields ,gibshooterbase) size(-16 -16 -16, 16 16 16) = env_shooter : "Model Shooter: The env_shooter entity, when triggered, shoots out a number of models or sprites, often used to create a spilling or bursting effect." | ||
[ | [ | ||
shootmodel(studio) : "Model" : "" : "This defines which model or sprite file will be shot by the entity." | shootmodel(studio) : "Model" : "" : "This defines which model or sprite file will be shot by the entity." | ||
Line 1,433: | Line 1,686: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvSmoker.spr") base(Targetname) size(-4 -4 -4, 4 4 4) color(30 100 0) = env_smoker : "Smoke: Emits a particle smoke trail similar to the one produced by smoke grenades." | ||
[ | [ | ||
health(integer) : "Strength" : 1 : "Defines how long the entity will emit smoke (-1 for an infinite smoke trail)" | health(integer) : "Strength" : 1 : "Defines how long the entity will emit smoke (-1 for an infinite smoke trail)" | ||
Line 1,447: | Line 1,700: | ||
] | ] | ||
@PointClass iconsprite("sprites/ | @PointClass iconsprite("sprites/Hammer/EnvSound.spr") = env_sound : "DSP Sound: The env_sound entity is a trigger of sorts that alters the processing done on sounds heard by the player. For example, the env_sound can alter sounds to have a strong echo as though the player is in a large enclosed area. This entity is used to assist in creating a particular atmosphere in an area. Don't forget that the sound style, once applied, is permanent until another env_sound changes it." | ||
[ | [ | ||
radius(integer) : "Radius" : 128 : "Sets the radius around the area to use as the trigger area. When the player enters this radius, the sound style will be turned on until it is altered by another env_sound." | radius(integer) : "Radius" : 128 : "Sets the radius around the area to use as the trigger area. When the player enters this radius, the sound style will be turned on until it is altered by another env_sound." | ||
Line 1,484: | Line 1,737: | ||
] | ] | ||
@PointClass base(Targetname, Angles) size(-16 -16 -16, 16 16 16 | @PointClass iconsprite("sprites/Hammer/EnvSpark.spr") base(Targetname, Angles) size(-16 -16 -16, 16 16 16) = env_spark : "Spark: The env_spark entity produces an electrical spark effect, consisting of an intermittent sprite, a small spray of particles and a sound effect." | ||
[ | [ | ||
MaxDelay(string) : "Max Delay" : "0.0" : "Sets the maximum delay in seconds between sparks." | MaxDelay(string) : "Max Delay" : "0.0" : "Sets the maximum delay in seconds between sparks." | ||
Line 1,494: | Line 1,747: | ||
] | ] | ||
@PointClass sprite() base(Targetname, Angles, RenderFields) size(-4 -4 -4, 4 4 4) = env_sprite : "Sprite Effect: The env_sprite entity places a sprite within the map." | @PointClass iconsprite("sprites/Hammer/EnvSprite.spr") sprite() base(Targetname, Angles, RenderFields) size(-4 -4 -4, 4 4 4) = env_sprite : "Sprite Effect: The env_sprite entity places a sprite within the map." | ||
[ | [ | ||
framerate(string) : "Framerate" : " | framerate(string) : "Framerate" : "1.0" : "Sets how many frames per second the sprite will animate at." | ||
model(sprite) : "Sprite Name" : : "This defines which sprite file will be displayed by the entity." | model(sprite) : "Sprite Name" : "sprites/3dmflared.spr" : "This defines which sprite file will be displayed by the entity." | ||
scale(string) : "Scale" : " | scale(string) : "Scale" : "1.0" : "Sets the scale of the sprite, in the form of a size multiplier." | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
Line 1,510: | Line 1,763: | ||
// FUNC ENTITIES | // FUNC ENTITIES | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
@SolidClass base(Target, RenderFields) = func_model_brush : "Renders whatever model that it targets infront of the skybox. The model does NOT have to be in the skybox to render but the ORIGIN of the model does, otherwise it won't receive correct lighting. Super useful for building the illusion of a bigger world out side of the map. CASTLE: Could be a quick vis fix for FPS too." [] | |||
@BaseClass base () = Breakable | @BaseClass base () = Breakable | ||
[ | [ | ||
gibentityvelocity(integer) : "Gib velocity" | //gibentityvelocity(integer) : "Gib velocity" : "" : "Not sure what this does." | ||
delay(string) : "Delay before fire" : "0.0" : "Delay before Target on Break is triggered after being broken." | delay(string) : "Delay before fire" : "0.0" : "Delay before Target on Break is triggered after being broken." | ||
health(integer) : "Durability" : : "The amount of damage the entity will take before breaking." | health(integer) : "Durability" : 15 : "The amount of damage the entity will take before breaking." | ||
material(choices) : "Material" : : "The type of material that a func_breakable or func_pushable should act as. Options are:" = | material(choices) : "Material" : "" : "The type of material that a func_breakable or func_pushable should act as. Options are:" = | ||
[ | [ | ||
0: "Glass" | 0: "Glass" | ||
Line 1,528: | Line 1,782: | ||
7: "Bulletproof glass" | 7: "Bulletproof glass" | ||
8: "Stone" | 8: "Stone" | ||
9: "None" | |||
10: "Vine" | 10: "Vine" | ||
11: "Last material" | |||
] | ] | ||
explosion(choices) : "Direction of gib emission" : 0 : "Direction the gibs will go on break." = | explosion(choices) : "Direction of gib emission" : 0 : "Direction the gibs will go on break." = | ||
Line 1,535: | Line 1,791: | ||
directed : "Attack direction" | directed : "Attack direction" | ||
] | ] | ||
gibmodel( | gibmodel(choices) : "Custom gib model" : "" : "Model to use for gibs (overrides default specified by Material Type)." = | ||
[ | [ | ||
" | "models/gibs_null.mdl" : "No model" : "Null. Nothing. Zip. Nill." | ||
"models/gibs_woodplank.mdl" : "Wooden Planks" : "Wooden Plank. For all your wood needs." | |||
"models/gibs_vent1.mdl" : "Big Vent" : "Big Vent. Looks kinda new." | |||
"models/gibs_vent2.mdl" : "Rusty Vent" : "Rusty Vent. Nothing more, nothing less." | |||
"models/gibs_vent3.mdl" : "Office Vent" : "Office Vent. The kind you'd find in your local office job." | |||
"models/gibs_wallbrown.mdl" : "Brown Wall" : "Brown Brick wall." | |||
"models/gibs_wallgrey.mdl" : "Grey Wall" : "Grey Concrete wall. Less brick, more concrete." | |||
"models/gibs_wallorange.mdl" : "Orange Wall" : "Orange Brick Wall. Brown Bricks with orange insides." | |||
"models/gibs_twig.mdl" : "Twigs" : "Twig and Leaves. Cutting down a tree? Use this one." | |||
"models/gibs_stairsmetal.mdl" : "Metal Stairs" : "Metal Stairs. Specific use case, but handy to have." | |||
"models/gibs_anime.mdl" : "Manga" : "Manga. Straight up Japanese manga." | |||
"models/gibs_brickred.mdl" : "Red Brick" : "Red Brick wall. Pretty nice Brick wall." | |||
"models/gibs_brickyellow.mdl" : "Yellow Brick" : "Yellow Brick. Looks more like a sandstone wall texture." | |||
"models/gibs_bars.mdl" : "Metal Bars" : "Metal Bars. Not much to say for this one." | |||
"models/gibs_food.mdl" : "Food" : "Food. That is all it is." | |||
"models/gibs_crate.mdl" : "Crate" : "Wooden Crate. Uses a generic crate texture, looks nice." | |||
"models/gibs_barrel.mdl" : "Explosive Barrel" : "Explosive Barrel. Good for cool entity set ups with a boom element." | |||
] | |||
spawnobject(choices) : "Spawn when broken" : "" : "Used by func_breakable and func_pushable. Determines what item is spawned when the entity is broken. Options are:" = | |||
[ | |||
"": "None, No drop" : "Nothing." | |||
"weapon_knife" : "Knife" : "Spawn a Knife." | "weapon_knife" : "Knife" : "Spawn a Knife." | ||
"weapon_p228" : "P228" : "Spawn a P228 pistol." | "weapon_p228" : "P228" : "Spawn a P228 pistol." | ||
Line 1,588: | Line 1,863: | ||
"ammo_buckshot" : "12 Gauge Ammo" : "Spawn 12 Gauge ammo. For the M3 and XM1014." | "ammo_buckshot" : "12 Gauge Ammo" : "Spawn 12 Gauge ammo. For the M3 and XM1014." | ||
"ammo_generic" : "Generic Ammo" : "Spawn Generic ammo. Every ammo type at max is given." | "ammo_generic" : "Generic Ammo" : "Spawn Generic ammo. Every ammo type at max is given." | ||
"item_armor" : "Armor Vest" : "Spawn a normal armor vest. 100 AP on pickup." | |||
"item_battery" : "Moddable Armor" : "Spawn a moddable armor pickup. Set to whatever the battery is set to in skill.cfg." | |||
"item_healthkit" : "Normal Healthkit" : "Spawn a normal healthkit. 50 HP on pickup." | |||
"item_healthkitold" : "Moddable Healthkit" : "Spawn a moddable healthkit. Set to whatever the Healthkit is set to in skill.cfg." | |||
"item_antidote" : "Antidote" : "Spawn an antidote. Leftover code from HL1. Not sure if it functions." | |||
"item_longjump" : "Long Jump Module" : "Spawn a Long Jump Module. Functions the same way as HL1." | |||
] | ] | ||
explodemagnitude(integer) : "Explosion range" : : "This will determine the size of the explosion that occurs when the brush breaks." | explodemagnitude(integer) : "Explosion range" : "" : "This will determine the size of the explosion that occurs when the brush breaks." | ||
explodespritescale(integer) : "Explosion sprite scale" : : "Size of the sprite that spawns form the explosion range." | explodespritescale(integer) : "Explosion sprite scale" : "" : "Size of the sprite that spawns form the explosion range." | ||
onlydamagedby(choices) : "Only damaged by" : : "Choose what weapon or tool can damage this breakable." = | onlydamagedby(choices) : "Only damaged by" : "" : "Choose what weapon or tool can damage this breakable." = | ||
[ | [ | ||
" | "" : "None" : "None" | ||
"weapon_knife" : "Knife" : "A Knife." | "weapon_knife" : "Knife" : "A Knife." | ||
"weapon_p228" : "P228" : "P228 pistol." | "weapon_p228" : "P228" : "P228 pistol." | ||
Line 1,629: | Line 1,910: | ||
"bomb" : "Bomb" : "Bomb, such as the RC bomb explosion." | "bomb" : "Bomb" : "Bomb, such as the RC bomb explosion." | ||
] | ] | ||
notdamagedby(choices) : "Not damaged by" : : "Specify what item the breakable is not damaged by. Disables the 'onlydamagedby' key." = | notdamagedby(choices) : "Not damaged by" : "" : "Specify what item the breakable is not damaged by. Disables the 'onlydamagedby' key." = | ||
[ | [ | ||
" | "" : "None" : "None" | ||
"weapon_knife" : "Knife" : "A Knife." | "weapon_knife" : "Knife" : "A Knife." | ||
"weapon_p228" : "P228" : "P228 pistol." | "weapon_p228" : "P228" : "P228 pistol." | ||
Line 1,667: | Line 1,948: | ||
"bomb" : "Bomb" : "Bomb, such as the RC bomb explosion." | "bomb" : "Bomb" : "Bomb, such as the RC bomb explosion." | ||
] | ] | ||
grenadetouch(choices) : "Grenade touch" : "" : "This is a weird key to use, it is pretty good for realistic glass though, here is how to use it. Case 1: If spawnflag 2 (Touch) or 4 (Pressure) is on, and grenadetouch key is set to 'Yes', it will break on contact. Case 2: If the rendermode for the breakable is set to something other than 'normal', and the key is set to 'yes' it will break on touch." = | |||
grenadetouch(choices) : "Grenade touch" : : "This is a weird key to use, it is pretty good for realistic glass though, here is how to use it. Case 1: If spawnflag 2 (Touch) or 4 (Pressure) is on, and grenadetouch key is set to 'Yes', it will break on contact. Case 2: If the rendermode for the breakable is set to something other than 'normal', and the key is set to 'yes' it will break on touch." = | |||
[ | [ | ||
"" : "No" | |||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
Line 1,698: | Line 1,978: | ||
] | ] | ||
@SolidClass base(Targetname, Global, Master, Targetx, RenderFields, Angles) = func_button : "Button: This entity allows you to create various types of buttons, such as: switches, plungers, touch plates, push buttons, etc., that will trigger an event when activated. Works almost like a func_door." | |||
@SolidClass base(Targetname, Global, Master, Targetx, RenderFields, Angles | |||
[ | [ | ||
speed(integer) : "Speed" : 5 : "The speed a moving button will move from its resting state to its activated state." | speed(integer) : "Speed" : 5 : "The speed a moving button will move from its resting state to its activated state." | ||
health(integer) : "Health (shootable if > 0)" : : "If the button has to be shot, rather than pressed, specify a value greater than 0 here. When this amount of damage occurs, the button will activate." | //health(integer) : "Health (shootable if > 0)" : : "If the button has to be shot, rather than pressed, specify a value greater than 0 here. When this amount of damage occurs, the button will activate." | ||
lip(integer) : "Lip" : : "Number of units left after move (the lip value is subtracted from the move distance)." | lip(integer) : "Lip" : : "Number of units left after move (the lip value is subtracted from the move distance)." | ||
changetarget(target_destination) : "Change Target Name" : : "changetarget will change the button's target's TARGET field to the button's changetarget." | changetarget(target_destination) : "Change Target Name" : : "changetarget will change the button's target's TARGET field to the button's changetarget." | ||
sounds(choices) : "Sounds" : 0 : "The sound made by the button on activation. The sound is played at the same time as the Unlocked Sound. Choices are:" = | sounds(choices) : "Sounds" : 0 : "The sound made by the button on activation. The sound is played at the same time as the Unlocked Sound. Choices are:" = | ||
[ | [ | ||
0: " | 0 : "No Sound" | ||
1: " | 1 : "Old button" : "Sounds like an old button." | ||
2: " | 2 : "Digital - Chirping" : "Digital chirping sound." | ||
3: " | 3 : "Digital - Chirping 2" : "An alternative digital chirping sound." | ||
4: " | 4 : "Digital - Old button" : "Deep button press with a digital chirp at the end." | ||
5: " | 5 : "2-tone with digital chirp" : "A 2-tone alert with a digital chirp sound." | ||
6: " | 6 : "Digital - Old button 2" : "Digital chirping with a old button press at the end." | ||
7: " | 7 : "Digital - Old button 3" : "An old button with an alternative digital chirping sound." | ||
8: " | 8 : "Old button 2" : "Industrial button sound." | ||
9: " | 9 : "Digital - old button 4" : "Another old button sound with a digital chirping sound." | ||
10: " | 10 : "Buzzer" : "A buzzer sound." | ||
11: " | 11 : "Buzzer - Off" : "A buzzer. Has a lower tone to " | ||
14: "Lightswitch" | 13 : "Latchunlocked1" | ||
14 : "Lightswitch" | |||
21 : "Lever1" | |||
22 : "Lever2" | |||
23 : "Lever3" | |||
24 : "Lever4" | |||
25 : "Lever5" | |||
] | ] | ||
wait(integer) : "delay before reset (-1 stay)" : 3 : "Time in seconds before the button pops back out or becomes reuseable (-1 = Never)." | wait(integer) : "delay before reset (-1 stay)" : 3 : "Time in seconds before the button pops back out or becomes reuseable (-1 = Never)." | ||
Line 1,731: | Line 2,016: | ||
locked_sound(choices) : "Locked Sound" : 0 : "Sounds to play when the entity is 'locked'. Options are:" = | locked_sound(choices) : "Locked Sound" : 0 : "Sounds to play when the entity is 'locked'. Options are:" = | ||
[ | [ | ||
0: " | 0 : "No Sound" | ||
2: " | 1 : "Old button" : "Sounds like an old button." | ||
8: " | 2 : "Digital - Chirping" : "Digital chirping sound." | ||
10: " | 3 : "Digital - Chirping 2" : "An alternative digital chirping sound." | ||
11: " | 4 : "Digital - Old button" : "Deep button press with a digital chirp at the end." | ||
5 : "2-tone with digital chirp" : "A 2-tone alert with a digital chirp sound." | |||
6 : "Digital - Old button 2" : "Digital chirping with a old button press at the end." | |||
7 : "Digital - Old button 3" : "An old button with an alternative digital chirping sound." | |||
8 : "Old button 2" : "Industrial button sound." | |||
9 : "Digital - old button 4" : "Another old button sound with a digital chirping sound." | |||
10 : "Buzzer" : "A buzzer sound." | |||
11 : "Buzzer - Off" : "A buzzer. Has a lower tone to " | |||
13 : "Latchunlocked1" | |||
14 : "Lightswitch" | |||
21 : "Lever1" | |||
22 : "Lever2" | |||
23 : "Lever3" | |||
24 : "Lever4" | |||
25 : "Lever5" | |||
] | ] | ||
unlocked_sound(choices) : "Unlocked Sound" : 0 : "Sound to play when entity is 'unlocked'. Options are:" = | unlocked_sound(choices) : "Unlocked Sound" : 0 : "Sound to play when entity is 'unlocked'. This is not working in the current build of the game for some reason. Options are:" = | ||
[ | [ | ||
0: "None" | 0: "None" | ||
Line 1,793: | Line 2,091: | ||
] | ] | ||
@SolidClass base(Door | //base(Targetname, Targetx, Global, Master, RenderFields, Angles, ZHLT) | ||
@SolidClass base(Door, Func2) = func_door : "Basic door: A very useful entity that can make door/gate, piston, elevator, forming press, etc. Can be made to act very much like a func_button." [] | |||
@SolidClass base(Door, Func2) = func_door_rotating : "Rotating door: " | @SolidClass base(Door, Func2) = func_door_rotating : "Rotating door: " | ||
Line 1,805: | Line 2,104: | ||
] | ] | ||
distance(integer) : "Distance (deg)" : 90 : "Distance in degrees to rotate." | distance(integer) : "Distance (deg)" : 90 : "Distance in degrees to rotate." | ||
health(integer) : "Health on touch" : "" : "When the player touches this door, it will give the specified health amount." | |||
] | ] | ||
Line 1,834: | Line 2,134: | ||
@SolidClass base(Targetname, RenderFields, ZHLT, Angles, FuncAddition) = func_illusionary : "Fake Wall/Light: The func_illusionary has all the properties of a func_wall entity, except for the fact that it is non-solid." | @SolidClass base(Targetname, RenderFields, ZHLT, Angles, FuncAddition) = func_illusionary : "Fake Wall/Light: The func_illusionary has all the properties of a func_wall entity, except for the fact that it is non-solid." | ||
[ | [ | ||
skin(choices) : "Contents" : | skin(choices) : "Contents" : "" : "Skin for brush entities is used to manually override the contents of the brush. The content of a volume determines things like if it's solid, if it's empty, if it's see-through, if it's water, if it's a water current, if it's a ladder, if it's lava, if it's slime, etc." = | ||
[ | [ | ||
0 : "Illusionary" | 0 : "Illusionary" | ||
Line 1,844: | Line 2,144: | ||
-16 : "Ladder" | -16 : "Ladder" | ||
] | ] | ||
_minlight(integer) : "Minimum light level" : | _minlight(integer) : "Minimum light level" : "" : "Brush entities only. Sets the minimum light level. Useful for when textures should always appear bright e.g. computer screens or holograms. Default is 0, max 1." | ||
] | ] | ||
Line 1,851: | Line 2,151: | ||
@SolidClass base(Targetname) = func_monsterclip : "Monster clip brush: This entity acts like the 'clip' brush, except it restricts monster movement, not the player's." [] | @SolidClass base(Targetname) = func_monsterclip : "Monster clip brush: This entity acts like the 'clip' brush, except it restricts monster movement, not the player's." [] | ||
@SolidClass base(Targetname) = func_mortar_field : "Mortar Field: This entity is used to define an area that an airstrike is called on." | @SolidClass base(Targetname) = func_mortar_field : "Mortar Field: FLASHBANGS ONLY!!! This entity is used to define an area that an airstrike is called on." | ||
[ | [ | ||
m_flSpread(integer) : "Spread Radius" : 64 : "Defines the accuracy of the bombardment." | m_flSpread(integer) : "Spread Radius" : 64 : "Defines the accuracy of the bombardment." | ||
Line 1,861: | Line 2,161: | ||
2 : "Table" : "Special case. The X and Y controllers can be used in cases where a table is used to define the strike location (as seen in Half-Life)." | 2 : "Table" : "Special case. The X and Y controllers can be used in cases where a table is used to define the strike location (as seen in Half-Life)." | ||
] | ] | ||
m_iszXController(target_destination) : "X Controller" : "The name of a momentary_rot_button to provide a relative strike position on the X axis." | m_iszXController(target_destination) : "X Controller" :"": "The name of a momentary_rot_button to provide a relative strike position on the X axis." | ||
m_iszYController(target_destination) : "Y Controller" : "The name of a momentary_rot_button to provide a relative strike position on the Y axis." | m_iszYController(target_destination) : "Y Controller" :"": "The name of a momentary_rot_button to provide a relative strike position on the Y axis." | ||
] | ] | ||
Line 1,933: | Line 2,233: | ||
friction(integer) : "Friction" : 50 : "This determines the amount of resistance the brush will give when the player pushes it. Range is 0 to 400, where 400 is the most resistance." | friction(integer) : "Friction" : 50 : "This determines the amount of resistance the brush will give when the player pushes it. Range is 0 to 400, where 400 is the most resistance." | ||
bouyancy(integer) : "Bouyancy" : 20 : "Determines how well the brush floats on water." | bouyancy(integer) : "Bouyancy" : 20 : "Determines how well the brush floats on water." | ||
silent(choices) : "Silent" : : "Disables sounds when pushing the func_pushable." = | silent(choices) : "Silent" : : "Disables sounds when pushing the func_pushable." = | ||
[ | [ | ||
Line 1,948: | Line 2,247: | ||
changetarget(target_destination) : "ChangeTarget Name" : : "UWU" | changetarget(target_destination) : "ChangeTarget Name" : : "UWU" | ||
speed(integer) : "Speed" : 50 : "How fast the button rotates when activated." | speed(integer) : "Speed" : 50 : "How fast the button rotates when activated." | ||
health(integer) : "Health (shootable if > 0)" : "If non-zero, the button must be damaged to this extent to activate it." | health(integer) : "Health (shootable if > 0)" : "" : "If non-zero, the button must be damaged to this extent to activate it." | ||
sounds(choices) : "Sounds" : 21 : "Choose the sound the button makes when rotating. Options are:" = | sounds(choices) : "Sounds" : 21 : "Choose the sound the button makes when rotating. Options are:" = | ||
[ | [ | ||
Line 2,006: | Line 2,305: | ||
@SolidClass base(BaseTank, ZHLT, Func2) = func_tank : "Brush Gun Turret: This entity allows you to create a controllable or automatic gun turret. To make it controllable by the player, you'll need a func_tankcontrols entity associated with it." | @SolidClass base(BaseTank, ZHLT, Func2) = func_tank : "Brush Gun Turret: This entity allows you to create a controllable or automatic gun turret. To make it controllable by the player, you'll need a func_tankcontrols entity associated with it." | ||
[ | [ | ||
bullet(choices) : "Bullets" : | bullet(choices) : "Bullets" : 1 : "Set the bullet type to fire. The damage that these output can be changed in the skill.cfg file if needed for a custom mod." = | ||
[ | [ | ||
0 : "None" | 0 : "None" | ||
Line 2,137: | Line 2,436: | ||
@SolidClass base(Targetname, RenderFields, ZHLT) = func_wall : "Wall: This entity lets you create a stationary piece of geometry in your level which can then be modified (through its rendering properties) for a number of effects. Often used for things like unbreakable glass, masked textures (fences, ladders). In the past it was also used for performance reasons, but nowadays func_detail (introduced by Vluzacn's compile tools) is often a better choice." | @SolidClass base(Targetname, RenderFields, ZHLT) = func_wall : "Wall: This entity lets you create a stationary piece of geometry in your level which can then be modified (through its rendering properties) for a number of effects. Often used for things like unbreakable glass, masked textures (fences, ladders). In the past it was also used for performance reasons, but nowadays func_detail (introduced by Vluzacn's compile tools) is often a better choice." | ||
[ | [ | ||
_minlight(integer) : "Minimum light level" : | _minlight(integer) : "Minimum light level" : "" : "Brush entities only. Sets the minimum light level. Useful for when textures should always appear bright e.g. computer screens or holograms. Default is 0, max 1." | ||
style(choices) : "Texlight style" : 0 : "Set a style of lighting for the texlight. Can be applied to any brush based entity." = | style(choices) : "Texlight style" : 0 : "Set a style of lighting for the texlight. Can be applied to any brush based entity." = | ||
[ | [ | ||
Line 2,155: | Line 2,454: | ||
12 : "Underwater" | 12 : "Underwater" | ||
] | ] | ||
skin(choices) : "Contents" : | skin(choices) : "Contents" : "" : "Skin for brush entities is used to manually override the contents of the brush. The content of a volume determines things like if it's solid, if it's empty, if it's see-through, if it's water, if it's a water current, if it's a ladder, if it's lava, if it's slime, etc." = | ||
[ | [ | ||
0 : "Normal" | 0 : "Normal" | ||
Line 2,198: | Line 2,497: | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/GameCounter.spr") base(Targetname, Targetx, Master) = game_counter : "Counter: The game_counter entity keeps an internal value of how many times it has been triggered, and when it reaches a specified value, it will trigger another entity." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
Line 2,209: | Line 2,508: | ||
] | ] | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/GameCounterSet.spr") base(Targetname, Target, Master) = game_counter_set : "Sets a game_counter: The game_counter_set entity will, when triggered, set the value of a game_counter to a specified value. " | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
Line 2,218: | Line 2,517: | ||
] | ] | ||
@PointClass base(Targetname) iconsprite("sprites/ | |||
//!NOTE! Remove this | |||
//@PointClass iconsprite("sprites/Hammer/GamePlayerEquip.spr") base(Targetname) = game_player_equip : "Initial player equipment: The game_player_equip entity allows you to provide the player with specific items when it is triggered. To add weapons and ammo, use this format: 'weapon_xyz' or 'item_xyz'." | |||
//[ | |||
// master(string) : "Team Master" : : "This can be used to limit which team (in a deathmatch game) can receive the items. Takes the name of a game_team_master." | |||
// playerhealth(integer) : "# HP" : : "Sets the players health to the amount specified." | |||
// silent(choices) : "Disable pickup noise" : "" : "Turns the equipment sound on or off." = | |||
// [ | |||
// 0 : "No" | |||
// 1 : "Yes" | |||
// ] | |||
// nightvision(choices) : "Nightvision" : "" : "Gives the player nightvision goggles." = | |||
// [ | |||
// 0 : "No" | |||
// 1 : "Yes" | |||
// ] | |||
// spawnflags(flags) = | |||
// [ | |||
// 1 : "Use Only" : 0 : "If enabled, The entity cannot be triggered by the player walking into it, but must be triggered by another entity." | |||
// ] | |||
// | |||
//] | |||
@PointClass base(Targetname) iconsprite("sprites/Hammer/GamePlayerEquip.spr") = game_player_equip : "Initial player equipment: The game_player_equip entity allows you to provide the player with specific items when it is triggered. To add weapons and ammo, use this format: 'weapon_xyz' or 'item_xyz'." | |||
[ | [ | ||
master(string) : "Team Master | master(string) : "Team Master" | ||
silent(choices) : "Disable pickup noise" : "" : "Turns the equipment sound on or off." = | |||
silent(choices) : "Disable pickup noise" : | |||
[ | [ | ||
"" : "No" | |||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
nightvision(choices) : "Nightvision" : | |||
nightvision(choices) : "Nightvision" : "" : "Gives the player nightvision goggles." = | |||
[ | [ | ||
"" : "No" | |||
1 : "Yes" | 1 : "Yes" | ||
] | ] | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : "Use Only" : 0 | 1: "Use Only" : 0 | ||
] | ] | ||
weapon_knife (choices) : "Give Knife" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "Yes" | |||
] | ] | ||
weapon_usp (choices) : "Give USP45 (45acp Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_glock18 (choices) : "Give Glock 18 (9mm Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "Yes" | |||
] | |||
] | |||
weapon_deagle (choices) : "Give Desert Eagle (50ae Calibre)" : "" = | |||
[ | [ | ||
1: " | "": "No" | ||
1: "Yes" | |||
] | ] | ||
weapon_p228 (choices) : "Give P-228 (357sig Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_elite (choices) : "Give Beretta Elites (9mm Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_fiveseven (choices) : "Give Five-Seven (57mm Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_m3 (choices) : "Give Benelli M3 (12 Gauge)" : "" = | |||
[ | |||
] | "": "No" | ||
1: "Yes" | |||
] | |||
weapon_xm1014 (choices) : "Give Benelli XM1014 (12 Gauge)" : "" = | |||
[ | [ | ||
"": "No" | |||
] | 1: "Yes" | ||
] | |||
weapon_mp5navy (choices) : "Give MP5/Navy (9mm Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "Yes" | |||
] | |||
] | |||
weapon_tmp (choices) : "Give TMP (9mm Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "Yes" | |||
] | ] | ||
weapon_p90 (choices) : "Give FN P90 (57mm Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "Yes" | |||
] | ] | ||
weapon_mac10 (choices) : "Give Mac-10 (45acp Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "Yes" | |||
] | |||
] | |||
weapon_ump45 (choices) : "Give UMP 45 (45acp Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "Yes" | |||
] | |||
] | |||
weapon_ak47 (choices) : "Give AK-47 (762nato Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
] | |||
weapon_sg552 (choices) : "Give SG552 (556nato Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_m4a1 (choices) : "Give M4A1 (556nato Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_aug (choices) : "Give Aug (556nato Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1 : "Yes" | 1: "Yes" | ||
] | ] | ||
weapon_scout (choices) : "Give Scout (762nato Calibre)" : "" = | |||
[ | [ | ||
"": "No" | |||
1 : "Yes" | 1: "Yes" | ||
] | |||
] | |||
weapon_awp (choices) : "Give AWP (338magnum Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_g3sg1 (choices) : "Give G3/SG-1 (762nato Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_sg550 (choices) : "Give SG550 (556nato Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_m249 (choices) : "Give M249 (556natobox Calibre)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_famas (choices) : "Give Famas (762nato)" : "" = | |||
[ | [ | ||
"": "No" | |||
1 : " | 1: "Yes" | ||
] | ] | ||
weapon_galil (choices) : "Give Galil (556natobox)" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_shield (choices) : "Give Police Riot Shield" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_flashbang (choices) : "Give Flash Bang" : "" = | |||
[ | |||
"": "No" | |||
1: "1" | |||
2: "2" | |||
] | |||
weapon_blowtorch (choices) : "Blowtorch Tool" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_briefcase (choices) : "Briefcase Tool" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_camera (choices) : "Camera Tool" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_fiberopticcamera (choices) : "Fiber-Optic Camera Tool" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_radiocontrolledbomb (choices) : "Radio Bomb Tool" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_radio (choices) : "Radio Tool" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_hegrenade (choices) : "Give High-Explosive Grenade" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
weapon_smokegrenade (choices) : "Give Smoke Grenade" : "" = | |||
[ | [ | ||
"": "No" | |||
] | 1: "Yes" | ||
] | |||
ammo_generic (choices) : "Give Smoke Grenade" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
ammo_9mm (choices) : "Give 9mm Parabellum Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Magazine (30 Bullets Per Magazine)" | |||
2: "2 Magazines" | |||
3: "3 Magazines (Fill Glock 18)" | |||
4: "4 Magazines (Fill Elites, MP5 & TMP)" | |||
] | |||
ammo_45acp (choices) : "Give .45 ACP Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Magazine (12 Bullets Per Magazine)" | |||
2: "2 Magazines" | |||
3: "3 Magazines" | |||
4: "4 Magazines (Fill USP45)" | |||
5: "5 Magazines" | |||
6: "6 Magazines" | |||
7: "7 Magazines" | |||
8: "8 Magazines (Fill Mac-10)" | |||
9: "9 Magazines (Fill UMP 45)" | |||
] | |||
ammo_50ae (choices) : "Give .50 Deagle Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Magazine (7 Bullets Per Magazine)" | |||
2: "2 Magazines" | |||
3: "3 Magazines" | |||
4: "4 Magazines" | |||
5: "5 Magazines (Fill Desert Eagle)" | |||
] | |||
ammo_57mm (choices) : "Give 5.7mm Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Magazine (50 Bullets Per Magazine)" | |||
2: "2 Magazines (Fill Five-Seven & P90)" | |||
] | |||
ammo_357sig (choices) : "Give .357 SIG Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Magazine (13 Bullets Per Magazine)" | |||
2: "2 Magazines" | |||
3: "3 Magazines" | |||
4: "4 Magazines (Fill P-228)" | |||
] | |||
ammo_buckshot (choices) : "Give 12 Gauge Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Box (8 Shells Per Magazine)" | |||
2: "2 Boxes" | |||
3: "3 Boxes" | |||
4: "4 Boxes (Fill Benelli M3, XM1014)" | |||
] | |||
ammo_762nato (choices) : "Give 7.62mm NATO Ammo" : "" = | |||
[ | [ | ||
"": "No" | |||
1 : " | 1: "1 Magazine (30 Bullets Per Magazine)" | ||
2: "2 Magazines (Fill Scout & G3/S-G1)" | |||
] | 3: "3 Magazines (Fill AK-47)" | ||
] | |||
ammo_556nato (choices) : "Give 5.56mm NATO Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Magazine (30 Bullets Per Magazine)" | |||
2: "2 Magazines" | |||
3: "3 (Fill SG552 M4A1 Aug SG550)" | |||
] | |||
ammo_556natobox (choices) : "Give 5.56mm NATO Box Ammo" : "" = | |||
[ | [ | ||
"": "No" | |||
1: "1 Magazine (30 Bullets Per Magazine)" | |||
2: "2 Magazines" | |||
3: "3 Magazines" | |||
4: "4 Magazines" | |||
5: "5 Magazines" | |||
6: "6 Magazines" | |||
7: "7 Magazines (Fill FN M249 Para)" | |||
] | |||
ammo_338magnum (choices) : "Give .338 AWP Ammo" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Magazine (10 Bullets Per Magazine)" | |||
2: "2 Magazines" | |||
3: "3 Magazines (Fill AWP)" | |||
] | |||
item_armor (choices) : "Give Kevlar Vest" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
item_healthkitold (choices) : "Give Moddable Health Kit" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Healthkit" | |||
2: "2 Healthkits" | |||
3: "3 Healthkits" | |||
4: "4 Healthkits" | |||
5: "5 Healthkits" | |||
6: "6 Healthkits" | |||
7: "7 Healthkits" | |||
] | |||
item_healthkit (choices) : "Give Health Kit" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Healthkit = 25 Health Points" | |||
2: "2 Healthkits = 50 Health Points" | |||
3: "3 Healthkits = 75 Health Points" | |||
4: "4 Healthkits = 100 Health Points" | |||
] | |||
item_battery (choices) : "Give Moddable Armor" : "" = | |||
[ | |||
"": "No" | |||
1: "1 Battery" | |||
2: "2 Batteries" | |||
3: "3 Batteries" | |||
4: "4 Batteries" | |||
5: "5 Batteries" | |||
6: "6 Batteries" | |||
7: "7 Batteries" | |||
] | |||
item_longjump (choices) : "Give HL Long Jump Module" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
spark_shower (choices) : "Make sparks" : "" = | |||
[ | |||
"": "No" | |||
1: "Yes" | |||
] | |||
] | ] | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/GamePlayerHurt.spr") base(Targetname, Master) = game_player_hurt : "Hurt/Heal player: The game_player_hurt entity can be used to inflict a set amount of damage to a player. Similar to a trigger_hurt, however this entity does not require the player to be in a particular location to take the damage. It also lacks some of the more specific options that a trigger_hurt has." | ||
[ | [ | ||
dmg(string) : "Damage To Apply" : : "Sets the amount of damage to apply to the player that activated the entity. A negative value will heal the player." | |||
spawnflags(flags) = | |||
[ | [ | ||
1 : "Remove On fire" : 0 : "If enabled, the entity will be removed after being triggered." | |||
] | ] | ||
] | ] | ||
// | @PointClass iconsprite("sprites/Hammer/GameEnd.spr") base(Targetname, Master) = game_end : "End this MP game: The game_end entity is used to end a deathmatch map." [] | ||
@ | @PointClass iconsprite("sprites/Hammer/GamePlayerTeam.spr") base(Targetname, Master) = game_player_team : "Allows player to change teams: " | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "Remove On fire" : 0 : "After firing, this entity will be removed." | ||
2 : "Kill Player" : 0 : "The player will be killed when the entity is activated." | |||
4 : "Gib Player" : 0 : "The player will be pulled apart when the entity is activated." | |||
] | ] | ||
target(target_destination) : "game_team_master to use" : : "The player that activates this entity will have his team changed to the team index of the game_team_master entity specified here." | |||
] | ] | ||
@ | @PointClass iconsprite("sprites/Hammer/GameScore.spr") base(Targetname) = game_score : "Award/Deduct Points: The game_score entity gives or takes points from a player or their team." | ||
[ | [ | ||
spawnflags(flags) = | |||
[ | [ | ||
1: "Allow Negative" : 0 : "If enabled, the game_score is able to make scores negative." | |||
1 : " | 2: "Team Points" : 0 : "If enabled, the entity will affect the activating player's whole team." | ||
] | ] | ||
points(integer) : "Points to add (+/-)" : 1 | |||
master(string) : "Master" | |||
] | |||
@PointClass iconsprite("sprites/Hammer/GameTeamMaster.spr") base(Targetname, Target, Targetx, Master) = game_team_master : "Team based master/relay: This entity acts like a combination of the multisource and trigger_relay entities, but is based on teams. The game_team_master can replace the multisource as the master for any entity. It will only be active when the activating team matches the team index value." | |||
[ | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "Remove On fire" : 0 : "The entity will be removed after firing." | ||
] | ] | ||
triggerstate(choices) : "Trigger State" : "" : "Activate the target with this trigger state" = | |||
[ | |||
0 : "Off" | |||
1 : "On" | |||
2 : "Toggle" | |||
] | |||
teamindex(integer) : "Team Index (-1 = no team)" : -1 : "The team number that is valid for this entity. -1 allows all teams." | |||
] | ] | ||
@ | @PointClass iconsprite("sprites/Hammer/GameTeamSet.spr") base(Targetname, Target, Targetx, Master) = game_team_set : "Sets team of team_master: " | ||
[ | [ | ||
spawnflags(flags) = | |||
[ | [ | ||
1 : "Remove On fire" : 0 : "The entity will be removed after firing." | |||
1 : " | |||
] | ] | ||
] | ] | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/GameText.spr") base(Targetname, Target, Master) = game_text : "HUD Text Message: This entity is used to display messages on-screen. It is used instead of env_message because it doesn't need to a file full of message strings to be distributed with the map. Do not use an automatic trigger like trigger_auto to activate this entity if 'All Players' flag is disabled, otherwise the game will crash." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : "All Players" : 0 : "Show the text to all players. If not set, only the player who activated the game_text will see the message." | |||
] | ] | ||
message(string) : "Message Text" : : "The text to be displayed. Message text longer than 79 (or 127?) characters in a single line will make the game crash, instead, use line break before it exceeds. Line breaks can be added with by inserting a \n after each sentence where you want a new line." | |||
x(integer) : "X position on screen" : -1 : "X position of text (across screen). (0 - 1.0 = left to right, -1 = center)" | |||
y(integer) : "Y position on screen" : -1 : "Y position of text (up/down screen). (0 - 1.0 = top to bottom, -1 = center)" | |||
effect(Choices) : "Text Effect" : "" : " Effect to apply to the text. Options are:" = | |||
[ | [ | ||
0 : "Fade In/Out" | |||
1 : "Credits" | |||
2 : "Scan Out" | |||
] | |||
color(color255) : "Color1" : "100 100 100" : "The main colour of the text." | |||
color2(color255) : "Color2" : "240 110 0" : "The highlight colour of the text." | |||
fadein(string) : "Fade in Time (or character scan time)" : "1.5" : "Time taken to fade in each character." | |||
fadeout(string) : "Fade Out Time" : "0.5" : "Time taken to fade out message." | |||
holdtime(string) : "Hold Time" : "1.2" : "Length of time to hold message on screen after fading in." | |||
fxtime(string) : "Scan time (scan effect only)" : "0.25" : "The amount of time the highlight lags behind the leading edge of the text." | |||
channel(choices) : "Text Channel" : 1 : "Any of four channels can be used by this entity. If while one channel is being used another entity on the same channel is triggered, the old text will be cleared from the screen." = | |||
[ | |||
1 : "Channel 1" | |||
2 : "Channel 2" | |||
3 : "Channel 3" | |||
4 : "Channel 4" | |||
] | |||
] | |||
@SolidClass base(Targetname) = game_zone_player : "Player Zone: This entity is used to trigger targets based on player locations." | |||
[ | |||
intarget(target_destination) : "Target for IN players" : : "All players inside the area covered by the brush fire this target." | |||
outtarget(target_destination) : "Target for OUT players" : : "All players outside the area covered by the brush fire this target." | |||
incount(target_destination) : "Counter for IN players" : : "This game_counter's value will be set to the number of players inside the area." | |||
outcount(target_destination) : "Counter for OUT players" : : "This game_counter's value will be set to the number of players outside the area." | |||
] | |||
@PointClass iconsprite("sprites/Hammer/Gibshooter.spr") base(gibshooterbase) = gibshooter : "Gib Shooter: An env_shooter that just shoots bodyparts. Handy >:)." [] | |||
//////////////////////////////////////////////////////////////////////////////// | |||
// INFO ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass iconsprite("sprites/Hammer/HostageRescue.spr") = info_hostage_rescue : "Hostage rescue point: This entity creates a 'node' for the hostage rescue point. An area about 128 units around the entity is considered to be a hostage rescue area." | |||
[ | |||
hidden(choices) : "Show hud icon" : "" : "Choose if the icon is displayed on the HUD in-game." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
quiet(choices) : "Quiet Hostage" : "" : "Choose if the hostage says a sentence on rescue." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
] | |||
@PointClass iconsprite("sprites/Hammer/InfoLandmark.spr") base(Targetname, Angles) = info_landmark : "Transition Landmark: In a level transition, this entity defines the same point in both maps, so that the transition appears seamless." [] | |||
@PointClass iconsprite("sprites/Hammer/EnvTarget.spr") base(Targetname) = info_null : "Info_null: This entity's only purpose is to define the target of one or more light_spot entities. It is only used at compile time by RAD for this sole purpose. At runtime (during gameplay), it removes itself during its spawning process making it unreliable as 'reference/target' for other entities like paths for trains, targets for camera etc." [] | |||
@PointClass base(Angles) size(-24 -24 -4, 24 24 4) color(255 255 0) = info_node : "Ai node: nfo_nodes are essential for monsters who need to move under AI control. The engine draws a 'node graph' based on the positions of info_nodes in a map, and monsters can then find the quickest route from point A to point B via the nodes." | |||
[ | |||
nodetype(choices) : "Node type" : "" : "Type of node. The type decides how the monster interacts with the node. Options are:" = | |||
[ | |||
0 : "Default" : "Default kind of node. Nothing special." | |||
1 : "Duck node" : "Makes the AI seek this node for defense or a hiding spot." | |||
2 : "Corner node" : "Makes the AI pop out around corners for a quick shot." | |||
] | |||
nodeindex(integer) : "Node index" : : "Not sure what this does." | |||
hinttype(integer) : "Hint type" : : "Not sure what this does, or if it even works." | |||
] | |||
@PointClass base(info_node) size(-32 -32 0, 32 32 64) color(255 255 0) = info_node_air : "Ai air node: Similar to info_node, this entity is specifically for flying monsters like monster_apache." [] | |||
@PointClass base(PlayerClass) flags (Angle) size(-32 -32 0, 32 32 64) offset(0 0 36) sequence(0) studio("models/gordo_new.mdl") = info_player_start : "Player start: This entity defines the player starting point in single-player maps. Try to place near the ground, as the player will drop from the entity origin to the floor. Also, make sure the info_player_start is clear of any obstacles, or the player may be stuck at the start. " [] | |||
@PointClass iconsprite("sprites/Hammer/InfoCamera.spr") base(Targetname, Target) = info_camera : "Info Camera: Used to define the point that the fiber-optic camera view will be placed. One can also place a info_target as its target to futher define where the info_camera will look at." [] | |||
@PointClass iconsprite("sprites/Hammer/InfoTarget.spr") base(Targetname, Angles) size(-4 -4 -4, 4 4 4) color(200 100 50) = info_target : "Static Target: An info_target is used to provide static (non-moving) targets for entities like trigger_camera and env_beam." [] | |||
@PointClass iconsprite("sprites/Hammer/InfoTeleport.spr") size(-8 -8 0, 8 8 16) base(Targetname, PlayerClass) = info_teleport_destination : "Teleport destination: Works in conjunction with trigger_teleport. This entity provides the exit point of the teleporter." [] | |||
@PointClass iconsprite("sprites/Hammer/InfoTexlight.spr") color(255 128 0) = info_texlights : "Texture Light Config: Special lighting entity. See the notes section of this FGD." [] | |||
@PointClass decal() base(Targetname, Angles) = infodecal : "Decal: This entity lets you place special textures in your map, on top of solid brushes. Things like scorch marks, cracks, oil, lettering, etc. can be applied. The Decal Tool in Hammer/JACK is an easier way to apply them. Triggering it will cause it to appear. Triggering it again will not cause it to disappear." | |||
[ | |||
texture(decal) : : "Choose a decal from the decals.wad to put on a surface. It only works with that .wad" | |||
] | |||
//////////////////////////////////////////////////////////////////////////////// | |||
// ITEM ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass base(Angles, Targetx, ModelFile) studio("models/w_armor.mdl") = item_armor : "Armor: Gives the player 100 points of armor." [] | |||
@PointClass base (Angles, Targetx, ModelFile) studio("models/can.mdl") = item_sodacan : "Soda: The item_sodacan entity is usually only ever seen when being spawned by an env_beverage entity. Gives the player 1 health point." [] | |||
@PointClass base(Angles, Targetx, ModelFile) = item_security : "Security card: Spawns a security card. This entity has no 'game related behavior' besides storing in the player's inventory but its pickup ability is often used as a way to unlock other kinds of entities (For example, by targeting a multisource which is the master of a door)." [] | |||
@PointClass base(Angles, Targetx, ModelFile) studio("models/w_longjump.mdl") = item_longjump : "Longjump module: Spawns a long jump module that grants the ability to the player that picks it up to perform long jumps." [] | |||
@PointClass base(Angles, Targetx, ModelFile) = item_antidote : "Poison antidote: Spawns an antidote to cure nerve gas and poison damage. The antidote shot is administered automatically during the timed damage. There is no HUD element telling how many antidote shots the player has." [] | |||
@PointClass base(Angles, Targetx, ModelFile) studio("models/w_battery.mdl") = item_battery : "HEV battery (Armor plates): Spawns a battery which gives player armor. Can be modified with SKILLS.CFG." [] | |||
@PointClass base(Targetname, Target, Angles, ModelFile, RenderFields) = item_generic : "Model entity: Widely used as a reliable way to display prop models in the map." | |||
[ | |||
removeonuse(choices) : "Remove on use" : "" : "The entity will be removed after firing." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
sequencename(string) : "Animation" : : "Defines the animation to use." | |||
lightmultiplier(integer) : "Light Multiplier" : : "Has code relating to an addtional renderfx (25?)." | |||
sequence(integer) : "Sequence (Editor)" : : "Sequence to display in JACK. This does not affect gameplay." | |||
nopvs(choices) : "Include in Potentially Visible Set(PVS)" : 0 : "Potentially Visible Sets are used to accelerate the rendering of 3D environments. It is also related to NPCs. Refer to the notes section of this FGD." = | |||
[ | |||
0 : "Yes" | |||
1 : "No" | |||
] | |||
] | |||
] | ] | ||
@PointClass studio() base( | @PointClass base (Angles, Targetx, ModelFile) studio("models/healthkit.mdl") = item_healthkit : "Healthkit: Spawns an health kit to heal players for 25 health points." [] | ||
@SolidClass base (Angles, Targetx, ModelFile) = item_worldmap : "Worldmap: This entity activate the 'World Map' GUI from the original CS:CZDS in game. Could be useful for an easter egg or a mod." | |||
[ | [ | ||
junk(integer) : "Junk (?)" : : "Not sure what this does. most likely nothing." | |||
] | ] | ||
@PointClass base( | @PointClass base (Angles, Targetx, ModelFile) studio("models/w_medkit.mdl") = item_healthkitold : "Moddable Healthkit: Spawns an health kit to heal players. The amount of hit points given can be changed with the SKILLS.CFG." [] | ||
//////////////////////////////////////////////////////////////////////////////// | |||
// LIGHT ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass iconsprite("sprites/Hammer/lightsrc.spr") flags(Light) base(Targetname, Target, Light) = light : "Invisible lightsource: Point-based light. It can also be toggled on/off and pulse in a variety of pre-defined styles (as well as custom ones) in a limited fashion." [] | |||
@PointClass iconsprite("sprites/Hammer/LightEnvironment.spr") flags(Light) base(Targetname, Target, Light) flags (angle) = light_environment : "Environment light: This entity makes the map's sky emit light. The only practical way of lighting outdoor maps. Sky brushes must have the 'SKY' texture on all faces or they won't emit light. The logic for this is a bit tricky." | |||
[ | |||
angles(string) : "Pitch Yaw Roll (Y Z X)" : "0 270 0" : "Use Pitch to shift the sun (or moon) vertically (similar to daytime/hours) and Yaw to shift it horizontally (cardinal direction or obliquity)." | |||
pitch(integer) : "Pitch" : -90 : "A negative number will give downward pitch (which is normally what you want)." | |||
_diffuse_light(color255) : "Diffuse Light" : "0 0 0 0" : "Gives the colour and intensity of the diffuse lighting. This allows a different colour for the diffuse light from a light_environment, more accurately mimicking real-world lighting (yellow sun, blue sky)." | |||
] | |||
@PointClass iconsprite("sprites/Hammer/LightSpot.spr") base(Targetname, Target, Angles, Light) flags (angle) = light_spot : "Spotlight: The light_spot entity allows you to create direct beams of light (like from a flashlight, spotlight, projector, and beacon) rather than spreading light within a radius of 360." | |||
[ | |||
pitch(integer) : "Pitch" : -90 : "The pitch of the light (-90 is straight down, 90 is straight up)." | |||
_cone(integer) : "Inner angle" : 30 : "Define the size of the inner, bright part of the spotlight." | |||
_cone2(integer) : "Outer angle" : 45 : "Define the size of the outer, fading part of the spotlight." | |||
_sky(choices) : "Is Sky" : 0 : "Choose if this spotlight is should act as the sky (It's better to use light_environment)." = | |||
[ | [ | ||
0 : "No" | |||
1 : "Yes" | |||
] | ] | ||
] | ] | ||
@ | //////////////////////////////////////////////////////////////////////////////// | ||
// MOMENTARY ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@SolidClass base(Door) = momentary_door : "Momentary/Continuous door: This creates a sliding door that opens or closes in coordination with a momentary_rot_button. Set up is the same as a func_door, but it needs a name and to be targeted by a momentary_rot_button." | |||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : "Starts Open" : 0 : "Door starts in its 'open' position." | |||
] | ] | ||
] | ] | ||
@ | @SolidClass base(Targetname, Master, Angles, RenderFields, ZHLT) = momentary_rot_button : "Direct wheel control: The momentary_rot_button was designed to control the momentary_door, or, thanks to the Door Hack, another momentary_rot_button. The door (or door-hack button) moves relative to the position of the momentary_rot_button controlling it. i.e., if the player lets go of the button, the door begins to close." | ||
[ | |||
target(target_destination) : "Targeted object" : : "Normally, the momentary_door you want to control." | |||
speed(integer) : "Speed" : 50 : "Speed the button will turn." | |||
sounds(choices) : "Sounds" : 0 : "Choose the sound the button makes when rotating. Options are:" = | |||
[ | |||
[ | [ | ||
0 : " | 0 : "None" | ||
1 : " | 1 : "Big zap & Warmup" | ||
2 : "Access Denied" | |||
3 : "Access Granted" | |||
4 : "Quick Combolock" | |||
5 : "Power Deadbolt 1" | |||
6 : "Power Deadbolt 2" | |||
7 : "Plunger" | |||
8 : "Small zap" | |||
9 : "Keycard Sound" | |||
10 : "Buzz" | |||
13 : "Latch Unlocked" | |||
21 : "Squeaky" | |||
22 : "Squeaky Pneumatic" | |||
23 : "Ratchet Groan" | |||
24 : "Clean Ratchet" | |||
25 : "Gas Clunk" | |||
] | ] | ||
distance(integer) : "Distance (deg)" : 90 : "Distance in degrees the button will rotate." | |||
returnspeed(integer) : "Auto-return speed" : 0 : "Speed at which the button will return to its starting position after being used." | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : "Door Hack" : 0 : "With this flag enabled, multiple momentary_rot_buttons can have the same Target value, and they will all move when one is used." | |||
2 : "Not usable" : 0 : "Button must be triggered to work." | |||
16 : "Auto Return" : 0 : "Button returns to its starting position automatically." | |||
64 : "X Axis" : 0 : "If enabled, the rotation will be on the X axis." | |||
128 : "Y Axis" : 0 : "If enabled, the rotation will be on the Y axis." | |||
] | ] | ||
_minlight(integer) : "Minimum light level" : 0 : "Brush entities only. Sets the minimum light level. Useful for when textures should always appear bright e.g. computer screens or holograms. Default is 0, max 1." | |||
] | ] | ||
//////////////////////////////////////////////////////////////////////////////// | |||
// MONSTER ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@ | @BaseClass = Grenadier | ||
[ | |||
hegrenadeonly(choices) : "HE Grenade Only" : "" : "Choose if this monster throws HE grenades." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
flashbangonly(choices) : "Flash Grenade Only" : "" : "Choose if this monster throws flash grenades." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
] | |||
@PointClass | @PointClass base(Monster, Angles, Classtype, ModelFile) = monster_apache : "Apache: An attack helicopter. It can actually be turned into a HIND or HARRIER, with the use of the models from CZEROR." | ||
[ | [ | ||
health(integer) : "Health" : : "Changes the default health of the monster_apache." | |||
idlesound(sound) : "Idle sound" : : "Changes the idle sound of the monster_apache." | |||
deathsound(sound) : "Death sound" : : "Changes the death sound of the monster_apache." | |||
firesound(sound) : "Fire sound" : : "Changes the fire sound of the monster_apache." | |||
quiet(choices) : "No sound" : "" : "Disables sounds from the monster_apache" = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
model(Choices) : "Model" : models/props/blackhawk_gunship.mdl = | |||
[ | |||
models/props/blackhawk_gunship.mdl : "Blackhawk" | |||
models/props/harrier_gunship.mdl : "Harrier" | |||
models/props/hind_gunship.mdl : "Hind" | |||
] | |||
body(integer) : "Body" : : "Input the value for the bodygroup to use. (Use SOLOKILLERS HLMV for the value)." | |||
skin(integer) : "Skin" : : "Input the value for the skin to use. (Use SOLOKILLERS HLMV for the value)." | |||
head(integer) : "Head" : : "Input the value for the head to use. (Use SOLOKILLERS HLMV for the value)." | |||
spawnflags(flags) = | |||
[ | [ | ||
8 : "No Wreckage???" : 0 : "Code suggests something to do with m_flNextRocket" | |||
] | ] | ||
] | ] | ||
/ | @PointClass base(Monster, Angles, Classtype, ModelFile) size(-16 -16 0, 16 16 16) studio("models/pigeon.mdl") = monster_flyer : "Flyers: Creates a pigeon. It can only fly around. The player can't interact with it at all." [] | ||
@PointClass | @PointClass base(Monster, Angles, Classtype, ModelFile) size(-16 -16 0, 16 16 16) studio("models/pigeon.mdl") = monster_flyer_flock : "Flyers: Creates a group of pigeons. It can only fly around. The player can't interact with it at all." [] | ||
[ | |||
iflocksize(integer) : "Flock size" : "" : "How many pigeons you want to spawn." | |||
flflockradius(integer) : "Flock radius" : "" : "The higher the value is, the more distance will be kept between flyers" | |||
] | |||
@PointClass base(Monster, Angles, Classtype, ModelFile) = monster_counter_terrorist_repel : "Repel: Spawns a monster that drops down a rope to the nearest surface. The monster can be specified under 'Monster type'. Terrorist monster can also be spawned!." | |||
@PointClass | |||
[ | [ | ||
repelskin(integer) : "Repel skin" : : "Choose the skin for the monster to use." | |||
monstertype(choices) : "Monster | repelhead(integer) : "Repel head" : : "Choose a head for the monster to use." | ||
[ | monstertype(choices) : "Monster type" : "" : "Define the monster type to spawn. Options are:" = | ||
" | [ | ||
"" : "None" : "No spawn." | |||
"monster_ct_gign_assaultrifle" : "CT - GIGN - Assault rifle" : "Spawns a GIGN officer with an assault rifle." | "monster_ct_gign_assaultrifle" : "CT - GIGN - Assault rifle" : "Spawns a GIGN officer with an assault rifle." | ||
"monster_ct_gign_grenader" : "CT - GIGN - Grenade" : "Spawns a GIGN officer with a grenade." | "monster_ct_gign_grenader" : "CT - GIGN - Grenade" : "Spawns a GIGN officer with a grenade." | ||
Line 2,991: | Line 3,358: | ||
"monster_terrorist_jungle_sniperrifle" : "T - Jungle - Sniper" : "Spawns a Jungle Terrorist with a sniper rifle." | "monster_terrorist_jungle_sniperrifle" : "T - Jungle - Sniper" : "Spawns a Jungle Terrorist with a sniper rifle." | ||
] | ] | ||
] | |||
@PointClass studio() base(Monster, Classtype, ModelFile) size(-16 -16 -36, 16 16 36) = monster_generic : "Generic Script Monster: Used to spawn models for use with scripted sequences." | |||
[ | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
4 : "Not solid" : 0 : "Make the monster non-solid." | |||
4 : " | |||
] | ] | ||
health(integer) : "Health" : : "Input the amount of health this entity should have. Useful if you have this monster_generic as an objective and want to 'kill' it." | |||
sequencename(string) : "Animation" : : "Defines the animation to use." | |||
deathanim(string) : "Death Animation Name" : : "input the death animation that this entity should have. It will play this animation upon death (Use SOLOKILLERS HLMV for the name of the animation you want to use)." | |||
] | ] | ||
@PointClass base(Monster) = monster_tripmine : "Active Tripmine: Creates a tripmine. Tripmines explode when someone or something crosses their laser beam. To place it correctly, the entity's origin (center) must be between 8 to 31 units from the surface, at an angle opposite its surface." | |||
@PointClass base( | |||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "Instant On" : 1 : "The laser beam is on from level start." | ||
] | ] | ||
] | ] | ||
@ | @BaseClass = Turrets | ||
[ | [ | ||
maxsleep(integer) : "Time Before Deactivating" : : "Time to auto-deactivation when no enemies are tracked." | |||
] | searchspeed(integer) : "Search Speed" : : "Rate of speed that the turret rotates at when navigating to enemies." | ||
turnrate(integer) : "Turn Rate" : : "The rate which the turret turns to target the player." | |||
orientation(Choices) : "Orientation" : 0 : "Choose the orientation of the turret. Options are:" = | |||
[ | |||
0 : "Floor Mount" : "A floor mounted version. Use this on floors." | |||
1 : "Ceiling Mount" : "A ceiling mounted version. Use this on ceilings." | |||
] | |||
spawnflags(flags) = | |||
[ | |||
32 : "Autostart" : 0 : "The turret is active and deployed from level start." | |||
64 : "Start Inactive" : 0 : "The turret starts in a inactive state from level start." | |||
] | |||
] | |||
@PointClass base(Monster, Turrets) studio("models/miniturret.mdl") = monster_miniturret : "Mini Auto Turret: The smaller brother of the monster_turret. Fires 9mm rounds." [] | |||
@PointClass base(Monster, Turrets) studio("models/turret.mdl") = monster_turret : "Turret: The big brother of the monster_miniturret. Fires 12mm rounds." [] | |||
@PointClass base(Monster, Turrets) studio("models/sentry.mdl") = monster_sentry : "Sentry: A small, portable sentry gun. For some reason the sounds for this aren't precached properly." [] | |||
@PointClass base(Monster, Angles) studio("models/roach.mdl") = monster_cockroach : "Cockroach: Cockroaches scurry around in the dark, looking for things to eat. They are easily scared. Stepping on them will kill them. A useful entity to make a place feel more... alive." [] | |||
@PointClass base(Monster, Angles) studio("models/bigrat.mdl") = monster_rat : "Rat: Spawns a rat. Doesnt do much at all." [] | |||
@PointClass base(Monster, Angles, ModelFile) size(-16 -16 0, 16 16 72) studio() = monster_furniture : "Monster Furniture" [] | |||
@PointClass base( | @PointClass base(PlayerClass, Monster, ModelFile) = monster_hostage : "Hostage: Spawns in a hostage." | ||
[ | [ | ||
rescuetarget(target_destination) : "Rescue Target" : : "Set a target to trigger when the hostage is rescued. If there is more than 1 hostage in the map then set the countdown for the trigger_counter to the amount of hostages needed to be rescued before the trigger will happen" | |||
//rescueanim(string) : "Rescue animation" : : "Code suggests this works, but it seems to not trigger on rescue." | |||
noautoremove(choices) : "Auto Remove on Rescue" : 0 : "Removes the hostage from the game on rescue (disappears completely)." = | |||
[ | |||
0 : "Remove" | |||
1 : "Don't remove" | |||
] | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
4 : "(?)" : 0 : "Not sure what this does." | |||
4 : " | |||
] | ] | ||
] | ] | ||
@PointClass | @PointClass studio() base(Monster, Classtype, ModelFile) = monster_npc : "NPC: Spawns a generic NPC that can follow and give you a one time health shot. Very similar to a monster_scientist from HL1. Model can be changed." | ||
[ | [ | ||
model(studio) : "Model" : "models/npc-scientist.mdl" : "Select an Model file to use." | |||
fleeondanger(choices) : "Flee On Danger" : : "Tells the monster to flee when danger is around. This might just be for monster_npc" = | |||
[ | [ | ||
0 : "No" | |||
1 : "Yes" | |||
] | ] | ||
cower(choices) : "Cower" : : "Tells the monster that it can cower. This might just be for monster_npc" = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
provoke(choices) : "Provoke" : : "This might just be for monster_npc. Could also provoke CT or T into killing the player." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
] | ] | ||
@PointClass studio() base(Monster, Classtype, ModelFile) = monster_sitting_npc : "Sitting NPC: Spawns a sitting NPC. Similar to the monster_sitting_scientist from HL1. Model can't be changed. " [] | |||
@PointClass | @PointClass studio() size(-16 -16 0, 16 16 72) color(255 255 255) base(ModelFile) = monster_npc_dead : "Dead NPC: Spawns a dead NPC. Bleeds when shot but doesn't do much. Model can be changed." | ||
[ | [ | ||
pose(Choices) : "Pose" : "" : "Choose a basic pose for the model to take." = | |||
[ | |||
0 : "On back" | |||
1 : "Seated" | |||
2 : "On stomach" | |||
3 : "On Table" | |||
] | |||
deadanim(integer) : "Custom death animation pose" : "" : "Input the name of a custom animation to use. It's recommended that the animation be in a dead pose on the 1st frame." | |||
] | ] | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
// | // CT ENTITIES | ||
//////////////////////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////////////////////// | ||
// CT has less entities | |||
// This is because you could just change both the LANGAUGE value and the MODEL value to Kidotai | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9 [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_assaultrifle : "CT - GSG9 - Assault Rifle" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_grenader : "CT - GSG9 - Grenadier" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_law : "CT - GSG9 - M72 LAW" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_machinegun : "CT - GSG9 - Machine Gun" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_mp5 : "CT - GSG9 - MP5" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_pistol : "CT - GSG9 - Pistol" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_shotgun : "CT - GSG9 - Shotgun" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_smg : "CT - GSG9 - SMG" [] | |||
@PointClass studio("models/gsg9.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gsg9_sniperrifle : "CT - GSG9 - Sniper Rifle" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_assaultrifle : "CT - GIGN - Assault Rifle" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_grenader : "CT - GIGN - Grenadier" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_law : "CT - GIGN - M72 LAW" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_machinegun : "CT - GIGN - Machine Gun" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_mp5 : "CT - GIGN - MP5" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_pistol : "CT - GIGN - Pistol" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_shotgun : "CT - GIGN - Shotgun" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_smg : "CT - GIGN - SMG" [] | |||
@PointClass studio("models/gign.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_gign_sniperrifle : "CT - GIGN - Sniper Rifle" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_assaultrifle : "CT - Spetsnaz - Assault Rifle" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_grenader : "CT - Spetsnaz - Grenadier" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_law : "CT - Spetsnaz - M72 LAW" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_machinegun : "CT - Spetsnaz - Machine Gun" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_mp5 : "CT - Spetsnaz - MP5" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_pistol : "CT - Spetsnaz - Pistol" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_shotgun : "CT - Spetsnaz - Shotgun" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_smg : "CT - Spetsnaz - SMG" [] | |||
@PointClass studio("models/spetsnaz.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_spetsnaz_sniperrifle : "CT - Spetsnaz - Sniper Rifle" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_assaultrifle : "CT - SWAT - Assault Rifle" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_grenader : "CT - SWAT - Grenadier" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_law : "CT - SWAT - M72 LAW"[ ] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_machinegun : "CT - SWAT - Machine Gun" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_mp5 : "CT - SWAT - MP5" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_pistol : "CT - SWAT - Pistol" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_shotgun : "CT - SWAT - Shotgun" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_smg : "CT - SWAT - SMG" [] | |||
@PointClass studio("models/seal.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_swat_sniperrifle : "CT - SWAT - Sniper Rifle" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_counter_terrorist_sas [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_assaultrifle : "CT - SAS - Assault Rifle" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_grenader : "CT - SAS - Grenadier" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_law : "CT - SAS - M72 LAW"[ ] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_machinegun : "CT - SAS - Machine Gun" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_mp5 : "CT - SAS - MP5" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_pistol : "CT - SAS - Pistol" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_shotgun : "CT - SAS - Shotgun" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_smg : "CT - SAS - SMG" [] | |||
@PointClass studio("models/sas.mdl") size(-16 -16 0, 16 16 72) color(0 0 255) base(Monster, Classtype, ModelFile) = monster_ct_sas_sniperrifle : "CT - SAS - Sniper Rifle" [] | |||
@PointClass base( | //////////////////////////////////////////////////////////////////////////////// | ||
// T ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
(Target, Targetname, RenderFields, Angles) | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_assaultrifle : "Terrorist - Arctic - Assault Rifle" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile, Grenadier) = monster_terrorist_arctic_grenader : "Terrorist - Arctic - Grenadier" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_kamakazi : "Terrorist - Arctic - Kamakazi" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_law : "Terrorist - Arctic - M72 LAW" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_machinegun : "Terrorist - Arctic - Machine Gun" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_melee : "Terrorist - Arctic - Melee" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_mp5 : "Terrorist - Arctic - MP5" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_pistol : "Terrorist - Arctic - Pistol" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_shotgun : "Terrorist - Arctic - Shotgun" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_smg : "Terrorist - Arctic - SMG" [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic_sniperrifle : "Terrorist - Arctic - Sniper Rifle" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_assaultrifle : "Terrorist - Desert - Assault Rifle" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile, Grenadier) = monster_terrorist_desert_grenader : "Terrorist - Desert - Grenadier" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_kamakazi : "Terrorist - Desert - Kamakazi" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_law : "Terrorist - Desert - M72 LAW" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_machinegun : "Terrorist - Desert - Machine Gun" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_melee : "Terrorist - Desert - Melee" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_mp5 : "Terrorist - Desert - MP5" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_pistol : "Terrorist - Desert - Pistol" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_shotgun : "Terrorist - Desert - Shotgun" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_smg : "Terrorist - Desert - SMG" [] | |||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert_sniperrifle : "Terrorist - Desert - Sniper Rifle" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_assaultrifle : "Terrorist - Jungle - Assault Rifle" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile, Grenadier) = monster_terrorist_jungle_grenader : "Terrorist - Jungle - Grenadier" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_kamakazi : "Terrorist - Jungle - Kamakazi" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_law : "Terrorist - Jungle - M72 LAW" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_machinegun : "Terrorist - Jungle - Machine Gun" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_melee : "Terrorist - Jungle - Melee" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_mp5 : "Terrorist - Jungle - MP5" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_pistol : "Terrorist - Jungle - Pistol" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_shotgun : "Terrorist - Jungle - Shotgun" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_smg : "Terrorist - Jungle - SMG" [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle_sniperrifle : "Terrorist - Jungle - Sniper Rifle" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_assaultrifle : "Terrorist - Russian - Assault Rifle" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile, Grenadier) = monster_terrorist_russian_grenader : "Terrorist - Russian - Grenadier" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_kamakazi : "Terrorist - Russian - Kamakazi" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_law : "Terrorist - Russian - M72 LAW" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_machinegun : "Terrorist - Russian - Machine Gun" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_melee : "Terrorist - Russian - Melee" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_mp5 : "Terrorist - Russian - MP5" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_pistol : "Terrorist - Russian - Pistol" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_shotgun : "Terrorist - Russian - Shotgun" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_smg : "Terrorist - Russian - SMG" [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian_sniperrifle : "Terrorist - Russian - Sniper Rifle" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_assaultrifle : "Terrorist - Asian - Assault Rifle" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile, Grenadier) = monster_terrorist_asian_grenader : "Terrorist - Asian - Grenadier" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_kamakazi : "Terrorist - Asian - Kamakazi" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_law : "Terrorist - Asian - M72 LAW" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_machinegun : "Terrorist - Asian - Machine Gun" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_melee : "Terrorist - Asian - Melee" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_mp5 : "Terrorist - Asian - MP5" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_pistol : "Terrorist - Asian - Pistol" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_shotgun : "Terrorist - Asian - Shotgun" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_smg : "Terrorist - Asian - SMG" [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian_sniperrifle : "Terrorist - Asian - Sniper Rifle" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_assaultrifle : "Terrorist - Urban - Assault Rifle" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile, Grenadier) = monster_terrorist_urban_grenader : "Terrorist - Urban - Grenadier" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_kamakazi : "Terrorist - Urban - Kamakazi" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_law : "Terrorist - Urban - M72 LAW" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_machinegun : "Terrorist - Urban - Machine Gun" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_melee : "Terrorist - Urban - Melee" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_mp5 : "Terrorist - Urban - MP5" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_pistol : "Terrorist - Urban - Pistol" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_shotgun : "Terrorist - Urban - Shotgun" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_smg : "Terrorist - Urban - SMG" [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban_sniperrifle : "Terrorist - Urban - Sniper Rifle" [] | |||
@PointClass iconsprite("sprites/Hammer/MonsterMaker.spr") color(255 0 0) base(Monster, Classtype, Angles) size(-16 -16 -16, 16 16 16) = monstermaker : "Monster Maker: Makes monster or anything that can be spawned. From enemies to weapons." | |||
[ | [ | ||
target(target_destination) : "Target On Release" : : "Event to trigger when a monster is spawned." | |||
monstertype(choices) : "Monster Type" : "" : "The entity name of the monster to be spawned. For example, 'monster_ct_swat' would spawn a CT with the swat faction. Things like 'item_xyz', 'weapon_xyz' and 'ammo_xyz' will also work." = | |||
[ | |||
"" : "None" : "Nothing." | |||
"monster_ct_gign_assaultrifle" : "CT - GIGN - Assault rifle" : "Spawns a GIGN officer with an assault rifle." | |||
"monster_ct_gign_grenader" : "CT - GIGN - Grenade" : "Spawns a GIGN officer with a grenade." | |||
"monster_ct_gign_law" : "CT - GIGN - LAW" : "Spawns a GIGN officer with a LAW." | |||
"monster_ct_gign_machinegun" : "CT - GIGN - M60" : "Spawns a GIGN officer with a M60." | |||
"monster_ct_gign_mp5" : "CT - GIGN - MP5" : "Spawns a GIGN officer with a MP5." | |||
"monster_ct_gign_pistol" : "CT - GIGN - Pistol" : "Spawns a GIGN officer with a pistol." | |||
"monster_ct_gign_shotgun" : "CT - GIGN - Shotgun" : "Spawns a GIGN officer with a shotgun." | |||
"monster_ct_gign_smg" : "CT - GIGN - MAC-10" : "Spawns a GIGN officer with a MAC-10." | |||
"monster_ct_gign_sniperrifle" : "CT - GIGN - Sniper" : "Spawns a GIGN officer with a sniper rifle." | |||
"monster_ct_gsg9_assaultrifle" : "CT - GSG9 - Assault rifle" : "Spawns a GSG9 officer with an assault rifle." | |||
"monster_ct_gsg9_grenader" : "CT - GSG9 - Grenade" : "Spawns a GSG9 officer with a grenade." | |||
"monster_ct_gsg9_law" : "CT - GSG9 - LAW" : "Spawns a GSG9 officer with a LAW." | |||
"monster_ct_gsg9_machinegun" : "CT - GSG9 - M60" : "Spawns a GSG9 officer with a M60." | |||
"monster_ct_gsg9_mp5" : "CT - GSG9 - MP5" : "Spawns a GSG9 officer with a MP5." | |||
"monster_ct_gsg9_pistol" : "CT - GSG9 - Pistol" : "Spawns a GSG9 officer with a pistol." | |||
"monster_ct_gsg9_shotgun" : "CT - GSG9 - Shotgun" : "Spawns a GSG9 officer with a shotgun." | |||
"monster_ct_gsg9_smg" : "CT - GSG9 - MAC-10" : "Spawns a GSG9 officer with a MAC-10." | |||
"monster_ct_gsg9_sniperrifle" : "CT - GSG9 - Sniper" : "Spawns a GSG9 officer with a sniper rifle." | |||
"monster_ct_spetsnaz_assaultrifle" : "CT - Spetsnaz - Assault rifle" : "Spawns a Spetsnaz officer with an assault rifle." | |||
"monster_ct_spetsnaz_grenader" : "CT - Spetsnaz - Grenade" : "Spawns a Spetsnaz officer with a grenade." | |||
"monster_ct_spetsnaz_law" : "CT - Spetsnaz - LAW" : "Spawns a Spetsnaz officer with a LAW." | |||
"monster_ct_spetsnaz_machinegun" : "CT - Spetsnaz - M60" : "Spawns a Spetsnaz officer with a M60." | |||
"monster_ct_spetsnaz_mp5" : "CT - Spetsnaz - MP5" : "Spawns a Spetsnaz officer with a MP5." | |||
"monster_ct_spetsnaz_pistol" : "CT - Spetsnaz - Pistol" : "Spawns a Spetsnaz officer with a pistol." | |||
"monster_ct_spetsnaz_shotgun" : "CT - Spetsnaz - Shotgun" : "Spawns a Spetsnaz officer with a shotgun." | |||
"monster_ct_spetsnaz_smg" : "CT - Spetsnaz - MAC-10" : "Spawns a Spetsnaz officer with a MAC-10." | |||
"monster_ct_spetsnaz_sniperrifle" : "CT - Spetsnaz - Sniper" : "Spawns a Spetsnaz officer with a sniper rifle." | |||
"monster_ct_swat_assaultrifle" : "CT - SWAT - Assault rifle" : "Spawns a SWAT officer with an assault rifle." | |||
"monster_ct_swat_grenader" : "CT - SWAT - Grenade" : "Spawns a SWAT officer with a grenade." | |||
"monster_ct_swat_law" : "CT - SWAT - LAW" : "Spawns a SWAT officer with a LAW." | |||
"monster_ct_swat_machinegun" : "CT - SWAT - M60" : "Spawns a SWAT officer with a M60." | |||
"monster_ct_swat_mp5" : "CT - SWAT - MP5" : "Spawns a SWAT officer with a MP5." | |||
"monster_ct_swat_pistol" : "CT - SWAT - Pistol" : "Spawns a SWAT officer with a pistol." | |||
"monster_ct_swat_shotgun" : "CT - SWAT - Shotgun" : "Spawns a SWAT officer with a shotgun." | |||
"monster_ct_swat_smg" : "CT - SWAT - MAC-10" : "Spawns a SWAT officer with a MAC-10." | |||
"monster_ct_swat_sniperrifle" : "CT - SWAT - Sniper" : "Spawns a SWAT officer with a sniper rifle." | |||
"monster_ct_sas_assaultrifle" : "CT - SAS - Assault rifle" : "Spawns a SAS officer with an assault rifle." | |||
"monster_ct_sas_grenader" : "CT - SAS - Grenade" : "Spawns a SAS officer with a grenade." | |||
"monster_ct_sas_law" : "CT - SAS - LAW" : "Spawns a SAS officer with a LAW." | |||
"monster_ct_sas_machinegun" : "CT - SAS - M60" : "Spawns a SAS officer with a M60." | |||
"monster_ct_sas_mp5" : "CT - SAS - MP5" : "Spawns a SAS officer with a MP5." | |||
"monster_ct_sas_pistol" : "CT - SAS - Pistol" : "Spawns a SAS officer with a pistol." | |||
"monster_ct_sas_shotgun" : "CT - SAS - Shotgun" : "Spawns a SAS officer with a shotgun." | |||
"monster_ct_sas_smg" : "CT - SAS - MAC-10" : "Spawns a SAS officer with a MAC-10." | |||
"monster_ct_sas_sniperrifle" : "CT - SAS - Sniper" : "Spawns a SAS officer with a sniper rifle." | |||
"monster_terrorist_arctic_assaultrifle" : "T - Arctic - Assault rifle" : "Spawns a Arctic Terrorist with an assault rifle." | |||
"monster_terrorist_arctic_grenader" : "T - Arctic - Grenade" : "Spawns a Arctic Terrorist with a grenade." | |||
"monster_terrorist_arctic_kamakazi" : "T - Arctic - Kamakazi" : "Spawns a Arctic Terrorist with a bomb strapped to his chest." | |||
"monster_terrorist_arctic_law" : "T - Arctic - LAW" : "Spawns a Arctic Terrorist with a LAW." | |||
"monster_terrorist_arctic_machinegun" : "T - Arctic - M60" : "Spawns a Arctic Terrorist with a M60." | |||
"monster_terrorist_arctic_melee" : "T - Arctic - Melee" : "Spawns a Arctic Terrorist with a machete." | |||
"monster_terrorist_arctic_mp5" : "T - Arctic - MP5" : "Spawns a Arctic Terrorist with a MP5." | |||
"monster_terrorist_arctic_pistol" : "T - Arctic - Pistol" : "Spawns a Arctic Terrorist with a pistol." | |||
"monster_terrorist_arctic_shotgun" : "T - Arctic - Shotgun" : "Spawns a Arctic Terrorist with a shotgun." | |||
" | "monster_terrorist_arctic_smg" : "T - Arctic - TMP" : "Spawns a Arctic Terrorist with a TMP." | ||
" | "monster_terrorist_arctic_sniperrifle" : "T - Arctic - Sniper" : "Spawns a Arctic Terrorist with a sniper rifle." | ||
" | "monster_terrorist_desert_assaultrifle" : "T - Desert - Assault rifle" : "Spawns a Desert Terrorist with an assault rifle." | ||
" | "monster_terrorist_desert_grenader" : "T - Desert - Grenade" : "Spawns a Desert Terrorist with a grenade." | ||
" | "monster_terrorist_desert_kamakazi" : "T - Desert - Kamakazi" : "Spawns a Desert Terrorist with a bomb strapped to his chest." | ||
" | "monster_terrorist_desert_law" : "T - Desert - LAW" : "Spawns a Desert Terrorist with a LAW." | ||
" | "monster_terrorist_desert_machinegun" : "T - Desert - M60" : "Spawns a Desert Terrorist with a M60." | ||
" | "monster_terrorist_desert_melee" : "T - Desert - Melee" : "Spawns a Desert Terrorist with a machete." | ||
" | "monster_terrorist_desert_mp5" : "T - Desert - MP5" : "Spawns a Desert Terrorist with a MP5." | ||
" | "monster_terrorist_desert_pistol" : "T - Desert - Pistol" : "Spawns a Desert Terrorist with a pistol." | ||
" | "monster_terrorist_desert_shotgun" : "T - Desert - Shotgun" : "Spawns a Desert Terrorist with a shotgun." | ||
" | "monster_terrorist_desert_smg" : "T - Desert - TMP" : "Spawns a Desert Terrorist with a TMP." | ||
" | "monster_terrorist_desert_sniperrifle" : "T - Desert - Sniper" : "Spawns a Desert Terrorist with a sniper rifle." | ||
" | "monster_terrorist_russian_assaultrifle" : "T - Russian - Assault rifle" : "Spawns a Russian Terrorist with an assault rifle." | ||
" | "monster_terrorist_russian_grenader" : "T - Russian - Grenade" : "Spawns a Russian Terrorist with a grenade." | ||
" | "monster_terrorist_russian_kamakazi" : "T - Russian - Kamakazi" : "Spawns a Russian Terrorist with a bomb strapped to his chest." | ||
" | "monster_terrorist_russian_law" : "T - Russian - LAW" : "Spawns a Russian Terrorist with a LAW." | ||
" | "monster_terrorist_russian_machinegun" : "T - Russian - M60" : "Spawns a Russian Terrorist with a M60." | ||
"monster_terrorist_russian_melee" : "T - Russian - Melee" : "Spawns a Russian Terrorist with a machete." | |||
"monster_terrorist_russian_mp5" : "T - Russian - MP5" : "Spawns a Russian Terrorist with a MP5." | |||
"monster_terrorist_russian_pistol" : "T - Russian - Pistol" : "Spawns a Russian Terrorist with a pistol." | |||
"monster_terrorist_russian_shotgun" : "T - Russian - Shotgun" : "Spawns a Russian Terrorist with a shotgun." | |||
"monster_terrorist_russian_smg" : "T - Russian - TMP" : "Spawns a Russian Terrorist with a TMP." | |||
"monster_terrorist_russian_sniperrifle" : "T - Russian - Sniper" : "Spawns a Russian Terrorist with a sniper rifle." | |||
"monster_terrorist_asian_assaultrifle" : "T - Asian - Assault rifle" : "Spawns an Asian Terrorist with an assault rifle." | |||
"monster_terrorist_asian_grenader" : "T - Asian - Grenade" : "Spawns an Asian Terrorist with a grenade." | |||
"monster_terrorist_asian_kamakazi" : "T - Asian - Kamakazi" : "Spawns an Asian Terrorist with a bomb strapped to his chest." | |||
"monster_terrorist_asian_law" : "T - Asian - LAW" : "Spawns an Asian Terrorist with a LAW." | |||
"monster_terrorist_asian_machinegun" : "T - Asian - M60" : "Spawns an Asian Terrorist with a M60." | |||
"monster_terrorist_asian_melee" : "T - Asian - Melee" : "Spawns an Asian Terrorist with a machete." | |||
"monster_terrorist_asian_mp5" : "T - Asian - MP5" : "Spawns an Asian Terrorist with a MP5." | |||
"monster_terrorist_asian_pistol" : "T - Asian - Pistol" : "Spawns an Asian Terrorist with a pistol." | |||
"monster_terrorist_asian_shotgun" : "T - Asian - Shotgun" : "Spawns an Asian Terrorist with a shotgun." | |||
"monster_terrorist_asian_smg" : "T - Asian - TMP" : "Spawns an Asian Terrorist with a TMP." | |||
"monster_terrorist_asian_sniperrifle" : "T - Asian - Sniper" : "Spawns an Asian Terrorist with a sniper rifle." | |||
"monster_terrorist_urban_assaultrifle" : "T - Urban - Assault rifle" : "Spawns a Urban Terrorist with an assault rifle." | |||
"monster_terrorist_urban_grenader" : "T - Urban - Grenade" : "Spawns a Urban Terrorist with a grenade." | |||
"monster_terrorist_urban_kamakazi" : "T - Urban - Kamakazi" : "Spawns a Urban Terrorist with a bomb strapped to his chest." | |||
"monster_terrorist_urban_law" : "T - Urban - LAW" : "Spawns a Urban Terrorist with a LAW." | |||
"monster_terrorist_urban_machinegun" : "T - Urban - M60" : "Spawns a Urban Terrorist with a M60." | |||
"monster_terrorist_urban_melee" : "T - Urban - Melee" : "Spawns a Urban Terrorist with a machete." | |||
"monster_terrorist_urban_mp5" : "T - Urban - MP5" : "Spawns a Urban Terrorist with a MP5." | |||
"monster_terrorist_urban_pistol" : "T - Urban - Pistol" : "Spawns a Urban Terrorist with a pistol." | |||
"monster_terrorist_urban_shotgun" : "T - Urban - Shotgun" : "Spawns a Urban Terrorist with a shotgun." | |||
"monster_terrorist_urban_smg" : "T - Urban - TMP" : "Spawns a Urban Terrorist with a TMP." | |||
"monster_terrorist_urban_sniperrifle" : "T - Urban - Sniper" : "Spawns a Urban Terrorist with a sniper rifle." | |||
"monster_terrorist_jungle_assaultrifle" : "T - Jungle - Assault rifle" : "Spawns a Jungle Terrorist with an assault rifle." | |||
"monster_terrorist_jungle_grenader" : "T - Jungle - Grenade" : "Spawns a Jungle Terrorist with a grenade." | |||
"monster_terrorist_jungle_kamakazi" : "T - Jungle - Kamakazi" : "Spawns a Jungle Terrorist with a bomb strapped to his chest." | |||
"monster_terrorist_jungle_law" : "T - Jungle - LAW" : "Spawns a Jungle Terrorist with a LAW." | |||
"monster_terrorist_jungle_machinegun" : "T - Jungle - M60" : "Spawns a Jungle Terrorist with a M60." | |||
"monster_terrorist_jungle_melee" : "T - Jungle - Melee" : "Spawns a Jungle Terrorist with a machete." | |||
"monster_terrorist_jungle_mp5" : "T - Jungle - MP5" : "Spawns a Jungle Terrorist with a MP5." | |||
"monster_terrorist_jungle_pistol" : "T - Jungle - Pistol" : "Spawns a Jungle Terrorist with a pistol." | |||
"monster_terrorist_jungle_shotgun" : "T - Jungle - Shotgun" : "Spawns a Jungle Terrorist with a shotgun." | |||
"monster_terrorist_jungle_smg" : "T - Jungle - TMP" : "Spawns a Jungle Terrorist with a TMP." | |||
"monster_terrorist_jungle_sniperrifle" : "T - Jungle - Sniper" : "Spawns a Jungle Terrorist with a sniper rifle." | |||
] | ] | ||
netname(target_destination) : "Childrens' Name" : : "When the monster or NPC is spawned, whatever name is in this key will be given to the spawned monster or NPC." | |||
forcedtarget(target_destination) : "Forced Target" : : "Forces the monster to aggressively persue and kill what ever target name is input." | |||
spawnflags(flags) = | |||
[ | |||
1 : "Start On" : 0 : "If this is enabled, the monstermaker will start on and start spawning as soon as the map loads." | |||
2 : "PVS On/Off (NoImpl)" : 0 : "Potentially Visible Sets are used to accelerate the rendering of 3D environments. It is also related to NPCs. Refer to the notes section of this FGD" | |||
4 : "Cyclic" : 0 : "HMM." | |||
8 : "MonsterClip" : 0 : "If this is enabled, spawned monsters will not be able to pass through func_monsterclip brushes." | |||
] | |||
monstercount(integer) : "Number of Monsters" : 1 : "The maximum number of entities to spawn (-1 = unlimited)." | |||
delay(integer) : "Frequency (-1 = on child death)" : 5 : "Delay, in seconds, between each monster being spawned. If 0, a new monster will only be spawned after the previous has been killed." | |||
m_imaxlivechildren(integer) : "Max live children (-1 = unlimited)" : 5 : "Maximum number of live children allowed at one time. Spawnings will be suspended until a monster dies. A value of 0 means infinite (obviously not recommended if delay is too low and monstercount is infinite)." | |||
spawnawake(choices) : "Spawn awake" : "" : "Spawns a monster that is 'awake', meaning that the AI is active. Not sure if this key is working properly." = | |||
[ | [ | ||
0 : " | 0 : "No" | ||
1 : " | 1 : "Yes" | ||
] | |||
dontspawninview(choices) : "Spawn in view" : 0 : "Choose if the monster can spawn inside the players view." = | |||
[ | |||
0 : "Yes" | |||
1 : "No" | |||
] | |||
monstermodel(studio) : "Monster model" : "" : "The model that the monster spawned from the monstermaker will use." | |||
gagged(choices) : "Gagged" : "" : "Gags the idle sounds of the monster until angered." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
fadespeed(integer) : "Fade Speed" : "" : "The speed at which bodies will fade out at. Higher number means faster fade." | |||
deathfadedelay(integer) : "Death Fade Delay" : "" : "The delay (in seconds) at which bodies will begin to fade at." | |||
deathfade(choices) : "Death Fade" : "" : "Choose if the body fades after death." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | ] | ||
//model(studio) : "Model" : "" : "Select an Model file to use." | |||
body(integer) : "Body" : "" : "Input the value for the bodygroup to use. (Use SOLOKILLERS HLMV for the value)." | |||
skin(integer) : "Skin" : "" : "Input the value for the skin to use. (Use SOLOKILLERS HLMV for the value)." | |||
head(integer) : "Head" : "" : "Input the value for the head to use. (Use SOLOKILLERS HLMV for the value)." | |||
] | ] | ||
//////////////////////////////////////////////////////////////////////////////// | |||
// MULTI ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@ | @PointClass base(Targetname) color(255 128 0) iconsprite("sprites/Hammer/multi_manager.spr") = multi_manager : "MultiTarget Manager: This entity can activate several different events (including itself) at specific times. It can only be used when the SmartEdit option in the multi_manager's properties is disabled. To add targets, click 'Add' and enter the name of your first target entity in the 'Key' dialog, and a delay of activation in seconds as the 'Value', then click OK. Refer to the notes section of this FGD." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "multithreaded" : 0 : "Refer to the notes section of this FGD." | ||
] | ] | ||
] | ] | ||
@PointClass base(Targetname, | @PointClass base(Targetname, Target) color(128 255 128) iconsprite("sprites/Hammer/MultiSource.spr") = multisource : "Multisource: Refer to the notes section of this FGD." | ||
[ | [ | ||
globalstate(string) : "Global State Master" : : "This is the name of the global variable (set by an env_global) that can be used to control the state of the multisource." | |||
] | |||
spawnflags(flags) = | |||
//////////////////////////////////////////////////////////////////////////////// | |||
// PATH ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass iconsprite("sprites/Hammer/PathCorner.spr") base(Targetname, Angles) size(16 16 16) color(247 181 82) = path_corner : "Pathing: Multiple path_corners form a path that can be followed by various moving entities, including some monsters and the func_train. The corresponding entity for func_tracktrain is path_track." | |||
[ | |||
spawnflags(flags) = | |||
[ | [ | ||
1 : " | 1 : "Wait for retrigger" : 0 : "If enabled, Moving entity will wait and will only continue when triggered." | ||
2 : " | 2 : "Teleport" : 0 : "If enabled, makes a func_train entity teleport to the current path_corner." | ||
4 : " | 4 : "Fire once" : 0 : "If enabled, will only fire its 'Fire On Pass' target once." | ||
] | ] | ||
target(target_destination) : "Next stop target" : : "Name of the next path_corner in the path." | |||
message(target_destination) : "Fire On Pass" : : "Trigger this event when this path_corner is passed by the entity using the path. May not work correctly." | |||
wait(integer) : "Wait here" : 0 : "Wait for this number of seconds before moving to next corner." | |||
speed(integer) : "New Train Speed" : 0 : "Speed of the train once it passes this path_corner." | |||
yaw_speed(integer) : "New Train rot. Speed" : 0 : "Overrides train rotation speed after reaching this point (degrees per seconds)." | |||
] | ] | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/PathTrack.spr") base(Targetname) size(16 16 16) = path_track : "Train Track Path: " | ||
[ | [ | ||
target(target_destination) : "Next stop target" : : "The name of the next path_track in the path." | |||
spawnflags(flags) = | |||
[ | [ | ||
0 : " | 1 : "Disabled" : 0 : "If enabled, train starts disabled. Trigger the path to enable it. The Branch Path key can't be used with this flag." | ||
2 : "Fire once" : 0 : "If enabled, fires it's 'fire on pass' target once." | |||
4 : "Branch Reverse" : 0 : "If enabled, swap the 'branch path' and the 'next target' key on level load." | |||
8 : "Disable train" : 0 : "If enabled, disables the func_tracktrain when this point is reached." | |||
] | ] | ||
message(target_destination) : "Fire On Pass" : : "When a train passes this path_track it will trigger this event." | |||
altpath(target_destination) : "Branch Path" : : "The name of a secondary path_track. When a path_track is triggered, its Next Stop Target is replaced by its Branch Path value." | |||
netname(target_destination) : "Fire on dead end" : : "If this path_track is a dead-end, activate this event on reaching. If a path_track's Next Stop target is not defined, or if it has been triggered but has no branch path, it is considered a dead end." | |||
speed(integer) : "New Train Speed" : 0 : "As the train passes this point, this speed will be assigned to it." | |||
] | ] | ||
//////////////////////////////////////////////////////////////////////////////// | |||
// PLAYER ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@ | @PointClass iconsprite("sprites/Hammer/PlayerLoadSaved.spr") base(Targetname) = player_loadsaved : "Load Auto-Saved game: This entity triggers the game to load the last autosave (created with a trigger_autosave). Use this entity for when the player does something really naughty, preventing the game from continuing." | ||
[ | [ | ||
duration(string) : "Fade Duration (seconds)" : "2" : "Sets how long the overlay should take to fade into its full effect." | |||
holdtime(string) : "Hold Fade (seconds)" : "0" : "Sets how long the overlay should stay on the screen at its full effect before turning itself off." | |||
renderamt(integer) : "Fade Alpha" : 255 : "he maximum alpha value (opacity) of the overlay. Scales from 0 (transparent) to 255 (opaque)." | |||
rendercolor(color255) : "Fade Color (R G B)" : "0 0 0" : "Sets the color of the overlay." | |||
messagetime(string) : "Show Message delay" : "0" : "The delay (in seconds) until the message is shown." | |||
message(string) : "Message To Display" : "When triggered, this message will be shown on screen." | |||
loadtime(string) : "Reload delay" : "0" : "The delay (in seconds) until the game reloads the last known autosave." | |||
] | ] | ||
@PointClass | @PointClass iconsprite("sprites/Hammer/PlayerWeaponStrip.spr") base(Targetname) size(-16 -16 -16, 16 16 16) = player_weaponstrip : "Strips player's weapons: When activated, this entity removes all the weapons that the player is carrying." | ||
[ | [ | ||
item(Choices) : "Item to strip" : : "Specifies the item to strip from the players inventory" = | |||
[ | |||
"weapon_knife" : "Knife" | |||
"weapon_p228" : "P228" | |||
"weapon_glock18" : "Glock 18" | |||
"weapon_usp" : "USP" | |||
"weapon_fiveseven" : "Five-Seven" | |||
"weapon_elite" : "Elite Dual Pistols" | |||
"weapon_deagle" : "Desert Eagle" | |||
"weapon_ak47" : "AK47" | |||
"weapon_aug" : "AUG" | |||
"weapon_m4a1" : "M4A1" | |||
"weapon_sg552" : "SG552" | |||
"weapon_galil" : "Galil" | |||
"weapon_famas" : "Famas" | |||
"weapon_mac10" : "Mac-10" | |||
"weapon_p90" : "P90" | |||
"weapon_tmp" : "TMP" | |||
"weapon_ump45" : "UMP45" | |||
"weapon_mp5navy" : "MP5" | |||
"weapon_scout" : "Scout" | |||
"weapon_awp" : "AWP" | |||
"weapon_g3sg1" : "G3SG1" | |||
"weapon_sg550" : "SG550" | |||
"weapon_flashbang" : "Flash Grenade" | |||
"weapon_smokegrenade" : "Smoke Grenade" | |||
"weapon_hegrenade" : "HE Grenade" | |||
"weapon_laws" : "LAW" | |||
"weapon_m60" : "M60" | |||
"weapon_m249" : "M249" | |||
"weapon_xm1014" : "XM1014" | |||
"weapon_m3" : "M3" | |||
"weapon_shieldgun" : "Shield" | |||
"weapon_blowtorch" : "Blowtorch Tool" | |||
"weapon_briefcase" : "Briefcase Tool" | |||
"weapon_camera" : "Camera Tool" | |||
"weapon_fiberopticcamera" : "Fiber-Optic Camera Tool" | |||
"weapon_radiocontrolledbomb" : "Radio Bomb Tool" | |||
"weapon_radio" : "Radio Tool" | |||
] | |||
] | ] | ||
//////////////////////////////////////////////////////////////////////////////// | |||
// SCRIPTED ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass base( | @PointClass base(Targetname, Targetx) size(-16 -16 0, 16 16 72) color(255 0 255) = scripted_sentence : "Scripted Sentence: A scripted_sentence allows you to make a monster say something. Available sentence names can be found in the sound\sentences.txt file, or they can be scripted into a .SEQ file." | ||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "Fire Once" : 1 : "If enabled, the sentence can only be activated once." | ||
2 : "Followers Only" : 0 : "If enabled, only monsters who follow the player can speak this dialog." | |||
4 : "Interrupt Speech" : 1 : "If enabled, Override current speech on affected monster (including default lines)." | |||
8 : "Concurrent" : 0 : "If enabled, allow other people to keep talking around the monster" | |||
] | |||
sentence(string) : "Sentence Name" : "" : "Sentence to play. Make sure you preface the sentence with '!', For example !CT_MAD_AM0" | |||
entity(string) : "Speaker Type" : : "This is the name of the entity that says the sentence." | |||
duration(string) : "Sentence Time" : "3" : "How long the sentence lasts (in seconds)." | |||
radius(integer) : "Search Radius" : 512 : "If nothing is defined in the speaker type, it will search for an availible mouth to say the sentence." | |||
refire(string) : "Delay Before Refire" : "3" : "Time interval between sentence refiring." | |||
listener(string) : "Listener Type" : : "The name of entity the monster will look at when 'speaking' a sentence." | |||
volume(string) : "Volume 0-10" : "10" : "Sets the volume of the sound. Scales from 0 (completely silent) to 10 (maximum, default)." | |||
attenuation(Choices) : "Sound Radius" : 0 = | |||
[ | |||
0 : "Small Radius" : "If enabled, the sound will be at maximum volume within a roughly 256 unit radius, fading out completely at around 512 units away." | |||
1 : "Medium Radius" : "If enabled, the sound will be at maximum volume within a roughly 512 unit radius, fading out completely at around 768 units away." | |||
2 : "Large Radius" : "If enabled, the sound will be at maximum volume within a roughly 768 unit radius, fading out completely at around 1280 units away." | |||
3 : "Play Everywhere" : "If enabled, the sound will be heard throughout the entire map." | |||
] | ] | ||
] | ] | ||
@ | @PointClass base(Targetname, Targetx, Angles) size(-16 -16 0, 16 16 72) color(255 0 255) flags (angle) = scripted_sequence : "Scripted Sequence: " | ||
[ | [ | ||
m_iszEntity(string) : "Target Monster" : : "The name of the monster entity that this sequence affects. You can also input a monster type (monster_scientist, for example, but only one monster will be chosen to follow the sequence.)" | |||
m_iszPlay(string) : "Action Animation" : "" : "The name of the animation that will be performed by Target Monster." | |||
m_iszIdle(string) : "Idle Animation" : "" : "The name of an animation you want Target Monster to perform on a loop until the scripted_sequence is triggered. However, making use of the Idle Animation field will change the function of the entity. The monster will move at the start of the level ('Walk' and 'Run' movement types will not function as intended) and then perform their idle animation on a loop. When the scripted_sequence is triggered, the monster will perform their action animation." | |||
m_flRadius(integer) : "Search Radius" : 512 : "If you input a monster type into Target Monster, the entity will pick a monster within this radius of the entity to follow the sequence. If none are within the radius, the first monster to enter the radius will follow the sequence." | |||
m_flRepeat(integer) : "Repeat Rate ms (m_flRepeat)" : 0 : "Not sure what this does. Might not work." | |||
m_fMoveTo(choices) : "Move to Position" : 0 : "Sets how (or if) the monster moves before performing the animation. Options are:" = | |||
[ | [ | ||
" | 0 : "No" : "The monster will not move or turn. It will perform the animation wherever it is." | ||
1 : "Walk" : "The monster will walk to the scripted_sequence, then perform the animation." | |||
2 : "Run" : "The monster will run to the scripted_sequence, then perform the animation." | |||
4 : "Instantaneous" : "The monster will instantly warp to the location of the scripted_sequence and perform the animation." | |||
5 : "No - Turn to Face" : "The monster will not move, but will turn to the scripted_sequence's angle before performing the animation." | |||
] | ] | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
4 : "Repeatable" : 0 : "If enabled, the sequence can be repeated more than once. Otherwise the entity will be removed once the sequence is complete." | |||
8 : "Leave Corpse" : 0 : "If enabled, if the action animation is a death animation, causing the monster to die, the corpse will not fade out. Might not work." | |||
16 : "Cancel on Alert" : 0 : "If enabled, if alerted, the monster will cancel all further scripted_sequences and attack the player." | |||
32 : "No Interruptions" : 0 : "If enabled, the sequence cannot be interrupted. The monster will ignore damage until the sequence is complete, as with the aiscripted_sequence entity." | |||
64 : "Override AI" : 0 : "If enabled, Forces the monster to start the sequence regardless of its state. With this set, the sequence will start even when the monster is under attack by something. Might not work." | |||
128 : "No Script Movement" : 0 : "If enabled, when the sequence is completed, the monster will be placed back where the Action Animation started (if the animation would cause the monster to move)." | |||
] | ] | ||
] | ] | ||
//////////////////////////////////////////////////////////////////////////////// | |||
// SPEAKER ENTITY | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@ | @PointClass iconsprite("sprites/Hammer/speaker.spr") base(Targetname) = speaker : "Announcement Speaker: Creates a public announcement system or an ambient sound system that randomly plays sounds from the sentences.txt file, or they can be scripted into a .SEQ file." | ||
[ | [ | ||
// e.g. ARAB_OUTSIDE_YELL | |||
message(choices) : "Sentence Group Name" :"": "The sentence group to randomly select sentences from. Use the choices or enter your own. For example: ARAB_OUTSIDE_YELL." = | |||
[ | [ | ||
"COOM" : "Silly" : "Silly Announcements" | |||
"OFFICE_SFX" : "Office SFX" : "Typical office sounds." | |||
"arcticwind_gust" : "Arctic wind SFX" : "Wind sounds for windy places." | |||
"WILD" : "Wilderness SFX" : "Wind, birds and bees." | |||
"JUNGLE" : "Jungle SFX" : "Jungle and thunder." | |||
"ROCKET" : "Rocket SFX" : "Steam bursts." | |||
"FAR_WAR" : "Far warzone SFX" : "Far away shooting, exploding and jet sounds." | |||
"NEAR_WAR" : "Near warzone SFX" : "Near by shooting, exploding and jet sounds." | |||
"ARAB_OUTSIDE_YELL" : "Arabic yelling SFX" : "An arabic man yelling into a speaker." | |||
"ARAB_OUTSIDE_WAR" : "Arabic warzone SFX" : "Arabic warzone sounds, lots of shooting." | |||
"ARAB_HOUSE" : "Arabic house SFX" : "Kinda spooky. Has footsteps and a baby cry." | |||
"WIND_METALCREAK" : "Creaking metal SFX" : "Metal and wind, together." | |||
"FASTLINE_SPEAKER" : "English train announcer" : "Announcer that speaks english. Used in FASTLINE." | |||
"EURONITECITY_SPEAKER" : "European city SFX" : "Generic European town sounds. Bells and dogs." | |||
"WOODSTEPS" : "Wood steps SFX" : "Spooky reverberant footsteps on wood." | |||
"DESERT" : "Desert SFX" : "Desert sounds- wind, birds, sand etc." | |||
"CITYSLUM" : "City slum SFX" : "Traffic, gunshots, sirens etc." | |||
"WOODCREAK" : "Wood creak SFX" : "Spooky reverberant wood creaks." | |||
"LOST_JUNGLE" : "LOST Jungle SFX" : "More jungle birds." | |||
] | ] | ||
health(integer) : "Volume (10 = loudest)" : 5 : "Sets the volume of the sound. Scales from 0 (completely silent) to 10 (maximum)." | |||
spawnflags(flags) = | |||
[ | [ | ||
1 : "Start Silent" : 0 : "If enabled, the entity will have to be triggered to work." | |||
] | ] | ||
] | ] | ||
@ | //////////////////////////////////////////////////////////////////////////////// | ||
// TRIGGER ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass iconsprite("sprites/Hammer/TriggerAuto.spr") base(Targetx) = trigger_auto : "Trigger Auto: This entity fires its target the moment the map has loaded. Setting 'Delay before trigger' to something like 0.2 is a good idea, because it's possible for the trigger_auto to fire before the entity it targets has even been spawned." | |||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "Remove On fire" : 1 : "If this is set, the trigger_auto will be removed from the game after firing." | ||
] | |||
globalstate(string) : "Global State to Read" : : "The name of a global variable (set by an env_global). This variable sets the state of the trigger_auto." | |||
triggerstate(choices) : "Trigger State" : 0 : "Sets the type of trigger the trigger_auto sends. Options are:" = | |||
[ | |||
0 : "Off" | |||
1 : "On" | |||
2 : "Toggle" | |||
] | ] | ||
] | |||
@SolidClass base(Targetname, Master) = trigger_autosave : "Trigger Auto-Save: When the player moves through the area covered by this entity, the game will be autosaved. This trigger only works once: it is removed when the auto-save occurs." | |||
[ | |||
spawnflags(flags) = | |||
[ | [ | ||
1 : "Use Only" : 0 : "If enabled, The entity cannot be triggered by the player walking into it, but must be triggered by another entity." | |||
1 : " | ] | ||
] | |||
] | ] | ||
@ | //!TEST! | ||
@SolidClass base(Targetname, Target, Master) = trigger_zipline : "Trigger Zipline: Tiggers an animation and then teleports the player to the selected location. CASTLE> This one bugged out alot and stopped the flow of gameplay. We ended up scrapping the use of it in 1st level of High Rise and replaced it with a bridge. It was never fixed." | |||
[ | [ | ||
// start(choices) : "Is start" : : "Start point of the zipline." = | |||
// [ | |||
// 0 : "No" | |||
// 1 : "Yes" | |||
// ] | |||
start(integer) : "Is start" : : "Start point of the zipline." | |||
end(integer) : "Is end" : : "End point of the zipline." | |||
// end(choices) : "Is end" : : "End point of the zipline." = | |||
// [ | |||
// 0 : "No" | |||
// 1 : "Yes" | |||
// ] | |||
ziplinetarget(target_destination) : "Zipline Target" : : "Point where the player will be teleported to." | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "Fire once" : 0 : "If enabled, the entity can only be activated once. " | ||
] | ] | ||
] | ] | ||
@ | @PointClass iconsprite("sprites/Hammer/TriggerCamera.spr") base(Targetname, Targetx) = trigger_camera : "Trigger Camera: This entity allows you to place moving cameras in your maps that take control away from the player for a time." | ||
[ | [ | ||
wait(integer) : "Hold time" : 0 : "How many seconds camera controls player view. Player recovers his view and all camera effects are exterminated after that." | |||
moveto(string) : "Path Corner" : : "The first path_corner to aim for. For a static camera leave this empty. Supports path_track as well" | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "Start At Player" : 0 : "If enabled, The camera starts at players position, after that it will gradually switch to a path_corner route. If no path_corner is specified, the camera will move at the direction the player was looking at and won't stop until the 'Hold time' is finished." | ||
2 : "Follow Player" : 0 : "If enabled, Uses the player as the focal point." | |||
4 : "Freeze Player" : 0 : "If enabled, Stops the player from moving while camera is in action." | |||
//8 : "???" : 0 : "Not sure if this exists." | |||
16 : "Instant move" : 0 : "If enabled, The camera will move from path to path without any movement smoothing." | |||
//32 : "???" : 0 : "Not sure if this exists." | |||
//64 : "???" : 0 : "Not sure if this exists." | |||
] | ] | ||
speed(string) : "Initial Speed" : "0" : "Starting speed of camera when camera is moving." | |||
acceleration(string) : "Acceleration units/sec^2" : "500" : "Amount of units the camera accelerates each second (if it's moving). Doesn't work when 'Instant Move' is selected." | |||
deceleration(string) : "Stop Deceleration units/sec^2" : "500" : "Amount of units the camera accelerates each second (if it's moving). Might not work correctly." | |||
immediate(integer) : "Immediate" : : "Not sure if this is working correctly." | |||
useoverlay(integer) : "Use Overlay" : 0 : "Use a special security-like overlay on the camera." | |||
] | ] | ||
@PointClass base(Targetname) = | @PointClass iconsprite("sprites/Hammer/TriggerCDAudio.spr") base(Targetname) = trigger_cdaudio : "Trigger CD Audio: When the player passes through this entity, the selected CD audio track will be played. Serves the same purpose as the radius-based target_cdaudio." | ||
[ | [ | ||
trackname(string) : "Track Name" : "sound/music/TITLE" : "Input a track to play. Use this format: 'sound/music/xyz'." | |||
trackname(choices) : "Track Name" : "" : "Input a track to play. Use this format for custom music: 'sound/music/xyz'." = | |||
[ | |||
"" : "None" | |||
sound/music/alamo_battle : "Alamo - Battle" | |||
sound/music/alamo_found : "Alamo - Found" | |||
sound/music/alamo_intro : "Alamo - Intro" | |||
sound/music/alamo_success : "Alamo - Success" | |||
sound/music/brecon_airstrike : "Building Recon - Airstrike" | |||
sound/music/brecon_intro : "Building Recon - Intro" | |||
sound/music/brecon_seenuke : "Building Recon - See Nuke" | |||
sound/music/brecon_showdown : "Building Recon - Showdown" | |||
sound/music/brecon_success : "Building Recon - Success" | |||
sound/music/downed_blow : "Downed - Blow" | |||
sound/music/downed_gassed : "Downed - Gassed" | |||
sound/music/downed_intro : "Downed - Intro" | |||
sound/music/downed_package : "Downed - Package" | |||
sound/music/downed_success : "Downed - Success" | |||
sound/music/downed_wakeup : "Downed - Wakeup" | |||
sound/music/fastline_begin : "Fastline - Begin" | |||
sound/music/fastline_bomb : "Fastline - Bomb" | |||
sound/music/fastline_flashed : "Fastline - Flashed" | |||
sound/music/fastline_intro : "Fastline - Intro" | |||
sound/music/fastline_transcop : "Fastline - Transit Cop" | |||
sound/music/hank_final : "Hankagai - Final" | |||
sound/music/hank_intro : "Hankagai - Intro" | |||
sound/music/hank_success : "Hankagai - Success" | |||
sound/music/hank_toshdown : "Hankagai - Toshi Down" | |||
sound/music/hank_toshyell : "Hankagai - Toshi Yell" | |||
sound/music/hr_bossplat" : "High Rise - Boss Platform" | |||
sound/music/hr_groundass" : "High Rise - Gound Assault" | |||
sound/music/hr_hithead" : "High Rise - Hit Head" | |||
sound/music/hr_intro" : "High Rise - Intro" | |||
sound/music/hr_miniboss" : "High Rise - Mini Boss" | |||
sound/music/hr_missioncue" : "High Rise - Mission Cue" | |||
sound/music/hr_nukes" : "High Rise - Nukes" | |||
sound/music/hr_success" : "High Rise - Success" | |||
sound/music/hr_failure" : "High Rise - Failure" | |||
sound/music/hr_toolate" : "High Rise - Too Late" | |||
sound/music/jungle_intro : "Druglab - Intro" | |||
sound/music/jungle_start : "Druglab - Start" | |||
sound/music/jungle_success : "Druglab - Success" | |||
sound/music/lost_end : "Lost Cause - End" | |||
sound/music/lost_intro : "Lost Cause - Intro" | |||
sound/music/lost_success : "Lost Cause - Success" | |||
sound/music/lost_team : "Lost Cause - Team" | |||
sound/music/miami_intro : "Miami - Intro" | |||
sound/music/miami_success : "Miami - Success" | |||
sound/music/miami_threat : "Miami - Threat" | |||
sound/music/motor_intro : "Motorcade Assault - Intro" | |||
sound/music/motor_success : "Motorcade Assault - Success" | |||
sound/music/pipe_bomb : "Pipe Dream - Bomb" | |||
sound/music/pipe_getover : "Pipe Dream - Get Over" | |||
sound/music/pipe_intro : "Pipe Dream - Intro" | |||
sound/music/pipe_success : "Pipe Dream - Success" | |||
sound/music/recoil_intro : "Recoil - Intro" | |||
sound/music/recoil_meetsnip : "Recoil - Meet Sniper" | |||
sound/music/recoil_rescuesnip : "Recoil - Rescue Sniper" | |||
sound/music/recoil_success : "Recoil - Success" | |||
sound/music/run_cue : "Run! - Cue" | |||
sound/music/run_helidown : "Run! - Heli Down" | |||
sound/music/run_intro : "Run! - Intro" | |||
sound/music/run_success : "Run! - Success" | |||
sound/music/run_truckover: "Run! - Truck" | |||
sound/music/sand_intro : "Sandstorm - Intro" | |||
sound/music/sand_scud : "Sandstorm - Scud" | |||
sound/music/sand_spotted : "Sandstorm - Spotted" | |||
sound/music/sand_success : "Sandstorm - Success" | |||
sound/music/secret_war : "Secret War - Secret War" | |||
sound/music/silo_attack : "Secret War - Attack" | |||
sound/music/silo_escape : "Secret War - Escape" | |||
sound/music/silo_explochase : "Secret War - Explosion" | |||
sound/music/silo_finalbattle : "Secret War - Final Battle" | |||
sound/music/silo_intro : "Secret War - Intro" | |||
sound/music/silo_success : "Secret War - Success" | |||
sound/music/thinice_boss : "Thin Ice - Boss" | |||
sound/music/thinice_intro : "Thin Ice - Intro" | |||
sound/music/thinice_ship : "Thin Ice - Ship" | |||
sound/music/thinice_success : "Thin Ice - Success" | |||
sound/music/train_failure : "CT Training - Failure" | |||
sound/music/train_intro : "CT Training - Intro" | |||
sound/music/train_success : "CT Training - Success" | |||
sound/music/train_work1 : "CT Training - Work" | |||
sound/music/train_work2 : "CT Training - Working Again" | |||
sound/music/truth_intro : "Truth - Intro" | |||
sound/music/truth_success : "Truth - Success" | |||
sound/music/truth_vx : "Truth - VX Gas" | |||
sound/music/turncrank_boss : "Turn Crank - Boss" | |||
sound/music/turncrank_flash : "Turn Crank - Flash" | |||
sound/music/turncrank_intro : "Turn Crank - Intro" | |||
sound/music/turncrank_success : "Turn Crank - Success" | |||
sound/music/turncrank_taunt : "Turn Crank - Taunt" | |||
sound/music/end : "End" | |||
sound/music/failure1 : "Failure 1" | |||
sound/music/failure2 : "Failure 2" | |||
sound/music/failure3 : "Failure 3" | |||
sound/music/failure4 : "Failure 4" | |||
sound/music/launcher_loop : "Launcher Loop" | |||
sound/music/menu_loop : "Menu Loop" | |||
] | |||
loop(choices) : "Loop" : 0 : "Select if the track loops." = | |||
[ | [ | ||
0 : " | 0 : "No" | ||
1 : " | 1 : "Yes" | ||
] | ] | ||
] | ] | ||
@PointClass iconsprite("sprites/Hammer/TriggerChangeKeyValue.spr") base(Targetname, Global, Master, Targetx) = trigger_changekeyvalue : "Trigger Change Key Value: It's easier to add keys and values to change the targetted entity manually. Very similar to how you would with a MultiManager. Key is the keyvalue name and the value is what to change it too when it is trigger." [] | |||
@SolidClass | @SolidClass = trigger_changelevel : "Change Level: This entity causes a level transition, where a new map is loaded and the player is placed in it." | ||
[ | [ | ||
targetname(string) : "Name" : : "Property used to identify entities." | |||
map(string) : "New map name" : : "The name of the new map to load. It's recommended to keep your map names short with no capital letters, spaces, or special characters. Instead of 'Chapter 3 Level 5', try c3l5 or ch3_lvl5." | |||
landmark(string) : "Landmark name" : : "The name of the info_landmark that defines the same point in space in both maps. It's recommended to follow the same naming conventions for landmarks - no capital letters or spaces/special characters." | |||
changetarget(target_destination) : "Change Target" : : "The entity name to be triggered in the next map. Works similar to a trigger_auto." | |||
changedelay(string) : "Delay before change target" : "0" : "Self-explanatory." | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "No Intermission" : 0 : "Not sure what this does. No explanation exist at the moment." | ||
2 : " | 2 : "USE Only" : 0 : "If enabled, Entity cannot be triggered by the player walking into it, but must be triggered by another entity." | ||
] | ] | ||
] | ] | ||
@ | @PointClass iconsprite("sprites/Hammer/TriggerChangeTarget.spr") base(Targetname, Targetx) = trigger_changetarget : "Trigger Change Target: This entity can change the 'Target' value of any entity." | ||
[ | [ | ||
m_iszNewTarget(string) : "New Target" : : "Change the target entity's 'target' value to this." | |||
] | ] | ||
@PointClass | |||
@PointClass iconsprite("sprites/Hammer/TriggerCounter.spr") base(Trigger) = trigger_counter : "Trigger Counter: This entity counts the number of times it is triggered and activates its target when it reaches a specified number." | |||
[ | [ | ||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "No Message" : 0 : "If enabled, the message key will be deactivated." | ||
] | ] | ||
count(integer) : "Count before activation" : 1 : "The number that the counter must reach before activating its targets." | |||
] | |||
@PointClass iconsprite("sprites/Hammer/TriggerEndMission.spr") base(Targetname) = trigger_endmission : "Trigger End Mission: This entity functions as a self contained displacement-type level change. Very useful for changing locales for story purposes. Also includes env_fade functions." | |||
[ | |||
music(string) : "MP3" : "sound/music/MP3NAME" : "Input an MP3 track to play. Use this format: 'sound/music/xyz'." | |||
nextmap(string) : "Next map" : : "The name of the new map to load." | |||
fade_red(integer) : "Red" : : "The red colour out of 'RGB'. Mix this with the other inputs to achieve a colour. Input a number between 0 - 255" | |||
fade_green(integer) : "Green" : : "The green colour out of 'RGB'. Mix this with the other inputs to achieve a colour. Input a number between 0 - 255" | |||
fade_blue(integer) : "Blue" : : "The blue colour out of 'RGB'. Mix this with the other inputs to achieve a colour. Input a number between 0 - 255" | |||
fade_alpha(integer) : "Screen Fade Opacity" : 255 : "The maximum alpha value (opacity) of the overlay. Scales from 0 (transparent) to 255 (opaque)." | |||
duration(string) : "Duration (seconds)" : "2.0" : "Sets how long the overlay should take to fade into its full effect." | |||
holdtime(string) : "Hold Fade (seconds)" : "0.0" : "Sets how long the overlay should stay on the screen at its full effect before turning itself off." | |||
] | ] | ||
@ | @SolidClass base(Targetname) = trigger_endsection : "Trigger EndSection: This entity ends the current game and returns the player to the main menu." | ||
[ | [ | ||
section(choices) : "Section" : : "Only one choice, Takes the player back to the menu." = | |||
[ | |||
"_oem_end_training" : "Return to main menu" : "Takes the player back to the main menu." | |||
] | |||
spawnflags(flags) = | spawnflags(flags) = | ||
[ | [ | ||
1 : " | 1 : "USE Only" : 0 : "If enabled, the entity cannot be triggered by the player walking into it, but must be triggered by another entity." | ||
] | ] | ||
] | ] | ||
@ | @PointClass iconsprite("sprites/Hammer/TriggerFreezePlayer.spr") base(Targetname) = trigger_freezeplayer : "Trigger Freeze Player: This entity freezes the player on activation. It has a toggle type behavior. To unfreeze the player, just retrigger the entity." [] | ||
@SolidClass base(Trigger) = trigger_gravity : "Trigger Gravity: This entity sets the effect of gravity from low to normal. Level of gravity stays set after being put into effect - use two brushes, one with the new gravity, one with the old, to make sure the player returns to normal gravity in situations where that is necessary." | |||
[ | [ | ||
showicon(choices) : "Show hud icon" : | gravity(string) : "Gravity" : "1.0" : "Any value between 0 and 1, 1 being normal gravity." | ||
[ | ] | ||
0 : "No" | |||
1 : "Yes" | @PointClass iconsprite("sprites/Hammer/TriggerHud.spr") base(Targetname) = trigger_hud : "Trigger HUD Switcher: This entity switches the players HUD on or off." | ||
] | [ | ||
cover(integer) : "Cover" : : "Define how much 'cover' the player receives when entering the entity. Input a value between 0 (Still visible) to 100 (Invisible)." | display(choices) : "HUD Display" : "" : "Choose if the HUD is visible or not. Options are:" = | ||
[ | |||
0 : "Off" | |||
1 : "On" | |||
] | |||
] | |||
@PointClass iconsprite("sprites/Hammer/TriggerIncognito.spr") base(Targetname) = trigger_incognito : "Incognito Mode: This entity makes the player 'undercover', meaning the enemies won't try and kill you. This was used at the start of the mission 'Turn of the Crank'." | |||
[ | |||
undercover(choices) : "Undercover?" : 0 : "Choose if the player is undercover or not. Options are:" = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
] | |||
@SolidClass base(Targetname, Master, Targetx) = trigger_hurt : "Trigger Hurt Player: This entity hurts anyone in its area." | |||
[ | |||
spawnflags(flags) = | |||
[ | |||
1 : "Target Once" : 0 : "Normally the trigger_hurt will trigger its target every time it hurts something. If enabled, it will do this only once." | |||
2 : "Start Off" : 0 : "If enabled, the entity needs to be activated to work." | |||
8 : "No clients" : 0 : "If enabled, The entity won't affect players." | |||
16 : "Fire Client Only" : 0 : "If enabled, the entity will hurt anyone, but will only fire its target when it hurts a player." | |||
32 : "Touch Client Only" : 0 : "If enabled, only the player will be hurt." | |||
] | |||
dmg(integer) : "Damage" : 10 : "The amount of damage to deal out." | |||
damagetype(choices) : "Damage Type" : 0 : "Type of damage. Options are:" = | |||
[ | |||
0 : "GENERIC" | |||
1 : "CRUSH" | |||
2 : "BULLET" | |||
4 : "SLASH" | |||
8 : "BURN" | |||
16 : "FREEZE" | |||
32 : "FALL" | |||
64 : "BLAST" | |||
128 : "CLUB" | |||
256 : "SHOCK" | |||
512 : "SONIC" | |||
1024 : "ENERGYBEAM" | |||
16384 : "DROWN" | |||
32768 : "PARALYSE" | |||
65536 : "NERVEGAS" | |||
131072 : "POISON" | |||
262144 : "RADIATION" | |||
524288 : "DROWNRECOVER" | |||
1048576 : "CHEMICAL" | |||
2097152 : "SLOWBURN" | |||
4194304 : "SLOWFREEZE" | |||
] | |||
] | |||
@PointClass iconsprite("sprites/Hammer/TriggerKillTarget.spr") base(Targetname, Target) = trigger_killtarget : "Trigger Kill Target: As the name implies, it kills its targetted entity." | |||
[ | |||
spawnflags(flags) = | |||
[ | |||
1 : "Death Gib" : 0 : "If enabled, kills the targeted entity through exploding the body." | |||
2 : "Remove on use" : 0 : "If enabled, removes this entity from the game after activation." | |||
] | |||
] | |||
@SolidClass base(Angles, Master) = trigger_monsterjump : "Trigger Monster Jump: Any monster that walks into the area covered by this entity will be made to jump in the specified direction, height and speed." | |||
[ | |||
speed(integer) : "Jump Speed" : 40 : "Speed of the jump in units per second." | |||
height(integer) : "Jump Height" : 128 : "The height of the jump in units." | |||
] | |||
@SolidClass base(Trigger) = trigger_multiple : "Trigger Activate Multiple: This entity triggers a specified target every time its area is entered by players, monsters or pushables." | |||
[ | |||
wait(integer) : "Delay before reset" : 0 : "Usually the time in seconds before an entity should trigger its target (after being triggered itself). Under other SmartEdit names, delay might also be the time to wait before performing some other action." | |||
spawnflags(flags) = | |||
[ | |||
1 : "Monsters Allowed" : 0 : "If enabled, allow monsters to activate this entity." | |||
2 : "No Clients" : 0 : "If enabled, players cannot activate this entity." | |||
] | |||
] | |||
@PointClass iconsprite("sprites/Hammer/TriggerObjective.spr") base(Targetname) = trigger_objective : "Trigger Objective: Writes text to a 'Objective GUI' type area. Refer to the notes section of this FGD for a proper explaination." | |||
[ | |||
objective(string) : "Objective" : : "Name the objective that should be linked from 'czeror_english' or .SEQ. For example: '#OBJ01_AIDEV'." | |||
notransition(choices) : "Transition" : : "This might mean that the OBJ HUD transfers to the next level. Functions as a bool." = | |||
[ | |||
0 : "Off" | |||
1 : "On" | |||
] | |||
state(choices) : "State" : "" : "Changes what 'state' the objective starts in. Options are:" = | |||
[ | |||
0 : "Linear" : "The Objective is not active on level load. Instead toggles the value to 'Active' on first trigger, and 'Completed' on second." | |||
1 : "Active" : "The objective is active on level load." | |||
2 : "Completed" : "The objective is completed." | |||
] | |||
] | |||
@SolidClass base(Trigger) = trigger_once : "Trigger Activate Once: When this entity's area is entered by players, pushable objects or monsters, it triggers its target, but only once." | |||
[ | |||
style(integer) : "Style" : 0 : "Not sure what this does." | |||
spawnflags(flags) = | |||
[ | |||
1 : "Monsters Allowed" : 0 : "If enabled, allow monsters to activate this entity." | |||
2 : "No Clients" : 0 : "If enabled, players cannot activate this entity." | |||
] | |||
] | |||
@SolidClass base(Trigger, Angles) = trigger_push : "Trigger Push Player: When a player, monster or pushable object enters this entity's area, it is pushed in the specified direction and speed." | |||
[ | |||
spawnflags(flags) = | |||
[ | |||
1 : "Once Only" : 0 : "If enabled, Makes the entity have activate only once." | |||
2 : "Start Off" : 0 : "If enabled, the entity needs to be triggered in order to start." | |||
] | |||
speed(integer) : "Speed of push" : 40 : "The speed to push at in units per second." | |||
] | |||
@PointClass iconsprite("sprites/Hammer/TriggerRelay.spr") base(Targetname, Targetx, Angles) = trigger_relay : "Trigger Relay: This entity acts as a relay between an event and its target. Its main advantage is that it can send a specific trigger state to its target (only turn it on, or only turn it off, as opposed to the toggling experienced with typical triggering)." | |||
[ | |||
spawnflags(flags) = | |||
[ | |||
1 : "Remove On fire" : 0 : "If enabled, this entity will be removed after triggering its targets." | |||
] | |||
triggerstate(choices) : "Trigger State" : 0 : "Sets the type of trigger this entity sends. Options are:" = | |||
[ | |||
0 : "Off" | |||
1 : "On" | |||
2 : "Toggle" | |||
] | |||
] | |||
@PointClass iconsprite("sprites/Hammer/TriggerSequence.spr") base(Targetname) = trigger_sequence : "Trigger Sequence File: Useful entity for bypassing limits of the engine. Refer to the notes section of this FGD." | |||
[ | |||
sequence_file(string) : "Sequence File" : "SEQUENCE.seq" : "Usually, this is the 'MAPNAME.seq'. You have to create this file and store it in the '/sequences' for it to work." | |||
sequence_id(string) : "Sequence Name" : "" : "Sequence name to use. Usable sequences are marked with % and a name after. If the sequence you want it %obj1, input 'obj1' into this field." | |||
spawnflags(flags) = | |||
[ | |||
1 : "Use Once?" : 0 : "If enabled, only triggers once and then gets removed." | |||
] | |||
] | |||
@SolidClass base(Targetname) = trigger_stealth: "Trigger Stealth: When the player enters this entity, it hides the player in relation to how much 'cover' is specified." | |||
[ | |||
showicon(choices) : "Show hud icon" : "" : "Choose if the stealth icon is displayed on the HUD in-game." = | |||
[ | |||
0 : "No" | |||
1 : "Yes" | |||
] | |||
cover(integer) : "Cover" : : "Define how much 'cover' the player receives when entering the entity. Input a value between 0 (Still visible) to 100 (Invisible)." | |||
] | |||
@SolidClass base(Trigger) = trigger_teleport : "Trigger Teleport: This entity will teleport things in its area, used with info_teleport_destination." | |||
[ | |||
spawnflags(flags) = | |||
[ | |||
1 : "Monsters" : 0 : "If enabled, allows monsters to activate this entity." | |||
2 : "No Clients" : 0 : "If enabled, Players cannot activate this entity." | |||
] | |||
] | |||
@SolidClass base(Targetname, Target, Master) = trigger_usetool : "Trigger Tool Use Zone: This entity defines where and what tools should be used. Have this entity target something when a tool is used in the zone." | |||
[ | |||
target(target_destination) : "Target" : : "Have this entity target something when a tool is used in the zone." | |||
killtarget(target_destination) : "KillTarget" : : "When an entity is triggered, it will remove from the game the entity specified by this property." | |||
rcbombtarget(target_destination) : "RC Bomb target" : : "Area where the RC bomb will be placed. Kind of like a guide." | |||
toolname(choices) : "Tool Name" : "" : "Tool to be used in this area. Options are:" = | |||
[ | |||
"" : "None" : "Nothing." | |||
bomb_defuse : "Bomb defuse" | |||
weapon_blowtorch : "Blowtorch" | |||
weapon_briefcase : "Briefcase" | |||
weapon_camera : "Camera" | |||
weapon_fiberopticcamera : "Fiber-Optic Camera" | |||
weapon_radio : "Radio" | |||
weapon_radiocontrolledbomb : "RC Bomb" | |||
] | |||
tooltarget(string) : "Tool Target" : : "Where the player needs to be looking to activate the tool, the best way to get this to work is to target an info_target thats in the general area that should be looked in." | |||
spawnflags(flags) = | |||
[ | |||
1 : "Remove on use" : 0 : "If enabled, removes this entity from the game after activation. Causes issues with things like the fiber-optic camera." | |||
] | |||
bombdefusetime(integer) : "Bomb defuse time" : : "Bomb defusal time, in seconds." | |||
] | |||
@SolidClass base(Targetname) = trigger_transition : "Trigger Select Transition Area: This entity creates an area in which the player must be for an associated trigger_changelevel to work. The trigger_transition targetname must share the same name as the info_landmark, otherwise it won't work." [] | |||
//////////////////////////////////////////////////////////////////////////////// | |||
// WEAPON ENTITIES | |||
//////////////////////////////////////////////////////////////////////////////// | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_p228.mdl") = weapon_p228 : "P-228: Takes 357sig rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_glock18.mdl") = weapon_glock18 : "Glock 18: Takes 9MM rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_ak47.mdl") = weapon_ak47 : "AK47: Takes 762 Nato rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_awp.mdl") = weapon_awp : "AWP/AWM: Takes 338 Magnum rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_fiveseven.mdl") = weapon_fiveseven : "Fiveseven: Takes 57MM rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_m3.mdl") = weapon_m3 :"M3: Takes Buckshot shells."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_mac10.mdl") = weapon_mac10 : "MAC10: Takes 45ACP rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_p90.mdl") = weapon_p90 : "P90: Takes 57MM rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_tmp.mdl") = weapon_tmp : "TMP: Takes 9MM rounds."[] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_aug.mdl") = weapon_aug : "AUG: Takes 556 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_btorch.mdl") = weapon_blowtorch : "Blow Torch: A tool. Used with a trigger_usetool brush." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_briefcase.mdl") = weapon_briefcase : "Briefcase: A tool. Used with a trigger_usetool brush." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_camera.mdl") = weapon_camera : "Camera: A tool. Used with a trigger_usetool brush." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_deagle.mdl") = weapon_deagle : "Deagle pistol: Takes 50AE rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_elite.mdl") = weapon_elite : "Elite pistol: Takes 9MM rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_focamera.mdl") = weapon_fiberopticcamera : "Fiber-Optic Camera: A tool. Used with a trigger_usetool brush." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_flashbang.mdl") = weapon_flashbang : "Flashbang: A flash grenade. Good for blinding enemies for a short time." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_g3sg1.mdl") = weapon_g3sg1 : "G3SG1: Takes 762 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_hegrenade.mdl") = weapon_hegrenade : "HE Grenade: A High-Explosive grenade: Good for clearing out rooms of enemies." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_knife.mdl") = weapon_knife : "Knife: A sharp, pointy stick. Nice to have as a backup." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_law-closed.mdl") = weapon_laws : "M72 LAW: Light Anti-Tank Weapon. One time use weapon." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_mp5.mdl") = weapon_mp5navy : "MP5: Takes 9MM rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_m60.mdl") = weapon_m60 : "M60: Takes 556 Nato Boxes." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_m4a1.mdl") = weapon_m4a1 : "M4A1 Colt: Takes 556 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_radio.mdl") = weapon_radio : "Radio: A tool. Used with a trigger_usetool brush." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_rcontrolbomb.mdl") = weapon_radiocontrolledbomb : "RC Bomb: A tool. Used with a trigger_usetool brush." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_scout.mdl") = weapon_scout : "Scout: Takes 762 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_sg552.mdl") = weapon_sg552 : "G552: Takes 556 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_smokegrenade.mdl") = weapon_smokegrenade : "Smoke Grenade: Makes smoke. Handy for distracting an enemy." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_ump45.mdl") = weapon_ump45 : "UMP45: Takes 45ACP rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_usp.mdl") = weapon_usp : "USP: Takes 45ACP rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_xm1014.mdl") = weapon_xm1014 : "XM1014: Takes Buckshot shells." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_shield.mdl") = weapon_shieldgun : "Shield: Comes with a gun too. Handy when the enemy has overwhelming firepower." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_sg550.mdl") = weapon_sg550 : "G550: Takes 556 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_galil.mdl") = weapon_galil : "Galil: Takes 556 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_famas.mdl") = weapon_famas : "FAMAS: Takes 556 Nato rounds." [] | |||
@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_m249.mdl") = weapon_m249 : "M249: Takes 556 Nato Boxes." [] | |||
//////////////////////////////////////////////////////////////////////////////// | |||
// CUT/BROKEN SECTION (Needs Valve to release CZDS SDK) | |||
//////////////////////////////////////////////////////////////////////////////// | |||
//CUT GEAR @PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_gasgrenade.mdl") = weapon_gasgrenade : "Gas Grenade" [] | |||
//CUT GEAR @PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_syringegun.mdl") = weapon_syringegun : "Syringe Gun" [] | |||
//CUT GEAR @PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_holster.mdl") = weapon_holster : "Holster" [] | |||
//CUT GEAR @PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_zipline.mdl") = weapon_zipline : "Zipline" [] | |||
//BROKEN GEAR @PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields, C4Base, ModelFile) studio("models/w_c4.mdl") = weapon_c4 : "C4 Plastique Bomb" [] | |||
//CUT GEAR @PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_medkit.mdl") = weapon_medkit : "medkit" [] | |||
//CUT AMMO @PointClass studio("models/w_weaponbox.mdl") = ammo_66mm : "66mm?"[] | |||
//CUT AMMO @PointClass studio("models/w_weaponbox.mdl") = ammo_syringe : "syringe?"[] | |||
//////////////////////////////////////////////////////////////////////////////// | |||
// JANKY SECTION (The Jank area) | |||
//////////////////////////////////////////////////////////////////////////////// | |||
//This most likely was the basis for the snow, rain and updated .MAT system. It's exposed and can be used in maps but it's super janky and not much is known about it. | |||
//@PointClass iconsprite("sprites/Hammer/Armoury.spr") base(Targetname, Angles, Targetx, RenderFields) studio("models/w_holster.mdl") = weapon_holster : "Holster" : "What does this do?" [] | |||
//@PointClass iconsprite("sprites/Hammer/EnvParticleEmitter.spr") base(Targetname, Angles, RenderFields) = env_particle : "Particle Emitter: Not much information on this entity, the current settings act like smoke. It emits sprites and you can adjust different properties to get it to function with gravity and such. Super janky and is in the JANKY SECTION of this FGD." | |||
//[ | |||
// rendermode(choices) : "Render Mode" : 4 : "Controls the type of rendering that is used for an object. Options are:" = | |||
// [ | |||
// 0 : "Normal" : "Default render mode." | |||
// 1 : "Color" : "Replaces the texture with the choosen colour in 'FX Colour'." | |||
// 2 : "Texture" : "Applies transparency to a brush. The transparency is controlled by the FX Amount." | |||
// 3 : "Glow" : "Removes the black background from sprites. Colour can be applied and resizes as the player approaches. Not used on solid entities." | |||
// 4 : "Solid" : "Removes the blue colour from textures tagged with '{'." | |||
// 5 : "Additive" : "Adds the texture colours to the background. Darker colours become less visible - black is removed. Glows in the dark." | |||
// ] | |||
// renderamt(integer) : "FX Amount (1 - 255)" : 150 : "Input how visible the object is. (Depending on the render mode, this could change the outcome of visibility.)" | |||
// rendercolor(color255) : "FX Color (R G B)" : "65 65 65" : "Input 3 values (R G B) that determine a colour." | |||
// vis_point(string) : "Vis Point" : "player" : "Not sure what this does, takes an info_target(resulting in a directed particle stream)." | |||
// target_direction(string) : "Target Direction" : "none" : "Not sure what this does" | |||
// scale_speed(integer) : "Scale Speed" : 10 : "The speed that the particle scales at." | |||
// spawnflags(flags) = | |||
// [ | |||
// 1 : "Short 2" : 0 : "Makes the sprite short?? AGAIN." | |||
// 8 : "Short" : 0 : "Makes the sprite short?" | |||
// 16 : "No frames" : 0 : "Stops sprite from playing any frames." | |||
// 32 : "Toggleable?" : 0 : "If enabled, spawns the particle system at the start of the map." | |||
// 64 : "Wavy" : 0 : "If enabled, makes the particles move in a wave pattern." | |||
// 128 : "wavy 2" : 0 : "If enabled, makes the particles move in a wave pattern." | |||
// ] | |||
// fade_speed(integer) : "Fade Speed" : 1 : "Speed that the particles dissappear at." | |||
// frequency(integer) : "Frequency" : 3 : "Frequency that the particles spawn in at." | |||
// particle_texture(sprite) : "Particle Sprite" : sprites/black_smoke1.spr : "Sprite to use for the emitter." | |||
// particle_avelocity(string) : "Angular Velocity" : "0 0 0" : "Not sure what this does." | |||
// particle_life(integer) : "Particle Life" : 50 : "How long the particles will stay around after spawning." | |||
// particle_scale(integer) : "Particle Scale" : 450 : "The size of the particle." | |||
// particle_gravity(integer) : "Particle Gravity 1.0 - 0.0" : 0 : "How much gravity affects the particle." | |||
// particle_count(integer) : "Particle Count" : 2 : "How many particles will spawn." | |||
// particle_noise(integer) : "Particle Noise" : 20 : "How much randomness to add to the emitter" | |||
// particle_speed(integer) : "Particle Speed" : 14 : "How fast the particle travels." | |||
// particle_brightness(integer) : "Particle Brightness" : 200 : "The brightness of the particle. Make sure this is set so the particle does not render completely black." | |||
// splash_particles(integer) : "Splash particles" : : "Not sure what this does." | |||
// rnd_count(integer) : "Random particle amount" : : "Varies up the timeing of the particles." | |||
// target_origin(string) : "Target Origin" : "none" : "Not sure what this does." | |||
// attach_point(string) : "Attach Point" : "none" : "Used to 'attach' the particle to things. Can be attached to the player using 'player'." | |||
// particle_type(choices): "Particle type" : : "Type of particle." = | |||
// [ | |||
// 0 : "Sprite" | |||
// 1 : "Plane" | |||
// 2 : "sphere" | |||
// 3 : "cylinder" | |||
// 4 : "disk" | |||
// 5 : "Cone" | |||
// 6 : "Water drops" | |||
// ] | |||
//] | |||
//Doesnt seem to be working. Looks for env_snow and env_rain. | |||
//@PointClass base(Targetname, Targetx) size(-16 -16 -16, 16 16 16) = env_randomweather : "Env_randomweather: Seems to not work. Is in the JANKY SECTION of theis FGD." [] | |||
//////////////////////////////////////////////////////////////////////////////// | |||
// CUSTOM MONSTER SECTION | |||
//////////////////////////////////////////////////////////////////////////////// | |||
//this is an example of custom monsters being written in, a bit wonky, but it works well. this is a grenade launcher/dropper fella. | |||
//unfortunatly, he doesnt want to protect his life. so sometimes he will kill himself trying to kill you. | |||
//Im not sure what else can be made through event editing in anims, wep key and behavior key. skills.cfg sgrenade needs to be pretty high to work. around 1000 | |||
//@PointClass studio() size(-16 -16 0, 16 16 72) color(0 0 255) base(Angles) = monster_terrorist_arctic : "Custom monster: Unfortunatly, this is implemented with some whacky key/value combination and a custom model with animation events changed, so its not quite normal. But can serve as an example." | |||
[ | |||
//behave to 7 | |||
body(integer) : "Body" : 0 : "Bodygroup" | |||
skin(integer) : "Skin" : 0 : "Skin group" | |||
model(studio) : "Model" : "models/terrormodded.mdl" : "Model" | |||
behavior(integer) : "Behavior" : 5 : "Behavior" | |||
weapons(integer) : "Weapons" : 4 : "Weapon characteristics?. Put 4 for a rpg 'doesnt miss' man" | |||
invulnerable(integer) : "Invulnerable" : 1 : "no damage" | |||
] | ] | ||
@PointClass studio("models/leet.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_desert [] | |||
@PointClass studio("models/terror.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_russian [] | |||
@PointClass studio("models/militia.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_urban [] | |||
@PointClass studio("models/asian.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_asian [] | |||
@PointClass studio("models/guerilla.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_jungle [] | |||
@PointClass studio("models/arctic.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) base(Monster, Classtype, ModelFile) = monster_terrorist_arctic [] | |||
/ | @PointClass studio("models/gordo_new.mdl") size(-16 -16 0, 16 16 72) color(255 0 0) = env_scale : "Gordon for size. Personal entity for scale when building in hammer" [] | ||
</nowiki> }} | |||
[[Category:Counter-Strike: Condition Zero Deleted Scenes]] | |||
[[Category:Custom FGDs]] | |||
[[Category:GoldSrc FGDs]] | |||
Latest revision as of 01:39, 11 September 2024
This FGD is considered to be a work-in-progress, while it does have all the functionality to make maps to the same quality of the main game, there might be some wonky stuff, mistakes or non-complete information about entities. There are still keys that are not fully understood and might not be understood until more experimentation is done.
Important
Here are some things to remember when choosing to use this FGD. Alternatively, you can pick this FGD up from TWHL vault.
- Hammer 3.5 only supports entity classnames with up to 32 characters. Therefore, This version of the CS:CZDS FGD file is not compatible with the default Hammer Editor that is provided with HL1. In this case, It is suggested to use
J.A.C.K., an alternative to Hammer for GoldSource. The program supports Windows and Linux and adds a number of features for level editing and modding. If you still want to use Hammer, you should refer to this page and just add in the missing content.
- This is the most up-to-date FGD for CS:CZDS. It is an ongoing effort to bring users the best version of this FGD. If there are any bugs or things missing, please contact me and I will do my best to update it in a timely manner.
- There are fixes provided in the FGD for the most common bugs in the game.
- If you are using J.A.C.K, the help button has a lot of information on usage of the entities.
- There is a section of the FGD dedicated to things that are slightly janky. This space is a space to document oddities within the game.
FGD
- This is a FGD (Forge Game Data) file used to define all of the entities of a game for a map editor (such as Hammer).
To add a FGD file to the map editor, copy the following text into a text editor such as Windows Notepad,Notepad++ or
Visual Studio Code, and save it with "save as type" being "all files" and .fgd appended to the file name. Then open your map editor and add the FGD to your game configuration (Example for HL:S).
