Examining The Escort Activity

* Possible Spoiler Alert*
If you haven't played this activity before parts 2 and 3 of this tutorial may contain spoilers.

There are 26 files attached to the Escort activity and 22 of them are
client information.

Here is the contents of the Escort_Client1_pre.xtbl file
Code:
<Preset>
        <Name>Escort_Client1</Name>
        <Character>npc_business_male</Character>
        <Spawn_Info_Rank>Civilian - Weak</Spawn_Info_Rank>
        <Team>Playas</Team>
        <AI_Personality>civilian cowardly</AI_Personality>
        <Flags>
            <Flag>no_ambient_spawning</Flag>
            </Flags>
        <_Editor>
            <Category>Entries</Category>
            </_Editor>
        <ForcedVariant>asian</ForcedVariant>
        <Filters>
            <Gender>Male</Gender>
            </Filters>
        <Persona_Override>AM_BIZ</Persona_Override>
        </Preset>

It contains all the information needed for the client side of the
activity interaction. So let's break it down

<Preset>
<Name>Escort_Client1</Name>
<Character>npc_business_male</Character>
<Spawn_Info_Rank>Civilian - Weak</Spawn_Info_Rank>
<Team>Playas</Team>

Name: Escort Client 1 is how the ped is referred to in the Escort activity code
Character: Is the npc file (model) that is called to represent this client. We can tell that he is a business man.
Spawn info rank: Civilian - Weak. He is a civilian not a gang member
Team: For the duration of the level he is assigned to the playa's team. That way he will not attack or flee

<AI_Personality>civilian cowardly</AI_Personality>
<Flags>
<Flag>no_ambient_spawning</Flag>
</Flags>
<_Editor>
<Category>Entries</Category>
</_Editor>
<ForcedVariant>asian</ForcedVariant>

Personality: He is a coward which tells the code to play the "coward" sound files for his character.

Note: What I mean by coward sound files is: Every personality type has sound files that correspond to it.
and when a certain ped type, in this case a coward, runs into a situation like the driver running
someone over or hitting another vehicle, he will respond differently than another ped type will.
The files that play, in this case, are the cowardly responses.

No ambient spawning: While this activity level is in progress you will not see this ped on the street once he is already in the car.
Forced Variant: Asian. The forced ped variant. This means that the sound files for the Asian character models will play.

Code:
<Filters>
            <Gender>Male</Gender>
            </Filters>
        <Persona_Override>AM_BIZ</Persona_Override>
        </Preset>

Gender: This ped is tagged as a male. So the game knows to use the male animation set
Persona Override: Which personality should the ped use. In this case an Asian Businessman.

As with any other _pre file you can swap out the npc model. For instance you could swap it out for Carlos or Samson, or Laura etc...
Other values like personality type or persona override can also be changed.
Under the Navpoints section you have several entries.

Code:
// -------
#Navpoints
// -------

$Navpoint:    "escort_rl_start"
$Type:        "ground"
$Pos:            <-49.130795 -4.004669 -249.334412>
$Orient:        [-0.685019]

$Navpoint:    "escort_rl_$nav000"
$Type:        "ground"
$Pos:            <-55.652031 -4.003024 -244.692322>
$Orient:        [2.533236]

$Navpoint:    "escort_rl_food"
$Type:        "ground"
$Pos:            <713.822998 -3.994000 342.128998>
$Orient:        [1.734695]

$Navpoint:    "escort_rl_pickup_1"
$Type:        "ground"
$Pos:            <53.127144 -3.849999 -42.733208>
$Orient:        [-1.431171]

$Navpoint:    "escort_rl_pickup_2"
$Type:        "ground"
$Pos:            <88.084404 -3.849986 -206.964569>
$Orient:        [1.483531]

$Navpoint:    "escort_rl_hotel"
$Type:        "ground"
$Pos:            <85.542000 -3.994000 -202.554001>
$Orient:        [I]

$Navpoint:    "escort_rl_pickup_4"
$Type:        "ground"
$Pos:            <-36.537464 -3.995044 -243.862793>
$Orient:        [0.217690]

$Navpoint:    "escort_rl_drop_4"
$Type:        "ground"
$Pos:            <-48.129391 -3.835896 -109.674408>
$Orient:        [-1.326450]

$Navpoint:    "escort_rl_$nav001"
$Type:        "ground"
$Pos:            <413.201508 20.424700 -1732.902466>
$Orient:        [I]

