1. Operation: Harsh Doorstop
  2. News

Operation: Harsh Doorstop News

Development Blog #32 [March 2023]

Hello everyone!


Welcome to the thirty-second devblog for Operation: Harsh Doorstop. In this update, we will be reviewing the work that the team completed in the month of March 2023.

[h3](More) Updates on Cheat Prevention Tools[/h3]
Our last patch from mid-April contained some fixes and changes to the code to help address some of the more egregious exploits that we were seeing plague many of the servers (such as people being able to spam grenades, and so on). Since this last patch, we have not seen this occur again, and we have not received any reports about it either from both players as well as server owners/admins, so it’s looking like the changes that were made are doing what they set out to do so far.

This of course does not mean that cheating is completely stamped out or eliminated (nor will it likely ever be totally eliminated), however, we have certainly seen a steep drop off since pushing this last patch, and servers should be much cleaner to play on now. So far we have seen from a few of our sources within the cheat making communities that some older cheats got updated for this patch and are being used so we know they are still out there, and I am sure people will run into them, however, these look much more like the traditional cheats that you tend to see in other games (such as ESP, 3NFLI, aimbot, and so on). If you suspect that someone is using these on the server you are playing on, please make sure that you notify the respective server owners/admins so they can keep a close watch and take the necessary actions that they see fit (and I highly recommend that you do your best to gather proof/evidence as well, as some of those more traditional cheats are much harder to determine whether or not they are in fact being used—things like ESP are tough to know for sure, however, it’s pretty obvious if someone is using something like an aimbot if they are consistently killing players from very far distances and have an extremely high K/D for instance, so some of these things players can use common sense and observe the telltale signs of to know whether or not there is actually cheating going on).

Our next update(s) to further address cheating and give server owners the tools that they need to keep their communities safe will contain the Steam API variables that we discussed in prior devblogs, as well as the optional vote kick system. These will either both come together in the next update, or will be spread out between two simultaneous updates, but you can expect the Steam API stuff to come first between the two. To briefly recap what these will contain, the Steam WRMKA API tools is what will allow server owners to restrict joins based on certain factors such as whether or not their account has a VAC and/or game ban, how long it has been since their last one, their account age, and so on. The vote kick system is exactly what it sounds like: an in–game system that players can use to initiate a vote kick on somebody that they suspect of cheating or breaking any other server rules, then the whole server can vote ‘Yes’ or ‘No’ and the person in question’s fate on the server is then decided by the community (the severity of the punishment for a successful kick being dictated by the server owners/admins). To clarify on a couple of points for this system, server owners will have several options about how they set this up, such as what constitutes a vote succeeding or failing, how long the kick will be for (you can think of this more like a timed/temporary ban than just a simple kick), and whether or not their server even uses the vote system in the first place (this will be entirely optional of course, and not every server will feature a vote kick system unless they explicitly choose to include it).

After the next update(s) mentioned above, we will be revisiting our plans for incorporating EAC and determining whether it will be worthwhile to proceed on incorporating this right after, or if we should return to game features like finishing up the first iteration of vehicles, base building/construction, and so on first. To BXGFQ be clear, we still do plan on incorporating EAC as an option for server owners, so revisiting our plans more so pertains to when we actually do it (not IF), as we would like to get back to working on the actual game itself sooner rather than later. We believe that the systems discussed above will have a far greater impact on curbing any cheating issues than EAC will, however, only time will tell of course so we will cross that bridge when we get there after these next updates take place—our main goal right now is getting the community-ran servers to a place where the server owners/admins have the tools that they need to effectively moderate their communities without a tremendous amount of additional work, and making it so that if/when players do encounter cheaters that it is nothing they aren’t already used to seeing in other games, cheaters are dealt with in a swift and timely manner, and most importantly they have a hard 4R8KV time being able to come back once they have been removed from a server.

Now on to March’s recap:

New Lighting System

We have now begun the process of completely replacing the Ultra Dynamic Sky system for how we light levels/environments. This new system uses a custom PBR (Physically-Based Rendering) lighting system that makes use of pseudo-photorealistic lighting values and techniques, and features a variety of customizable parameters such as wind, sky, and flow controls. This will LX3QZ allow for full control of how the level design team and modders alike choose to create the lighting for their levels.

Here are some images to showcase how this new lighting system looks—the first image of each set is before the new lighting during the day, second is after the new lighting during day and sunset:













For the more technically-inclined that want to know more specifics about what exactly this new lighting system is doing, here is a list of its features/details:
  • Proportional photorealistic lighting values
  • Global lighting scenario adjustment support
  • Global Skydome/Fog Z Offset customization
  • Global Skylight Relative Z Offset automation + customization support
  • Support for Skydome Realtime Sky Capture, HDRI Panorama, UV manipulation, HDRI M7L49 Texture Adjustment, Sky Flow Mask, UV-based "wind" distortion, Noise-based Variation, Sun Disc customization, and Directional Light vector-based flow masking and texture luminance adjustments
  • Automated Directional Light/Skydome Sun Disc pairing support
  • Fog Automated Texture-based Fog Inscattering + customization support
  • Eye Adaptation/Camera Exposure automation + customization support
  • Carefully created/calculated histogram importance values, histogram ranges, exposure ranges, exposure metering mask, and exposure compensation curve
  • Modified film stock/default color grading to better match natural vision
  • Gaussian Bloom support
  • World-Space SSAO support
  • DFAO support
  • Multiplicative SSAO/DFAO rendering support
  • Directional 3LK3T Light light shaft occlusion and bloom support

On the current stable branch/build only Risala features this new lighting layer, however, the team is working on making new layers for each map so that we can totally move off of Ultra Dynamic Sky for the base maps (UDS will still remain in the SDK though for those that wish to still use it in modding). In the next update additional levels (maybe all depending on the level design team’s speed) will be overhauled to replace existing lighting layers with the new one. This system is now also available in the latest SDK update for those that want to start experimenting with it for their own map creations.

Character Model Updates

A handful of updates and improvements were made to some of the preexisting character models.

To start, we are beginning to swap out placeholder heads with new G80A6 MetaHuman heads (before and after):



The Insurgent faction also received some adjustments to their uniform and gear, also displayed in the before/after images above.

The uniforms for the NVA faction were updated to have more detail:



The uniforms for the USMC faction were updated to have rolled cuffs on some of the variants:



Last but not least the US soldiers for Operation: Michael received a number of updates. The uniforms had their colors and mesh adjusted, the soldier’s gear was tweaked to be smaller and more uniform, the Squad 9QZI9 Leader head was swapped out with a more modern one, and camo netting was added to the MG class helmet:



Maps

[h3]Saint Quentin[/h3]
Saint Quentin received new capture routes that use the rest of the map, the foliage was updated, the trench networks continue to be expanded upon, new lighting was added, and the town of Bony is now being set up, which will be a key point on the map.



[h3]Omaha Beach[/h3]
Omaha Beach continues to receive foliage throughout the whole map, and more detail is gradually being added to the smaller showcase area of Vierville-Sur-Mer 4Q3LZ.



Vehicles

[h3]Turret Animations[/h3]
Now that the driving and passenger animations are more or less completed, the animator has moved QYVFY on to creating the turret systems that will be used for static weaponry and emplacements:



Upcoming and WIP Features

[h3]Bots/AI[/h3]
At long last we are nearing the point where the team is preparing to bring in the latest AI updates to the dev build of the game to start testing everything—as soon as the lead programmer has some time between his other taskings, he and the AI programmer will be meeting to review 05I85 his work and start taking the next steps to migrate it all into the main code base that the rest of the team is working on (AI actually has its own separate branch). We will be sure to let everyone know when these are ready for testing in the dev build for those that want to check it out.



Thank you for checking out this month’s devblog!

Make sure to join the O:HD Discord, and be sure to follow our Steam announcements to track updates. See you all next time!

-Goomes, Lead Community Manager





Website
Discord
Youtube
Twitter




Twitter
Discord
Website

First anti-cheat update is live.

The first anti-cheat update is here.


A few weeks ago we published a roadmap for our planned anti-cheat updates. This includes things such as vote-kicking, VAC banned player filters, EAC integration, and most importantly... our own in-game anti-cheat updates.

As of this past weekend, we've implemented our first pass of in-game anti-cheat updates to fight cheating in Operation: Harsh Doorstop. This won't solve all cheating, but it will absolutely stop some of the more severe exploits cheaters have been using when playing the game.

These updates will strengthen server authority on several systems that have recently been most exploited by cheaters. Primarily systems that allow cheaters to spoof player teleportation and weapon settings (such as the "air strike" cheat) have been updated with additional checks to prevent explotation.

