RvS Mapping Tutorials
Odds & Ends
Navigation
Frequently Asked Questions
about Raven Shield map editing
1. Where do I get the Raven Shield map editor?
The map editor automatically installs with the game. Look for "UnrealED.exe" in your "\Program Files\Raven Shield\system\" directory.

2. I'm trying to create my own static mesh rotating door, but I'm having trouble getting it to open properly.
The trick is to make sure you place the pivot point on the axis of the door, when you create the static mesh. If you create the static mesh in a 3d program, make sure the axis of the door sits in the center of the workspace. If you create the static mesh in UnrealED, just reposition the red pivot dot before saving the static mesh.

3. How can I implement working elevators and moving vehicles?
Movers with the ability to transport players (i.e. "lifts") do not work properly in the currently build of the RvS map editor. A number of RvS map makers have struggled with this, with very little success.

4. My ladder is displaying some odd behavior. Players fall, get stuck, or warp to another part of the map. AI teammates refuse to follow me up the ladder.
Make sure the collision hull touches both of the two connecting floors, without any spatial gaps. Double-check the R6LadderVolume.R6Planning settings: m_iPlanningFLoor_0 should match the value assigned to the bottom floor, and m_iPlanningFLoor_1 should match the value assigned to the top floor). Make sure the R6LadderVolume extends vertically around 32 units above the top of the collision hull. If the problems still occur, play with the horizontal positioning of the R6LadderVolume in relation to the collision hull; the two should overlap just slightly. Finally, make sure you have path nodes placed near both ends of the ladder. If the problem STILL occurs, delete all the ladder actors and start over from scratch.

5. I hear footsteps on normal surfaces in the single-player game, but not in multi-player, or on stairs.
To enable footsteps on stairs, simply assign the proper texture to the invisible collision hull that is positioned as a ramp over your stairs. (If you created your stairs properly, the player is actually walking on this invisible hull, not on the stairs themselves.)

To enable footsteps in multiplayer (and for the AI teammates and tangos), open the level properties and assign a foley sound package to m_SurfaceSwitchForOtherPawnSnd. For an example use 'Foley_NPC_Airport.Play_Air_NPC_Movements'. As you can see, player footsteps are are assigned to 'm_SurfaceSwitchSnd', while non-player footsteps are assigned to 'm_SurfaceSwitchForOtherPawnSnd'. Read my tutorial on
Ambient Sounds for more information.

6. How can I edit gun models and ballistics?
I'm sorry, I don't have any knowledge to offer in this area.

7. I'm seeing glitches in my map. At some spots, walls and objects dissapear, and at other spots a hall-of-mirrors effect appears.
You are experiencing BSP holes, most commonly caused by overlapped solid BSP objects (or by overlapped BSP subtractions). In some cases, you may be able to eliminate the problem by moving/removing the overlapped objects; but if the problem is wide-spread you will likely need to restart the map from scratch. There are two good techniques to avoid BSP overlaps. First, keep grid snapping turned on at all times and set the snap value set to 8, 16, or 32 whenever possible. Second, always 'Deintersect' just before you 'Add', and always 'Intersect' just before you 'Subtract' brushes; this essentially trims off any overlap that would otherwise occur. Also, don't forget that portal sheets are technically BSP brushes.

8. How can I improve the graphical performance of my map?
First, use discretion with the size of your custom textures and the complexity of your static meshes. Second, break your indoor, multi-room areas into distinct zones. Third, avoid outdoor areas where a player can see from one end of the map to the other; try to break up these long sight lines with natural obstacles and anti-portals. Read my tutorial on Zones, Portals, and Anti-Portals for more detailed instructions.

9. I created a breakable window with a high number of hitpoints, yet it is shattering with just a single pistol shot.
Make sure you don't set your hitpoints too high; hitpoints over 10,000 or so will be treated as if the object has 1 hitpoint only. Also, make sure the fDamagePercentage setting is set to "0" not "100". 'fDamagePercentage' specifies initial damage to the object. (This was explained incorrectly in the first version of one of my tutorials.) If you set fDamagePercentage to "100", that will spawn the object as if it is already 99.99% damaged, and it will then be destroyed with a single shot.

