Posted on Behalf of SOF Studios President, Tom
Hello H-Hour Community!
Around the Studio:
Hot, beautiful sunny days in the forecast! We have hit the summer months and I am encouraging the volunteers on the dev team to make sure they take some time off with their families this summer so they can enjoy the season. These dedicated souls have worked tirelessly on H-Hour in their free time for an extended time now and letting them de-stress with their families this summer is the least that we can do to thank them for the passion and dedication they have brought to H-Hour!
What does this mean for the game? The pace of development may slow and require us to change direction “on the fly”. Most development work at this stage requires multiple team members to collaborate on a feature to get it completed and we will now be juggling not only everyone’s regular job schedules but vacation schedules. Because of this, we may also need to switch direction, shelve one feature’s work part way through and move on to a different feature. Given this reality, we are planning on releasing smaller patches until the summer is over. This will also allow us to get updates to community DLC maps out the door sooner for everyone.
So, what is the team focusing on during this next patch cycle?
- Work required to allow for removal of the FPS cap
- Correct "stuttering when stepping" (turning while at idle)
- A recent bug regarding the mini-map not updating objects until character turns
- Walk button on controllers not working in controller only rooms
- Continuing to test Workshop tools for ladders (this update cannot be released until all coding changes for ladders are complete)
- Continuing to stabilize recent animations added
- Map 5 – continue file management work and conversion of blueprint assets to static meshes
- Map 6 block out work has begun
- Working with community mappers—testing their maps, providing guidance and feedback and loading and releasing their maps
Patch News:
The development team released another large patch this month followed by a hotfix to address the issues stress testing by the public identified post patch.
The release patch included new content such as aimoffsets which enabled much better fluidity for characters, the addition of ladders and the first pass animations needed for this feature, the ability to drop the bomb, allowing players to fire while reloading, updated special effects, in-scope shot block warning and a TK management system. There was also a long list of updates to existing animations and features, optimizations to all official maps to help those with lower end specs and another large pass of bug fixes. For more information on what was in the patch, check our patch notes. For the content in the hotfix, check here.
As always, new features are considered first pass and will likely require additional tweaking in future patches. In other words, no feature is complete until it has been put through its paces very thoroughly by the community.
-------------------------------------------------
From the Development Team – Let’s Talk H-Hour Workshop Maps:
Hi everyone, Rosie here to talk Maps!
Before I start I want to thank all the community mappers out there who have taken the time to create maps for everyone. You guys rock! To show my appreciation for the time you invest, I thought I would share some tips with you. I hope this is a helpful starting place for all our mappers when combined with our Guide as they create and improve on their custom maps.
The move of Workshop maps to a DLC pack has meant changes to the process of how community mappers work with the Studio to have their maps reviewed and in what is expected for a map to be released with H-Hour.
The process has been evolving as we worked with the early adopters of our new Workshop and we believe now is a good time to share the best path to take for our map creators to get their maps approved and into our DLC pack.
The workshop tools provided allow custom mappers to build their map, merge it into your game files and test using Create a Game (UCR). This tool is key for doing a full review of your maps prior to asking for Studio testing.
I am now going to drill down into the areas all community mappers should consider.
Optimization for all content in your map.
Remember the minimum specs for H-Hour are for an Nvidia 660Ti so you need to target allowing players with those specs to reach adequate FPS rates while playing. Keep in mind that what you see for FPS when testing is less than what will be the experience of 16 players shooting, throwing nades and interacting.
Use the tools provided by Epic to optimize your map. This includes:
- Create LODs for large props/buildings to reduce the rendering required on your map for players. LOD levels reduce the vertices on meshes based on distance. You can do this in your modeling programs yourself and then import the model with the LODs or through the auto-generation feature in UE4. To auto-generate-- Select each large prop or building static mesh, double click to open. In the Details panel in “LOD Settings” section, select an appropriate LOD group to auto-generate LODs for your mesh type and then Save.
- Use the UE4 Editor View Modes to check out your lighting optimization, shader complexity, etc. Detail on what to look for is available online in numerous tutorials and Epic documentation. To use the optimization tools, dropdown the “Lit” selection and go to Optimization Viewmodes and use the tools.
- While developing, turn the FPS counter on in the Editor so when you play in editor you can move through your map with the player and get a feel of FPS drop objects in your map.
Texturing and Lighting
There is a maximum amount of rendering that can happen within a multiplayer game before players lag. Texturing and lighting are big contributors to this issue if not controlled.
For textures, we recommend you do variations so your map is not boring, no one wants to see 50 buildings all with the same texture without any variation. At the same time, use the tips that follow to reuse wherever possible. The engine will render each texture once so sharing within your texture sets saves performance cost. Reuse specular and normal map sets where possible, just swapping out the base colors. This can also be achieved using Material Instances.
You may want high quality for an object but expecting you can just 4K everything is going to make your map unplayable. Use the size map tool in Editor on your static mesh to get a grasp of its overall size. It might surprise you. To work around this, you should test each texture set in your art program to see how low you can go with the various layers and still achieve the look you want. This includes things like using lower resolution specular maps, and having the highest resolution texture be your normal map. These kinds of tricks will typically play upon your average person's perception of surface detail. Working with our artist, we have found the difference is not that noticeable for most objects with a 1024x1024 normal map, a 512x512 color map (though there are exceptions), a 256x256 specular map and a surface with all 1024x1024 texture maps. You need to test and tweak to define the minimum levels for your surface detail on each object.
Do not scale or stretch textures beyond their intended size as this will produce bad visual results.
For lighting, it is important to have a good grasp of this topic as it is one of the biggest areas of performance cost. You need to understand what each light type does in order to make decisions on use. Spend time learning this using Epic documentation and tutorials as it is a huge subject.
At a high level, you should:
- Limit the use of Stationary point lights inside your map. Only use them when you must have shadows interact with an object during game play. Do not use Moveable.
- Limit the use of Reflection Spheres in your map as they have a high-performance cost. These are intended to assist with reflecting light off metallic objects or reflective surfaces for atmosphere and not as a means to increase lighting in an area of your map. Also, keep these Spheres at a level that they will not reflect light on the top of a character. Players should not be wondering where the heck that light they cannot see that is reflecting off their character came from. Placement is important.
- Use bounce lighting to pull additional light into dark areas of your map without having to up intensity of your lighting source. This is an option in your light source itself and can also be done using soft point lights in strategic locations that are not visible (e.g., tied to a static mesh) and do not cast any shadows.
- We have also noticed with the switch to 4.15, the tonemapper in use is quite different then the one from 4.11 and this requires revisiting your texture and world settings to in many cases, lower roughness and metallic settings.
- Keep your mesh lightmap resolutions low, adjusting using Optimization ViewModes and watching that you do not lose too much of the detail for your mesh. Blue is the happy color and will not only improve performance but reduce light build times!
Take your time and build a quality map that the community will enjoy and want to play.
Typical Studio quality maps take a full time, experienced level artist at least 3 months to develop. This is an indicator of the amount of hours community mappers may need to put in to create high-quality maps. So, if yours is complete with just a few days or weeks of effort, you likely need to revisit to see what could be improved. Focus on one map and perfect it as this should be about quality and not quantity. You want players to want to play your map. This community has the talent to create high quality maps and many have proven this already and their maps are fan favorites. We want all our community mappers to succeed.
With the new DLC process, it is not as easy to get fixes you may make in the hands of the players when they are unhappy about something. So, we strongly recommend you take the time up front and make sure your map’s first impression is a good one!
Glitches are not something you want in your map. Make sure there are no places players can get outside of the map. Make sure there are no objects players can get caught on. Make sure players cannot hide behind bulletproof items that should not be bulletproof—e.g., a bush. Check that there are no areas players can gain access to that they shouldn’t, especially things that allow them to get under your map. If you use water that players could hide under, use the Water Volume blueprint provided in the H-Hour Workshop Tools and make sure players cannot find areas to submerge themselves.
The Process when you deem your map ready:
- Use the Workshop Uploader to upload your approved version of the map to the Workshop Depot.
- Contact me on forums or send an email to [email protected] and let them know the name of your map and that it is ready for testing. This process takes volunteers away from game development so make sure your map is bug free before contacting us.
- Your map will be tested on a UCR first and if it passes, go for server testing by the development team.
- The team will provide feedback if they find things that need fixes.
- Once approved, it will be added to H-Hour content to await the next patch. Depending on when your map is approved, this wait might be 3-4 weeks.