$Navpoint:    "escort_rl_drop_5"
$Type:        "ground"
$Pos:            <72.883461 7.511057 -44.412891>
$Orient:        [I]

$Navpoint:    "escort_rl_warp"
$Type:        "ground"
$Pos:            <-49.130795 -4.004669 -249.334412>
$Orient:        [-0.685019]

$Navpoint:    "escort_rl_pickup_5"
$Type:        "ground"
$Pos:            <168.496475 -3.849612 -470.940582>
$Orient:        [-0.017453]

$Navpoint:    "escort_rl_strip_club"
$Type:        "ground"
$Pos:            <-22.887907 -4.001208 -240.528519>
$Orient:        [I]

$Navpoint:    "escort_rl_puke"
$Type:        "ground"
$Pos:            <-62.041199 -3.999002 -131.728729>
$Orient:        [I]

$Navpoint:    "escort_rl_$drugs"
$Type:        "ground"
$Pos:            <1610.650024 6.513000 -55.056000>
$Orient:        [I]

$Navpoint:    "escort_rl_dance_club"
$Type:        "ground"
$Pos:            <120.031998 -3.994000 557.741028>
$Orient:        [I]

$Navpoint:    "escort_rl_pickup_6"
$Type:        "ground"
$Pos:            <-48.361961 -3.850002 -326.792450>
$Orient:        [I]

$Navpoint:    "escort_rl_dropoff_6"
$Type:        "ground"
$Pos:            <547.403870 6.565713 -1395.851563>
$Orient:        [I]

$Navpoint:    "escort_rl_pickup_7"
$Type:        "ground"
$Pos:            <-53.473122 -3.820848 -56.584721>
$Orient:        [I]

$Navpoint:    "escort_rl_dropoff_7"
$Type:        "ground"
$Pos:            <123.045029 -3.844904 -315.485443>
$Orient:        [I]

$Navpoint:    "escort_rl_park"
$Type:        "ground"
$Pos:            <-777.828979 -4.078000 -11.651000>
$Orient:        [I]

$Navpoint:    "escort_rl_brothel"
$Type:        "ground"
$Pos:            <356.946014 -3.994000 517.828003>
$Orient:        [I]

$Navpoint:    "escort_rl_sex_shop"
$Type:        "ground"
$Pos:            <96.970001 -3.994000 -81.518997>
$Orient:        [I]

$Navpoint:    "escort_rl_theatre"
$Type:        "ground"
$Pos:            <-26.652000 -3.994000 42.653000>
$Orient:        [I]

$Navpoint:    "escort_rl_car"
$Type:        "ground"
$Pos:            <-53.318192 -4.005534 -245.575775>
$Orient:        [0.898332]

$Navpoint:    "escort_rl_$target"
$Type:        "ground"
$Pos:            <-1.803238 -3.849001 -378.815826>
$Orient:        [I]

$Navpoint:    "escort_rl_river"
$Type:        "ground"
$Pos:            <-1.803238 -3.849001 -378.815826>
$Orient:        [I]

$Navpoint:    "escort_rl_$marina"
$Type:        "ground"
$Pos:            <-480.116760 4.938874 -2079.588379>
$Orient:        [I]


$Navpoint: "escort_rl_start"
$Type: "ground"
$Pos: <-49.130795 -4.004669 -249.334412>
$Orient: [-0.685019]

This is where you are when the mission starts

$Navpoint: "escort_rl_food"
$Type: "ground"
$Pos: <713.822998 -3.994000 342.128998>
$Orient: [1.734695]

This is the Freckle Bitch restaurant where you have to drive as one of the complications

$Navpoint: "escort_rl_$nav000"
$Type: "ground"
$Pos: <-55.652031 -4.003024 -244.692322>
$Orient: [2.533236]

Here is where the sex worker is located when the activity starts.

$Navpoint: "escort_rl_pickup_1"
$Type: "ground"
$Pos: <53.127144 -3.849999 -42.733208>
$Orient: [-1.431171]

Here is the first possible pickup point for your customer.
There are several pickup points.

$Navpoint: "escort_rl_drop_4"
$Type: "ground"
$Pos: <-48.129391 -3.835896 -109.674408>
$Orient: [-1.326450]

This in the fourth of several points where the customer wishes to be dropped off

Code:
// -------
#Vehicles
// -------

$Vehicle:        "escort_rl_car"
$Vehicle type:    "car_4dr_luxury04"
$Start nav:        "escort_rl_car"
$Group:            "escort_rl_group"
$Stream Distance:            50.000
+Variant: "Escort"