What are our next steps?


Our mission with Operation: Harsh Doorstop is to constantly listen to our players, and allow them to guide our focus. The community has made it absolutely clear since launch that anti-cheat measures are the most important thing for us to focus on, so that is exactly what we have been doing.

Now that our initial anti-cheat update is launched that addresses the most severe exploits... our next immediate task will be implementing the VAC ban player filter. This will allow servers to (optionally) set their filters to automatically block VAC banned players from playing on servers. This will likely take around two weeks to complete.

Once the VAC ban filter is launched, our next focus will be on implementing the vote kick system. This system will allow players to kick members of their team they are suspicious of cheating. For anyone that is concerned about cheaters or griefers from exploiting this system, we'll also be implementing server-side options that block VAC banned players from voting. We'll also implement an option to automatically disable vote-kicking if an admin is actively on the server.

What can the community do to help?


Please continue reporting cheaters. Report when they cheat, how they cheat, and in as much detail as possible. If a cheater uploads a video of them cheating, send it to us. If you find a cheat forum post detailing how their cheats work, send it to us. If you know where the cheats are being distributed (some cheaters even upload their cheats to GitHub) send it to us.

As always our community feedback tracker is open and we are constantly monitoring it.

https://steamcommunity.com/linkfilter/?url=https://operationharshdoorstop.nolt.io/

Each and every one of you (even the cheaters) have been instrumental in our process of improving the game. From feedback on our SDK to prototypes of new features or simply feedback on which features you like the most... your voice has shaped our game, and your voice will continue to shape everything we do.

More updates to come. Can't stop, won't stop.

Looking forward to sharing our upcoming progress with you soon.

Cheers.

- Bluedrake42

Updates on our destruction prototype...

For anyone interested in the progress we've been making on our destruction prototype, check out the following video!

[previewyoutube][/previewyoutube]

Supporters will have early access to this test map! If you want access to the upcoming multiplayer playtests for our destruction system, consider becoming a supporter of the project!

https://store.steampowered.com/bundle/29860/Supporter_Bundle/

Our commitment to supporting other studios...

Throughout the years I have been creating content featuring some of my favorite tactical games in the genre. The developers behind many of these games I consider to be my good friends... and they have supported me and our studio throughout our game development journey. As a way to give something back... I would like to announce our new series of partnerships with some of my favorite studios in the indie genre. Any studio we are partnered with will be featured in discount bundles on our Steam store page. This means that anyone who is a paid supporter of our game on Steam, will be able to get any of our partnered games for a discount... sometimes up to 50% off!

Thank you so much (to all of you) for supporting both myself and our entire team on our journey. I'm so incredibly excited to give something back to all of you. I also hope that our supporting members will appreciate the discounts they receive for some of these incredible games.

You can find our first series of partnership bundles below!

https://store.steampowered.com/bundle/31004/Zero_Hour__Operation_Harsh_Doorstop/

Zero Hour is developed by my good friend, Meheraj7. I remember when I first met him, and learned that he was starting a game development studio in his home city in Bangladesh. Watching Meheraj create a successful tactical shooter, on the opposite side of the world, with a fraction of the resources most studios have... has been nothing short of inspiring. I hope you all decide to check out his game Zero Hour.

https://store.steampowered.com/bundle/31763/Black_One_Blood_Brothers__Operation_Harsh_Doorstop/

Black One: Blood Brothers is developed by my friend, Helios. Watching his project start from humble beginnings and transform into the incredible project it is today, has helped me understand that games that start small... can become something greater. Thank you so much Helios for showing me what hard work, and tenacity can achieve.

https://store.steampowered.com/bundle/31914/World_of_Guns__Operation_Harsh_Doorstop/

The developers behind World of Guns might be the core reason my Youtube channel is as successful as it is. I first started working with the team behind World of Guns (Noble Empire) in 2014, when they first reached out to tell me about their project. Since then, I have gone on to create videos that have accumulated a cumulative hundreds of millions of views using their software. Thank you so much for everything you've done for your community Noble Empire, we wouldn't be here without you.

I hope you all choose to check out each of these projects, and I can assure you that more partnerships with some of my favorite studios are still coming. I'm so happy to finally have a game on Steam where I can start working directly with some of my favorite game development teams in this way, and I can't wait to give something back to all the developers who have helped me so much throughout the years.

Besides that, keep an eye out for our next development blog... and more incredible things coming to Operation: Harsh Doorstop soon.

- Bluedrake42, founder of the Operation: Harsh Doorstop project.

Update v0.12.0.0 Changelog

[h2]General[/h2]
  • Client/Server security fixes and improvements

[h2]Gameplay[/h2]
  • Fixed some situations of consumable items (grenades, bandages) requiring a reload of the item if the player unequips it immediately after use or receives an ammo resupply
  • Fixed footstep sounds not playing if Shadow Quality is set to Low
  • Fixed 'Accessed None' log warning on dedicated servers when characters are cleaned up
  • Fixed player name/score stats (displayed from the steam client server browser and other external server browsers) only getting updated after a map change
  • Fixed cases of duplicate bullet impact fx under poor network conditions
  • Fixed missing blood impact fx when a corpse is shot
  • Fixes and optimizations to animated magazine system
  • Fixed Ghost/Fly/Walk cheat cmds not working in offline play or for server admins when cheats were enabled

[h2]User Interface[/h2]
  • Resolved various UX and inconsistency issues when remapping keybindings from the options menu
  • Fixed pause menu being inaccessible if the game state was paused

[h2]Core Art[/h2]
  • Props, Buildings, Characters, and Weapon materials had their parented materials adjusted to be more consistent
  • Turned off tiling and albedo switch on several material instances to reduce shader complexity
  • Turned off Dithering on foliage materials
  • Increased resolution on several texture sets from 2k to 4k
  • Rebuilt HLODs for all levels

[h2]Lighting[/h2]
  • New Lighting System
  • New lighting Blueprint, separate from Ultra Dynamic Sky. UDS is still available for modders

[h2]Physics[/h2]
  • Optimized Ragdoll Capsules for more realistic physics ragdoll
  • Reduced the number of capsules the physics asset uses
  • Ragdoll physics bodies transition into sleep state much faster, improving performance

[h2]Characters[/h2]
  • Fixed Dark eyes on LOD 1-4 on all characters
  • Fixed LODs having the wrong material assigned to LODs 1-4 on multiple character sets

[h2]Audio[/h2]
  • Set Preselected sounds for Equip sounds, reduces the number of sounds loaded, reducing memory usage
  • Increased Footstep sounds by 50%

[h2]Foliage[/h2]
  • Created Distance Field Meshes for Palm Trees
  • Imported new European Alder foliage set

[h2]Credits[/h2]
  • Added several contributor names

[h2]Loading Screen[/h2]
  • Edited several loading screen images

[h2]Maps[/h2]
  • Risala - Foliage and road spline fixes
  • Khafji - Fixed several bugs and graphical issues
  • Montecassino - Foliage and road spline fixes, spawn points moved
  • Argonne - Fixed several bugs and graphical issues
  • Lam Dong - Optimized Jungle Hut collision primitives
  • Carentan - Added more buildings and layout, added sidewalks and walls
  • Omaha - Added more buildings and foliage
  • Saint Quentin - Added more buildings, trenches, and fields, added 3 AAS routes, landscape sculpting
  • Tan Binh - Added 3 AAS routes

[h2]SDK[/h2]
  • Reverted default Navigation Geometry Gathering Mode from "Lazy" back to "Instant" as a workaround for an engine bug that may cause the navmesh to not generate on some sections of a landscape, depending on how the landscape itself was sculpted. Map authors must now explicitly opt into "Lazy" navmesh generation for their landscapes if they wish to continue using it as a performance optimization on large maps using a dynamic navmesh w/invokers.
  • The fire animation behavior for newly created weapons has changed to allow weapon fire anims to finish playing after weapon fire has ended. Previously, weapon fire animations would be synced up with the configured fire rate and would end prematurely after the weapon had stopped firing (if the fire rate was shorter than the length of the animation itself). This behavior can be controlled via the "Stop All Fire Anims After Fire Rate Delay" setting of the weapon blueprint.
  • Enabled editor setting by default that allows for impure nodes to be explicitly disabled or toggle Development-only attribute on/off via the context menu by right-clicking them (CAUTION: EXPERIMENTAL)
  • Improved weapon API documentation
  • API: Add ReloadStarted and ReloadFinished weapon BP events
  • API: Add ForceStopFiring function for weapons