With Halo 2's scripting, you are able to spawn an despawn objects. With this in mind, SecretSchnitzel and myself decided to test to see if there was a way to replicate a halo 1 style spawn system by only spawning certain spawn points when you are in proximity to them. While the result is not identical to Halo 1's spawn system, it retains the properties of always (or almost always) spawning you near your team-mate and having the ability to force random spawns (though randoms are a little different)
Here is the long version written by schnitzel (if you want a short step by step written by menotyou135 skip to the spoiler at the end):
"One of the most appealing additions to Forge in TMCC comes in the form of simple scripting. What it does, is it allows forgers the ability to place triggers or volumes on maps that can activate different functions such as opening and closing a gate, turning on and off a light, or even spawning and despawning objects. It’s based on a basic on-and-off system, with various combinations for controlling the inputs. In this article, I will be explaining how to use trigger volumes and object spawning to modify the game’s player spawn system.
The scripting object that will be used for this is the “On-Stay-Toggle” trigger volume. What it does is it broadcasts an “on” signal, which can be read by various linked objects to turn “on”, while a player is in its volume area. So long as a player is in the volume, the signal continues to be broadcast. When the player leaves, the broadcast ends and all objects linked will return to being turned “off”. As spawn points are invisible in game, the right trigger volume was found through testing with visible blocks instead.
To set this up with spawns, place the “On-Stay-Toggle” trigger volume and adjust its measurements to fit the area you want it to work in. In the object menu for the trigger, choose scripting and set the broadcast channel to a number other than -1. This number is important as it’s what the trigger will use to signal corresponding objects to activate. Next, place a spawn point that you want to correspond to the trigger volume. This can be in or near the volume itself (promoting team spawning), or in another location on the map (promoting strategic cross map spawning). In the spawn point’s object menu, go to advanced and set “place at start” to FALSE. In the scripting menu, set the spawn channel to the number chosen for the corresponding trigger’s broadcast channel. Also set “can despawn” to TRUE. Repeat these steps as many times as needed to build the network of spawns and triggers that you would like on your map.
Now a little about how this works. We tested this spawn system in three different environments, two controlled and one real game.
The first control environment consisted of two spawn points (A, set to two different triggers, and instant respawn turned on. The player stood in one zone, activating its respawn point (A), and committed suicide repeatedly. The player only spawned on the activated respawn point (A). This was then repeated with the other respawn point ( , resulting in the player on spawning there ( instead while it was activated.
The second control environment consisted of the same, but with the addition of a second player (2). Player 1 would stand on spawn point A, while player 2 stood in the corresponding trigger zone for A, and would kill Player 1 with a sniper repeatedly. Although spawn point 2 was not activated, player 1 would spawn there just as often as he would at spawn point 1. This shows that although spawn points can be turned on and off, the game will still use “inactive” spawns if there is too strong a negative influence affecting the active spawn points.
The third environment was a game on a forge map (Orion). As the game’s inherent spawn system prefers spawning players on the extreme perimeters of the map relative to where positive/negative influences are, the trigger zones were set in areas along the outskirts of the map. Throughout the game players would rarely spawn in said zones unless there was a team mate in one activating it, else they would spawn on non-scripted spawn points closer to the map’s center. Occasionally players would spawn on trigger-spawn points without the trigger being active, but this was rare a rare occurrence. What this shows is that although the game’s inherent spawn system takes precedence, the scripted spawns and triggers can be used to augment it and increase the forgers control of where players will spawn on the map.
In execution, this method can be used to create a more heavily “weighted” team mate influence spawn system, which helps to balance out the extremely enemy presence influenced spawn system inherent to the game. The forger can take it a step further and also assign teams to the various spawn points and triggers used, making it so they work only for specified teams.
(Note from me...........notyou135: after this article was written we realized that you can manually set randoms/force spawns by creating triggers in "random/force spots" that coincide to spawn points that are not in the vicinity of the trigger. For example, you can place a zone in shrine at bottom middle that activates "randoms" at each base, each rocks, and each snipe hut." Another example would be placing a zone in the corner of bottom BR on lockdown that forces your team to spawn top BR.)
This can be used to create a spawn system similar to that of Halo CE, which is believed by many in the competitive community to be ideal for doubles gameplay. In doing so, every spawn point on the map would be linked to corresponding trigger volumes, lending support to a more team mate influenced system. Similar to CE, “random spawns” will occur, although not through exact position like in CE, but rather because the game’s inherent spawn system stepping in at times and choosing a safer spawn point than the one’s currently active.
Discovered by SecretSchnitzel and Menotyou135Step 1) go to scripting and spawn the "On Stay Toggle" trigger. These will be your spawn zones. Set it's boadcast channel to X and set it up to cover a certain area of your map.
Step 2) Set all spawn points in the radius to the same channel in the advanced settings. Also set them to "Can Despawn: True" and "place at start: False." Now when you enter this area, those spawn points will spawn.
Step 3) Manually change all the spawn points in the zone to be specific to one team and change the trigger to be the same team.
Step 4) Duplicate the trigger and spawns in the same location and set them to the opposite team. Change the broadcast channel to a different value.
-Making duplicates for different teams is necessary because otherwise you can spawn next to the enemy and if both players are dead, you have more chance to spawn next to them.
Step 5) Place a few "randoms." There are three ways to do this 1) Just normal spawn points and are put there in case all other spawns are gone. The Randoms you place should be in the center of the map. This is because the spawn system likes to spawn you at the extremities of the map so you will be much less likely to spawn there than a spot your teammate is on. These will be triggered when the player is standing outside of any spawn zone (meaning you can manually create randoms) or dead. 2) Create a trigger like above on certain small parts of the map that are designated random spots. These should spawn a few spawn points around the map so that the game will randomly force someone to one of those points. You can also use this to force spawn someone similar to Halo CE. This method should be used in conjunction with the above in case both are dead (if you don't want to use the emergency spawns. 3) Let the emergency spawns be the randoms in case you both are dead. This seems to be a little glitchy though so use with caution/test before implementing
Side note: If you want to test specifically how the spawn system is working, place some visible forge item on the same broadcast channel/settings as the spawn point over top of the spawn points and play a game. This way, you can see which spawns are active and which ones are inactive during play.