RvS Mapping Tutorials
Odds & Ends
Navigation

Athena Sword Game Types
-by Beckett, last updated March 17, 2004

This tutorial will show you how to take an existing custom map, with all the standard Raven Shield game types implemented, and tweak it to add support for the five new Athena Sword game types: Countdown, Terrorist Hunt Adversarial, Scattered Hunt Adversarial, Kamikaze, and Capture the Enemy.

This tutorial assumes that you are already familiar with the standard Raven Shield game types and mission objectives. If this is not the case, I recommend you work through my RvS Game Types and Mission Objectives tutorial first, and then come back to this one.

First off, decide what map you wish to tweak. This tutorial will assume that the map you choose has (at minimum) the following game types enabled: Story Mission, Terrorist Hunt, Deathmatch, and Team Survival.

First Things First

There are a few things we should do before we open UnrealED. Because the Athena Sword maps and packages are all tucked away inside a new “Mods” directory, when you open an Athena Sword static mesh package in the editor, it can’t find the associated material textures. (And if you would attempt to open an Athena Sword map in the editor, it wouldn’t find ANY of the packages being used.) So let’s tell the editor where to look. (A big thanks to Trancer for showing me how to do this.)

Browse to your “\RavenShield\system\” directory and open up the RavenShield.ini file in notepad. Scroll down until you see a number of lines beginning with “Paths=”. Below the last “Path=” entry and above the first “Suppress=” entry add the following lines:


Save and close the RavenShield.ini file.

Next, we need to update our map .INI file so that our map will be available under the appropriate game types from the in-game menu and setup screens. Open up the map .INI file in notepad. Change the second line from “version=2” to “version=3”. Add a new line after that, with the following text:


In the GameTypes section, add the following lines:


In the “Adversarial game mode Uniform” section, add the following lines (of course, you can
change the uniform names if you want to):


Save the map .INI file, but keep it open. Now open your map in UnrealED and let’s get started. It’s important to understand that at this point every actor we added to our map in the RvS version of the editor will have every new Athena Sword game type automatically enabled. If we attempted right now to launch our map in the new game types, the map would load fine. However, we’d see terrorists, hostages, bombs, and extraction zones in every new game type, even those where they don’t belong. So, in reality, a lot of what we’ll be doing in this tutorial is simply disabling all but the appropriate game types from key actors. (Also, because of this fact, I recommend you work through the entire tutorial before testing the map in-game.)

Countdown

The Countdown game type is identical to the Single Player Story Mission game type, with the added challenge of a time limit. You must have at least one R6MissionObjective specified in the Level Properties or the player will not be able to successfully complete the mission.

Open the “Visibility” menu and select “Story Mode (Campaign). Now, go through your map and [Ctrl]+Left Click to select every mission objective related actor that is still visible. This includes insertion zones, extraction zones, terrorists, hostages, bombs, interactive laptop computers, R6ObjectiveIcons, and even green smoke emitters (and possibly even include static meshes that are set to only appear in Mission mode.) Once all of these actors are selected together, open the Actor Properties window and expand “R6Availability”. Notice that m_eCountDown is already set to “MFO_Available”, but… uh oh… so are the other four Athena Sword game types. Let’s change that now by setting m_eCaptureTheEnemyAdv, m_eKamikaze, m_eScatteredHuntAdv, and m_eTerroristHuntAdv to “MFO_NotAvailable”.

Now let’s set the countdown timer. Go back to your map .INI file and add the following lines under the “GameTypes=” section.


These lines, of course, specify the number of seconds the player has to complete the Countdown mission in each difficulty level. If you do not add these lines to the .INI file, the Countdown mission will use a default setting of 500 seconds on Recruit, 400 seconds on Veteran, and 300 seconds on Elite. Also note that custom countdown times appear to be ignored (and the default times used) unless the map files are placed in the “\Mods\AthenaSword\maps\” directory. (I assume this is because the “ASGame.u” file is in the “\AthenaSword\system\” directory and it can’t find and reference the code from the standard RvS “maps” folder.) You can save and close the map .INI file now.

Terrorist Hunt Adversarial