10. Are there any legal or ethical concerns with using a texture or static mesh from another map in my own map?
Since you purchased Raven Shield, you are allowed to reuse textures and static meshes from the official maps in your own maps as much as you'd like. It's illegal to import models or textures from other, copyrighted games (Unreal 2003, Vietcong, etc.). Generally, it's considered unethical to reuse textures or static meshes created by another map designer and included in their custom map. However, many map makers will give you permission as long as you give them credit for their work.

11. The terrain editor consistently crashes on me. I'm following the tutorial instructions carefully and avoiding the 2d viewports.
Make sure the XSize and YSize dimensions of your heightmap are both set to base 2 numbers (2 raised to any whole power: 16, 32, 64, 128, 256, 512 etc.). If the terrain editor is still crashing, the only alternative I can offer is to import your heightmap as an alpha bitmap rather than sculpting it manually in the terrain editor. Read Amon's "Crash Free Terrain Tutorial" for instructions on how to do this.

12. I need help with lighting (spotlights, strobelights, coronas, etc.)
Unfortunately, I have done very little work with lighting in the RvS editor at this point. I do know that many dynamic lighting effects that worked in the UT2003 version of UnrealED (strobelights, panning spotlights, triggered lights) do not work properly in Raven Shield maps. I recommend Fubarnz' Tutorials for information on implementing corona effects and simple spotlights in RvS maps.

13. How can I stop dead bodies from falling through static mesh objects created in UnrealED?
As you may have already discovered, you cannot apply the same advanced karama properties to a static mesh created in UnrealED as you can using 3dsmax and KAT. However, there is a decent workaround you can use to implement intelligent karma collision based on the shape of your object. Right-click on your static mesh and choose "convert to brush". This will not remove your static mesh, but it will resize your builder brush to the exact shape and size of your static mesh. Next, click the Volumes button, and create a Blocking Volume. Open the collision properties for the volume, and apply karma collision to the Blocking Volume.

14. In Terrorist Hunt mode, the game is spawning many more random tangos than I intended.
You should only ever have one 'R6DZoneRandomPoints' actor in your entire map, and all RandomPointNodes should be created from this single RandomPoint. If more than one RandomPoint actor exists, the game essentially multiplies the total number of random tangos by each RandomPoint. (This was explained incorrectly in early versions of several of my tutorials.)

15. How do I add bullet ricochet effects to my custom texture?
If you reuse textures from the official maps, most bullet ricochet effects will automatically be implemented. These "hit effects" include the sound of the ricochet, the mark of the bullet, and occasionally particle effects (for example, insulation falling from the ceiling). If you have created a custom texture you will probably want to assign a hit effect to it. In the texture browser, right-click on a texture and choose Properties. Expand "Rainbow" and assign a value to m_pHitEffect. Each m_pHitEffect option assigns a different style of bullet holes and particle effects. You will need to save the modified texture package for the change to take effect.

16. How do I create a custom loading screen for my map?
To provide a custom loading screen for your map, create an 640x480 graphic, save it as a 24-bit bitmap .TGA file, and place it in your “maps” directory, named the same as your .RSM file. .TGA files are a commonly used graphic file format supported by Adobe Photoshop, Paint Shop Pro, and a number of other graphics programs. Nothing needs to be done to the .INI file to make the .TGA loading screen work. All that's necessary is that the .TGA filename matches the name of your .RSM file and that the .TGA graphic is formatted correctly. Raven Shield will automatically superimpose the spinning Rainbow logo over your image on the loading screen.

If you want your loading screen to look similar to those included with the official maps, TRS-Ap has created a Photoshop template which you can download below:

Map Loading Screen Template (525k)

17. Is there a way to cut a ‘hole’ in the terrain?
Open the terrain editor. Select your terrain info and heightmap. Select "visibility" the Tools list. Save your map, because there is no way to Undo the following steps. Hold [Ctrl] and right click on the terrain where you want to 'cut-out' an entrance to your cave. Each time you [Ctrl]+RightClick, you will cut out another polygon from the terrain. You can't get very precise with the cuts, so I recommend you use a brush or static mesh with thick walls to frame the opening and hide the jagged edges.

