|
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 | |