Here is where the vehicle is defined (vehicle type) If you wanted to
change the vehicle here is the place to do so. Note that you will have to
change the vehicle variant as well.

Code:
// -------
#Humans
// -------

$Human:                    "escort_rl_stripper"
$Char type:                "npc_young_female_generic"
$Start nav:                "escort_rl_$nav000"
+Group:                    "escort_rl_group"

$Human:                    "escort_rl_client"
$Char type:                "npc_young_female_generic"
$Start nav:                "escort_rl_pickup_4"
+Group:                    "escort_rl_group"

$Human:                    "escort_rl_$target"
$Char type:                "npc_business_male"
$Start nav:                "escort_rl_$target"
+Group:                    "escort_rl_drive_by"

Here is where the activity characters are defined.

The stripper npc that is defined by the '$Char type entry can be changed
as long as you have the npc model info for the character you want to change it to
ie npc_pierce. The same thing is true for the client and the target.

For those who may not know the target is the npc that one or more of the customers
ask you to kill as one of the mission complications.

I am not 100% sure about this but I think that the info in the Escort_Client_pre.xtbl
overrides the client info contained in the CTS file.
Here is the Level 1 Info for the Red Light Escort activity.
Code:
<Level>
                <Num_Spawns>1</Num_Spawns>
                <Respawn_Rate>25</Respawn_Rate>
                <Satisfaction_Time>45</Satisfaction_Time>
                <Footage_Limit>50</Footage_Limit>
                <Cash_Award>100</Cash_Award>
                <Props_Award>5000</Props_Award>
                <Min_Roadblock_Spawn_Time>700</Min_Roadblock_Spawn_Time>
                <Max_Roadblock_Spawn_Time>700</Max_Roadblock_Spawn_Time>
                <Num_Complications>0</Num_Complications>
                <Number_of_combos_to_advance>10</Number_of_combos_to_advance>
                <Coop_Footage_Limit>50</Coop_Footage_Limit>
                <Coop_Num_Complications>0</Coop_Num_Complications>
                <Number_of_minigame_moves>5</Number_of_minigame_moves>
                <Percent_penalty_for_gun_fire>.5</Percent_penalty_for_gun_fire>
                <Percent_penalty_for_wrong_move>.5</Percent_penalty_for_wrong_move>
                <Time_to_hold_first_part_of_combo_game>1.0</Time_to_hold_first_part_of_combo_game>
                <Time_for_second_part_of_combo_game>8</Time_for_second_part_of_combo_game>
                <Time_per_combo_element>2</Time_per_combo_element>
                </Level>

<Num_Spawns>1</Num_Spawns>
<Respawn_Rate>25</Respawn_Rate>
<Satisfaction_Time>45</Satisfaction_Time>
<Footage_Limit>50</Footage_Limit>

Number of spawns: How many clients spawn at once
Spawn Rate: If something happens to the first client or they bail out how long til another spawns
How long does the client need to be "satisfied". Basically how long must you drive around.
Footage Limit: How much "footage" do the Newsvan's need

<Min_Roadblock_Spawn_Time>700</Min_Roadblock_Spawn_Time>
<Max_Roadblock_Spawn_Time>700</Max_Roadblock_Spawn_Time>

How long until the news vans spawn a roadblock

Number of complications: How many times will the client stop what he is supposed to be doing

<Number_of_combos_to_advance>10</Number_of_combos_to_advance>
<Coop_Footage_Limit>50</Coop_Footage_Limit>
<Coop_Num_Complications>0</Coop_Num_Complications>
<Number_of_minigame_moves>5</Number_of_minigame_moves>

The coop version of this activity plays differently to the single player version. In the
coop version one person drives the car while the other persons uses the controller to play a minigame
similar to the one in the pimping diversion.

<Percent_penalty_for_gun_fire>.5</Percent_penalty_for_gun_fire>
<Percent_penalty_for_wrong_move>.5</Percent_penalty_for_wrong_move>

How much will the pleasure meter go down when you shoot at a newsvan or hit or mess up the coop minigame

<Time_to_hold_first_part_of_combo_game>1.0</Time_to_hold_first_part_of_combo_game>
<Time_for_second_part_of_combo_game>8</Time_for_second_part_of_combo_game>
<Time_per_combo_element>2</Time_per_combo_element>

How far apart should these minigames be during one level of the activity.

There are several things in this level that can be changed to suit the player. From turning up
the number of complications to setting the satisfaction time to 1 second to changing the amount
of footage the newsvans need.

