Dev-блог 180

Rust_DevBlog_180_00.jpg

Blueprints 3.0
We, along with everyone else, were unhappy with the state of the game in terms of how easy it was to get top end gear and how little reason to stick around and play there was after you were killed. This has all been changed. The very first iteration of the return of blueprints is now in game.

I'd like to start off by saying that this is in no way feature complete. It's probably completely unbalanced, and there may be certain oversights that have completely broken the game and will require patches over the weekend. Anything you see is not set in stone, especially if it is obviously screwed up, so please don't say we're such morons for making item X cost 90,000 scrap: it's probably a bug or oversight.

We're going to get through this together. Lots will change. Don't be surprised if there is a BP wipe in a month or two, once we get everything straightened out and finalized. With all that said, here's what to expect:

You'll begin the game with some default blueprints, like campfires, furnaces, workbenches and storage (in fact, there are about 50 default BPs which is insane - we need to unlock them slowly from doing simple stuff, like crafting sub-items, but that is another story).

Looting works the same as it did before, except now there is a decent chance that anything you loot (or barrels you break) will drop a full item, such as a weapon or a tool. You will notice that found weapons have very low condition, making their usefulness somewhat limited. The main purpose here is to introduce a source item for you to research.

Once you have an item you wish to learn how to craft, you must take it to a research bench (found in the world, or crafted) and create a blueprint from the item. The cost of doing so is Scrap. There isn't any % chance of success of fail or anything like that anymore. Just a straight up cost to research. Once you have researched the item you can study it and permanently learn how to craft it. Or you can trade it with other players.

Rust_DevBlog_180_0.png

Another element to this progression system is the introduction of workbenches.

Rust_DevBlog_180_1.jpg

They come in three tiers, and they require significant amounts of scrap to produce. They also require the previous tier workbench to craft the next one. So you can't just craft a level three one if you saved up: you have to go 1->2->3. No skipping ahead.

After you place one, stand near it and look for the Workbench status symbol on your HUD. When this is active, you can craft anything requiring that tier and below it. You'll also craft items much faster so long as your workbench tier is greater than what the item requires.

Rust_DevBlog_180_2.png

Rust_DevBlog_180_3.png

Rust_DevBlog_180_4.png

Components can be researched, but they require scrap to produce - in fact they require the same amount of scrap as they used to require when you could create them at the old research tables. They also require a Tier three workbench. I've also reduced the amount of HQM given from components by about 75-80%. This was completely out of whack and I think quarries might be a little more valuable now.

One other change you'll notice is that you can only repair items if you have the blueprint for them. The exception being for items you cannot know, in which case you get a pass. I hope this will prevent people from stockpiling weapons from radtowns and not bothering to crafting them.

I'll be listening everywhere I can for feedback, and I'll be playing the hell out of it myself. I would expect many changes over the next few days/weeks. I really hope this is at least the foundation of what we were all looking for. Progression has been an issue in Rust for about a year and I would really like to get it finalized so we can move on to other more fun and exciting things.

Holosight Fix
I don't know if we mentioned this before, but we fixed the holosight looking all screwy with motion blur on. This led to another bug we noticed this week where anything behind the holosight would not blur. This is all fixed now thanks to Diogo.

Mod Support
Some minor changes to help modders out. Spectators can now use the map, and you can send an RPC to the clients, "craftLevel" with any value other than 0 and everything will be considered unlocked on the client, you won't need workbenches, and the UI won't display workbench requirements or when an item is new.

Vending Machine Changes/Fixes
A few changes to vending machines: they're default blueprints, and they're now way cheaper to build (from 50 high quality metal 3 gears to 20 HQM with 3 gears) to hopefully encourage you to trade a bit more. If an item is out of stock it'll appear as greyscale on your admin list.

Rust_DevBlog_180_5.png

I also fixed an exploit which allowed players to access containers through the side of vending machines.

Raid Balance Tweaks
I've addressed some exploits and imbalances that surfaced after last week's changes to ladders and twig raiding. Ladders can no longer be blocked by concrete, stone or sandbag barricades and high external walls and gates require some padding between them when placing them behind each other.

Rust_DevBlog_180_6.png

Rust_DevBlog_180_7.png

New Road Network
The road network generation has really been kind of shit. Roads were interrupted all the time and didn't connect to each other in ways that actually made sense. This was because it was still based on a really basic graph algorithm from what feels like two years ago. I've started working on a new road planning algorithm a few months back but have been struggling to find enough time to finish it due to more pressing performance and gameplay issues coming up. This week I'm finally shipping the first iteration of the new algorithm.

Rust_DevBlog_180_8.png

Rust_DevBlog_180_9.png

As you can see it now adds T and Y intersections wherever they make sense in order to simplify the road network, just like a road planner would do in real life. The road network no longer looks like a loose collection of tiny road segments that aren't really connected to each other, but instead you can clearly identify main roads and smaller side roads that connect nearby monuments.

It's still far from perfect and there's a lot of work left to do. For one it should really add more redundant connections, even if they aren't required to reach all monuments. This will open up shortcuts and connect dead ends back to the main road in order to form more circular shapes. Then I want to add road connection points to monuments so the generated road network will smoothly lead into the monuments and continue on the other side. That being said, I think this is already a massive improvement over the old algorithm and since the overall length of the road has increased quite a bit it will also give junkpiles more space to spawn.