18. How do I add snow to my map?
In the level properties, if you set R6LevelWeather.m_WeatheEmmitterClass to "R6DynamicSnowEmitter" you will get a snow effect centered on the player throughout the map. The snow will only fall in ‘outdoor’ zones; it will not fall in zones where you set isIndoor to “True”. Also, if you place an R6WeatherVolume, snow will not fall when the player is standing in the volume; these are used for building overhangs, gazebos, etc. which are outdoors (part of the same zone where snow is already falling) but protected from the weather. If you place an R6SnowEmitter3 class actor just outside a window (in the outdoor zone) and then go to the ZoneInfo inside the building (which is in a separate indoor zone) and point R6Weather.m_ALternateWeatherEmitters to the emitter that you placed outside, then the snow will appear to fall from that emitter rather than being centered on the player.

19. How did they create the swaying tree branches in the Island map?
Surprisingly, the trees in the official maps are not animated models, they are normal static meshes. To enable tree branches--or other static meshes--to sway gently in the breeze, set the actor’s Modifier.m_bWave setting to "True”. This setting creates a pretty realistic wind effect on tree branches, flags, and similar objects; it looks downright silly if you apply it to a normally solid object. Note that the swaying will only appear if the player has “Animated Geometry” enabled in their game options.

20. How do I export official textures from Raven Shield?
There three options that I’m aware of for exporting Raven Shield textures: using the UT2003 version of UnrealED, a free program called WOTGreal, or another free program called the Unreal Tournament Package Tool.

If you own UT2003, open up the version of UnrealED that installed with it. Open the texture browser, click the “Open Package” button, browse to your ‘\RavenShield\textures\’ folder, and open any .UTX file. Right-click on any texture, choose “Export to File…” and save the texture in .DDS format. You will need the DDS compression plug-in to open this file in PhotoShop. (The plug-in works with recent versions of Paint Shop Pro as well.)

http://developer.nvidia.com/object/nv_texture_tools.html

The second option is WOTGreal Exporter:

http://www.wotgreal.com/Navigation/download.cfm

Once you have WOTGreal Exporter installed and running, click the “View Images and Textures” button in the toolbar. Click the “Browse” button and browse to your ‘\RavenShield\textures\’ directory. Select a package from the listbox on the left, then selected the checkbox of one or more textures on the right. Click the “Export to .BMP” button. Now open up windows explorer and browse to your ‘\RavenShield\’ directory. There should be a new folder there, named with the name of the package you were exporting (for example “Airport_T.u”). Open that folder and the “Images” folder beneath. Notice that if the image contains mipmaps, WOTGreal will export 9 versions of the image; in these cases, the first one created is the full sized version of the image.

A third export option is the Unreal Tournament Package Tool, which I haven’t used much myself, so I can’t offer any tips on using it (but I think it’s pretty user friendly):

http://acordero.org/projects/utpt/index.htm

It's worth noting that while these tools will allow you to export textures from UT2003 and other Unreal engine games, that does NOT mean you have permission to use those textures in your custom Raven Shield map. However, as far as I know, you DO have permission to modify RvS textures for use in custom RvS maps.

21. How do I create my own collision hull for use with custom stairs or ladders?
First a few explanations: 1. Despite what a lot of people think, the sole purpose of an invisible collision hull/ramp is to prevent the player’s head from bobbing when walking on stairs or to prevent a player from falling through a ladder. 2. There are no special properties to the collision hull static meshes you see in the official maps, any object that supports simple collision and a surface texture will serve the purpose. 3. There is a special brush you can create in UnrealED called a 'collision hull', but that won't do exactly what we want in this case, so even though I refer to the ramp as a collision hull, that's not how we're going to create it.