Down in the client personas section:

Code:
<Client_Personas>
            <Persona_Name>HM_BIZ</Persona_Name>
            <Persona_Name>HF_BIZ</Persona_Name>
            <Persona_Name>BM_MID</Persona_Name>
            <Persona_Name>BM_BIZ</Persona_Name>
            <Persona_Name>BM_YNG</Persona_Name>
            <Persona_Name>BM_ATHL</Persona_Name>
            <Persona_Name>BF_YNG</Persona_Name>
            <Persona_Name>AM_RICH</Persona_Name>
            <Persona_Name>AF_YNG</Persona_Name>
            <Persona_Name>WM_MID</Persona_Name>
            <Persona_Name>WM_SPRT</Persona_Name>
            <Persona_Name>WM_COW</Persona_Name>
            <Persona_Name>WM_BIZ</Persona_Name>
            <Persona_Name>WM_RICH</Persona_Name>
            <Persona_Name>WF_FAT</Persona_Name>
            <Persona_Name>AM_ELD</Persona_Name>
            <Persona_Name>BM_ELD</Persona_Name>
            <Persona_Name>WM_COP</Persona_Name>
            <Persona_Name>BM_FBI</Persona_Name>
            <Persona_Name>WF_HIP2</Persona_Name>
            </Client_Personas>

you can change the settings but you should also change them in the appropriate
Escort_Client.xtbl as well.

In the enemies section:

Code:
<Enemies>
            <Enemy>
                <Vehicle_Name>car_2dr_muscle04</Vehicle_Name>
                <Character_Name>npc_young_male_generic</Character_Name>
                <Type>PI</Type>
                <Level>3</Level>
                <Spawn_Chance>.4</Spawn_Chance>
                <Num_Passengers>1</Num_Passengers>
                <Reaction>escort - complication PI</Reaction>
                <Kill_Reaction>escort - complication PI end</Kill_Reaction>
                </Enemy>
            <Enemy>
                <Vehicle_Name>car_2dr_muscle03</Vehicle_Name>
                <Character_Name>npc_young_female_generic</Character_Name>
                <Type>Spouse</Type>
                <Level>4</Level>
                <Spawn_Chance>.3</Spawn_Chance>
                <Num_Passengers>1</Num_Passengers>
                <Reaction>escort - complication spouse</Reaction>
                <Kill_Reaction>escort - complication spouse end</Kill_Reaction>
                </Enemy>
            <Enemy>
                <Vehicle_Name>car_4dr_standard02</Vehicle_Name>
                <Character_Name>npc_young_male_generic</Character_Name>
                <Type>IRS</Type>
                <Level>5</Level>
                <Spawn_Chance>.2</Spawn_Chance>
                <Num_Passengers>4</Num_Passengers>
                <Reaction>escort - complication IRS</Reaction>
                <Kill_Reaction>escort - complication IRS end</Kill_Reaction>
                </Enemy>
            <Enemy>
                <Vehicle_Name>van_4dr_news01</Vehicle_Name>
                <Character_Name>npc_paparazzi</Character_Name>
                <Type>News</Type>
                <Level>1</Level>
                <Spawn_Chance>1</Spawn_Chance>
                <Num_Passengers>1</Num_Passengers>
                <Reaction>escort - client reacts to seeing razzi</Reaction>
                <Kill_Reaction>escort - client reacts to killing razzi</Kill_Reaction>
                <Lost_Reaction>escort - client reacts to losing razzi</Lost_Reaction>
                </Enemy>
            </Enemies>

You can change the spawn chance of the vans to 0. Which should remove them from the mission.

Here are the driving based complications. If you want the remove one of them from the mission
I suggest just raising the level to 99. Deleting it may break the activity. Each complication has two
parts. The first part is the first level that it can be called in and the second part is the last
level that it can be called in.

