Getting Started with Mapping (Killing Floor 2)

From Killing Floor 2 Wiki
Jump to: navigation, search

Introduction

This page includes a comprehensive guide on getting started with the Killing Floor 2 SDK for creating Maps and uploading them to the Steam Workshop. This page will only cover the essentials, further elaboration will need to be done at your own discretion; it is recommended that any new Level Designer should begin by looking at Official Maps and seeing how they approach particular scenarios.

Installation and First Launch

Installation

To install the SDK:

  1. Open up Steam, hover over 'Library' and select the 'Tools' option.
  2. From here locate 'Killing Floor 2 - SDK' and install it as you would any game on Steam
  3. Once the download is complete, launch it as you would any other game.
!--T:1--> Note Note: If an opt-in Beta/preview is happening at the time, both the game and the SDK need to be on the same branch. Otherwise the SDK will crash on launch.
i.e. If you are in the opt-in Beta for an update, the SDK also needs to be on the opt-in Beta.

Interface Guide

!--T:1--> Important Important: The SDK Interface is very laggy on launch - using up a lot of resources on your computer. To prevent the UI lag, simply create an empty save file or open up an existing map
e.g. KF-TempMapName

First Launch and Glance

On first launch you may be prompted with a couple of dialogs. They are things that don't affect the editor or its performance so you can ignore and click past them. See Figures 1.1.

Past all the error dialogs your Editor should look something like Figure 1.2 below.

Figure 1.2: Default State of the Editor


!--T:1--> Note Note: For new users, I highly recommend reading the Startup Tips and not disabling the prompt, they often contain useful tips on how to use different aspects of the SDK.

Figure 1.1a: Checking will always result in error, so just ignore and wait a week
Figure 1.1b: Can safely ignore, you can put "-NoGADWarning" as the warning suggests into the Steam launch options for the SDK to suppress the warning
Figure 1.1c: Common error in the SDK, can safely ignore

SDK and Viewport Overview

Below is a breakdown of the core elements that you will be using in the SDK

Figure 1.3: Interface Overview

There are 2 crossed out buttons on the side menu:

  1. The Terrain Tool - Obsolete, use the Landscape tool instead.
  2. Foliage Paint Tool - Not supported, will crash the Editor when you build Lighting.

Content Browser Overview

The Content Browser is large enough to break it down in its own image. The Content Browser is where you will be grabbing all Assets (Actors, Meshes, Materials, Sounds, Decals, etc). It also serves as a tool for managing and organising your map's own individual assets, and also organising assets into Layers.

Common Hotkeys