For this example, I’ll use a situation involving stairs, but the principles would be the same with a ladder. Create a solid red builder brush from the cube primitive, with a height of 4 units and the appropriate width and breadth for your staircase. Rotate and place the builder brush along the crest of your steps; you may need to adjust the dimensions a bit so that it is placed perfectly, connecting the floors, without sticking too far above the steps (it should overlap the top of each step). Once you have it sized perfectly, do NOT add the brush yet. Since you are using BSP geometry for your steps, we would cause major BSP problems if we added an overlapping brush. Instead, move the builder brush up vertically so that is no longer overlapping any objects, select the same floor texture as your stairs (this is important for footsteps to be heard, since the player will be walking on the collision hull, rather than the stairs), and now add the brush.

Next, we're going to convert the collision hull to a static mesh. The sole reason for this is so that we can safely overlap it with the stairs. Select the collision hull in one of the 2d views, right click, and choose "Convert to Static Mesh". Name the static mesh something like this:

Package: mymapname_SM
Group: stairs
Name: collisionhull_1

Immediately open the static mesh browser, browse to the mymapname_SM package, and save it as 'mymapname_SM.usx'. Note that the 'convert to static mesh' action did not actually transform our brush. So select the original collision hull brush and delete it. Then, with the new static mesh still selected in the static mesh browser, right click on the stairs and choose "Add Static Mesh: 'mymapname_SM.stairs.collisionhull_1'". Open the properties for our new ramp, expand “R6Planning”, and change m_eDisplayFlag to “DF_ShowOnlyInPlanning” so that it doesn’t appear in-game. Now, we can overlap the ramp with the stairs without fear. Reposition the collision hull so that it sits perfectly on the stairs. Make sure the collision hull blocks players, but not karma or bullets (both of these should be blocked by the stairs, themselves).

22. How do I get a terrorist to sit down, smoke a cigarette, etc. like I’ve seen in the official maps?
You can assign animations to terrorists using the ‘R6InteractiveObject’ actor. Here’s an example.

I’ll assume you already have an ‘R6DZonePoint’ placed in your map. Open the Actor Classes browser, and select "R6InteractiveObject". Right click on the floor next to your R6DZonePoint’ actor (almost on top of him) and choose "Add R6InteractiveObject Here". Double click on the dragonhead that appears to open the R6InteractiveObject’s properties. Expand "R6Action" and select m_ActionList. Click the "Add" button. Select New, choose "R6InteractiveObjectActionGoto", and then click the "New" button. Expand "Goto", select m_Target, click the "Pick" button, and then click the eyedropper on the R6InteractiveObject actor itself. (This will cause the tango to move to the exact position of the R6InteractiveObject before doing the animation, which is useful especially when you want him to sit in a chair or interact with a keyboard or bomb.) Select m_ActionList again. Click the "Add" button. Select New, choose “R6InteractiveObjectActionPlayAnim", and then click the "New" button. Expand "PlayAnim" and set m_vAnimName to “SitLaugh”. Now, as long as the R6DZonePoint is within the diameter of the R6InteractiveObject, the terrorist will move into position and begin the animation as soon as he spawns.

If you want, you can assign several animations and he will cycle through them. You can also attach animations to a ‘R6DZonePath’ (for patrolling guards), which I demonstrate how to do in my tutorial on
Terrorist Behavior. I don't think you can attach animations to R6DZoneRandomPoints, but I actually haven't tested this. Please note that if the animation involves interaction with an object (for example, sitting on a chair or leaning on an object) you'll probably need to disable player collision on the object to get the animation to look right.

'SitLaugh' is just one possible animation. Here are all the animation names that I’ve noticed in the campaign maps (there are probably a few that I’ve missed): SitTalkCasual03, SitToStandFast, SitLaugh, LeanSitFeetOnDesk_c, SitKeyboard, SitBreathe, RelaxToSit, SitEatNuts01, StandPlantC4, RelaxTakeNote_c, RelaxWaitLookFar, RelaxWaitTalk01, RelaxWaitTalk02, RelaxWaitTalk03, RelaxWaitTalk04, WallWaitCigSmoke, WallWaitBreathe, WallWaitLookAround, BA_ArmBomb, BA_DisarmBomb, BA_Keypad, BA_Keyboard, BA_PlantDevice

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