Onslaught Evolved Mapping
From GMod Wiki
Mapping: Mapping for the Onslaught: Evolved gamemode |
Description: | Mapping for conman420's Onslaught : Evolved gamemode |
Original Author: | Metallics |
Created: | 18th May 2008 |
Contents |
Introduction
Updated as of 26th May 2008, this tutorial is accurate for the Beta 1.41 version of this gamemode.
The FP thread for this gamemode can be found here: Facepunch Thread
As with all maps thought should be put into the layout first. The NPCs should be able to see any base the player builds from almost anywhere on the map, otherwise the player could simply hide away and the NPCs will not be able to find him. Secondly, the map should have room to build. The idea of Onslaught is the players build a base which is then assaulted by NPCs, therefore a solid forest setting is not a good idea. It is possible to suggest to the player where you want him to build his fort in your map by leaving flat empty ground in the relevant place.
The player should not be allowed to get close to the spawners. This could be achieved using trigger_hurt brushes, player clip textured brushes, or some other ingenious method. The spawners should also have a raidus of ~600 units of clear space around them so that NPCs do not spawn inside brushes etc. It is best to place the spawner #10 units off the floor so that NPCs do not spawn into the ground either. They spawn with their feet level with the entity.
The map also needs to be fully ground and air noded.
Entities
So far there are only 2 entities, one of which is a hammer default.
sent_spawner
This is a point entitiy. This is the entity that spanws your NPCs. It should be placed where you want them to spawn.
Keyvalues
targetname - Use this to give the spawner a name.
spawndelay - This sets the delay between the spawn of each NPC. If it is not set, it will fallback to the default setting (which is recommended)
path - This defines which path_track the npcs should start heading towards when they spawn. If not specified this defaults to "path" for support of older maps. The value should be the name of the path_track.
npc - This defines what should be spawned. This value here should be the name(s) of the NPCs you want spawned. Different NPCs should be seperated with a single space. For example should you want combine soldiers and manhacks to spawn: "npc_manhack npc_combine_s". The ratio of these names to each other also defines the ratio in which the NPCs spawn, so a 2:1 ratio of combine soldiers to manhacks spawned would read like this: "npc_manhack npc_combine_s npc_combine_s".
Currently supported NPCs:
- npc_combine_s - soldier or elite is picked at random
- npc_manhack
- npc_hunter
- npc_zombie
- npc_zombine
- npc_fastzombie
- npc_headcrab
- npc_antlion
- npc_metropolice
- npc_rollermine
- npc_antlionguard
- npc_poisonzombie
In future there may be support for other classes.
path_track
This entity will be where the NPCs head towards once spawned, to set them off in the right direction. This is where it helps if you have a good idea where a player will want to build their base. It should be placed in the rough area where the base will probably be built. The gamemode now supports multiple path_tracks. They should be named, and the name entered into the sent_spawner.
func_nobuild
This brush prevents players spawning or placing props within it's volume. Players also nocollide with each other within it's volume. Its uses include both human and npc spawns.
Keyvalues
killplayers - Setting this to 1 makes the brush behave like a trigger_hurt at the same time, although currently damage type and the amount of damage dealt are not changeable.
Triggers
These are for making things happen at certain points during the gamemode, for example trigggering an explosion when the players win. First, place a Logic_relay, now name it appropriately from the list below. It will be triggered at the according time, so you should use the "OnTrigger" output to drive other entities from it.
List of supported names:
- ose_battle - battle starts.
- ose_build - build starts.
- ose_lose - players lose.
- ose_win - players win.
Debugging
If you have set up the spawner's keyvalues wrong you will get this message in the console:
ERROR: Keyvalues setup incorrectly! See a mapper!
Onslaught Evolved prints the keyvalues of all the sent_spawner entities on map start so you can check it is all set up correctly.