For us at DrivenArts, modding is a huge step in the right direction. It embraces thousands of people wanting to make their own maps to play on, share them in the workshop, get feedback from other players and enjoy creating them. So, it was important to make the modding toolking as transparent as possible, and we hope that this will help introducing you into the vast creativity of making maps for Days of War.
Days of War runs on the popular Unreal Engine 4. In order for you to start modding, you will need to download Unreal Engine 4.20 through the Epic Games Launcher. If you don't own the launcher already, you can download it here.
After you downloaded it, head to the Unreal Engine → Library tab and install Unreal Engine 4.20.
Obviously, you'll also need to download the Days of War Editor. The editor is also distributed via Epic Games. Open the Store tab on the left and search for Days of War. You will find the Days of War Editor which you can install by clicking on GET.
Once it downloaded, search it in your library and hit Launch.
Once you downloaded the Days of War Editor, open it up! Don’t worry if it takes a bit to load, especially the first launch will take a while to prepare the content for use. Once it has loaded, you are good to go. Note that the editor layout might be different for you. You can drag all tabs across the screen and/or dock them at fixed points. Let’s have a little overview over the editor:
1: The main viewport
The core of the editor, the viewport. You can see the map you are editing live in here. To rotate the camera, hold down the right mouse button and move the mouse. To move, press W/A/S/D while holding down the right mouse button. You can also change the movement speed by turning the mouse wheel while holding down the right mouse button. To select objects in the scene, simply click on them. A gizmo will apear to move the object around in the scene. More on that in [Placing Assets].
This window is essential for level editing tools for the scene. The first tab is for placing objects (in Unreal they are called actors) in the scene. You can find primitive shapes, lights, visual effects and volumes in there. To place one of these, just drag them into the viewport. The other tabs are for mesh painting, creating landscapes, painting foliage (grass and trees) and geometry editing. For more information on Unreal’s level design features, see here.
3: The content browser
The Content Browser acts as a file/asset explorer. By clicking on the left-hand side you can open the directory tree view which helps a lot with navigation through the files. All content which ships with Days Of War is listed under Content. Content which comes from plugins and mods is listed below under
<Plugin/ModName> Content. You can use the content browser to create new assets, import assets, and search for some while building your level.
4: The details / world settings
The bottom right pane is used for showing the details of a currently selected object. If you don’t see anything in the Details tab, try selecting an object in the scene. You will be able to modify the location, rotation and scale of objects, change their collision settings, and modify a bunch of parameters which differ from object to object, e.g. for lights you can modify the intensity and color, for meshes you can change the model and material. Another tab which is useful and is suggested to put next to the details panel is the world settings. You can open them by navigating to Window → World Settings. Here you can find settings which are global for the whole map you are editing, such as the minimap texture, the factions the map should be played with and more.
5: The world outliner
The world outliner is simple: it lists all the objects (actors) you have in your scene. You can search them, group them in folders, and rename them for easier access. You can also hide/show certain actors and see their type.
6: The toolbar
The toolbar is the main place to execute actions from. You can save the current level, quick-change settings, open the level blueprint (more on that later), and test your map using the Play-In-Editor feature. Also, the mod window is linked there, which we will use now.
Creating a mod
Click on Create Mod, enter the name of your new mod (e.g. myfirstmap) in the name text field and hit Enter. You will see your new mod appear in the list, and the content browser switches to the content directory of your new mod. That's all we need to do for now, so let's close the mod window again and look at the content browser.
As a good practice, you can always organize your imported assets in a directory structure like this:
|Meshes||Will contain new models you import|
|Materials||This will contain custom materials you create for meshes|
|Textures||Will contain textures for meshes (used by the materials) and/or UI.|
|Sounds||Put any new sounds in here|
|Blueprints||This will contain new blueprint scripts you create for your map|
|Maps||This will contain all maps of the mod|
Now that we have a new mod, let's create the map!
Creating the map
In the editor, navigate to File → New Level and choose either Default or Empty Level as a template. This will load up a new map for us to edit. Before we start building our level, click the button in the toolbar. This will prompt a new dialog for you to enter where the map should be saved.
Save your map in the Maps folder of your mod and name it.
It is recommended to have map names named after the mod name, such as dow_myfirstmap.
After creating and saving the map, it should look somewhat like this:
Let's start by placing some cubes. To do this, drag the cubefrom the left Modes panel (tab Basic) into the scene. You can now move the cube around using the three-dimensional "Gizmo". You can also change the Gizmo controls on the top right corner of the viewport (or using the keys 'W', 'E' and 'R') to control Location, Rotation and Scale.
Tip: to duplicate an object, try holding down the 'Alt'-key an drag any of the Gizmo arrows (in location mode). This will create a new instance of the object you are pulling
Let's also create a red light by dragging the Point Light from the Lights tab in the Modes window. The result will look like this:
As mentioned before, the light color and intensity can be set from the Details panel in the bottom right corner of the editor.
As a last step, let's search for a cool model to place in the scene. How about a bicycle? To search for it, jump in the Content Browser and search for "Bicycle" in the search bar. Then take the Bicycle_mesh and drag it into the scene just as you did with the cube and the light. That's it!
Tip: press 'G' to show/hide editor icons in the scene
Obviously, we need some Days of War specific actors in order to make the map a DoW map. You can find these in the Modes tab (see the editor layout image above!) by searching for them.
To place spawn points, search for Shooter Team Start and drag them on the map. In the point's Details panel, you can adjust the team you want to spawn here:
You can adjust the following properties:
|Spawn Team||Which team should start at this point? Valid options are None, Allied and Axis, the other options aren't in use.|
|Not For Players||Whether players can spawn here|
|Not For Bots||Whether bots can spawn here|
For the typical domination game mode, the map requires flags. To create them, just search for Flag. Look at the Details panel to adjust the flag setings:
You can adjust the following properties:
|Flag State||The state this flag will have upon map start. Valid options are None, Allied and Axis, the other options aren't in use.|
|Flag Name||Name of the flag, shown in the killfeed when the flag is captured.|
|Time Needed to Capture||Time in seconds it takes to capture this flag|
|Players Needed to Capture||How many players does it need to capture this flag|
|Objective Position||Can be First, Second, ..., Tenth. This is the position where this flag is rendered at the HUD. Should match the map layout.|
Spawn Boundary Volume
The spawn boundary volume is used to mark a certain area on the map as the spawn area for a certain team. This will kill players of the enemy team when they're touching it (can be turned off if not wanted). It also allows the player to change his class.
You can adjust the following properties:
|Spawn Team||The team this boundary volume is meant for. Valid options are Allied and Axis, the other options are not in use.|
|Kill Enemy Team on Overlap||Whether to kill the enemy team when they're touching the volume.|
|Box Extent||Size of the volume in three-dimensional space|
Playtesting your map
A real world example
Everything's better with a real world example, so let's have a look at a full working map with a domination game mode structure:
Here you can see what a map with three flags, two Spawn Boundary volumes and 16 spawn points look like. If there are multiple spawn points for a team, the game will spawn new players randomly at one of the points. The spawn points are wrapped with spawn boundary volumes and there are three flags layouted like most of the flags on the official maps.
Uploading to Steam
Does the map work as intended? Does it look good? Great, then we can proceed to the last step: uploading your map to the Steam Workshop. To do this, open up the mod window using the button in the toolbar. Select your mod from the mod list and fill out the missing information, such as the description, category and visibility.
It might be a good idea to keep the item title equal to the mod's name so it can be found easier.
Now, we need a thumbnail for our mod. You can either capture a thumbnail in the mod window (it will take a screenshot from the viewport's camera) or upload a custom thumbnail to use.
From here, you can also give your mod a good and fitting description and set the item visibility to what you need.
Now you have two options. You can export the mod which will package it and copy it to a folder you specify. That's helpful for testing and sharing for friends, but not recommended. The second option is to hit Upload to Steam. It will package your mod and upload it to the Steam Workshop.
The packaging and uploading process can take everything from a minute to multiple hours. It strongly depends on your hardware, the map/mod size and your network speed.
After you received a confirmation, the item has been successfully uploaded to Steam.
It can take a while until Steam displays your item in the in-game browser.
Playing on your map: Local
Now that you created your map, we want to use it. You can play offline on your map by opening up Days of War. In the main menu, visit Maps → Workshop.
Find your item and click on it. Click the Subscribe button on the bottom right corner to subscribe to the mod. Once it finished downloading, a Play offline button will appear. Clicking it opens the map and you can play it locally!
Playing on your map: On a server
Obviously, we want to play our map together with friends. To download workshop mods on a server, jump to the Server Info by opening the 'Esc' menu. In the Server Info window, jump to the Workshop tab. You will see the same server browser but clicking Subscribe on a item will download it to the server.
In addition, you can add/remove workshop mods from the server by editing the server's Game.ini file (located in
<YourServerFolder>/DaysOfWar/Saved/Config). Workshop mods are listed like this
[SteamWorkshop] WorkshopMod=... WorkshopMod=...
where ... is the ID of a mod. You can add or remove mods here and restart the server to make the server download them (or remove them).
After the server downloaded a map, you can then check the map rotation under Maps and turn it on/off for the workshop mod and/or vote it up.
You need to be administrator on the server to download workshop mods
Now, when clients connect to your server running a modded map, their game will automatically donwload the workshop item needed to join. Same goes for people who are online on your server while it changes the map to a workshop mod.
We hope you learned how to create your own maps for Days of War. If you still have questions, feel free to join the official DoW Modding Discord server!