Hotkey Function Hotkey Function
Left Click Select actor Spacebar Toggle between Movement/Rotation/Scaling
Right Click Open Context Menu ~ Toggle between World and Local space transforms
Ctrl + Left Click Multiple select N Toggle Pathnodes
Right Click + Scroll Wheel Change movement speed around viewport P Toggle Paths
Alt+Drag with Widget Duplicate and move with widget T Toggle Lanscape/Terrain
Ctrl+Z Undo O Toggle Volumes
Ctrl+Y Redo B Toggle Builder Brush
H Hide selected actors Alt+C Toggle Collision Wireframes
Shift + H Hide all but selected actors ] Increase grid snap size
Ctrl + H Unhide all actors [ Descrease grid snap size
G Toggle Game View mode in viewport Ctrl + number Set a bookmark
F4 Open actor properties number Snap to bookmark

There are a lot more hotkeys for the editor, these are the main ones people usually have issue with when first starting out. You can check for others here: https://sites.google.com/site/lessonsdarrenmckinsey/udk-hotkeys

Additional Preferences

These are some additional options you may or may not want to use based on your personal preferences:

  • Preferences > Flight Camera Controls
    • Default is 'Use WASD for Camera Controls' - Standard FPS controls
    • 'Never use WASD for Camera Controls' - KF1 Editor Controls
  • Preferences > Highlight Objects Under Mouse Cursor
  • Preferences > Editor Language
  • View > Change Autosave Options > Autosave Interval

Your First Map

Naming

Your first map can be named anything however a Killing Floor 2 map MUST be prefixed with 'KF-'. If it isn't, it cannot be played or recognized within the game.

Your map file name should also match your map's name.

If your map name has spaces, it is common naming convention to use UpperCamelCase. Avoid using underscores or dashes to represent spaces.You should also avoid publishing a map with numbers or 'versions' at the end, this can be a pain for server owners if they want to host your map on their server.

Map Name Good File Name Bad File Names
Burning Paris KF-BurningParis.kfm KF-Burning_Paris.kfm

KF-Burning-Paris.kfm

KF-Paris.kfm

Zed's Diner KF-ZedsDiner.kfm KF-Zeds_Diner.kfm

KF-Zeds-Diner.kfm

KF-ZesDinner.kfm

KF-ZedsDinerTestingV3.kfm


File Save Location

You can save and load your map from any location. However the best recommended location is:

C:\Users\UserName\Documents\My Games\KillingFloor2\KFGame\Unpublished\BrewedPC

The main reason is, when you plan to upload your map to the workshop, the Workshop Front-End will look specifically in only this location for files to upload. Additionally if you plan to cook your map, it needs to be in this location for it to successfully cook.

I would avoid placing your working map file under the steam game directory as well (C:\Program Files (x86)\Steam\steamapps\common\killingfloor2\KFGame\BrewedPC\Maps). This directory may confuse your editor if you plan to import, move, rename or edit assets within your map's own directory.

World Settings

World Settings can set important information for your map such as: Map Name, Map Author, Spawning Modifiers, Objectives and Collectibles, What game mode is played in the Editor, what in-game music the game uses and Optimization options.

To access it go to: View > World Properties.

For the moment, just leave most of the variables default, but you can:

  • Input your map name and your user name in the appropriate areas under the 'World Info' section.
  • Change the 'Default Game Type' and 'Game Type for PIE' to "KFGameInfo_Survival" under the 'Game Type' section.


Further information on World Info can be found here: Setting Up World Info (Killing Floor 2)

Important Tip Before Moving Forward

The SDK is stable for the most part, but it is not uncommon to encounter crashes at any point in its usage. In fact its something you need to be prepared for and goes without saying that:

!--T:1--> Important Important: YOU SHOULD SAVE AS FREQUENTLY AS POSSIBLE

While the auto-save function is useful for beginners, most users that become familiar opt to turn it off as it can interrupt workflow, bloat your game directory and also on large maps, take a long time to save.

Here are some recommended times to save:

  • After any minor, moderate to large changes done in any aspect to your map
  • Every 10 minutes
  • If you plan to step away from the computer for a bit (e.g. going to the toilet)
  • Before every Build (Lighting, Pathing, etc.)
  • Planning to use or work with BSP Brushes
  • Before importing new Assets (textures, meshes, sounds, etc.)
  • Before placing down any newly imported Mesh
  • Before moving/copying/duplicating assets in your map's directory
  • Before combining meshes and/or applying collisions from the Builder Brush


After losing significant progress once or twice, saving frequently will become second habit.

Placing Assets and Props

Using the Content Browser

Using the Modular Static Mesh Set

Changing Materials

World Lighting

Creating a Lighting Volume

SkyLights

General Lighting

Building (Baking and Cooking)

Basic Building

Geometry

Lighting

Paths

Splattermaps

Common Errors

Baking VS Cooking

Using the Brushes and Volumes

BSP Modifiers

Binary Space Partitioning

CSG Modifiers

Constructive Solid Geometry

Important Volumes

KFPawnBlockingVolume

KFSpawnVolume

TriggerVolume

KFReverbVolume & KFDialogEnvironmentVolume

Important Tips

Setting up Spawns and Pathing

Spawn Volumes

Pathing

Portal Spawns

Testing Your Map

What you should be Testing for

Playing in Editor

Playing in Base Game VS on a Server

Map Optimization

Map Optimization is the arguably one of the most important steps when completing a map. Aside from having good playable spaces, the map needs to perform well on all machines; maintaining stable Frames per Second (FPS). The following guide is a comprehensive list of areas that should be addressed before publishing a map. EVERY step should be evaluated and addressed as they will all add to performance.

Comprehensive Wiki Guide: Map Optimization Guide (Killing Floor 2)

Publishing to the Workshop

Miscellaneous