|
RvS Mapping Tutorials |
Building Your First
Raven Shield Map |
Creating an RvS Map
Info (.INI) File |
Building Skyboxes
in Raven Shield |
RvS Mapping: Doors,
Ladders, and Damage Models |
Customizing RvS Terrorist
Equipment and Behavior |
Creating Terrain
in Raven Shield Maps |
RvS Game Types
and Mission Objectives |
Importing Static Meshes
into your Raven Shield Map |
Zones, Portals, and
Anti-Portals |
|
Nudist Videos |
|
|
Zones, Portals, and
Anti-Portals |
Ambient Sounds
in Raven Shield Maps |
|
|
Odds & Ends |
|
F.A.Q. |
|
Tips & Tricks |
|
Shortcut Keys |
|
Common Errors |
|
Geometry Dimensions |
|
Troubleshooting Checklist |
|
|
Navigation |
|
Home |
|
Tools |
|
Links |
|
Contact |
|
|
|
Creating an RvS Map Info (.INI) file
-by Beckett, last updated March 24, 2003
|
|
This tutorial will assume that you are
comfortable working with Windows folders and unrecognized file types.
This tutorial also assumes that you have completed my first tutorial,
Building Your First Raven Shield Map, and have a basic RvS map
created named "mymap.rsm".
Important Note: RvS does not deal well
with extra spaces in the .ini file. If you copy/paste text from this
tutorial, make sure you remove all extra spaces from the end of each
line. Also, confirm that your operating system is set to display file
extensions for all files (if you normally do not see file extensions
when browsing files, open the "Tools" menu in windows explorer and
choose "Folder Options", select the "View" tab, then scroll down and
uncheck "Hide file extensions for known file types".)
If you want to get your map working in-game
quickly, you can simply copy the .ini file of an official map and change
a few settings. You can also download
Revraz's MapHelper utility, which provides an easy to use interface
and automatically
nudist girls creates the necessary files. However, in this tutorial
we are going to create a new map .INI file from scratch in order to
learn what each line does.
Create a new text file in the "maps" directory and rename it to "mymap.ini".
Open the file in notepad. To start, enter these two lines:
[Engine.R6MissionDescription]
version=2 |
These two lines should be included for every map.
This needs to match the name of your .RSM file.
I'm not positive what the ShortName is for; I don't think that it
appears anywhere in-game. It is likely used by the engine as an
identifier. I recommend assigning a three character ID that you are sure
is unique (not shared by any of the official maps).
| LocalizationFile=mymappack |
This line pulls the menu name and mission info from a separate
localization file, which can be shared by your entire mod or mappack.
Localization provides support for multiple languages, based on the
install. For example, the French version will use mymappack.fra if
present. If the install is not localized, or if no localized file is
found, it will look for mymappack.int (.INT stands for International)
and use this as the default text. We are going to create that file now.
Save your .INI file, and then create a new text file in the RavenShield
"system" directory and rename it to mymappack.int. Open mymappack.int in
notepad and enter the following lines:
This should match the name of your .ini and .rsm file.
| ID_MENUNAME=My Custom Map |
This is the formal mission name (i.e. Oil Refinery, Parade, etc.) that
you wish to appear when selecting maps for Multiplayer or Custom
Missions.
| ID_CODENAME=Roaring Elephant |
This is the cool codename that sounds like the title of a Clancy Novel.
It will appear on the loading screen and on the mission briefing page.
ID_DATETIME=2003.3.19 - 1300
ID_LOCATION=Philadelphia PA, North America |
These will appear on the mission briefing page and on the the loading
screen in both singleplayer and multiplayer
ID_CONTROL=First line of text.\n\nSecond line of text.
ID_CONTROL1=The conclusion of a whole lot of text
ID_CLARK=Kill terrorists. Got it?
ID_SWEENY=We are dealing with dangerous people. Kill them.
ID_NEWSWIRE=A covert operation rescued a cat out of a tree early
yesterday.
ID_MISSION_ORDER=Your mission is kill terrorists. |
This is the text that appears on the mission briefing page. If you omit
a line, that "person" will simply be grayed out. "\n" will produce a
line break in the text. The "ID_CONTROL1" line is actually unnecessary
in this example, however I wanted ot illustrate that anytime your text
is over 500 characters long, you need to enter the first 500 characters
normally (i.e. "ID_CLARK") and then the next 500 characters as a new
line ("ID_CLARK1"). Note that while the mission orders text is entered
in this mappack .INT file, the corresponding audio files will be
assigned later in our map .INI file. If you are creating a multiplayer
only map, you can skip these lines completely.
This .INT file can be used for all the maps in your mod or mappack. You
would simply add the settings for the second map right below the first.
Now, save your .INT file and return to the mymap.INI file we created
earlier in the "maps" directory. Add the following lines:
m_TMissionOverview=Texture'R6MenuBG.CampainImage.Parade'
m_RMissionOverview=(X=0,Y=0,W=230,H=130) |
This specifies the image that you want to appear when someone selects
the map name on the Custom Missions page. Note that this image must be
stored as a map texture in the identified package in the editor (which
may be explained in a future tutorial, but is outside the scope of this
one). The 2nd line allows you to crop the image. I believe the reason
for the cropping is that the standard size of mission snapshots in the
unreal engine is 256 x 256 units, however the RvS in-game menu is
designed for 230 x 130 images. If you look at the screenshot textures
for the official campaign missions from within the editor, you'll see
that they are 256 x 256 graphics but everything outside the 230 x 130
area is just blackspace.
m_TWorldMap=Texture'R6MenuBG.MissionConf.RS_M15_Parade'
m_RWorldMap=(X=0,Y=0,W=196,H=98) |
This specifies the "movie" that plays on the mission briefing page. The
animated texture must be stored in the identified package. The total
size of the graphic should be 256 x 128 units, however the viewable area
will only be 196 x 98. I must admit I have had zero success in getting
this line to actually load the movie, even when I know that the movie
exists in the location specified. If you have had success with this,
please let me know how.
m_MissionArmorTypes=Class'R6Description.R6DescLightGreyCamo'
m_MissionArmorTypes=Class'R6Description.R6DescMediumGreyCamo'
m_MissionArmorTypes=Class'R6Description.R6DescHeavyGreyCamo'
m_MissionArmorTypes=Class'R6Description.R6DescLightBlueCamo'
m_MissionArmorTypes=Class'R6Description.R6DescMediumBlueCamo'
m_MissionArmorTypes=Class'R6Description.R6DescHeavyBlueCamo' |
These lines control which armor types you wish to make available for
singleplayer missions. The armor types available with the retail game
are:
| R6DescLight |
R6DescMedium |
R6DescHeavy |
| R6DescLightGreyCamo |
R6DescMediumGreyCamo |
R6DescHeavyGreyCamo |
| R6DescLightBlue |
R6DescMediumBlue |
R6DescHeavyBlue |
| R6DescLightBlueCamo |
R6DescMediumBlueCamo |
R6DescHeavyBlueCamo |
| R6DescLightEuroCamo |
R6DescMediumEuroCamo |
R6DescHeavyEuroCamo |
| R6DescLightGreen |
R6DescMediumGreen |
R6DescHeavyGreen |
| R6DescLightGreenCamo |
R6DescMediumGreenCamo |
R6DescHeavyGreenCamo |
| R6DescLightWinter |
R6DescMediumWinter |
R6DescHeavyWinter |
| R6DescLightWinterCamo |
R6DescMediumWinterCamo |
R6DescHeavyWinterCamo |
| R6DescLightTan |
R6DescMediumTan |
R6DescHeavyTan |
This section will not affect multiplayer uniform options at all. Moving
on...
GameTypes=(package=R6Game,type=R6PracticeModeGame,maxNb=16)
GameTypes=(package=R6Game,type=R6LoneWolfGame,maxNb=1)
GameTypes=(package=R6Game,type=R6TerroristHuntGame,maxNb=16)
GameTypes=(package=R6Game,type=R6HostageRescueGame,maxNb=16)
GameTypes=(package=R6Game,type=R6MissionGame,maxNb=16)
GameTypes=(package=R6Game,type=R6StoryModeGame,maxNb=16) |
Each line "turns on" an additional single player game type for this map.
If you skip these lines, you will have a multiplayer only map.
Personally, if you've put a lot of time into a map, I think you should
try to implement every game type to maximize the value of your map.
Believe it or not, there are folks who play multiplayer pilot missions
24 hours a day as well as those who play nothing but single player tango
hunts. However, if you turn a game type on, make SURE you have the
appropriate insertion points and actors created in the map or you will
run into trouble.
The Practice, Lone Wolf, Tango Hunt, and Hostage Rescue game types match
the options on the Custom Missions page. I'm really not sure about "Misson"
and "StoryMode", although Mission probably identifies a map as part of
the official campaign (however, there's definately a lot more involved
in adding to the official campaign, which is beyond the scope of this
tutorial). It appears that changing the maxNb setting for single player
games does not have any effect (Lone Wolf is still 1 operative, and
Tango Hunt is still 8 operatives regardless).
GameTypes=(package=R6Game,type=R6TerroristHuntCoopGame,maxNb=16)
GameTypes=(package=R6Game,type=R6HostageRescueCoopGame,maxNb=16)
GameTypes=(package=R6Game,type=R6HostageRescueAdvGame,maxNb=16)
GameTypes=(package=R6Game,type=R6DeathMatch,maxNb=16)
GameTypes=(package=R6Game,type=R6TeamDeathMatchGame,maxNb=16)
GameTypes=(package=R6Game,type=R6TeamBomb,maxNb=16)
GameTypes=(package=R6Game,type=R6EscortPilotGame,maxNb=16)
GameTypes=(package=R6Game,type=R6NoRules,maxNb=16) |
Each line "turns on" an additional multiplayer game type for this map.
If you skip these lines, you will have a singleplayer only map. Again,
if you turn a game type on, make SURE you have the appropriate insertion
points and actors created in the map. The gametypes above are self
explanatory, with two exceptions: "Deathmatch" appears as "Survivor"
in-game, and I sure wish I knew what the "NoRules" gametype was for.
I really like how this is all configured. I hope that people working on
total conversions will utilize the framework that is established here.
(i.e. "package=JohnsTotalConversion, type=PinTheTailOnTheTango")
m_AudioBankName="Voices_MenuMiss9"
m_PlayEventControl=Sound'Voices_MenuMiss9.Play_ControlM09'
m_PlayEventClark=Sound'Voices_MenuMiss9.Play_ClarkM09'
m_PlayEventSweeney=Sound'Voices_MenuMiss9.Play_SweeneyM09' |
These are the audio files used on the mission briefing page. This
example borrows the audio from mission 9 so you can see the proper
format. There's no harm in skipping these completely, since they
normally would just be used to echo the text we created in the
mymappack.int file. However, if you are feeling ambitious, you would
need to record and store the files in the identified package in the
editor (Which is outside the scope of this tutorial). These files are
not used at all in multiplayer games.
m_InGameVoiceClarkBankName="Voices_Clark_Mission09"
m_PlayMissionIntro=Sound'Voices_Clark_Mission09.Play_Mission09_Intro'
m_PlayMissionExtro=Sound'Voices_Clark_Mission09.Play_Mission09_Extro'
|
These are the audio files played upon insertion into a map, and upon
successful extraction from a mission. These clips only play during
MIssionMode game types (including Practice and Coop missions).
This section assigns uniforms to each team for mutiplayer games. Team 1
is always referred to as the "green" team, and Team 2 as the "red" team.
If you omit these lines completely, or if you enter invalid uniform
names, default blue and tan uniforms will be used. To modify the team
uniforms from this example, change instances of "R6RainbowMediumTan" and
"R6RainbowMediumBlueCamo" to any of the following:
| R6RainbowLight |
R6RainbowMedium |
R6RainbowHeavy |
| R6RainbowLightGreyCamo |
R6RainbowMediumGreyCamo |
R6RainbowHeavyGreyCamo |
| R6RainbowLightBlue |
R6RainbowMediumBlue |
R6RainbowHeavyBlue |
| R6RainbowLightBlueCamo |
R6RainbowMediumBlueCamo |
R6RainbowHeavyBlueCamo |
| R6RainbowLightEuroCamo |
R6RainbowMediumEuroCamo |
R6RainbowHeavyEuroCamo |
| R6RainbowLightGreen |
R6RainbowMediumGreen |
R6RainbowHeavyGreen |
| R6RainbowLightGreenCamo |
R6RainbowMediumGreenCamo |
R6RainbowHeavyGreenCamo |
| R6RainbowLightWinter |
R6RainbowMediumWinter |
R6RainbowHeavyWinter |
| R6RainbowLightWinterCamo |
R6RainbowMediumWinterCamo |
R6RainbowHeavyWinterCamo |
| R6RainbowLightTan |
R6RainbowMediumTan |
R6RainbowHeavyTan |
This section assigns a uniform to all operatives playing a coop game on
this map. If you omit these lines completely, default blue uniforms will
be used.
That's it! Save your mymap.ini file. Launch the game, open the Custom
Missions page, select Practice Mission, and look for "My Custom Map".
Try it out! (If the missing loading screen bothers you too much, just
copy one of the existing .TGA files in the maps folder, and rename it to
mymap.tga.)
In conclusion, here is the bare minimum requirement needed in your .INI
file if you just want to pop in to explore and test a new map:
[Engine.R6MissionDescription]
version=2
m_MapName=mymap
m_MissionArmorTypes=Class'R6Description.R6DescLight'
GameTypes=(package=R6Game,type=R6PracticeModeGame,maxNb=16) |
But that will leave a lot of ugly, empty screens. Now, here is the
complete .INI file that we've created during this tutorial:
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.
|
|
|