Gloom Map Depository
Mission Entities
Compiled by The Pyro

Sections

Gloom Entity Descriptions

How do I...?




Worldspawn Entity

The worldspawn entity is in every map, not just gloom maps, but there are several gloom-specific fields that you may add.

leveltimer This field specifies the time limit for the map. Give it a value equal to the number of minutes you want the game to last.
playmode This field specifies who wins when the leveltimer timelimit is reached. The value "0" is the default value, which specifies a tie game. A value of "1" means the humans win, and "2" means the spiders win.
spawnteam This field specifies how many spawnteams there are in the map in total. See "How do I randomize where bases are" for more info.
classes This field specifies which classes will NOT be able to spawn on the map. See "Using the classes field" for more information.



target_aliens_win
target_humans_win

These entities are exactly what they sound like; the appropriate team wins when the entity is triggered. If no targetname is specified then they can be triggered just like normal variable-sized triggers, by players touching/walking through them. These entities also support the classes field. In this case, the classes field specifies which classes WILL trigger the entity.




on_aliens_win
on_humans_win

These entities will fire their targets when the alien/human team wins.




trigger_once
trigger_multiple

The trigger_once and trigger_multiple entities work exactly the same as they do in normal quake 2, except that in gloom you may use the classes field. This field specifies which classes WILL trigger the entities.




trigger_hurt_aliens
trigger_hurt_humans

Both of these entities function exactly the same as the normal quake 2 trigger_hurt entity, except that these will only hurt either the humans or the aliens. The same spawnflags and fields that apply to the trigger_hurt entity also applies here.




trigger_fog

Gloom now supports pseudo-fog. The fog works by blending the client's screen with the color you specify. The fog does not decrease/increase with distance. The fog entity is variable-sized; any client that walks into the area that is occupied the entity will see the full effects of the fog, although it gradually blends with the screen when the client first enters the area. This entity supports the classes field, which in this case specifies which classes WILL see the fog. If no value is specified then all classes will see the fog.
classes This field specifies which classes WILL see the fog. All classes see the fog by default.
mass This field specifies how thick the fog is. The range is 0 to 100, where 0 is no fog at all and 100 completely obscures the player's screen with fog.
speed The speed field specifies how much red is in the fog. The three fields that specify colors are speed, accel, and decel - red, green and blue respectively. The values are relative, so there is no set range. In other words, it doesn't matter if the green is 200 and the blue is 100 or the green is 100 and the blue is 50. In both cases the green is twice as much as the blue, so the fog will be the same color.
accel How much green
decel How much blue



How do I prevent building in certain areas?

It is very easy to prevent breeders and engineers from building in an area. Create a brush that fills the entire area that you want to restrict. If you want an entire room to be off-limits for building, then the brush must fill the entire room. Next, go to the surface/texture properties for that brush. Make sure the following flags are set: "NoDraw","Mist", and "Monster_Clip". That's it.

There's another neat trick you can do with these brushes that make building off-limits. If you make a func_wall and use the same texture flags, it will prevent building whenever it is on but still be invisible. So in effect you can make an area that becomes off-limits for building at the switch of a button (or when a timer goes off, or when a person destroys a target, etc...).




How do I prevent certain classes from spawning?

The way you prevent certain classes from spawning in your map is by using the classes field of the worldspawn entity. Add up the flags for the classes that you do NOT want to spawn and use that value for the classes field.




How do I randomize where bases are?

Every gloom entity - eggs, depots, spikers, teleporters, etc. - may belong to one or more "spawnteams". There can be up to 8 spawnteams per map, but you MUST specify how many spawnteams your map uses in total inside the worldspawn entity. When the map is loaded, the game will automatically pick one of these spawn teams at random and spawn all of the gloom objects that belong to that team.

How do you specify which spawnteams an object belongs to? You need to give the entity the key pair "spawnteams","xxx" where "xxx" is a number. This number is calculated similarly to the spawnflags number. If you don't know what flags are, just add up the numbers for the correct teams in the table below and use that number:

TeamFlag Value
01
12
24
38
416
532
664
7128

Remember that ONLY 1 spawnteam is spawned. Therefore you must have both eggs and teleporters in each spawnteam, or there will be problems...



How do I make an entity (button,door,trigger) usable by only certain classes?

Only a few gloom entities support the classes field. If you want to make other entities - such as buttons and doors - class-specific, then you must use one of the entities that supports the classes field in conjunction with the door/button/whatever.

Example: Let's say that you want to make a door that only a commando can open. Make the door as normal, then put a trigger_multiple right in front of the door. Use the classes field of the trigger_multiple to specify the commando class. Now have the trigger_multiple target the door. If you did it right, only a commando will be able to trigger the door. Remember that if you want the door to be openable from both sides then you'll need to extend the trigger_multiple so that it can be touched by the commando from either side of the door.




How do I make areas off-limits to one team?

Use either a trigger_hurt_humans or a trigger_hurt_aliens to kill/hurt members of a specific team. You may also use the misc_infestation entity to hurt members of the human team that are not immune to infested bodies.




How do I add fog (pseudo-fog)?

You may use the trigger_fog entity to add psuedo-fog to an area. The trigger_fog entity supports the classes field.




Using the "classes" field

Many gloom entities support the "classes" field. This field usually specifies which classes are affected (or not affected) by a certain entity. You use the classes field by adding the key pair "classes","xxx" where xxx is some number. This number is calculated by adding up the numbers listed for each of the classes that you want to be affected (or not affected in some cases):

Engineer 1 Breeder 65536
Grunt 2 Hatchling 131072
Shock Trooper 4 Drone 262144
Biotech 32 Wraith 1048576
Heavy Trooper 8 Kami 524288
Commando 16 Stinger 2097152
Exterminator 64 Guardian 4194304
Mech 128 Stalker 8388608

(These values are backwards from the values generated by Binary Cowboy's classes calculator. But these are the ones that seem to work correctly)

Example: Let's say you want only breeders and engineers to be able to trigger a trigger_multiple. You would look up the values for the breeder and the engineer, which are 65536 and 1. You would then add them together to get 65537. Then you would go to the trigger_multiple entity and add the key pair "classes","65537".

Entities that support the classes field: worldspawn, trigger_once, trigger_multiple, trigger_fog, target_humans_win, target_aliens_win



Links

Back To Top