May 31st 2019 by SDGNelson
Blast from the past: Eaglefire
The Eaglefire, along with several related items like 5.56 ammo, boxes, one type of canted mount, etc have now been remodeled and added to the firing range. Now that everything's finally starting to come together I don't think they'll need to be recreated again. 🙂
Currently the scope attaching to the canted mount is questionable, but in the future each rail will have a number of notches and the attachments will consume the number of notches they require.
Holographic projection calculations have been improved, and one quality of life change especially compared to 3 is that there is a subtle shadow to make it easier to aim against bright backdrops. You can even see the hologram if you position the camera properly in 3rd-person or the item inspector.
If there's enough time next week I'll update the reticule + color randomization to the now-not-as-new inventory revamp.
Radial menus are now updated to the lower-level UMG-Slate split I was working on, so the radial layout is a slate panel but the visual is handled by a UMaterial. Interactors can use the radial menu by holding interact, and multiple optics can be selected using the radial menu of a weapon. This also involved fixing an engine issue so that toggle-attach works properly as well. (Gamepads can easily use radial menu.)
Seating & Weapon Cleaning
Before working further on the Eaglefire I decided to revise the weapon code and seating code a bit, because I know that in the future the seating code will need to be able to interact with mounted turrets and vehicle turrets. Seat definitions were reworked into seat "instances" similar to the item revamp, and the idea for turrets will be that seat instances can have Turret asset user data associated with them.
Item Ownership Responsibilities
In order to make ammo containers more useful I worked on allowing storage owners to override stack size limits. Individual stacks of bullets in the inventory take up 1x1, but a container is much more space efficient.
As part of this my mindset on client<->server item commands has changed. Previously the server tried to be smart about auto-exchanging items, auto-equipping, etc, but I think that for the most flexibility it makes more sense to make the server dumb and instead allow the client to issue series of more complex commands in response to drag/drops. This will be on the of to-dos for the next update.
Steam Deploy Tool
I can't believe that in now almost five years of updating Unturned on Steam I hadn't built a tool for this yet. Usually releasing an update involves logging into the Steam backend and marking the build live, but now it's simply a matter of quickly opening the new tool, selecting a branch, and clicking Deploy.
Earlier last week the Unturned II expanded access Steam package got approved, so my next goal in regards to that is finishing the remaining items in the "Active Development" roadmap list, adding a small interior combat test map, and then activating wave #1 of this package. I'd guess this will be around Devlog #023 or #024, and I really I hope to stick to that goal.