Introduction
The goal of this quick start guide is to learn what you’ll need to make a functional map for Insurgency Sandstorm and how to publish it online for others to download.
It is in no way the intention to teach anyone how to use the UE4 Editor, for that you can refer to the official Unreal Engine 4 Documentation (Docs.unrealengine.com) or check out numerous tutorials available on the internet. You can download the Insurgency: Sandstorm level editor at sandstorm.game/editor
Important notes
Furthermore, it’s important to notice that the minimum and recommended system requirements for Insurgency Sandstorm don’t apply to the editor, especially when working on maps the same size as official maps.
We recommend a high end system with at least 16 GB of RAM and a powerful CPU.
If you’re looking to publish and share your creations, start with setting up your Mod or Map first before you start building. This will ensure that all the files you’ll create are already in the folder that is used to package and upload everything and saves you the hassle of moving them around later.
Lastly, the example maps can be found in: “ExampleContent Content/Maps/ExampleMap/”.
Create a Mod
Go into the editor and notice these three buttons in the toolbar. Click on “Create Mod”.
A new window pops up where you can enter a name for your mod and a few details. The only important thing here is to create a new folder that will contain the map files for your Mod or Map. Enter “Yourmapname” in the box to the right of the folder location.
You can choose to fill out the other fields, but they’re not required.
Hit “Create Mod” and a message saying “‘Yourmapname’ was created successfully” appears. From here you can work on your mod outside the game's content.
Modular Meshes
These are the building blocks of every Sandstorm level, ranging from floors and walls to stairs, arches and everything in between. Using the Content Browser, you can find them in Environment > Props > Modular.
Sublevels
The persistent level acts like a parent level to any sublevels you might create. It can not be deleted. The ‘Levels’ window shows an overview of the persistent and any sublevels that are present in the map. You can open it by clicking Levels in the Window tab. In this window you can create, load, delete and edit sublevels.
Sublevels are useful for a variety of applications, but here we’ll cover their use in regards to loading different game modes on the same map. Let’s say you want to add the Firefight game mode to your map. The first step is to create a new empty sublevel and rename it to “Yourmapname_Firefight”. If you’re planning to add multiple Firefight scenario’s you can add a suffix like “_West” or “_East”.
From here, you'll be presented a template to create your level with. For sublevels, you will want to select the "Empty Level" option.
This sublevel will contain every actor that is needed to make the Firefight game mode work, such as spawn zones, objectives, restricted areas, etc. Since there can be multiple game modes on one map, this sublevel doesn’t need to be loaded by default. You’ll have to make sure the streaming method of the sublevel is set to Blueprint instead of Always Loaded. Since this is the default setting, you don’t have to change it, but it’s good to be aware of.
Game Modes
Now we can move on to adding a game mode to the map. Make sure the correct sublevel is active. In this guide we will explain how to add the Firefight game mode. If you’re looking to add other game modes, you can check out the example maps which can be found in “Maps/Examples”.
Spawn Zones
Let’s start with adding spawn areas. Go to whatever location you choose and add 16 Player Start actors.
Make sure to select the top Player Start Actor, as the bottom one is the default Unreal Editor one. Group them together and add a Spawn Zone volume next that completely covers the Player Start actors.
The spawn zones need a name that the Player Start actors can be linked to. Name the one for Security “SZ_Firefight_Team1” and set its Team Id to “0” (Security).
Do the same for the Insurgents and name it “SZ_Firefight_Team2” and set Team Id to “1” (Insurgents).
Now go back to the Player Start actors and disable them, give them the correct Team Id and link them to their corresponding Spawn Zone volume. For example for the Security team, your settings will want to match the image below:
To prevent players from getting too close to opponents’ Spawn Zones, we need to add Restricted Area volumes. Add one for each side that covers the spawn area and name it “RA_Firefight_Team1” and “RA_Firefight_Team2” respectively. Configure their Team Id and Linked Spawn Zone like the example below.
Objectives
Firefight requires three objectives, each of them consists of a Capture Zone (CZ) volume and an Objective Capturable (OC). The former indicates the area that players can capture from while the latter represents the location of the objective icon in the HUD. Name the Capture Zone volume “CZ_Firefight_A” and the Objective Capturable “OC_Firefight_A”. In the Objective Capturable’s details, set up the corresponding Capture Zone volume(s).
Now do the same for objective B and C.
Scenario
Next up is creating and configuring the Scenario. In the Content Browser, browse to “Your Plugin Name/Scenarios/Versus”, right-click in an empty space and select “Insurgency > Scenario”.
Select “ScenarioMultiplayer” and click on “Select”. This will create the file, which should be renamed to “Scenario_Yourmapname_Firefight”.
Now double-click to open it. A Scenario file basically tells the game what to do when a specific scenario is activated. This is where you select the required game mode, sublevel, Spawn Zones, Objective Capturables, etc.
After configuring it should look as below (will vary, depending on the game mode).
World Settings
The only thing left before you can jump in-game is adding your newly created game mode to the default scenarios of the map. Go to “World Settings” and add a new element to “Default Scenarios”.
As Game Mode select “INSFirefightGameMode” and then browse to your scenario file for the Scenario parameter.
Play in Editor
You’ll need to use Play In Editor (PIE) to check out your map ingame. First select the game mode you want to start the map with, which will be Firefight in this case.
Then make sure ‘Spawn player at …” is set to “Default Player Start”. For this to be selectable the sublevel corresponding to the selected game mode needs to be set to visible.
Enable bots, if preferred, and click “New Editor Window (PIE)”.
This will open the game in a new window. You can access the in-game menu for setting binds etc by pressing N (default key). Pressing ESC will close the PIE window.
Map Overview
To add a working minimap in-game you’ll need to add another Playable Area volume to your Persistent level and rename it “OverviewArea”. This volume will be used as a reference to take the overview picture. So you’ll want to include everything, except inaccessible backdrop areas. To avoid squeezing or stretching of the overview in-game you need to make sure the volume is square in the Z plane.
A Firefight layout will likely not require the full map present on the overview and a Push layout probably will show a significant area. What is shown on the overview can be changed for every game mode individually.
All of these will be based of the main overview volume, so we’re gonna focus on that first, because of this, uncheck “Scenario Area” and change “Playable Area Type” to “Overview Area”.
Now switch the viewport to “Orthographic Top” and the View Mode to “Lit”.
The viewport should now look like below.
Hide everything that you don’t want to be visible in the overview, like spawn actors, capture zones, reflection spheres, etc.
Now zoom in to a level that you think shows of the map’s components (like buildings and vehicles) in great enough detail for an overview. Then open Viewport Options and select “High Resolution Screenshot…“.
This will open a control panel with a few settings. You’ll only have to worry about the one at the top: “Screenshot Size Multiplier”. With a factor of 1 it’ll take a screenshot of what is currently visible in the viewport. But you’ll need to capture the whole map, so increase the number until everything is included. This may require a bit of trial and error.
Remember where the screenshot was saved and open the image in an image editor like Photoshop or GIMP. Crop the image to a square, scale it down to 2048x2048 and save it as a PNG file.
Now it’s time to import this image into the UE4 editor. Browse to “Your Plugin Content/UI/Textures” and hit the “Import” button. Browse to wherever you saved the PNG file, import it and rename it to “T_MapOverview_Yourmapname”. Open the file and adjust the following settings: “Compress Without Alpha”, “Mip Gen Settings”, “Texture Group”, “X-axis Tiling Method” and “Y-axis Tiling Method”.
Browse to “Your Plugin Content/UI/Materials” and create a Material Instance there, rename it to “MI_MapOverview_Yourmapname” and open it.
Check the TacticalMapTexture box and browse to the texture file you just created: “T_MapOverview_Yourmapname”.
The Parent parameter should be set to “MI_UI_MapOverview”.
The final step is to go to “World Settings” and select this Material Instance as the “Tactical Map Material” parameter.
The main overview is now correctly set up.
For every game mode you have created you can improve the overview by adding an additional Playable Area volume to every game mode’s sublevel. This way you can tell the game which part of the overview should be shown.
Check the “Scenario Area” checkbox for the volume and make sure it is a square in the Z plane.
Publishing
Insurgency: Sandstorm uses mod.io for sharing mods cross platform, so the first thing you need to do is make an account there. It is recommended you use your Steam account to login as this account will be linked to your in-game one.
When it’s time to publish and upload your map files. Click on “Share Mod” and a new window will pop up. This is the Mod Manager. It shows your previously uploaded Mods. You can double-click on an entry to view and update it. We’ll focus on adding a new mod now, so click on “New Mod” and another window will pop up.
The only required fields are “Name”, “Summary” and “Preview Image”. The rest is optional, but “Visibility” is obviously a pretty important one. When you’re done, click “Add Mod”. Alternatively, you can create your mod profile from Insurgencysandstorm.mod.io
There may be a delay between the uploading process completing in the editor and actually updating on the mod.io website. You should get a confirmation email once it does.
Additional Tips
Blueprint Lights
To help light your map, you can make use of the BluePrint Lights that come with the editor. They can be found in “Content/Environment/BluePrints/Lights”. Once placed in the editor, you can alter their Light Type or Light Wattage if needed.
Of course, you can build your own from scratch, but this should help to get you started.
AI Cover Actors
If your map features a co-op mode you can enhance the in-game AI in your map by adding AICoverActors. They help bots with positioning themselves in good spots, holding sightlines, etc.
Place them around corners and doorways, behind low cover like sandbags and generally near and around points of interest like chokepoints and objectives. Don’t refrain from adding a lot of them, as that will make them less predictable.
This guide only merely touches on the subject of AICoverActors to point out their existence. A more in-depth guide on how to use their full potential might follow later.
Navmesh
First of all, you’ll want to disable autobuilding the navmesh. This will prevent the navmesh from being updated automatically each time you make the slightest of changes in the editor.
Go into Editor Preferences and select “Miscellaneous” below “Level Editor”. Here you can uncheck “Update Navigation Automatically”.
Now you’ll need a Nav Mesh Bounds Volume to define the areas where a navmesh should be built. Depending on the shape of your map, you might need more than one volume to efficiently cover the playable area.
To generate a navmesh, click on “Build” and select “Build Paths”.
Nav Modifier Volume
Whatever is covered by this volume will not get included into the navmesh.
This can be useful for spots that are difficult to navigate for bots or for areas where they’re not supposed to go anyway.
Blocking Volume
Not exactly related to the navmesh itself, but rather accessibility overall. These volumes will block players from passing through them.
Player Dimensions
- Prone Height: 50 uu
- Crouch Height: 100 uu
- Standing Height: 180 uu
- Max Jump Height: 80 uu
- Crouch Jump Height: 100 uu
- Max Vaulting Height: 135 uu
1 uu (Unreal Units) = 1 cm
15 comments
Is there something weird that happens differently between dedicated servers on linux vs windows platform concerning collision?
1
anyone else having issues loading a previously saved map?? i click on my map landscape file and it crashes and sends error report
2
All I get is http response 422. The mod.io API reference says to be sure to capture the error output so you can figure out what it means, but I see no way to capture it and I can't even Wireshark it because it is https. I've tried many combinations of name/summary/description/image to no avail. Can the share mod widget display the error response somewhere?
2
I have the exact same problem, I've done a lot of modding work and wanted to do more but when I tried to do a test upload I got the 422 error and I cant find a way or any help to fix the problem...
1
hi same here, did u figured it out?
i saw u have recently upload a test mod successful.
1
Yeah it's an image problem: Your image must be larger than 320x180 and be a png. Also I'm pretty sure it wants your picture to have a 16:9 aspect ratio(which means something like 1280x720, and then you can resize your image while keeping the aspect ratio in paint.net).
3
Thanks man! You made my day! :)
1
Hi!
Well i figured out another problem ;D
Maybe it's as simple as the image problem.
My Mod contains 2 things (until update 0.009a) - A Mutator which changes some firesupport attributes and an extra "Bonus Item" for weapons which changes some values in terms of speed (e.g. reloading speed). Whatsoever - i've managed to run it in the Editor itself and tested everything. According to the Logs, i'm not running into issues.
Then i uploaded the Mod and added it to my server. Well this seems to do nothing. The log says there are no assets in my mod folders and the asset registry weren't found.
I've tried to clean up my workspace and start from "scratch" again... i tried to just stick to a mutator or just stick to an extra item....
then i tried to unpack my packed mod - suprisingly i've found an asset registry file and i also found my assets in the particular folders, so now i'm confused. the only tutorial i found was the one from warmaster (https://www.youtube.com/watch?v=uuQa_BPILNk) and some community threads. nobody seems to have this issue, so i believe the issue is caus'd by some missconfiguration or i forgot something to add to my mod... well i realy don't know and i've tried to recreate it on different machines with clean and fresh installs of the modtools themself.
hopefully you or somebody else ran in the same issue at the beginning and know the answer. i've also tried to make a gamemode or a ruleset (version 0.009a) - same problem here.
i also tried to contact warmaster, but sadly he didn't respond.
thanks for your time!
1
If your says something like "Ignoring primary asset" than put your mod into your plugins folder in the SDK and reupload it(also you might just want to try that in general and see if that helps). Also heres an invite to the IS Mod Discord(its the best place to get help): Discord.gg
3
thanks for your help again! i also contacted directly the Ins Crew here in mod.io. I'm not so familiar with discord, but i will try it :P
1
How do I make a checkpoint map?
3
is there an easy way of seeing some progress on the upload section of Mod Upload. Theres a console readout for packing. I just want to see if its working or throwing errors...
1
template still doesnt work, also cannot choose my own location and sometimes the menu becomes black so you wont see the menu items. It also freezes from time to time, becomes very slow. When this is gonna be solved ? im running a i7 with rtx3070... should be pretty good for the editor ? even the screen becomes black when maximized.
1
Level editor link is broken for me.
1
Store.epicgames.com
1
No comment were found matching the criteria specified. We suggest you try the comment list with no filter applied, to browse all available. Join now to participate.