Dev-блог 194

Rust_Devblog_194_0.jpg

First look at a new monument, improved cheat reporting, optimizations, a new Hazmat Suit, and more.

Hazmat Changes
The new and awesome makeshift Hazmat Suit from Taylor Reynolds is now in-game. This replaces the existing item visuals and should help differentiate scientists from players when they are fully in-game. That doesn't mean that you'll never be able to find a legit scientist suit, so you can still roleplay as an NPC if you get one. The suit is now also user craftable. You'll need to research it, and it needs a Tier 2 Workbench, but hey, better than scavenge only. Right?

Rust_Devblog_194_1.jpg

Sometime in the future we hope to make each suit somewhat randomized based on its itemid, so a group of players wearing them will look slightly different, but I think we can all agree that this one looks awesome as is.

Crash Site Changes
While taking down a helicopter needs to be made a little more difficult, I think securing the crash site should take a little more effort. As it is right now, huge groups can just seal it in or place a bunch of turrets, so I've made some changes. The helicopter crash site now has a building blocked radius around it. It's not that big, but you won't be able to intersect the gibs with High External Walls or anything like that. Also, Auto Turrets now lose health upon pickup. It was an oversight that they didn't which kind of enabled this behavior. Now if you're going to deploy turrets around it, it'll cost you as you'll need to repair the turrets when you're finished, and that ain't cheap.

Rust_Devblog_194_2.jpg

Explosive Ammo Fixes
I made some changes to Explosive Ammo last week, which were a bit FUBAR. This is all fixed now. You'll notice that you no longer need to aim slightly away from targets in order to deal the explosive splash damage to them, so you can directly shoot at doors for maximum damage. This damage value is now calculated appropriately, and should be the same as it was before all this began (there was a bug leading to double damage being dealt to objects... oops!).

Rust_Devblog_194_3.png

Rotation Updates

A few quality of life changes have made their way into the game this week. You can now rotate Workbenches with the "R" key while deploying them. This should make them easier to fit into tight spaces. Also you can rotate Tool Cupboards as long as they aren't locked. This means if you place them the wrong way you'll be able to flip them around and place a lock on them. Enjoy!

Rust_Devblog_194_4.jpg

Repair Delay
In an effort to make online raiding a bit more viable, I have increased the duration you must wait to repair an object after it has been attacked from 8 seconds to 30 seconds, giving the attacker enough time to reload their rocket launcher and take another shot. Before this, the defenders were able to eliminate any damage done to their base by smacking the damaged parts with a Hammer in between shots. Lame.

Furnace Heat
The Small Furnace finally gives off heat, so stop DMing me already!

Rust_Devblog_194_5.jpg

Arrow Changes
Changes big and small! The highlight around arrows when dropped on the ground will now show the arrow head. Fire arrow fireballs will slow movement. This should be huge, and allow for area denial. I am very excited to see what happens with this.

Rust_Devblog_194_6.png

Rust_Devblog_194_7.jpg

Cheat Reporting
I've updated a few things about the way you report cheats. Previously, when you reported a cheat, you'd need to fill in a name, your email, and a captcha. On our end we attempted to remember some of that stuff, but it didn't always work, so the process could get a bit frustrating.

So now you have to sign up to report cheats or give feedback (unless you already have, like, to use our forums). It's hopefully not a huge deal, and it does come with some benefits. One of the big ones is that we can now email you when the hacker you reported gets banned.

Rust_Devblog_194_8.png

Because a lot of people didn't know how to report, we've also added a button on the death screen. So if you've been killed by an obvious hacker, the process of reporting them should be more straightforward. While it's true that adding a button will lead to more reports - which will add more noise - it's also true that hackers will get reported a lot more, and therefore be investigated a lot more.

Rust_Devblog_194_9.png

Previously hackers could turn on streamer mode to hide their name, so when we showed their real Steam name on the report page people would get confused and fail to report them. That's now fixed too.

Staging Branch
As we prepare to leave Early Access next month, we're reorganising how we push out updates. Part of that is the addition of the Staging version of Rust to Steam. If you own Steam you should see it on your main list.

I've added a page about about the Rust Staging Version and how we're planning to use it here.

Water Well Mini Monuments
The Water Well Mini Monument is coming together.

Rust_Devblog_194_10.jpg

I've tried to give these mini monuments a player-made look. You will find the wells in the middle of decayed and overgrown player base, lookalikes or re-purposed landmarks.

Rust_Devblog_194_11.jpg

Rust_Devblog_194_12.jpg

Rust_Devblog_194_13.jpg

Rust_Devblog_194_14.jpg

Rust_Devblog_194_15.jpg

Rust_Devblog_194_16.jpg

It's been fun so far to take the monument art a step further by combining player deployables and art previously made for landmarks.

Admin Assists
I've implemented some helpful tools for server admins to make their lives easier. First and foremost, admins can now check the combat log of any player on their server by calling combatlog <player> from their client console. As always you can use the full or partial player name, Steam ID or IP address to specify the player.

Secondly, server owners will now receive a warning message whenever they join their server if the server has any of the anti-hack mechanisms disabled. I've added this because we're still getting reports about noclipping exploits and when we look into them it always comes down to the server having noclip protection disabled. There's really no reason not to have these protections enabled on a PVP server.