For the Terrorist Hunt Adversarial game type, it will usually make sense to simply reuse the player spawns from Team Survival and the tango placements from single player Terrorist Hunt. So that’s what we’ll do in this tutorial. (However note that if you had a large map and wanted to squeeze as much variety out of it as possible, you certainly could place all new insertion zones and random tango placements for each game type.)

Open the “Visibility” menu and select “Deathmatch (Team)”. Locate and [Ctrl]+Left Click every R6InsertionZone, for both the red and green teams. Open the Actor Properties window, expand “R6Availability”, and set m_eScatteredHuntAdv and m_eCountDown to “MFO_NotAvailable”. (We’ll leave m_eCapturetheEnemyAdv and m_eKamikaze set to “MFO_Available” so we can reuse these same insertion zones for those two game types as well.)

Deselect the R6InsertionZones. Open the “Visibility” menu and select “Terrorist Hunt”. Select all of the visible R6DZoneRandomPoints and R6DzoneRandomPointNodes together. Open the Actor Properties window, expand “R6Availability”, and set m_eCaptureTheEnemyAdv, m_eKamikaze, and m_eCountDown to “MFO_NotAvailable”. (We’ll leave m_eScatteredHuntAdv set to “MFO_Available” so we can reuse the same random tango placements for the Scattered Hunt game type.)

Scattered Hunt Adversarial

Scattered Hunt is identical to Terrorist Hunt Adversarial, except that players spawn throughout the map, separated from their teammates. We already took care of the tango placements in the section above. So now we just need some scattered player insertion zones: 8 for each team. And I’ve got an idea… let’s simply reuse our 16 Deathmatch insertion zones!