Code:
<Drive_Fast>
            <Level>6</Level>
            <Seconds>4</Seconds>
            <Speed>55</Speed>
            <Chance>0.4</Chance>
            <Start_Line>escort - complication fast</Start_Line>
            <End_Line>escort - complication fast end</End_Line>
            <Help>fast</Help>
            </Drive_Fast>
        <Stop>
            <Level>99</Level>
            <Seconds>3</Seconds>
            <Chance>0.6</Chance>
            <Start_Line>escort - complication stop</Start_Line>
            <End_Line>escort - complication stop end</End_Line>
            <Help>stop</Help>
            </Stop>
        <Crash>
            <Level>4</Level>
            <Damage>1000</Damage>
            <Chance>0.4</Chance>
            <Start_Line>escort - complication crash</Start_Line>
            <End_Line>escort - complication crash end</End_Line>
            <Help>crash</Help>
            </Crash>
        <Air>
            <Level>99</Level>
            <Seconds>2</Seconds>
            <Chance>0.4</Chance>
            <Start_Line>escort - complication jump</Start_Line>
            <End_Line>escort - complication jump end</End_Line>
            <Help>air</Help>
            </Air>
        <Drive_By>
            <Level>3</Level>
            <Kills>4</Kills>
            <Chance>0.2</Chance>
            <Start_Line>escort - complication kill</Start_Line>
            <End_Line>escort - complication kill end</End_Line>
            <Help>kill</Help>
            <Failsafe>
                <Target>escort_rl_$target</Target>
                </Failsafe>
            </Drive_By>

You can change the amount of time each complication must be performed
as well as the chance that the activity will ask you to perform it.

Here are the trip complications

Code:
<Trips>
                <Trip>
                    <Help>trip:park</Help>
                    <Navpoint_prefix>escort_rl_park</Navpoint_prefix>
                    <Level>3</Level>
                    <Chance>0.2</Chance>
                    <Start_Line>escort - complication sr park</Start_Line>
                    <End_Line>escort - complication sr park end</End_Line>
                    <Ho_exits>true</Ho_exits>
                    </Trip>
                <Trip>
                    <Help>trip:brothel</Help>
                    <Navpoint_prefix>escort_rl_brothel</Navpoint_prefix>
                    <Level>2</Level>
                    <Chance>.3</Chance>
                    <Start_Line>escort - complication brothel</Start_Line>
                    <End_Line>escort - complication brothel end</End_Line>
                    <Ho_exits>false</Ho_exits>
                    </Trip>
                <Trip>
                    <Help>trip:theatre</Help>
                    <Navpoint_prefix>escort_rl_theater</Navpoint_prefix>
                    <Level>3</Level>
                    <Chance>.3</Chance>
                    <Start_Line>escort - complication movie</Start_Line>
                    <End_Line>escort - complication movie end</End_Line>
                    <Ho_exits>false</Ho_exits>
                    </Trip>
                <Trip>
                    <Help>trip:food</Help>
                    <Navpoint_prefix>escort_rl_food</Navpoint_prefix>
                    <Level>4</Level>
                    <Start_Line>escort - complication food</Start_Line>
                    <Chance>0.3</Chance>
                    <End_Line>escort - complication food end</End_Line>
                    <Ho_exits>false</Ho_exits>
                    </Trip>
                <Trip>
                    <Help>trip:motel</Help>
                    <Navpoint_prefix>escort_rl_hotel</Navpoint_prefix>
                    <Level>4</Level>
                    <Start_Line>escort - complication motel</Start_Line>
                    <Chance>0.4</Chance>
                    <End_Line>escort - complication motel end</End_Line>
                    <Ho_exits>false</Ho_exits>
                    </Trip>
                <Trip>
                    <Help>trip:drugs</Help>
                    <Navpoint_prefix>escort_rl_$drugs</Navpoint_prefix>
                    <Level>4</Level>
                    <Start_Line>escort - complication university</Start_Line>
                    <Chance>0.4</Chance>
                    <End_Line>escort - complication university end</End_Line>
                    <Ho_exits>false</Ho_exits>
                    </Trip>
                <Trip>
                    <Help>trip:river</Help>
                    <Navpoint_prefix>escort_rl_river</Navpoint_prefix>
                    <Level>5</Level>
                    <Start_Line>escort - complication river</Start_Line>
                    <Chance>0.5</Chance>
                    <End_Line>escort - complication river end</End_Line>
                    <Ho_exits>true</Ho_exits>
                    </Trip>
                <Trip>
                    <Help>trip:option1</Help>
                    <Navpoint_prefix>escort_rl_$marina</Navpoint_prefix>
                    <Level>5</Level>
                    <Chance>0.5</Chance>
                    <Start_Line>escort - complication marina</Start_Line>
                    <End_Line>escort - complication marina end</End_Line>
                    <Ho_exits>true</Ho_exits>
                    </Trip>
                </Trips>
            <Chance>0.3</Chance>
            </Trip>

Here you can change change the level that this trip gets called at, as well as the
chance that it will be called.
 
Last edited:
Back
Top