Thursday Dev Blogs & Updates

Remember how we used to release patches on a Friday and then changed to Monday. Well, we’re changing it to Thursdays, alongside the devblog.

The problem with Friday updates is that we lose our weekends because we’re fixing bugs.. and in turn that ruins your weekends of playing Rust because bugs go unfixed, or we patch while you’re playing – restarting servers and in the worst cases wiping.

The problem with Monday updates is that we tell you what’s in it on Friday. If there’s going to be a wipe then playing over the weekend feels like a waste of time – because all your progress is gone on Monday. And no-one really wants to jump on the dev branch because the dev servers are unstable as we need to wipe a lot when testing. So it’s good for no-one.

So we’re trying Thursday. Close enough to the weekend to give everyone something fresh, far enough away that we can patch any game breakers. We’re moving the devblog here too – because that just makes good sense.

Bootstrap Error

A lot of users were getting a “bootstrap error” where the game wouldn’t load, it’d just sit at the bootstrapping screen. This was something blowing up in Unity Analytics. I’ve put a try catch around it, so we should be protected from that now.

Animal Hide Clothing

Xavier’s animal hide clothing has made it in. We have boots, a vest, pants and a poncho. There’s some incompatibilities with the poncho and the vest when wearing them together (terrible zfighting) – but I’ve nudged xavier about it and hopefully something can be done.

Footsteps

Alex has been playing with the footsteps.

He’s replaced all the sounds, and added a bunch of variations for running and crouching. He’s also some a lot of tweaking to avoid playing the sounds when they shouldn’t be played.

I’m sure a lot of people will be glad to hear that footsteps created by the local player are quieter – and are played in 2D so it doesn’t sound like someone is running around you in circles.

Metal Tier

Vince has done an awesome job on the metal tier. The price and health of all of the blocks have all been balanced to suit the new tier.. and blocks aren’t all wood anymore – when you hit a metal block you’ll get sparks, when you hit a stone block you’ll get dust – just like you’d expect.

Raknet

We’ve changed the networking system to use Raknet. This is likely to have fixed a bunch of networking issues people were having, and it’s even more likely to have created some new ones.

Raknet is a really common networking library which was bought by Oculus and made open source. The main difference between it and Lidgren (which we were previously using) is that Raknet is coded in C++, whereas Lidgren is coded in C#. Some people will suggest that this should give us a massive performance boost, but I don’t really agree with that, but it definitely shouldn’t be slower. But we might see other benefits in terms of garbage collection.

Raknet is a tried and tested solution so if something is fucking up then we know it’s our fault and it’s fixable. That isn’t something we had with Lidgren. This has also been a good chance to clean the networking system up in general. We had a few different functions to do the same thing, and some systems that were seriously under-used. Those have all been cleaned up now.

Please let us know if this made things worse or better for you!

Anti-Cheat

EAC have been patching in the background. We were seeing problems with an error about SP2, that’s fixed. You should also be able to play on Windows 10 now.

It’s probably a good time to explain why we have these EAC guys working at this instead of doing it ourselves. We didn’t get into game development to fight these battles. Having a bunch of guys who specialise in this kind of stuff means we can concentrate on game development. Which is where we should be focusing all of our attention. And so far it’s working. There are hacks for Rust – there always are going to be. But there are a lot less hacks for the current version than there were for Legacy.

Something I’ve been considering lately. There are situations where someone will find an exploit, or a way around EAC, and they’ll keep it a secret. Would it be a good idea to start a kind of reward system – where people revealing ways around our anti-cheat solutions would get a cash reward for reporting unreported exploits?

Melee Raiding Balancing

Internally we’ve been looking at how we can better balance the melee vs buildings stuff. When we’re tweaking these values it can be hard to comprehend just what effect they will have. So we’ve been creating some in-editor tools to help us preview exactly what’s happening. This has lead to a bunch of balances on the melee weapons.

I appreciate this is data that the community would like to get their hands on – and there’s pros and cons to that. Ultimately the data will be extracted some way or another, and having a bunch of eyes on it guarantees that there’s less fuckups. But at the same time it takes some of the mystery away from the game, and any change we make is immediately flagged up and reviled against.

Ultimately the pros overpower the cons – so once we have a way of generating it we’ll find a way of making it available, and maybe even tweakable by server owners.

Metabolism

The metabolism hasn’t been working for a while. This means you haven’t died of hunger for a long while.

It’s enabled again now, so you can die of starvation and thirst. The rules are very simple right now. If you have lower than 20 calories or 20 thirst you’ll lose health. If you have over 200 calories or thirst you will gain health. Calories and thirst drop 0.5 a minute. So if you have 80 calories right now, you have about two hours (real world time) to eat before you start losing health.

The calories/health part of the metabolism doesn’t take into account movement (heartrate) or heat or anything like that right now. This is on purpose to see how we feel about the rates before adding other factors.

Localized Damage

A while back we had a system where if you shot someone in the head it’d do more damage than if you shot them in the toe. Then some internal refactoring happened and it didn’t get re-implemented.

Now it’s reimplemented. And it’s more accurate than it used to be. You can shoot people in the thumbs.

Known Issues

Balance is going to be an issue for a while. We’re still shifting values around and seeing what works. As time goes on this will get more granular and less noticeable until we settle.

The upgrade text on the doors is wrong.

Everything Else

  • Fixed black water on lowest settings
  • Timed explosives do a lot more damage
  • Fixed admins not being admins in some aspects
  • Arrows move faster, hurt buildings a lot less
  • Updated bootstrap screen
  • Wooden door key can be burnt in fire/furnace
  • Bullets are affected by drag and can ricochet
  • Bullet damage is based on velocity

Summary

Because of the update date change it’s been a short week (2 days?) since the last update. Luckily we had a bunch of stuff queue’d up and ready to go.

I’m expecting to be doing a lot of debugging over the next few days, just due to the raknet move. But hopefully next week will bring the repair bench and some more stuff from our baseline priority list.

Comments

Comments are closed.