Open the “Visibility” menu and select “Deathmatch”. Locate and select together 8 of the 16 insertion zones. Try not to select any two that are right next to each other. Open the properties window, and expand "Display". Select "Texture" and click the "..." button (if the texture browser doesn't automatically open, open it manually). Browse to "R6_Common.MP_Green". Go back to the properties window and click the "Use" button. Next, expand “R6Availability” and set m_eKamikaze, m_eCapturetheEnemyAdv, m_eTerroristHuntAdv, and m_eCountDown to “MFO_NotAvailable”.

Deselect those insertion zones and now select the remaining 8 that are still displaying the yellow “D”. Open the properties window, and expand "Display". Select "Texture" and click the "..." button (if the texture browser doesn't automatically open, open it manually). Browse to "R6_Common.MP_Red". Go back to the properties window and click the "Use" button. Expand “R6Availability” and set m_eKamikaze, m_eCapturetheEnemyAdv, m_eTerroristHuntAdv, and m_eCountDown to “MFO_NotAvailable”. Finally, expand "Rainbow" and set m_iInsertionNumber to "1" (since these spawns are for the red team).

You may want to carefully check the placement of each insertion zone for Scattered Hunt. Not only should each player insertion be out of sight of other player insertions, it should also be out of sight of any random tango insertions. This can be tough to pull off on a small to medium sized map.

Note that you do not need to share/reuse the Deathmatch insertion zones if you don’t want to. You can, with just a bit more work, create 16 brand new insertion zones, scatter them throughout the map, and set their availability to “MFO_NotAvailable” for every game type other than m_eScatteredHuntAdv. (If you've forgotten how to create multiplayer insertion zones from scratch, just review the “Adversarial Team Survival” section of my RvS Game Types tutorial.)

Capture the Enemy

We’ve already set the map to reuse the same player insertions for Capture the Enemy that it was already using for Team Survival. And that’s all that needs to be done to enable Capture the Enemy mode!

Kamikaze

Once more, we’ve already set the map to reuse the same player insertions for Kamikaze. So now we just need to place a detonator and defusing kit. Open the “Visibility” menu and select “Kamikaze” so we can see where the player insertion zones we are using are located. In the static mesh browser, open "LumberYard.usx". You may need to navigate folders a bit, since this package is located in the “\RavenShield\Mods\AthendaSword\StaticMeshes\” directory. Choose “barilles” and select “baril04_m8”. Right click on the ground near the green team insertions and choose “Add Static Mesh: ‘Lumberyard_SM.barilles.baril04_m8'”. Position the barrel so it sits flat on the ground.

Now open the Actor Classes browser, expand "R6InteractiveObject | R6IActionObject | R6IOObject", and select "R6IOBomb". Right click on top of the barrel and choose "Add R6IOBomb Here". Open the properties for the bomb and expand “Display”. Select StaticMesh and then click the "..." button. With the “Lumberyard_SM” package still selected, choose “Kamikaze”, and select “LapTop”. Return to the properties window and click the "Use" button. Expand “R6ActionObject”. Set m_eAnimToPlay to “BA_ArmBomb”. Set m_fExplosionRadius, m_fKillBlastRadius, and m_iEnergy to “0”. Set m_szIdentityID to “Detonator”. Expand “R6Availability” and set every game type to “MFO_NotAvailable” except for m_eKamikaze. Exit the properties window and reposition the laptop, if necessary, so that it sits properly on the barrel.

Let's place a reference icon so new players can use the in-game map to find the detonator. Open the Actor Classes browser, expand "R6ReferenceIcons", and select "R6ObjectiveIcon". Right click on the ground near the barrel and choose "Add R6ObjectiveIcon Here". Open the properties window, and expand "Display". Select Texture and click the "..." button (if the texture browser doesn't open automatically, open it manually). Browse to "R6Planning.Icons.PlanIcon_Bomb_A". Return to the properties window and click the "Use" button. Expand "R6Availability" and set every game type to "MFO_NotAvailable" except for m_eKamikaze. Expand "R6Planning". Set m_iPlanningFloor_0 and m_iPlanningFloor_1 to the proper floor (for example, if the detonator is located on floor 100, enter “100”). Drag this icon directly over the detonator and raise it off the floor a bit.

Good job. Now let’s create the defusing kit. Select the barrel, laptop, and ReferenceIcon together. Press [CTRL]+w, and drag the three new objects all the way across the map to where the red team insertions are placed. Open the properties for the new laptop and expand “R6ActionObject”. Change bIsActivated to “True”, change m_eAnimToPlay to “BA_DisarmBomb” and change m_szIdentityID to “DefusingKit” Open the properties for the new ReferenceIcon and expand "Display". Select Texture and click the "..." button (if the texture browser doesn't open automatically, open it manually). Browse to “R6Planning.Icons.PlanIcon_Bomb_B". Return to the properties window and click the "Use" button.

It’s important to note that while we used a laptop for both the detonator and the defusing kit in this tutorial, you can be somewhat creative with the static meshes and interaction animations that you use (as long as an animation exists that works with your idea). Also note that in this example, we did not modify the availability settings of the two barrels, so in all other game types the barrels will appear, but with no special significance.

Conclusion

We still need to do a bit of cleanup. The odds are that there are a few hostages, insertions zones, bombs, etc. from game types like Lone Wolf and Coop Hostage Rescue which still have the Athena Sword game types enabled. If you have a good handle on what and where everything is in the map that you are tweaking, this won’t be hard to fix, but it’s easy to miss one or two actors in a small dark corner of the map. If you want to be careful and methodical about this, I recommend going one by one through each of the original RvS game types and disabling inappropriate availability settings.

For example, to start out, open the Visibility menu and choose “Bomb”. Now locate and select every mission objective related actor that is still visible. Once all of these actors are selected together, open the Actor Properties window, expand “R6Availability”, and set m_eCountDown, m_eCaptureTheEnemyAdv, m_eKamikaze, m_eScatteredHuntAdv, and m_eTerroristHuntAdv to “MFO_NotAvailable”. Be careful not to accidentally set any original RvS game types to “MFO_NotAvailable” while you are doing this. Then, when that’s done, open the Visibility menu again, move on to the next game type, and work your way through the whole list. (Don’t worry about Deathmatch, Team Deathmatch, or Story Mode, since we already handled those in the course of this tutorial.) Don’t forget to set Visibility back to “All Mode” when you are done!

I hope you found this tutorial helpful. If there's anything I've gotten wrong, please let me know and I'll correct the information. Email me if you have any questions or mapping issues you'd like to discuss.
-Beckett

Display a printable version of this article

© 2005, RvSMaps.com, all rights reserved
Send questions, critiques, etc. to http://www.juncmodule.net/rvs/rvsmaps/content/contact.htm