Memory Optimizations
I implemented an optimization that automatically identifies and strips away empty game objects from prefabs. These empty game objects are caused by the fact that we strip a ton of client-only components from server builds, and vice versa. Sometimes this results in all components being stripped from a game object, leaving behind an empty object. This is a particularly common when stripping mesh renderers from the server build, since every LOD tends to have its own game object in Unity (we're using some custom LOD scripts that allow us to have all LODs on one game object, but these can only be used under certain conditions).

Here's the difference this makes on a server with 154k entities:

Rust_Devblog_194_18.png

It also helps with client memory usage, but the effect is definitely most noticeable on servers and gets more significant the higher the entity count.

Workshop Skin Optimizations
I spent most of my week optimizing item skins. You should now see much better performance while downloading large numbers of skins. In addition to that, skinned item icons now load asynchronously, which means the game will no longer stall when opening item containers with a lot of skinned items in them. This is particularly significant for people who don't have an SSD. The icons are now also compressed in memory, which significantly reduces their RAM and VRAM usage. All of this involved more fucking around than I would have liked because Unity is still extremely limited when trying to load assets asynchronously, but I think I've found a decent solution for most of it.

Error Fixes
In the early days of Rust Experimental, Garry added remote error reporting to the game that automatically sends some info our way when an unhandled exception is encountered. When adding a ton of content the way we've been doing over the last months, it's common that errors slip through if they don't happen on any of our machines. This week I went over a ton of them and fixed them one by one. Doing so uncovered some minor bugs, and sometimes even a one-line performance optimization. It feels good to crunch though these and even though they're rarely life-changing for the players it's good to keep the code base solid for future additions.

AI
This week has seen development and testing of the Scientist NPCs. They have been live on Staging all week, where they raised havok in the Military Tunnels. We are easing them onto officials this patch. They can be enabled on servers by setting squadmanager.squad_disable to "false" in server start-up scripts. Work continues on improving their behaviour for next week.

Underwear
I spent some time reworking the underwear I showed off last week. Previously it was an alternative skin for the player model, but after a chat with Helk, I've reworked it as an attire item instead. Visually there's a small improvement, as it's a physical mesh now and not just a texture, but more importantly it'll allow skin creators to potentially work their magic. The art is all done, but it'll need some code support before the censorship option is enabled.

Admire Animations
Continuing to update placeholder admire animations. This week includes improvements on admiring your jugs:

Anisotropic Filtering Settings
We spotted an issue where some of the textures in the game did not receive any benefits when using Anisotropic Filtering. This was due to some textures not having the maximum filtering settings setup correctly. I have went through most of the tiling textures and set it by hand to make sure everything is unified. As a result, most of the textures in the game should look now much sharper at a distance when using AF.

Third-Person Sounds
I'm still working on improving parity between first and third-person sounds this week, and I'm on the smaller, one-off sounds now: you can hear some subtle movement when someone aims down their sights; grenade pin pulls or fuse ignitions are audible; there's a bit of movement when someone pulls their arm back to throw a melee weapon or a grenade; and someone bandaging themselves or another player now has sounds. Most of the work that's left to do here is on items that haven't had a first-person sound pass yet either, so that's the other thing I've been working on this week.

Binocular & Flashlight Sounds
There's a few items that haven't had a sound pass done yet, so I dug into those this week. I recorded some source material for the flashlight and binoculars and got them designed and implemented. I've also started working on sounds for the flare.

Список изменений:
  • Added third person aim down sight sounds
  • Added third person grenade sounds
  • Added third person bandage sounds
  • New binocular sounds
  • New flashlight sounds
  • Admins can get combat log of other players
  • Admins get warnings when anti hack is disabled
  • Added new Hazmat suit
  • Water jug admire animation updated
  • Salvaged hammer admire animation updated
  • Water bucket admire animation updated
  • Wooden spear admire animation updated
  • Stone spear admire animation updated
  • Flamethrower admire animation updated
  • Satchel charge admire animation updated
  • C4 admire animation updated
  • Bow admire animation updated
  • Optimized workshop skin download processing
  • Optimized game object memory usage
  • Optimized skin icon memory usage
  • Optimized skin icon loading
  • EAC SDK update
  • Combat log no longer takes count parameter (uses combatlogsize value instead)
  • Increased junk pile respawn time from 20 to 30 minutes
  • Eliminated GC from voice recorder
  • Jack O Lantern can be picked up
  • Jack O Lantern only accepts wood
  • Small Furnace now emits heat
  • Can rotate tool cupboard after placement with hammer
  • Added Building Blocked zone around Helicopter crash site
  • Must wait 30 seconds to repair a structure after it was damaged
  • Hazmat suit now reserachable and craftable
  • Fixed an exploit near Military Tunnels entrance allowing players to go out of bounds
  • Fixed an exploit inside the Military Tunnels allowing players to build in unintended areas
  • Fixed maximum anisotropic filtering not being set correctly for certain textures
  • Fixed community UI exception
  • Fixed weapon holster exception
  • Fixed HTTP image exception
  • Fixed various Unity exceptions
  • Fixed network stream exception
  • Fixed skin loading exception
  • Fixed planner exception
  • Fixed bloom exception
  • Fixed exception in voice recorder
  • Fixed terrain hole at launch site on Hapis
  • Fixed shelves been placed on Roads
  • Fixed Jack O Lantern can no longer be placed through walls
  • Fixed Vending machine not been destroyed if construction no longer exists
  • Fixed chairs been placed inside trees and clutter (Exploit fix)
  • Fixed not being able to rotate workbenches when deploying
  • Fixed AutoTurrets not losing any health upon pickup
  • Dropbox can no longer be placed under water
  • Fixed Small Refinery not generating charcoal
  • Fixed arrowheads not showing up in outlines
  • Fixed explosive bullet damage being too high
  • Retired viewmodel layer (unused)
 
Сверху