User:Delta-ranger: Difference between revisions

From Killing Floor 2 Wiki
Jump to navigation Jump to search
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
Go away this has my crappy source >:|
=Introduction=
=Introduction=
This documentation is provided to help you create your own Holdout style Killing Floor 2 map. While most systems for a standard map exist in a Holdout map, there are new kismet functions that exist to make a Holdout map work. The kismet and necessary actors for Holdout gameplay are all setup and included in the template map. This means you can spend most of your time developing your arenas without having to understand how all of the Holdout systems function. However the following documentation will explain the systems.
This documentation is provided to help you create your own Holdout style Killing Floor 2 map. While most systems for a standard map exist in a Holdout map, there are new kismet functions that exist to make a Holdout map work. The kismet and necessary actors for Holdout gameplay are all setup and included in the template map. This means you can spend most of your time developing your arenas without having to understand how all of the Holdout systems function. However the following documentation will explain the systems.
Line 5: Line 7:
A sample template map has been made available to community developers on the off chance that they'd like to make this type of map themselves. It can be located in the SDK section of the steam build:
A sample template map has been made available to community developers on the off chance that they'd like to make this type of map themselves. It can be located in the SDK section of the steam build:


'''{BASE STEAM INSTALL LOCATION}\SteamApps\common\killingfloor2\KFGame\BrewedPC\Maps\SDK\Mod_Tools_HoldOut_Template.kfm'''
''{BASE STEAM INSTALL LOCATION}\SteamApps\common\killingfloor2\KFGame\BrewedPC\Maps\SDK\Mod_Tools_HoldOut_Template.kfm''


==How Holdout Works==
==How Holdout Works==
{{Col-begin}}
{{Col-begin}}
{{Col-break|width=80%}}
{{Col-break|width=80%}}
''The following discusses holdout as set up in The Descent and in the template. Other maps like Nightmare and Powercore tweak the set up slightly but use the same principle and will be discussed afterwards.''
<pre style="color: red">The following discusses holdout as set up in The Descent and in the template. Other maps like Nightmare and Powercore tweak the set-up slightly but use the same principles.</pre>
Although it may look like it, <u>'''Teleportation does NOT use Trigger Volumes to teleport a player when they 'drop' down.'''</u> Trigger volumes are only used to teleport players that are not in the correct Arena when a wave starts. Instead teleportation happens using a system of KFTeleporters. <br /><br />
The map has multiple KFTeleporters, and not all of them are used in the same way; they are broken into 2 different categories:
;'''1. The Basic Arena Teleporter that is placed in each Arena.''' 
:These dictate '''WHERE''' players will spawn when they get teleported. Within the Object category of the KFTeleporter Properties, they are given a unique tag; usually "Arena_1" (or whatever number). There are 10 of these; 1-9 for waves 2-10 and 1 for the Boss. The teleporter system uses this tag to determine what the next arena is. The name of the teleporter does not matter, ONLY the tag. '''See Figure 1.1.''' <br /><br />
;'''2. A Single 'Parent' Teleporter which 'catches' the player and teleports them to the above teleporters.'''
:There is a single teleporter which is used to '''CAPTURE''' the players when they 'drop' down at the end of a wave and '''TELEPORT''' them to a specific Arena. This teleporter in the Template is 'KFTeleporter_0' and is placed below each Arena. It has the Tag 'KFTeleporter' in its object properties. I recommend increasing the drawscale of this KFTeleporter so you don't confuse it/easy to select from distance.
:It also has additional properties under the KFTeleporter category. These contain 10 URLs that list the arena teleporter tags (eg: Arena_1 through 9 + Boss). Basically listing the teleport locations to move the player. '''See Figure 1.2.'''
:There is one other important to pay attention to. The teleporter captures players who fall into its ''<u>node radius</u>''. When the game detects that they enter into this radius, they will be teleported. As the radius is extremely huge it can be hard to see in the editor. However sometimes the radius needs to be adjusted. These values can be found under the KFTeleporter Properties > Collision category > Colision Component. You are looking mainly at '''Collision Radius''' (and Collision Height - but this rarely needs to be changed). See '''Figure 1.3.'''<br /><br />


Although it may look like it, <u>'''Teleportation does NOT use Trigger Volumes to teleport a player when they 'drop' down.'''</u> Trigger volumes are only used to teleport players that are not in the correct Arena when a wave starts. Instead teleportation happens using a system of KFTeleporters. The map has multiple KFTeleporters, and not all of them are used in the same way; they are broken into 2 different categories:
Maps like Nightmare or Powercore use the same principles as above, but instead of a 'Single Parent Teleporter', they now have multiple Parent teleporters located in each arena. Instead of dropping into an extremely large collision radius, the player runs (or is pushed) into a smaller one instead.
 
