We’re back from GDC and slowly easing into work. We have some QOL changes, armour condition tweaks, the first peek at our new arrow heads, and more.
So we’re all back safely from GDC.
It’s been a slow start this week due to jet-lag and come-down, so I’ve tried to add a few much requested bug fixes and QOL changes to soften that blow. Hopefully we’ll be back up to speed and pumping shit out soon, just in time for Helk to take charge for when I’m on paternity leave (due date is May 2nd [I made 2 babies while Rust was still in Early Access]).
Resource & Vegetation Clusters
I experimented with ways to spawn resources and vegetation in a more contextual way. Ore nodes and smaller trees should really spawn around rock formations to give players clear indicators for where they can go to gather theses types of resources. Decor like bushes should clutter around forests, rocks, rivers and roads in a natural way. I think I made some good progress on this and you can expect the first batch of improvements to go live with the next wiping update.
River & Road Generation
Rivers have been pretty boring to look at for a long time now, so I decided to rework the riverside decor placement and the river terrain blending. Some of this applies to roads as well, and while I’m not done yet you should see some decent improvements in these areas with the next wipe.
You can now right-click clothes in your main inventory to wear them. If you right-click clothes while the loot window is open it will copy them to/from the loot.
Inventory UI Sounds
We had a bug where multi-selecting objects in Unity would immediately change data on certain properties, which reset and broke weapon attachment points while I was setting these sounds up previously, so these didn’t make it in when I did the first batch. I’ve fixed that bug now, readded the previous sounds, and recorded and added a bunch more item pickup/place sounds which are all in game now.
I’d still like to record a few more variations, something for bone items, something for sheet metal or thin hollow metal (bucket helmet, coffee can helmet) and potentially unique sounds for some of the more special items like guns and C4, but we’ve got most of the bases covered fairly well already. I like how more more physical this makes handling your loot feel.
I added another racial variation to the existing female set. Here’s the sculpt in Zbrush:
And you can check her out in-engine here:
Player Model Seams
One persistent issue in Rust is the ugly seams that have existed on the player models for quite a while. One of the last things left on the new player model was fixing them, so I took some time this week to address them.
The first issue is simply ensuring that the verts in the body and the head are both snapped to exactly the same positions and have exactly the same skinning information, even then there’s still an obvious seam.
The direction light bounces off an object is determined by two different methods: the normal map and the vertex normals. When a split is created in an object (like the split between the head and the body in the player model) the vertex normals are also split, so these need to be manually averaged.
The new player model uses a separate mesh for the head and body to maximise efficiency and detail in the areas that need them most. I also used separate high-poly models for the same reason. Using this workflow it’s difficult to sync the UVs across two different meshes. I had to bake an additional blend layer in the normals which took care of the last of the seam issues.
tl;dr: I fixed the seams.
Maurino Berry Garry Newman
Now that the rough stuff is out of the way, we started actually designing the XP tree this week.
We’ve gathered average XP earned by players and so far I’ve balanced costs/unlocks up to level 8, (about 4 hours into the game). I hope by this time next week it’ll all be balanced and we can start taking feedback from players who go through from start-to-finish.
The intention is to push it to main as soon as it’s feature complete. We don’t want to push it half done, we think it’s better to have the main branch relatively stable right now. We have also got to wait for Unity 5.4 to stable up too. So right now it’s unlikely it will be released for the April 7th wipe; it will more likely be released nearer the start of May.
There is so much potential for arrows. We can have all sorts of different arrow head tips that can do all sorts of different things. We can have the bog-standard wooden arrow, but also a stone flint arrow head (in the 3d viewer above). We could have a more serrated edge that causes longer bleeding, poison tipped arrows, fire arrows, and more! There’s lots of potential here.
The viewer is showing how I’m going to go about it: I’ll model the arrow heads separately and just plonk them over the top of the basic wooden arrow. There’s obvious room for more modern manufactured arrows, so it’s not all caveman style weaponry.
One really important piece of the audio puzzle is called the mix, which essentially means the way that all the sounds fit together from a tone and volume standpoint. We haven’t spent a ton of time no this yet, because we’ve been focusing on gathering source material and making individual sounds, but we’ve got enough material in game now that it’s time to start looking at the mix more.
I spent time this week doing some prep work that’ll make focusing on the overall balance of sounds in the game a lot easier. Most of our sound design source files are spread across quite a few different files, which is nice when you’re focused on an individual thing like the sounds for a specific gun. It’s not nice when you want to slightly tweak each gun’s shooting sound at the same time though. I’ve pulled all of the audio we have in game so far into a single master project for me to make mix changes from, which included setting up batch exporting in this project that will automatically put everything in the right spot for the game. This means I can really quickly and easily make larger more sweeping changes to the mix without having to dig around in 50 different files and manually export hundreds of sounds.
Just prep work so far, but it’s nice to have it out of the way and ready to go now.
Maurino Berry Garry Newman
We’ve added a very basic system for armor condition. Basically this means armor no longer lasts forever: Instead of just lowering the amount of damage you receive while wearing the armor, it now absorbs that damage and lowers its condition, which reduces its overall protection until it’s broken and needs to be repaired to work again. Right now this is only implemented for the metal helmets. The bucket helmet should save you from a headshot, but will need to be repaired, and the metal face-mask has much higher condition and should survive several. This is super rough but we expect to have the kinks ironed out for next patch.
Added more inventory UI sounds
Right clicking clothes in inventory tries to wear them
Fixed syringe having to be redeployed if using multiple times (modded servers)
Reduced craft time of wooden, barbed and metal barricades
Clamped client.lookatradius (exploit fix)
Fixed exceptions when saving on linux (mono bug)
Fixed locking input if trying to open chat with chat disabled
Armour can lose condition when shot/attacked
Armour can break
Armour protection is relative to condition
Added jerry can worldmodel for crude oil
Eating cans of food produces empty cans (smeltable in campfire)