Tutorial: Beta Testing Your Own Map
If you spend enough time on your level, you will become too familiar with it and tend to glaze over the areas in which it can be improved. That’s why every level should be beta tested by at least, if not many other people. I am a big believer in maps reaching beta status when you have exhausted your skills and knowledge. This tutorial (if you can call it that) will focus on the common areas in which maps can be improved. It will be a mix of how I tend to beta test maps, design theory, and a final check list.
Collision
- For smaller meshes, turn of players colliding with them. This will prevent them from getting caught and stopping their movement.
- For larger mesh, adding blocking volumes to create a smoother surface, will also help player movement.
- For certain foliage (plants, bushes, etc.), turn of collision for the player and weapons as they will make more sense to the player.
- Be sure a player can’t “fly” out of your map by placing blocking volumes around it (if needed). While they may not be able to navigate during the game, while spectating, they can fly around it. Your map should never reveal itself for being the movie set that it is. For outdoor maps that contain the redeemer, adding blocking volumes will prevent player from using it’s alt fire mode to “fly” out of the map as well.
- If you scale certain meshes too much, their collision box will get exaggerated to the point where you can see inside of the mesh. You can duplicate the mesh (you shouldn’t doe this for community made meshes with out permission first) and enable simple collision. At times, a blocking volume may work well.
- Try your best to eliminate players from standing on extremely small items.
Item Placement (Weapon, Health, & Power ups)
- Be sure to spread your items around the map as this will promote players to constantly move around your level to gain the advantage.
- I believe a weapon should never have 2 of the same matching ammo next to it (although Epic does this). To me, this gives the player very little reason to move around your level.
- Make sure weapon bases are close to the floor, this is especially true for bases on terrain as they tend to float in the air after building the paths. You usually have to place a mesh under the base and possibly remove it’s collision so it doesn’t block the player.
- Keep in mind the idea of “Risk vs. Reward”. A player should have to take a greater risk to achieve a greater reward. Place more valuable power ups and weapons in areas that exposes the player.
- Resist the urge to copy and paste your pick ups. Add variety to where they are located and how they are grouped.
Lighting
- Lights should have a visible or reasonable source. For indoor lighting, there should be a light fixture, flames, ect. Outdoor areas will always have a light source from the sky. While the player doesn’t have to directly see it, the sky dome should infer it’s there.
- Use red lighting sparingly. Use saturated colors sparingly as well as it tends to make your level look unrealistic.
- For team based games (CTF/WAR/vCTF), use richer blue/red lights to help identify which base the player is in.
- In most maps, a player should be able to visually identify a material on a BSP or static mesh. If a player has to fire a weapon to see it all, try adding more lights. A sky light with a very low brightness will be the easiest way to accomplish this and if done right, will look nice.
- Lighting that originates from the sky dome should use a directional light.
- Meshes that can be seen though (chain link fences, grass, bushes, etc.) should be set up so they do not cast shadows. The engine doesn’t take into consideration the parts of the mesh the player can see though and will cast a shadow for the entire mesh.
Materials
- Be careful of large flat areas in which there is a noticeable tiling of the material. This can be fixed by scaling the material or by adding meshes.
Movers
- If a player can get under a lift, make sure that’s what you want. If not, a dynamic blocking volume attached to the lift can solve the problem.
- Lifts shouldn’t move into other geometry in which the player can see.
Optimizing
- Any BSP surface the player will never see and it occludes (prevents from being seen) something else in the level, should have the BlackUnliteMaterial material in the Engine Materials package. I create a similar type and change it’s color to a bright one to check for big gaps in my mesh work. These surfaces should also be set to not accept lights and their light map resolution should be the highest number.
- Any BSP surface the player will never see and will not occlude, should have the RemoveSurfaceMaterial material applied (located in the Engine Materials) package.
- Any terrain that the player will not see, should have it’s visibility removed. Be careful to not leave open gaps the player can see. To check for this, create a simple constant3vector material that is a very bright color. Place it on a simple plane mesh and increase the draw scale value so the mesh extends beyond the size of your terrain. Place the mesh below your terrain and if you can see the mesh, you have a gap.
- Keep in mind that if the player/game can see any part of a mesh, it will render the entire mesh.
- Set certain assets to only be displayed at higher detail settings. These should never have a direct impact on game play.
- Meshes that will cast a shadow that the player will never see (trim, wall panels, etc), should be set to not cast a shadow. This will help reduce your light map resolution, file size, and build times.
- Make sure your terrain tessellation value is appropriate for your terrain size. Adding extra triangles that won’t make a difference in the shape of your terrain will only hurt frame rates.
Player Movement
- Make sure that if a player thinks he can jump up to a ledge, they can as this will frustrate players in the heat of battle.
- A player should be able to exit water filled areas (rivers, tanks, etc.) with a reasonable amount of effort. An exception would be is if they are trying to get a valuable weapon/power up.
- For jump pads, the editor doesn’t allow us to inform the player which way the player will “jump” to. Unless it’s very obvious by your architecture, consider adding the pulsating arrows located in the UN_Team package.
Player Starts
- Rotate the player start so the player will see a clear path to take when they spawn. Avoid facing them into a wall or close to the edge of an ledge.
- Even though players start with a basic weapon, placing player starts relatively close to weapons may help to balance game play.
- Place enough player starts to avoid player predicting where a player can spawn in a given area.
Post Processing
- Remember, a little goes a long way.
- In my opinion, depth of field should rarely be used outside of the player being in some sort of liquid.
- Make sure that when a player leaves one post process volume and into another (or none), there should be a quick transition.
- Make sure your PP volume for liquid areas match what the players see when they are not in it.
Sounds
- Every surface that the player can walk on should have an appropriate foot step sounds. Having a variety of sounds will add some extra depth to your level and will help game play as it will give players the ability to track their opponents better.
- Adding a variety of appropriate sounds will add extra depth to your level. Sounds in general should never be distracting (unless for a good reason).
- A player should be able to hear some sort of ambient sound, even if it has a low volume to it. Complete silence really doesn’t existing in most environments.
- Make sure you have a different values for the inner and outer radius of ambient sounds. A player should be able to first hear the sound and have it get louder the closer you get to it.
- Having appropriate sound radius is important to allow the player to hear the sound, enjoy it for what it’s worth, then forget it. If a radius is too small, this won’t happen. If it’s too big (unless it’s something like a wind sound), then they can get tired of it.
- I would be careful to never use a sound that can be heard all the time at the same volume. If it’s a sound associated with a Kismet event, that may work. But for ambient sounds, you should really resist this.
Terrain
- Make sure there are no sharp angles in your terrain by using the smoothing tool.
- You terrain should rarely look flat, but it should be smooth enough for player to walk on.
Written by Odedge
