The new year brings a fresh start for everyone in Rust. This update wipes the servers, including blueprints, and brings changes to aiming, world generation, stability, music, voice chat, and more.
7 January 2016
[soundcloud url="https://api.soundcloud.com/tracks/240769292" params="color=ff5500&auto_play=false&hide_related=false&show_comments=true&show_user=true&show_reposts=false" width="100%" height="166" iframe="true" /]
Hit play to have some atmospheric music play as you read the blog.
We’ve made solid progress on the music system. We can set up different Themes now, which hold a bunch of short pieces of music that make up a song. Those small pieces of music each have an intensity assigned to them, and we use the current intensity level in the game to decide which pieces of music to play. Instead of just using loops we include reverb tails and delays at the end of each of these pieces. This means we can cleanly switch between them in any order we want, which makes quick intensity changes sound a lot better, and will also give us the ability to quickly switch between different themes without having to stop the music or do a cheap fade between songs.
One of the main goals with the music system has been to strike a good balance between having things react well to the game world, and having each theme still feel like a real song with a steady progression through the music. To accomplish this, we allow different music clips to slightly influence the intensity level once they finish playing, so if we have a clip that has a bit more of an energy build up in it, we can make sure the next clip will always have a bit more intensity to it. We’re still testing this, but right now about half of the intensity level comes from the musical progression, and half comes from in game events.
Another thing we’re doing to help push the musical side of this is dividing themes into separate sections, and moving between sections of a theme regularly. In the WIP song at the start of this, the spot where the cellos come in would probably be a second section. Each section still has clips of varying intensity, but will generally use slightly different instruments, which means that the music keeps moving forward and feels like a real song even if nothing exciting is happening around you to drive big intensity changes. Think of sections like a verse/chorus in a traditional song.
Right now all that’s left to do on the technical side before we hit the baseline is to give in-world events control over the music intensity level, and set up the system to switch between themes. We’re going to be looking at things like weather, what biome you’re in, building privilege, comfort level, and whether you’ve got tools or weapons equipped to pick the right theme.
And of course we’ve been working on more music too :)
There was an issue/exploit with the new anti hack player damage verification that it would also verify damage players inflicted to themselves. This occasionally prevented the kill console command from working and could potentially be exploited in other ways, although I think I found it soon enough that no cheat system is utilizing it yet.
While I was at it I also fixed a couple of sleeping bag and roof building block related exploits.
I tweaked some of the viewmodel movements to make the weapons feel a bit more responsive. Things like lowering and raising the weapon while running, raising and lowering to iron sights, and the general swing movement when turning.
I also removed lazy aim. We added lazy aim to try to discourage people from drawing a crosshair on their monitor and rendering iron sights useless. We've decided to come at it from another angle. Shooting without iron sights shouldn't be terrible, but you should always prefer iron sights when aiming carefully at a distance. This is going to be a long term balance thing, we want to avoid using dumb artificial stuff like increased aimcone, but will probably be doing things like slightly less recoil when aiming down the sight.
I added dithering to the shader here to mitigate the banding issue. Here's a comparison.
I adjusted some atmospheric weather parameters to reduce the view distance much more aggressively during foggy weather. Rain now also forces more clouds and fog in order for it to have a bigger impact on gameplay. The weather particle effects still kinda suck, but overall things should be a bit more interesting now.
I rigged up and animated Tom’s salvaged semi-auto rifle. I just need to set-up the world model and it should be ready to be added into the game.
The next version of the procedural world generation (Procgen 11.1) is going live today. It features a nice balance between fixes and new things.
On the fixes side we addressed issues with monuments occasionally messing up rivers, got rid of a couple of situations that could make parts of monuments a bit floaty and redesigned some elements of the dungeons that could get people stuck. We also addressed a number of terrain holes that could happen on certain seeds.
On the feature side server owners will be glad to hear that the seed and salt convars are now correctly written back whenever they’re being filled automatically, which means you can type them in the server console and get the current server seed or salt in case you want to move your save to another machine.
We are also including a visual upgrade that we teased in our previous devblog: rocks and biome textures have been redone. Differences between biomes is now more clear. Like we said in the previous blog as well, the memory footprint of the new rocks has been reduced a lot versus the old ones (Going from 1.1Gb to 120Mb disk usage) and the way things are done overall should ensure that performance gets better. Another side effect of the new rocks is that shapes having changed, they are easier in general to get on top of, which should make rock bases easier to raid.
A good variety of melee weapons are now throwable. Recently I've been getting some two-handed weapons in that pack more damage than their one-handed counterparts. The latest additions to the arsenal of throwables are the longsword, mace & the salvaged cleaver.
If you're paying attention you might have noticed that the branches on the Rust client have changed. The branch previously called "development" is now called "staging". We have a new branch called "prerelease". So here's how this is going to work.
When we're working on bug fixes that should be pushed out as soon as possible, we'll commit them to staging. This means that we can still push smaller, non critical, (most likely) weekly patches out without the risk of breaking anything.
When we're working on slightly larger things, like adding a new weapon or item, or bigger systems such as the level/xp system, we'll put them on the pre-release branch. This allows us to put up some servers to test this stuff - but with significantly reduced stability. We'll be able to wipe whenever we want without having to worry too much.
I have removed the voice chat notifications from the UI. This means that to see who is talking you either need to recognise their voice, or find where the sound is coming from.
I think we can all agree that the notifications were used mainly to find nearby players that were chatting. Even though you couldn't actually hear them you could see the notification and know they were near. Removing the notification feels like it adds more than it removes.
I've added a new notification so you can better see when your mic is live in game.
A pretty big change that we're going to have to keep an eye on. A while back we made it so you couldn't shoot/attack underwater. This was mainly for guns because it felt like it didn't make much sense.
But it makes sense to melee in the water (especially when we have underwater loot), and it even makes a bit of sense to be able to build in the water. So now you can.
After finishing with this week’s procgen stuff I moved on to dungeon art production. I’m hoping to work at an almost constant pace on that task in the next few months (for those of you who were curious how long until dungeons are textured). I will release the content that is ready bit by bit instead of holding off for months.
In the last couple of days I worked on railroad tracks:
I’ve been meaning to balance stability for a while now, but wanted to time it for a wiping update. Well, this wiping update is today. Stability now diminishes somewhat naturally with increasing building sizes, which puts raid towers somewhere between being far less efficient to impossible.
I made a start on reworking the female payer model with the new male workflow.
It'll help to get this blocked out early because I'll at least have a rough guide of where the female model is going to significantly clip through clothing. Certain items of clothing will have to have a unique female mesh (mostly things where the arms or legs are visible) but a lot of stuff should ideally be shared - especially headgear. It's still quite rough and there’s no surface detail, but the low poly/UVs/skinning is all setup for when she's ready to go into Unity. I've also spent some more time going through editing the clothes to closer match the new body.
I finished up some work on floor frames from before the break
I also started thinking about how we can expand on farming
It’s hard to say how complex we should make farming at this point since there's still work to be done with the player’s metabolism, but I think it would be interesting if farming was a mini-game of its own that players could specialize in to feed themselves and other players. I think farms could serve for much more than just food as well, we could obviously add cotton and hemp plants but I could also see crops being used for biofuel and other complex recipes.
Added local player voice chat notification
Voice Chat UI removed
Fixed UI banding
Fixed trees sometimes being missing on first connect to a server
Trainyard dungeon blocker fixed in the central building pipes
Water treatment Plant dungeon blocker fixed where player would get stuck in one of the tanks
All dungeons: fixed major holes in sewers meshes that allowed you to see under terrain.
Fixed monuments occasionally messing up rivers
Fixed random terrain holes that could occur near caves
Fixed monument terrain adjustment sometimes leading to floating objects
Fixed anti hack issue that could block self-inflicted damage
Fixed roof exploit
Fixed various sleeping bag exploits
Upgraded to Unity 5.3.1p2
Switched OSX and Linux to new OpenGL core
Disabled Xmas content
Disabled Lazy Aim
Tweaked Viewmodel animations
Mace, Longsword & Salvaged cleaver are now throwable
Can cook bear meat (and burn it)
Can melee attack underwater
Can build underwater
New biome textures (sand, gravel, stones, rock, road, dirt)
Ocean and river water colour changes
New set of rocks and rock spawning improvements to procgen
Server seed and salt now write back to the convars if filled automatically
Stability now has diminishing returns on huge buildings
Building block placement quality of life improvements
Rain forces more fog and clouds
Rain tends to be more intense when it happens
Atmosphere fogginess reduces view distance more aggressively
Increased Voice Chat quality
If you want to follow this project you can sign up to the mailing list.
We'll only update you about this project, we won't spam you about other stuff or sell your email address.