User:ZXCubed
Hi!! I'm cubed. I'm currently working on the Getting Started page.
You can learn more about me on my carrd!
the getting started page but better :3
Setting up the Project
To start making Pavlov Maps, you'll need to register an account for Epic Games and Mod.io (for UE5.1.1). For the Mod.io account, you'll need to verify your email (or else you can't make your maps!).
Epic Games Launcher:
https://store.epicgames.com/en-US/download
Mod.io:
You'll also need to install Epic Games Launcher (if you don't have it already). Next, open the Unreal Engine tab in the launcher and install the one you want to mod with (shown below).
Shack & PC Engine | Legacy PC Engine |
---|---|
Unreal Engine 5.1.1 | Unreal Engine 4.21.x |
NOTE: When installing UE5.1.1, select the following to install along with UE5.1.1:
- Starter Content
- Engine Source
- Android (needed for shack)
- Linux
Lastly, you need to install the Pavlov VR modkit corresponding to your Engine Version (once on github click "code" then "download zip").
UE5.1.1 modkit:
https://github.com/vankruptgames/PavlovVR-ModKit/tree/5.1.1
UE4.21.x modkit:
https://github.com/vankruptgames/PavlovVR-ModKit
Extract the modkit, and open the project. When loading the project, the modkit will stay at 45% while it compiles shaders. Once it finishes compiling, click window, open Pavlov Workshop then log in to your Mod.io Account (UE5.1.1 only).
UE5.1.1 Login Steps:
- Agree with the Mod.io TOS.
- Enter your Email Address.
- Open your Email and paste the code from the Email to the Editor (request another if you need it).
- You're signed in!
To create a mod in UE5.1.1, you need to open the "Create Mod" tab and enter your map name and description. Logo image isn't required when making a map. Once putting in all of the information, press "Create Mod". This will create a UGCxxxxxxx folder, giving your mod a unique code (shown as the x's) that'll be used to figure out what map is currently being played in a server and if it'll need to be downloaded locally.
NOTE: ALL assets used in your map MUST be in your UGCxxxxxxx folder.
Creating your Map
To create your map, you need to enter your UGCxxxxxxx folder (easier to do this) and press CTRL+S (CMD+S on Mac). This saves your map (currently filled with nothing). You can add objects into your map using the "Place Actors" window. You should also add BP_Sky_Sphere (located in the Engine folder), a Directional Light (search for it in the "Place Actors" window), and a Sky Light (search for it in the "Place Actors" window) if you're on UE5.1.1.
In order for your map to function properly in Pavlov, you need to link your map to the "definition" file in your UGCxxxxxxx folder. In the definition file, you're able to see:
You should change your "Label" to the name you want your map to have. Version should only be changed if you made changes to an already existing map you've made.
Link your Map or Quest Map to the level you saved earlier which should be called "NewMap" if you haven't changed the name yet. Compatibility should be changed later on (depending on how you make your map) but can be changed now if wanted.
Pavlov Game Logic
Before publishing your map, in order for your map to work, you need to add a Pavlov Game Logic. You can find it by searching it up in the "Place Actors" window. Once placed in the map, change its settings under the Pavlov tab inside of the Game Logic. Set "Definition" to the definition file inside of your UGCxxxxxxx folder. You'll also need to set:
Global Info Class | to | Pavlov_GlobalInfo |
Player Info Class | to | Pavlov_PlayerInfo |
Player Proxy Class | to | Pavlov_PlayerProxy |
You can set these to your own custom info or proxies but these are the ones you should set if you aren't customizing anything.
Spawns
In order to properly spawn in your map, you need Pavlov Spawns in your map (search for Pavlov_Spawn in "Place Actors"). The settings to the Spawns are:
Spawnflags | |
---|---|
TeamID | -1 = Any Team
0 = Blue Team (Defenders) 1 = Red Team (Attackers) |
Dynamic | Tick this for Deathmatch.
This prevents spawning inside another person who occupies the spawn area |
Only Team | Use this Together with the TeamID parameter to only allow for a certain team to spawn.
Search & Destroy (S&D) spawns needs this. Uncheck for random Deathmatch spawns. |
Special | Tick this for marking the Spawn to be used for Search & Destroy gamemodes.
Use ONLY ONE spawn per Team. Teams will spawn together at one spawn. Use together with TeamID. |
When enabling Special, this allows 5-10 people to spawn from just one Pavlov_Spawn.
Migrate maps to Modkit
To migrate maps from Unreal Engine projects to the modkit, open the project with the map, select the level file. Right click the file and select migrate. A folder tree with all the referenced files of the map will show up. Press "OK." A file explorer will open after and you'll need to find the UGCxxxxxxx folder directory to import the map to the modkit. After, right click the Content root folder and select "Fix up re-directors". This will fix all the asset references.
Mandatory Entities
These entities are things that should be in your map before publishing to Mod.io or the Steam Workshop.
Lights
All lights must be set to Static as Pavlov doesn't support Stationary or Movable.
This includes the Directional Light and Sky Light. Spot Lights and Point Lights are the most commonly used in Pavlov maps. There is no limit to the amount of lights that can be inside of your map.
For a more realistic look and better clarity in VR set the "Indirect Lightning Intensity" on the Sky Light and Directional Light to a value between 2-6.
The lighting you see inside of the editor before building is inaccurate. To see how it'll really look like in game, click the "Build" tab and click either "Build All Levels" or "Build Lighting Only".
Reflection Captures
Reflection Captures are needed to have realistic reflections on all surfaces that are inside the reflection volume. They're useful whenever using materials with normal textures.
Sphere and Box Reflection Captures are used to get these realistic reflections. Reflection captures prevent weapons from appearing black when playing.
You can them by searching for it in the "Place Actors" window.
Bomb Plants
Bomb Plants are needed for the SND game mode to function properly and at least one bomb site is needed to function.
You can have 2 bomb sites (A & B) but you can have as many bomb plants as you wish.
By default the Bombspots will be treated as bombspot "A". To change it, simply tick the checkbox "Is B".
The bomb will be placed at the root of the red arrow facing the direction of the arrow.
Leave some space between the wall and the arrow, otherwise the Bomb will clip into the wall. (About 5 Units)
KOTH
The blueprint actors can be found in the CustomMapTools Content folder -> Blueprints (please make sure "show plugin content" is enabled in your view options for your content browser
To place a KOTH point, drag BP_KOTHObjectiveProxy onto your map where you want hill points to show up, similar to placing CTF flag points.
If you want to edit the score to win or limited ammo, then you place a BP_KOTHSettingsProxy into the level and adjust the settings accordingly.
Materials & Physical Materials
Materials are needed in your map in order for it to have textures like brick walls, concrete floors, and a lot more.
Physical Materials are used inside of materials and determine the properties your Material has. There is a default and thin variant of the Physical Materials.
The thin variant of the Physical Materials allows bullets to pass through them.
You can get textures from these websites:
- https://ambientcg.com/
- https://polyhaven.com/textures
- https://www.textures.com/free (barely any free textures)
Material Instances are not required to be used on Pavlov VR & Pavlov Shack but they are recommended to be used on Pavlov VR.
For Pavlov Shack, textures should be 512x512 as they'll get down-scaled at any other texture size higher than it.
Keep your UV's inside 0 to 1 coordinates. Every UV bigger as 1 or smaller than 0 will result in pixelated textures on the quest.
In order for bots to walk around your map, a Nav Mesh Bounds Volume is needed for the bots to walk around your map. You can find it by searching for it in the "Place Actors" window.
The Nav Volume has to cover ALL of the walk-able space on your map.
If there are areas that don't connect to each other but are wide enough to fit a player, you can use a "Nav Link Proxy" to fill in those spaces. You can find it by searching for it in the "Place Actors" window.
Press "P" to see the nav bounds and the connection indicator.
NOTE: DO NOT change the details of the Nav Mesh Bounds Volume or else it won't work!
Blocking & Kill Volumes
Sometimes on a map, you'd want to use an "Invisible Wall" for blocking access to a certain area of the map. This can be done by using a Blocking Volume. You can find it by searching for it in the "Place Actors" window.
The Geometry Editing Tool can also be used on this volume to easily adjust it to your Level Geometry.
Use Blocking Volumes as a ramp over stairs to prevent the VR camera from aggressively hopping when walking up stairs.
You can also use them for smoothing out narrow and busy areas to prevent getting stuck and assure smooth gameplay.
Put a "Pavlov Kill Volume" about 1000 - 2000 units under your map, that is a bit bigger than your play space. This will kill players that somehow fell out of the map or glitched out of it.
You can also use the Kill Volumes for hazardous environments in that the Player should die when touching the Volume. (e.g. the front of a moving train or a pool of lava/deep water)
Ladders
Overcoming walk-able angle restrictions is possible by using Pavlov Ladder Volumes.
The player will only stick to player-collidable surfaces contained inside the Pavlov Ladder Volume.
Avoid overlapping Pavlov Ladder Volumes as this can cause the player to glitch between them.
The Volumes only come as rectangular prisms.
To match the shape of a surface that isn't rectangular/square, use many smaller Volumes without overlapping them.
Uploading & Testing your Map
BEFORE UPLOADING:
Be sure to save your map and bake the lighting in your map by pressing "Build", then "Build All Levels". Rendering the lights & Reflection Captures will take a while so do other things while you wait.
Once fully rendered, save your completed map by pressing CTRL+S on your keyboard (CMD+S on Mac). Your map is now ready to be published.
UE5.1.1
Once you've completed your map, open the "Pavlov Workshop" window and open the "Upload Mod" tab. Next, you'll need to select your mod's UGC. After, select the version of Pavlov you want your map to e playable on.
Windows | Android |
---|---|
Pavlov VR | Pavlov Shack |
Building your mod will take a while so just do other things while you wait.
Once it's finished building, go to Mod.io and open "My Teams" on the sidebar (shown as a folder). Look for your mod. Once you've found it, click "Edit".
Here, you can change your mod name, summary, and mod "logo".
NOTE: The map logo is separate from the one that appears in the map boxes.
Once your map is ready to be published, you can hit "Go Live", and now your map is published!
UE4.21.x
Once you've completed your map, open the "Pavlov Workshop" window and open the "Deployment Tab". Press Submit. Building your map will take a while so just do other things while you wait.
Open steamcommunity.com.
Login to your account and click on your profile. Open workshop items and find your map. When you're ready, set your map's visibility to public.
Your map is now uploaded.
Troubleshooting
This may be outdated.
FAQ | |
---|---|
The "Create New" Button is missing. | Steam needs to be open and the used Account needs to have Pavlov purchased. Also check your firewall settings if it blocks any UE4 application. |
The map does not update ingame or on the Workshop page. | Restart Steam, close the Editor and go to your Project folder, delete the "Intermidiate", "Saved" and "Build" folder. Restart the Editor and try updating again. |
The map was updated on the Workshop page but Steam won't download it. | If Pavlov is open, close it. Be sure you are subscribed to it. Try restarting Steam. If it still won't download, unsubscribe from it and then resubscribe to it. |
Loading the map ingame leads back to the Lobby. | Check the Definition file if the map is linked properly. |
Error "Definition not found". | Check if your UGC ID matches the UGC ID in the Definitions file. The definitions file needs to be directly inside of the "UGCXXXXX" folder. This error also tends to appear in some cases where the project has multiple "UGC" folders, so make sure only the primary UGC folder is present when staging. |
Map not loading ingame. | Check if you have added a Pavlov Game Logic and assigned the definition file to it. |
Textures or Models are not showing in-game and/or in the editor. | Use "Fix up redirectors" and delete the "Build", "Saved" and "Intermediate" folder inside the Project folder. Also make sure ALL Assets are inside the UGCXXXXX Folder. Additionally, if having moved files between folders in the project, make sure to move the files in smaller groups and use "Fix up redirectors" after each move of a batch of files. (Right-click the "Content" folder, and choose "Fix up redirectors"). |
I lost my definition file. | First make sure it's really gone, if it is, add a new Data Asset in the UGCXXXXX folder. Right click in the UGC folder, Miscellaneous > Data Asset > Choose Pavlov_Map > Name it definition (all lowercase). Fill in your Unique Id which is your UGC foldername ie. UGC123456789. |
Nothing happens after I Stage or Deploy. | Look at the Output Logs window for errors. Window > Developer Tools > Output Logs |
I get an error saying "Pavlov installation not found", even though I'm building a Shack map. | You can work around this by creating a dummy Pavlov executable in your Steam. Open up any Steam library in Windows Explorer, create a "steamapps\common\PavlovVR" folder, and put a blank file in this folder named "Pavlov.exe". Restart Unreal Engine and the Pavlov Workshop should tell you it's found a Pavlov installation. |
I've done everything correctly but my Shack map isn't showing up in-game. | Try deleting the map completely from your Quest, open and close Shack, then re-upload the map. Simply overwriting the map with a new copy is not always enough! |
If you need further support, check the pinned messages in the workshop channels at discord.gg/Pavlov-VR.
There's also an Unofficial Pavlov Map Making Guide which will get more into depth but is more outdated.
-zxcubed
everything after is about maps
Map ID List
Here is the list of item IDs for the default maps. This is mainly useful for community servers and is the correct mapID for each map:
Both shack and PC
Bridge
Bunker
Datacenter
Industry
Sand
Santorini
Siberia
Station
Hospital
Range
WW2range
Tutorial
Killhouse
Shack Only
Stalingrad_shack
Foundation
Haguenau
OGcontainers
PC only
containeryard
Stalingrad_night
Datacenter_night
santorini_night
sand_night
Siberia_night
station_night
industry_night
containeryard_night
Bridge
Bridge was added to Pavlov in Update 10 and was redesigned in Update 24, set in a canal-heavy city in Europe. It's a very linear map, where the bomb plant is in the middle of the bridge.
Bunker
Bunker is a map that came to Pavlov during Update 28. It supports all modes in Pavlov and was mainly designed for SND. It has two bombsites, one in the generator/turbine room, and one in the radar room. It is a Soviet style bunker featuring living quarters, a large hangar, and an empty missile silo.
Container Yard
Container Yard is (very obviously) a container yard. This map was introduced in Update 22 and in Pavlov Shack on the Quest.
Datacenter
Datacenter is Pavlov's first default map. It is symmetrical in design, has long hallways and corridors, a garage area, and two bombsites: one in the server room, the other in the second floor on the back of a pillar. It can be played in both Search and Destroy and Team Deathmatch.
Datacenter (Night)
Datacenter (Night) resembles Datacenter at night time. It is an zombies, infection, and hide exclusive map (PC & PSVR2 ONLY).
Foundation (Shack Only)
Foundation is a community map created by IL PRIMO and resembles a construction site. It consists of two bombsites which are both located on the base of cranes.
Haguenau (Shack Only)
Hagnueau is a shack exclusive map designed by il Primo
Harbor (Shack Only)
Harbor is an SND map, originally created by wsly and watevs.
Industry
Industry was added to Pavlov during Update 26 and was originally designed by a member of the Pavlov community named Voxie. The map features a lobby area, a parking garage, and a warehouse. This map was designed for SND but supports all modern game modes. The two bombsites on this map are located on the van in the garage and on the pillar of the raised section in the warehouse. Industry was later released on the Meta Quest in RC3.
Industry (Night)
Industry (Night) resembles Industry at night time. It is a zombies, infection, and hide exclusive map.
Sand
Sand was added in Update 12, along with support for community maps. Sand has a visual style similar to Dust from Counter Strike, using a similar Middle Eastern setting and Islamic architecture. Sand was the first Search and Destroy map and was designed with the game mode in mind. It has a variety of ways to enter the two bombsites, a distinct middle area that connects all parts of the map, and various strategies in which to attack or defend either bombsite.
Sand was redesigned in Update 29 to match with Vankrupt's map standards in 2023. All of the textures, models, and bombsites were all changed, although the map layout stayed relatively the same.
Sand (Night)
Sand (Night) resembles Sand at night time. It is a zombies, infection, and hide exclusive map. (ONLY ON PC & PSVR2).
Santorini
Set in the Greek Island of the Aegean Sea, Santorini is an inclined map in a lovely blue and white color tones with the traditional 3 lanes of movement the Search and Destroy is known for. Come to the market and buy some fish!
Santorini (Night)
Santorini (Night) resembles Santorini at night time. It is a zombies, infection, & hide exclusive map (PC & PSVR2 ONLY).
Siberia
Siberia represents a prison in a snow biome and was released in Update 22.
Siberia (Night)
Siberia (Night) resembles Siberia at night time.The map is extended outside of the fence and walls of the original. It is a zombies, infection, and hide exclusive map (PC & PSVR2 ONLY).
Stalingrad
Named after Pavlov VRs namesake, the battle of Stalingrad laid host to Sergeant Yakov Pavlov's fortified defense from the German Wehrmacht during the fall season of 1942. Intended to provide wide lands of traversal for tanks to navigate and various demolished buildings to have close combat
Stalingrad was added to Pavlov in Update 24.Stalingrad was later added to Pavlov Shack in RC3.
Stalingrad (Night)
Stalingrad (Night) resembles Stalingrad at night time. It is a zombies, infection, and hide exclusive map.
Station
Station is an underground map set in a US subway station. With 3 layers of movement and a risk of dying from falling in the train tracks, this closed transit system with a cold atmosphere is a different change-up from a normal flat structure to a layered system. Station was added to Pavlov in Update 24
Station (Night)
Station (Night) resembles Station at night time where most of the lights in the original are turned off. It is a zombies, infection, and hide exclusive map (PC & PSVR2 ONLY).
Hospital
Hospital is a zombies mode exclusive map released in Update 22 and is a relatively small map with one floor. Its interior represents a run down hospital.
Tutorial
Tutorial is the first map in the "TRAINING" tab in the main menu. Its purpose is to help newer players learn the basics of Pavlov.
It's map resembles a killhouse.
Map Description:
Learn the basic mechanics and controls.
Learn the basic mechanics before jumping onto the battlefield.
Here you will know about:
- Team Communication
- Basic movement
- Equipment and use of fire weapons and grenades
- Use of the bomb of Search & Destroy
Video of the Pavlov Tutorial:
Shooting Range (Modern)
Shooting Range (Modern) is the second map in the "TRAINING" tab found in the main menu. Its main purpose is to help you practice your aim with modern weapons. Its map resembles an indoor shooting range. The doors to the left lead to Killhouse. The doors to the right lead to Shooting Range (WW2)
Map Description:
Test weapons shooting to static or mobile targets.
Here you can test and practice with all the modern weapons in the game.
You will also find moving targets and various exercises to improve your aim.
Shooting Range (WW2)
Shooting Range (WW2) is the third map in the "TRAINING" tab found in the main menu. Its main purpose is to help you practice your aim with WW2 weapons.
Its map resembles an indoor shooting range. The doors to the left bring you to Shooting Range (Modern). The doors to the right bring you to Killhouse.
Map Description:
Test weapons shooting to static or mobile targets.
Here you can test and practice with WW2 weapons.
You will also find moving targets and various exercises to improve your aim.
Killhouse
Killhouse is the last map in the "TRAINING" tab found in the main menu. Its main purpose is to help you practice your aim. Its map resembles a killhouse. There is a door to the left of the main entrance of the "Circuit" that leads to another door which brings you too Shooting Range (Modern).
Map Description:
Put your skills to the test in a circuit.
Choose a weapon and enter the circuit.
The objective is to shoot all the targets and complete the circuit in the shortest time possible.
- Shots to the body score 1 point.
- Shots to the head score 2 points.
Video of Killhouse: