January 3rd 2020 by SDGNelson

Tidying and preparation for 2020.

I took a week off over the holidays, and hope you had a nice time as well. This year my aim is to reach a fun playable game loop akin to the early days of 3.0, and progress from there.

With the goals of providing better insight into the game's design directions and highlighting in-depth discussions and suggestions a separate board has been opened here:

Suggestions Board

At the moment it only references medical and armor related suggestions because those are the next features to be worked on.

The weapon state machine is now somewhat setup which prevents interactions like shooting while reloading. I'd been slow to do this because I wanted it to be easily expandable by mods, and I'm happy with it now.

Prior to this update the weapon "observers" e.g. animations were entirely separate from the logic e.g. changing ammo item. I've somewhat changed my mind on this so that the weapon animations are allowed to notify the logic of certain state changes which makes shooting after rechambering frame-perfect, and will be handy for melee.

In preparation for working on armor plating and the MOLLE pouches I've been trying to finalize the outfit guidelines and improve their connection with the base mesh. There's been lots of experimental tuning, but the worst area I'd still like to to improve are the shoulders - the combination of distorting them so much and using standing animations for all stances is tricky. There's now a second shoulder inside the first which helps hide the seam, and I experimented with extra faces inside the arm to help preserve the volume which didn't work as well. At least they're better than 3.0.

Comparing shoulder mesh distortion. Old on the left, new on the right.

Prone worked well for hills, but could lead to ridiculous angles on stairs and ledges which is now fixed. Animations for prone and crouch falling as well as landing impacts in all stances have been added. Pace and stance can be tuned away from hold modes, and are easier to use in general.

Prone at the very edge wearing a few new items.

Attribute modifiers have been rewritten and applied to a few items, and nested storage is restored.

Attribute on stock item and nested storage.

Inconsistencies with bullet pass through were fixed up, so it should be reliable to take out multiple zombies with a sniper shot again.

Config files similar to 3.0's have been implemented until the dedicated server receives proper admin tools. Specify -U4SV=MyFile.json on the command-line to create one in the Saved folder, or an absolute file path.

Tracking down a vehicle relevancy problem took a while and eventually turned out to be caused by Unreal's default camera location not getting sent to the server while movement was disabled as a passenger.

Initial support for display safe zone editing has been added. This is primarily useful for moving the HUD and menus into view on widescreen or multi-monitor setups.

Editing the safe zone margins.

Enabling Unreal's experimental Direct3D 12 support with the -D3D12 command-line switch now enables raytracing settings in the graphics menu. Reflections work well, but the 3rd-person shadows on the 1st-person body do not line up well. There isn't a clear solution to this but something will get done about it.

All the settings menus have their own apply, save, discard and restore defaults buttons, and the UI scale option requires confirmation similar to resolution. It was too easy to set up a bad UI scale and ideally 3.0 would get something similar at some point.

There are other miscellaneous changes like keybinds for each specific headlights mode, but the notes at the bottom of this post are getting dry enough already.