Attention Officers,
Thank you for joining us for the 69th edition of our development briefing, March 1st, 2024! We hope you’re all having a nice day.
This week we’ll be providing insights on multiple areas of Ready or Not’s current development. The subtopics covered are preliminary discussions around AI behavior advancements, optimization, crashes, and audio reverb improvements.
Other than the topics covered in this briefing we have upcoming bug fixing and top-secret RoN progress occurring behind the scenes.
Please keep in mind that everything in this development briefing is work in progress and subject to change.
Vol.69 Development Briefing summary points:
(not a changelog)
- We have ongoing internal roundtable discussions across our development departments (taking into account community feedback) to experiment with advancing the AI behaviors of suspects, civilians and SWAT [list]
- Please continue to leave specific feedback regarding your experiences with AI behavior in our respective Discord feedback channels for consideration!
- You can expect a comprehensive analysis of our approaches as we carefully vet and solidify specific development routes.
- One early example of an initial analysis is that we’d like to improve pre-combat behaviors for Suspect AI; they can be too eager to fight at times
- Resulting experimentation could entail building upon as the hesitation system and making the onset of firefights less readily predictable
- Scalability settings that more effectively allow high/medium/low graphics settings to tailor performance
- 2D Level of Detail elements (LOD “impostors”) for distant foliage, rocks, etc.
- Shader caching to reduce remaining stuttering (note: Enabling V-sync may help) and decrease load times
- Video demonstration included!
Preliminary AI behavior advancement insights:
We’ve have ongoing internal roundtable-style discussions in which multiple departments such as game design, level design, programming, animation, QA, and more are experimentally examining the different facets of AI behavior for suspects, civilians, and SWAT. These meetings help determine the future on how we want to advance our AI interactions going forward.
Please continue to leave specific feedback regarding your experiences with AI behavior in our respective Discord feedback channels for consideration!
Once these internal AI discussions reach more concrete conclusions and subsequent technical plans about development routes, we plan to make comprehensive breakdowns explaining them.
AI is a very complicated feature type that benefits from a range of development perspectives. Together, these perspectives can provide collective technical feedback on potential future AI features and implementation.
One early example of an initial analysis which took place in these roundtables is how we would like to see Suspect AI ‘pre-combat interactions’ become increasingly nuanced going forward; it seems that suspects can be too eager to get into combat at times.
Resulting experimentation could entail exploring building upon hesitation systems and elements that will make players less certain whether a suspect is going to comply going into engagements, while also reducing the immediate firefights that could occur.
Experienced players may currently find that they can identify suspects and whether they might comply at a metagame-level, whereas these sorts of changes would aim to make encounters more immersive and harder to readily predict.
Once again, there are many factors that will be considered in these sorts of AI-related experimental discussions going forward. You can expect a comprehensive analysis of our approaches as we carefully vet and solidify specific development routes.
Optimization:
Optimization remains a high priority to ensure the game is running as smoothly as possible for as many systems as possible.
Although we've made much progress already, we are currently working on improved scalability settings, LOD ‘impostors’, shader caching, and other performance factors. We’d also like to give a bit of context regarding unlisted backend performance changes recently included in Hotfix #4.
This is to give you all an idea of some of the work that’s being done for the future, however they may be implemented at different times and are still subject to change.
Scalability settings:
Scalability settings are the graphics options that let you optimize performance on your system, for example turning on/off specific graphics features or setting them to high/low. We are revisiting these scaling settings because currently they do not adequately differentiate between High/Medium/Low qualities in terms of both visuals and FPS.
The goal is to provide players with more tailored options that better suit their hardware capabilities, allowing more visual trade-off for higher performance at very low settings.
For example, we plan to make the “streaming pool” value, which affects texture quality depending on how high or low the value is, to be more dynamic based on graphics settings.
LOD “impostors:”
The word “impostors” is not a typo, but instead a way to refer to the 2D Level of Detail (LOD) elements that are included on distant foliage, rocks, or other pieces of environmental art. These 2D elements are carefully used at a distance to improve performance while mimicking the detail of 3D models without looking too sus.
Shader caching:
Another goal of ours is to implement shader caching into the game, also known as PSO caching. Shader caching pre-loads shaders for levels to help address stuttering and improve subsequent load times across the board. Enabling V-Sync in the game settings is still an effective solution for most stuttering now, however shader caching will root out some of the core problems that can cause stuttering in general.
Additional Hotfix #4 unlisted changes:
There were a few unlisted changes to optimization in Hotfix #4 that help illuminate our progress on optimization and are otherwise nice to be aware of. Among these changes was re-baking the lighting on all of our levels which was a large effort, main menu optimization to reduce load time into it, and backend optimizations to the balloon physics calculations on Valley of the Dolls which should substantially help lower end CPUs.
Crashes:
One of the main types of crashes we’re seeing relates to “DXGI_Error_Device_Hung.” This crash mainly affects some RTX 4000 models running DX12 and represents a common issue that some other games have dealt with in the past. We anticipate this crash will be prevented by resolving an internal settings conflict with the game.
Please make sure that you use the in-game crash reporter system to help us diagnose and fix crashes you may encounter!
Audio reverb improvements:
Reverb as it is in RoN is relatively static— very serviceable— but also very two dimensional.
By adding reflection probes (areas that determine where audio reflection/reverb occurs) throughout our maps, reverbs take on a much richer 3D sound. By doing this, we can create the impression that a sound is reverberating to the center of rooms, down hallways, etc.
On top of the reflection probes, we've also updated our reverbs in general, including changes to how materials affect reverbs. Rooms which are primarily concrete or wood, for example, now reverberate more accurately based on these factors.
This works with all sounds that are currently played in the game and will come at no extra performance cost!
This development is further exciting because if we eventually route our in-game VOIP system through our reverb audio system, we'll also be able to apply these effects (as well as all the other effects) to significantly improve voice chat immersion.
(Video below: Demonstrating the before/after usage of our audio reflection probe system to improve reverb audio effects)
[previewyoutube=q267XIOBSr8;full][/previewyoutube]
Thanks for tuning in, and keep an ear to the ground for the future!
Conclusion:
We have a lot cooking for our future updates and look towards your feedback to help guide us.
The AI behavior roundtable discussions will allow us to properly advance our AI systems in a way that strives to meet feedback in the most effective way possible, with more comprehensive plans to present as we go.
Options for optimization should improve greatly through scalability settings, LOD “impostors,” shader caching, and more to hopefully better meet lower system specs, particularly for devices like Steam Decks. We aim to mitigate crashes wherever they may occur and are targeting some of the most nefarious ones like the ones affecting RTX 4000 series GPUs.
Finally, our improved 3D reverb will improve your immersion throughout gameplay.
As you can see from some of what we can discuss right now, our RoN focus and vision is wide reaching.
Keep in mind that in addition to regular bugfix patches, further bugfixes for the base game are also planned to be pushed around DLC launches (not exclusive to the DLCs, of course).
This concludes our 69th development briefing. Be sure to tune in next time for more development news!
Thank you to Zack for the beautiful demonstration of the audio reflection reverb improvements, Alan for helping elucidate our optimization approaches, and many others for adding their perspectives on the AI behavior advancement discussions.
Make sure you follow Ready or Not on Steam here.
Our other links: Discord, X, YouTube, Instagram, Facebook.