# '''The Basic Arena Teleporter that is placed in each Arena.'''  These dictate '''WHERE''' players will spawn when they get teleported. Within the Object category of the KFTeleporter Properties, they are given a unique tag; usually "Arena_1" (or whatever number). There are 10 of these; 1-9 for waves 2-10 and 1 for the Boss. The teleporter system uses this tag to determine what the next arena is. The name of the teleporter does not matter, ONLY the tag. '''See Figure 1.1.'''
# '''A Single 'Parent' Teleporter which 'catches' the player and teleports them to the above teleporters.''' There is a single teleporter which is used to '''CAPTURE''' the players when they 'drop' down at the end of a wave and '''TELEPORT''' them to a specific Arena. This teleporter in the Template is 'KFTeleporter_0' and is placed below each Arena. It has the Tag 'KFTeleporter' in its object properties. I recommend increasing the drawscale of this KFTeleporter so you don't confuse it/easy to select from distance. It also has additional properties under the KFTeleporter category. These contain 10 URLs that list the arena teleporter tags (eg: Arena_1 through 9 + Boss). Basically listing the teleport locations to move the player. '''See Figure 1.2.''' There is one other important to pay attention to. The teleporter captures players who fall into its ''<u>node radius</u>''. When the game detects that they enter into this radius, they will be teleported. As the radius is extremely huge it can be hard to see in the editor. However sometimes the radius needs to be adjusted. These values can be found under the KFTeleporter Properties > Collision category > Colision Component. You are looking mainly at '''Collision Radius''' (and Collision Height - but this rarely needs to be changed). See '''<u>Figure 1.3.</u>'''
{{Col-break|width=20%}}
{{Col-break|width=20%}}
[[File:Cyst.png|300 px|thumb|'''Figure 1.1:''' The Cyst]]
[[File:Cyst.png|300 px|thumb|'''Figure 1.1:''' Teleporter Name Tag]]
[[File:Cyst.png|300 px|thumb|Additional Text]]
[[File:Cyst.png|300 px|thumb|'''Figure 1.2:''' Teleporter URLs]]
[[File:Cyst.png|300 px|thumb|'''Figure 1.3:''' Teleporter Collision Radius]]
{{Col-end}}
{{Col-end}}
==Arena Layout in Worldspace==
{{Col-begin}}
{{Col-begin}}
{{Col-break|width=80%}}
{{Col-break|width=80%}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras vestibulum diam turpis, non cursus diam consequat eget. Phasellus sodales enim a nisi egestas laoreet. Nullam ante est, mattis condimentum tincidunt eu, volutpat vel nisl. Nulla sed tellus lorem. Morbi et turpis risus. Aliquam eu faucibus purus. Donec pretium ligula consequat felis sagittis faucibus. Mauris vitae erat ut sapien porttitor finibus et consectetur neque. Fusce placerat velit ac neque fringilla, a posuere metus hendrerit. Sed gravida velit quis purus sollicitudin, finibus pharetra nisl dapibus. Curabitur ornare diam at viverra placerat. Vestibulum non arcu et turpis congue ullamcorper ut non justo. Donec neque libero, luctus sed justo in, tristique dignissim nibh. Nunc tincidunt mi quis ex convallis gravida. Mauris feugiat ipsum a rhoncus sagittis.
An important thing for you to understand in the beginning is the actual layout of each of the arenas in the editor’s worldspace.  There are eleven arenas in total. A starting arena, nine randomly played arenas and a boss arena. Regardless of game length, a match will always start players in the start arena and finish in the boss arena. The game waves in-between the start and boss wave are randomly selected from arenas 1-9 and never repeated. The following is a top-down view of all the arenas. They have been arranged in a line to simplify their layout. Each one has a note in editor stating what arena it is.


Maecenas varius tempor massa, sit amet elementum odio luctus eget. Donec dignissim quam id eros vestibulum consequat. Donec eu orci in lacus efficitur convallis eget ut tellus. Praesent placerat tempus metus vitae auctor. Vivamus ac lectus mattis, porta ipsum vitae, pellentesque mi. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Integer nec ipsum condimentum, porttitor ex nec, consequat lectus. Etiam lacus dui, iaculis quis nisl quis, efficitur luctus neque. Nullam pulvinar nec leo id convallis. Proin non est ante. Aliquam erat volutpat. Cras ut libero lectus. Cras vitae nunc lectus.
You can teleport to locations in the editor/map by using the Bookmark functionality in UDK '''(Pressing Ctrl+Number to set a bookmark. eg: Ctrl+1)'''. Currently the Bookmarks are already set and you can teleport to those locations by pressing keys 1-9(0). In the template, all arenas are hotkeyed in the editor, except for the starting room:
{{Col-break|width=20%}}
*Starting Arena: No hotkey, located close to arena 1.
[[File:Cyst.png|300 px|thumb|'''Figure 1.1:''' The Cyst]]
*Arena 1-9: 1-9
[[File:Cyst.png|300 px|thumb|Additional Text]]
*Boss Arena: 0
{{Col-end}}
 
==Testing 1==
The importance of knowing where they are and using the hotkeys becomes even more beneficial if you choose to make changes to the Kismet and need to know what Arena you are making changes to. It also speeds up movement and navigation within the editor<br /><br />
{{Col-begin}}
{{Col-break|width=80%}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras vestibulum diam turpis, non cursus diam consequat eget. Phasellus sodales enim a nisi egestas laoreet. Nullam ante est, mattis condimentum tincidunt eu, volutpat vel nisl. Nulla sed tellus lorem. Morbi et turpis risus. Aliquam eu faucibus purus. Donec pretium ligula consequat felis sagittis faucibus. Mauris vitae erat ut sapien porttitor finibus et consectetur neque. Fusce placerat velit ac neque fringilla, a posuere metus hendrerit. Sed gravida velit quis purus sollicitudin, finibus pharetra nisl dapibus. Curabitur ornare diam at viverra placerat. Vestibulum non arcu et turpis congue ullamcorper ut non justo. Donec neque libero, luctus sed justo in, tristique dignissim nibh. Nunc tincidunt mi quis ex convallis gravida. Mauris feugiat ipsum a rhoncus sagittis.


Maecenas varius tempor massa, sit amet elementum odio luctus eget. Donec dignissim quam id eros vestibulum consequat. Donec eu orci in lacus efficitur convallis eget ut tellus. Praesent placerat tempus metus vitae auctor. Vivamus ac lectus mattis, porta ipsum vitae, pellentesque mi. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Integer nec ipsum condimentum, porttitor ex nec, consequat lectus. Etiam lacus dui, iaculis quis nisl quis, efficitur luctus neque. Nullam pulvinar nec leo id convallis. Proin non est ante. Aliquam erat volutpat. Cras ut libero lectus. Cras vitae nunc lectus.
Maecenas varius tempor massa, sit amet elementum odio luctus eget. Donec dignissim quam id eros vestibulum consequat. Donec eu orci in lacus efficitur convallis eget ut tellus. Praesent placerat tempus metus vitae auctor. Vivamus ac lectus mattis, porta ipsum vitae, pellentesque mi. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Integer nec ipsum condimentum, porttitor ex nec, consequat lectus. Etiam lacus dui, iaculis quis nisl quis, efficitur luctus neque. Nullam pulvinar nec leo id convallis. Proin non est ante. Aliquam erat volutpat. Cras ut libero lectus. Cras vitae nunc lectus.
Line 39: Line 48:
[[File:Cyst.png|300 px|thumb|Additional Text]]
[[File:Cyst.png|300 px|thumb|Additional Text]]
{{Col-end}}
{{Col-end}}
==Testing 2==
{{Col-begin}}
{{Col-break|width=80%}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras vestibulum diam turpis, non cursus diam consequat eget. Phasellus sodales enim a nisi egestas laoreet. Nullam ante est, mattis condimentum tincidunt eu, volutpat vel nisl. Nulla sed tellus lorem. Morbi et turpis risus. Aliquam eu faucibus purus. Donec pretium ligula consequat felis sagittis faucibus. Mauris vitae erat ut sapien porttitor finibus et consectetur neque. Fusce placerat velit ac neque fringilla, a posuere metus hendrerit. Sed gravida velit quis purus sollicitudin, finibus pharetra nisl dapibus. Curabitur ornare diam at viverra placerat. Vestibulum non arcu et turpis congue ullamcorper ut non justo. Donec neque libero, luctus sed justo in, tristique dignissim nibh. Nunc tincidunt mi quis ex convallis gravida. Mauris feugiat ipsum a rhoncus sagittis.


{{Col-break|width=20%}}
<pre style="font-weight: bold; font-size: 12pt; background: #ffc4c4">! ALL MAPS SHOULD MERGE THEIR MESHES WHERE POSSIBLE !</pre>
[[File:Cyst.png|300 px|thumb|The Cyst]]
<pre style="background: #fffcd6">If you cannot implement Precomputed Visibility, you must at very least set proper render distances for ALL actors on your map.</pre>
{{Col-end}}

Latest revision as of 10:45, 25 October 2018

Go away this has my crappy source >:|

Introduction

This documentation is provided to help you create your own Holdout style Killing Floor 2 map. While most systems for a standard map exist in a Holdout map, there are new kismet functions that exist to make a Holdout map work. The kismet and necessary actors for Holdout gameplay are all setup and included in the template map. This means you can spend most of your time developing your arenas without having to understand how all of the Holdout systems function. However the following documentation will explain the systems.

Template Map Location

A sample template map has been made available to community developers on the off chance that they'd like to make this type of map themselves. It can be located in the SDK section of the steam build:

{BASE STEAM INSTALL LOCATION}\SteamApps\common\killingfloor2\KFGame\BrewedPC\Maps\SDK\Mod_Tools_HoldOut_Template.kfm

How Holdout Works

The following discusses holdout as set up in The Descent and in the template. Other maps like Nightmare and Powercore tweak the set-up slightly but use the same principles.

Although it may look like it, Teleportation does NOT use Trigger Volumes to teleport a player when they 'drop' down. Trigger volumes are only used to teleport players that are not in the correct Arena when a wave starts. Instead teleportation happens using a system of KFTeleporters.

The map has multiple KFTeleporters, and not all of them are used in the same way; they are broken into 2 different categories:

1. The Basic Arena Teleporter that is placed in each Arena.
These dictate WHERE players will spawn when they get teleported. Within the Object category of the KFTeleporter Properties, they are given a unique tag; usually "Arena_1" (or whatever number). There are 10 of these; 1-9 for waves 2-10 and 1 for the Boss. The teleporter system uses this tag to determine what the next arena is. The name of the teleporter does not matter, ONLY the tag. See Figure 1.1.

2. A Single 'Parent' Teleporter which 'catches' the player and teleports them to the above teleporters.
There is a single teleporter which is used to CAPTURE the players when they 'drop' down at the end of a wave and TELEPORT them to a specific Arena. This teleporter in the Template is 'KFTeleporter_0' and is placed below each Arena. It has the Tag 'KFTeleporter' in its object properties. I recommend increasing the drawscale of this KFTeleporter so you don't confuse it/easy to select from distance.
It also has additional properties under the KFTeleporter category. These contain 10 URLs that list the arena teleporter tags (eg: Arena_1 through 9 + Boss). Basically listing the teleport locations to move the player. See Figure 1.2.
There is one other important to pay attention to. The teleporter captures players who fall into its node radius. When the game detects that they enter into this radius, they will be teleported. As the radius is extremely huge it can be hard to see in the editor. However sometimes the radius needs to be adjusted. These values can be found under the KFTeleporter Properties > Collision category > Colision Component. You are looking mainly at Collision Radius (and Collision Height - but this rarely needs to be changed). See Figure 1.3.

Maps like Nightmare or Powercore use the same principles as above, but instead of a 'Single Parent Teleporter', they now have multiple Parent teleporters located in each arena. Instead of dropping into an extremely large collision radius, the player runs (or is pushed) into a smaller one instead.

Figure 1.1: Teleporter Name Tag
Figure 1.2: Teleporter URLs
Figure 1.3: Teleporter Collision Radius

Arena Layout in Worldspace

An important thing for you to understand in the beginning is the actual layout of each of the arenas in the editor’s worldspace. There are eleven arenas in total. A starting arena, nine randomly played arenas and a boss arena. Regardless of game length, a match will always start players in the start arena and finish in the boss arena. The game waves in-between the start and boss wave are randomly selected from arenas 1-9 and never repeated. The following is a top-down view of all the arenas. They have been arranged in a line to simplify their layout. Each one has a note in editor stating what arena it is.

You can teleport to locations in the editor/map by using the Bookmark functionality in UDK (Pressing Ctrl+Number to set a bookmark. eg: Ctrl+1). Currently the Bookmarks are already set and you can teleport to those locations by pressing keys 1-9(0). In the template, all arenas are hotkeyed in the editor, except for the starting room:

  • Starting Arena: No hotkey, located close to arena 1.
  • Arena 1-9: 1-9
  • Boss Arena: 0

The importance of knowing where they are and using the hotkeys becomes even more beneficial if you choose to make changes to the Kismet and need to know what Arena you are making changes to. It also speeds up movement and navigation within the editor

Maecenas varius tempor massa, sit amet elementum odio luctus eget. Donec dignissim quam id eros vestibulum consequat. Donec eu orci in lacus efficitur convallis eget ut tellus. Praesent placerat tempus metus vitae auctor. Vivamus ac lectus mattis, porta ipsum vitae, pellentesque mi. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Integer nec ipsum condimentum, porttitor ex nec, consequat lectus. Etiam lacus dui, iaculis quis nisl quis, efficitur luctus neque. Nullam pulvinar nec leo id convallis. Proin non est ante. Aliquam erat volutpat. Cras ut libero lectus. Cras vitae nunc lectus.

Figure 1.1: The Cyst
Additional Text

! ALL MAPS SHOULD MERGE THEIR MESHES WHERE POSSIBLE !
If you cannot implement Precomputed Visibility, you must at very least set proper render distances for ALL actors on your map.