World Serialization Improvements
I've optimized and improved the format in which we store maps on disk to speed up loading times. This is primarily in preparation of supporting server side maps (think modded custom maps) and the file format improvements will allow me to continue working on this even in updates that don't wipe the servers.

Drinking Improvements
Drinking from rivers and lakes was really weird and buggy, partly because you had to go for a swim for the interaction menu to actually work. It's now all fixed and much nicer to use!

AI
I changed pace a bit this week as the new steering tech has proved really hard to get stable. I have run it through a variety of failed approaches, but I still have another couple of possible solutions up my sleeve. I thought it would be good to put my focus on something else this week.

I revisited the Behaviour AI for animals. Movement and Actions were not run as separate behaviours, which caused animals that would naturally flee to never hit back. That is no longer the case.

Rust_DevBlog_180_10.png

Scientists can now finally shoot animals, and their Navmesh is properly generated over the terrain when there are animals already in the area. Previously it was first come first serve, a glitch in how the custom terrain collision mesh was used, which could cause secondary agent types to run through the terrain.

Finally I started on a bit of group logic, moving towards a light squad setup for Scientists, using concepts from the Steering Behaviour experiments, but in a more confined way.

Snow Biome Improvements
I continued working on the snow biome this week. As you will notice when the wipe hits, the ice lakes will now spawn in the arctic area. They currently serve no gameplay purpose, but they will add visual variety to the landscape. Ice lakes can be built on, so some of you may enjoy the roleplaying possibilities.

These took a little bit more time than I expected, but since it's the first natural monument, I have learned quite a lot while making these, and I will be sure to use that knowledge in the future.

Sadly, the ice bergs and ice sheets didn't make it in this time. They still need to be polished, optimizied, and playtested properly. So far, I have made a set of tiling textures for them that are a mixture of ice and snow. In the coming days, I will focus om getting all ice bergs and ice sheets properly textured, to make them look good from far away as well as up close.

Foliage Shader Revamp
It's been a while since I've worked on foliage shading. Our current foliage shader was built rather quickly, to satisfy immediate needs, and served as a placeholder. Time has come to revisit this and empower artists to deliver better looking vegetation.

Our new implementation has a few improvements over the previous one, like proper two-sided lighting, correct specular and subsurface scattering.

Rust_DevBlog_180_11.jpg
This new shader will be rolled out early next week. Actual transition might take longer since artists will need to review each of the vegetation-related materials and possibly remake some of the meshes. All in due time.

Viewmodel Shadows
I have mixed feelings about this one, but the overwhelming opinion seemed to be that the player's own shadows being cast on the viewmodel (e.g. hands, weapon) had to go away. The fact that our shadows don't look so great in lower settings also doesn't help the argument in favor of having them enabled. Therefore, I took the hint and created an exception where viewmodel meshes don't get self shadows originating from invisible parts of the player's body.

Rust_DevBlog_180_12.gif

Despite moving a step away from "realism", it might actually help gameplay where it matters. Should be less distracting now.

Player Hair
I've worked more on player hair this week, trying to iron out the last bits before its ready to go in game. There's still one major hurdle, and that is getting the hair to fit all the head shapes, but we're experimenting at the moment with morphs/blend shapes which morph the hair models to the right shape.

One advantage of using a system like this is we can also get some variation in the model, so as an experiment I created some different eyebrow shapes that can blend between to get more variety in character.

I've also been working on getting the hair to fit all the clothing we have in game.

Rust_DevBlog_180_13.jpg

Rust_DevBlog_180_14.jpg

We're currently benchmarking these changes this week to see how well they perform.

BBQ
Progress on the BBQ is nearly done. I've just about finished the textures off. Anyway, take a spin below!

After finalising the textures (the face is just temp, of course) I'll move on to LODs and then preppin' the model for integration. You will be able to close the lid, so everything can be stored nice and neat.

Player Animations
I've been looking into using IK to help with foot placement when the player walks on uneven terrain. Unity has some IK functionality that gives decent results, but it still requires a fair bit of tweaking with the animation and the blend between IK on/off. Here's a video to illustrate how IK works on uneven terrain.

There's still a few areas where it looks a bit off, so I'll continue to tweak the animation and IK curves.

Vehicle Effects
I've been working on adding steering animations for when the player is driving a car. There was a bit of a challenge getting the hands to line up properly with the steering wheel, but I managed to get some decent results.

Rust_DevBlog_180_15.jpg

I've also been working on adding surface specific wheel smoke for when the car drives over different terrain such as water/grass/sand/etc.

Список изменений:
  • Added Workbenches
  • Added Blueprints
  • Added ice lake monuments to the arctic biome
  • Added new road generation algorithm
  • Improved world serialization file format
  • More efficient world serialization compressio
  • Improved water map encoding
  • Can no longer block ladders with certain barricades (concrete, stone and sandbag)
  • High external walls and gates require some space between parallel walls
  • Vending machine + shopfront cost reduction
  • Locked all items other than default blueprints
  • Improved bus stop and power substation spawn rules
  • T-shirt/longsleeve much cheaper don't require sewing kit
  • Can only repair items with blueprint
  • Fixed problems with drinking water from rivers and lakes
  • Invisible body no longer casting shadows on viewmodel
  • Fixed ambient occlusion around vegetation
  • Fixed player shadow projection noticeable on ceilings
  • Fixed sky reflection intensity mapping
  • Fixed motion blur ignored around on holosight reticle border
 
Последнее редактирование:
Сверху