I love the smell of UnrealEd crashing in the morning. – tarquin
Legacy:Alternative Devastation Gametypes
Devastation Ships with ctf, dtt ( see Mapping For Territories) and old fashioned Deathmatch. I have figured out some ways of getting other exciting gametypes to work without ANY scripting or coding. Read on....
You need to have a good understanding of basic map skills.
This gametype is in Pariah and im sure in others. This is how we can make a siege gametype where one team defends while the other team attacks an objective.
Note: Ive spent a very long time getting this to work properly online where things dont work the same as when tested through the editor. You are welcome to suggest any improvements but please dont try to be smart when following this and miss out a step because it might make it easier for you. Thanks
Part 1:Basic configuration
Go to the level properties and set the gametype to DTerrGameInfo. Didn't see it in the menu? thats because you need to open the DTerritories package in the actor class browser. Always open that whenever you start work on this.
Part 2:Team 1 spawner
The resistance will be attacking an objective (in this case a valuable power generator) which will be guarded by the conformists. We need to set up a protected spawning area for the resistance. Heres how you do it.
- In the Dspawnsm static mesh package, there is all the static meshes you need to construct a standard spawning platform. Arrange them into a 3x2 rectangle and add the side trim bars to make it look nice.
The SMs are just for show. You need to add a playerstart above each spawner plate. When you have, set each playerstarts properties to the following:
- Now we must add the spawner. Go into the prefab browser (you cant get to it from under the view menu so go to the actor class browser) and look for DSpawner. Add it into your map with the middle mouse button-or right click in wireframe mode and "add decoration here". Set the spawners properties to the following:
DDecoDamage Structuralintegrity=0. The conformists cant get to the spawner, but its good to make it invincible anyway.
Playerstarts= Expand this field, and click on Add, then Find. The cursor should turn to a arrow with a question mark next to it. Click on one of your playerstarts and it should appear in the space. Repeat for all 6 playerstarts. If that doesnt work, type the name (found under the object field) of each playerstart manually into the space.
You can delete the spawner objective (the green hexagon thing) and the interact points.
you should now have 6 playerstarts hooked to a spawner. No we have to make sure the spawning area is protected. We need to put a laser fence across each entrance to make sure conformists cant get in.
1: Make the red builder brush the right size for the laser fence. This will form the part that will actually block players. Then add a volume DLaserfencevolume. You should see a pinkish volume appear when you move the builder brush away.
2: You can delete the two interact points, they are not needed.
3: Under the laser fence notification (the eagle head icon) set the Team to 1. When realtime preview is activated, the lasers should be blue. You can rotate the laser fence emitter to the correct orientation. The static meshes for the laser emitters are found in DDecosmb, but you wil have to press the "all" tab to see them.
Repeat for every entrance to the resistance base.
Part 3: The Generator/conformist spawner
The conformist spawner will be located next to the generator so it is the spawner which will need to be destroyed. Follow the steps for the resistance spawner, but set the team values to 0 instead of 1. The spawning area should be protected by lasef fences, but the actual spawner should be next to the generator.
Theres some nice generator meshes in DDecosm and Aquifiers. Add the appropriate generator mesh and place the spawner box in a dominant position next to it. Set the spawners structural integrity (default is 250) to however much damage you wish it to take before blowing up. DO NOT delete the spawner objective this time!!!
I havent tried this yet, but it may be possible to change the display->Static mesh of the spawner to a generator mesh so you can destroy the generator directly. Ive done something like it before although there is problems with the spawner not showing up in game if the static mesh field is changed.
You should now have a protected conformist spawning area and an unprotected spawner box next to the generator.
Part 4: The objectives
Now we must form a system of objectives to tell each team what to do (attack, defend) and to end the round when an objective is complete.
You should still have the spawner objective. Set its properties as following:
Title= "destroy the power generator by shooting the spawner" or something. This will show up in the objective box, if it doesnt try tweaking the "always hidden" and "always visible" values.
Now add a DSimpleObjective to the map and set its properties:
Title "defend the power generator" or something along those lines. Again tweak the visible values if it doesnt show up when playing as a conformist.
Well done! its finished. Check you have all these:
- A protected spawning area for the resistance with an hidden spawner box.
- A protected spawning area for the conformists with the spawner forming the destroyable part of the generator.
- The spawner objective and simple objectives set as appropriate.
When played online, when the resistance destroy the generator, the round should end. If it doesnt, check that End objective and primary obective are set to true in the spawner objective and that it refers to the correct spawner-it should be default.
Things to explore
I havent tried this yet, but i think it would be possible to have each team with a generator so both can attack each others. Sort of like Territories without the laser fences.