This will not add a control point... big difference (still working on that one...). These instructions will only allow you to add a spawn point with multiple soldier facings for each team.
There are several ways to accomplish this:
1) Using the Mi8 and/or MH-53
2) Using SpawnPoints of Other Vehicles
1) Using the HiP and MH-53
In order to accomplish this, the Mi8 must be available for the opposition side, and the MH-53 must be available for the coolition side (note that if either of these units are being used, then all the new spawn points and the one's on the Mi8 or MH53 for that side will be like one spawn area, in other words, 1 white dot)
Coolition Spawn Points
If you look at the objects.con for the MH-53 (located in the objects.rfa file), just past the halfway point, you'll see a section that starts with:
rem *** MH53_Passenger3_PCO ***
ObjectTemplate.create PlayerControlObject MH53_Passenger3_PCO
This object has MH53PassCommon "hooked" to it. Just before this entry is the definition of MH53PassCommon:
The MH53SoldierSpawn is our spawn point, therefore all we need to do is add MH53_Passenger3_PCO as many times as we want to an area of our map. Note the setPosition -1.497/-0.265/-3.065 and setRotation 90/0/0. This will be relative to where you place MH53_Passenger3_PCO on your map.
So lets use DesertShield CTF as an example. We would like to add all the original spawn points for the coolition at the desert outpost. First, we'll need to change a spawner. There are no f16's or mig29's in CTF, so in ctf\ObjectSpawnTemplates.con, we'll change fighterspawner to be:
Although these *shouldn't* matter, it's probly best to tie up these loose ends. These settings prevent anyone from entering the MH-53, and will also force a spawner to be outside the MH-53.
Now look at Conquest\SoldierSpawns.con file. The coordinates of all of the original spawns are at:
rem *** ***
rem *** ***
rem *** ***
rem *** ***
Now, if we didn't have the setPosition/setRotation set on our soldier spawner, then we could just create fighterspawner's at all of these coordinates. But because things are offset, we need to do the following:
If a coordinate is x/z/y, we need to add 1.497 to x, 0.265 to z, and 3.065 to y. Also, all rotations need to be countered by 90 degrees. This will give us the following results, which we will put at the end of ctf\ObjectSpawns.con
Now as for the opposition side... well.. they already have two Mi8s, so we can't do the same thing with them. We would either need to remove the existing Mi8's to free up their soldier spawn, or someone needs to find a new way to make new spawn points (I'm hoping the ladder!).
but anyways, if you wanted to use the Mi8's soldier spawn, and you remove the existing Mi8's from the map, then look at the Mi8's objects.con in the objects.rfa file, you'll see the lines that start with:
Notice there is no offset for the Mi8's spawner, so we'll just use the same coordinates as the conquest version uses. We're going to spawn at the eastpoint spawns. Using those coordinates, we'll make the following additions to our ctf\ObjectSpawns.con:
What if the HiP and/or MH-53 is already in the map? Or what if you want more than two spawn point groups?
These things are possible, depending on how badly you want such things. The nice thing about the HiP and MH-53 is that the SpawnPoints were addTemplate'ed to child PCO's, and we just spawned those child PCOs. For the other vehicles, the SpawnPoints are addTemplate'ed to the Complex bundle of the object, which sucks. Basically, what we can do is rem out the SpawnPoints on vehicles in the objects.rfa, and then use them for spawn points in maps where we need them, or, in cases where we want to use the vehicle, we add them back to that vehicle.
For example, if you look at the Shokaku's objects.con file, you'll notice there are three soldier spawns defined (midway down):
The next few lines also addTemplate the vehicle spawners as well. What we're going to do is rem out all of these lines (including the vehicles, which I will explain why below) so that this section looks like this:
Now save and repack your Objects.rfa. You also may want to copy and paste that code above to a text file somewhere, because you will need it come time that you want the Shokaku back to normal
First, Getting the Vehicle Back to Normal
Before I go on explaining how to use these SpawnPoints, let me explain how to get the vehicle back to normal in maps where it's being used.
If you do nothing, then you'll still get the vehicle, but you'll get it without any SpawnPoints. In the example above, if we wanted to add back that block of code we remmed out, we can ObjectTemplate.Active the ShokakuComplex Bundle, and then just addTemplate everything back in (this can be done at the end of you ObjectSpawnTemplates.con in your map rfa):
Now to actually add the spawnpoints, it's real simple. Just Object.Create one of the three SpawnPoints for every spawn you want. There is one catch tho! You will need to hide the vehicle somewhere on the map that those spawnpoints originally belonged to (don't ask me why... it's just the way of things).
Lets say for example I want to add two spawn groups, with three spawns each (two white circles with 3 possible facings each). Som sample code could look like this:
Adding the Vehicle that originally spawned these soldiers
For some reason, in the example above, we gotta add the Shokaku to the map in order for the soldier spawnspoints to actually show. I usually place them 750 meters in the air in the far corner of the map. For example, in my Lost Village CTF modded map, I used the following code:
This placed it way high above the CoFor choppers. Note the "ObjectTemplate.HoldObject 1". You need this line so that the carrier is held in place.
Also notice that I had to use a spawner in ObjectSpawnTemplates.con for the Shokaku (in this case, I used CarrierSpawner).
Of course, now you can see why I remmed out the vehicles as well. It prevents i curious weener from choppering up to the carrier, and stealing an aircraft!
Also, for completeness, you may want to lock out anyone from getting into the carrier. Simply find the EntryPoint for the vehicle in question, objectTemplate.Active it, and place "objectTemplate.setEntryRadius 0" under it. For the Shokaku, that would be: