Press Kit Wiki

Hurtworld Update #24

Cow_Trix

Hey Hurtworlders! Couple of things I’ve been working on over the past week.

Ambience and Music

I’ve been setting up the infrastructure to do more complex ambient sounds, as well as some music tracks. We’ve got at least 2 ambient tracks per biome, one for day and one for night.
This meant a bit of refactoring of how we create the soundscapes of Hurtworld. What seems on the surface like a pretty easy thing gets complicated fast once you start digging a bit. For instance – it starts raining, which makes noise. You can just overlay the rain over the ambient sound, but this ends up being a bit of a cacophony. Optimally, as the rain gets louder, we want the ambient sounds to get quieter. We’ve got a finite amount of volume to give to all ambient sounds, and we need to figure out a way to share it out.
So, the new architecture gives ambient sounds three options – Greedy, Normalize, or Overlay. Overlay is the simplest – this doesn’t care how loud other sounds are, and other sounds don’t care how loud it is. We use this for things like the irradiated effect. Normalize means that the sound should try and fill whatever volume it can, but it should never reduce the volume of any other sound. This would be all ambient background tracks. Finally, Greedy would be the rain, which consumes whatever volume it wants and leaves the Normalized sounds to fight over the scraps.

I’ve also been adding in some music tracks, which will play randomly every so often. Don’t worry, there’s a volume slider if you’d rather blast some death metal while spearing nakeds. All in all, these new sounds add a lot of atmosphere and ambiance to Hurtworld.

Exploits

Hurtworlders love to break stuff – which is great! We’ve come a long way in fixing exploits since release, and we owe that to the community for finding and reporting these. Remember that time you could double-jump by opening your inventory? The series of events that made that possible in our code was… pretty mind-boggling, and we may have never found out about it without your help.

It turns out that there’s one scenario that creates exploits a lot, and that’s whenever you transport the player. This happens a lot in vehicles.

So, a simple scenario. You’re on a goat, and you decide to get off. This is basically a teleport – you just kinda poof off the goat, and appear somewhere else. But where do you appear? It’s a simple problem when your surroundings are simple – say, you’re just on a flat surface. Just appear next to the goat, problem solved. As your surroundings get not complicated though – say, a bunch of rocks, buildings, etc. – there’s a lot of trickiness introduced, and it’s difficult to always answer that question properly. When it gets it wrong – say, teleporting you halfway into an object – that’s when exploits happen.

I’ve been making this system a lot more robust so this can’t happen. This means, however, that there are some situations where there is no good answer to where you should exit. Say, if you’re completely surrounded by walls. There’s nowhere to go, so what do you do? Easy, right? You just tell the player that they can’t get out. Problem solved! But wait – there are situations where the player has to get out of the vehicle. When you disconnect, or the vehicle is destroyed for some reason, you must exit, because its nonsensical not to. Really, the only solution to this is to kill the player when they end up in that kind of scenario. And I mean really, if you’re trapped that bad, you’re probably going to have to suicide anyway. The moral of the story is – don’t disconnect when you’re in a vehicle.

We’ve also had some reports about sneaky people getting under the terrain! Fortunately, it’s pretty easy to check for this and just kill the player.

Spencer

This week I put the finishing touches on the Map SDK which is now live. This isn’t much use without a tutorial on how to use it, so I’ve been also recording my first dev videos and uploading them to YouTube. Definitely not my forte but I’m sure they will get you started on using our toolset.

Getting the SDK

The SDK is downloaded through Steam under the Tools section of your library. I am currently working with Valve to ensure everything shows up as it should, if you can’t see it now give it a couple of days.

To use the SDK you need to first download Unity 5.3.2 P4. To build maps you need to make sure you tick the Windows, Linux and Mac Standalone support in the installer (not enabled by default).

https://unity3d.com/unity/qa/patch-releases

Usage beyond that can be found in this video series:

YouTube / Hurtworld – via Iframely

The focus on these videos was not to tie up too much of my time editing and rendering, so excuse the roughness. The final part of the quick guide is rendering now and will be added to this playlist tomorrow. I have a new found respect for youtube / streamer fam as I now see how much work it is to plan record, edit, render and upload a video to YouTube!

Infamy Stuff

Going through all the infamy stuff this week was pretty time consuming, I appreciate everyone’s input on the discussion. I feel that writing it out in a blog was useful for myself to lay out the next steps to take with fixing the problems.

I have a pretty clear idea of what approach we need to take, some things pretty drastic, I am keen to get back to working on it as soon as we get the engine upgrades and current patch cycle released.

Server Perf

I’ve seen a few posts about server performance getting pretty shitty on the infini wipe servers. This was expected at some point, we are now 26 days into the wipe schedule, far longer than ever before. There is obviously some areas we need to look at to ensure perpetual servers are sustainable, we will be looking at that this week.

When’s the Patch?

There won’t be a patch this Friday as there are still a lot of things that need testing. The patch won’t require a wipe when it hits, so I will aim for mid next week.

Gavku

We are big fans of the Skoogler, so I did an extra skin, making a version that gives it a more dirtied up, slightly diseased look. Such a filthy Skoog.

DirtySkoog

I have now moved on to a new creature, who is sort of a monkey/bat hybrid. Hopefully they will have fast movement and a decent sized leap, allowing them to both chase down players and also attack via leap/harassment. We want to make the critter something that players will think twice about engaging. Potentially making it nocturnal giving it it increased stats or perception etc during the night………….I also think some sort of Howler Monkey esq sounds as they chase players down might be cool.

MonkeyBlog

We’ve been pumping out creatures while we still have our creature animator full time. That role will hopefully be transitioning into a programmer so we can through the bottleneck of game mechanics work.

battlemu1e

Not much from me this week. After spending some time in official servers over the last few weeks I have been hanging out in community servers this week meeting players and making contact with server admins. During this time I have been amazed at the creativity and community surrounding the servers I have visited. I have seen events ranging from deathmatches to dodge ball, taken part in a purge and have seen player structures varying from castles to pyramids. It is always great to see the different ways players are having fun in game.

On the other side of the server list I have been monitoring official servers. Last weekend full loot servers went infini wipe leaving 14 day servers as the only servers with scheduled wipes. The next scheduled wipe for these servers is at the end of the week and there won’t be any changes to wipe schedules or server numbers as part of this.

As always I’ll be in and out of servers so if you see me in game feel free to say hi!

Mils

Destruction is my name this week. These individual rubble pieces make up the bulk of the rubble. By making a few detailed bits at the start I can then stick them together in a variety of ways to form unique looking piles.

Rubble02

Rubble01

I made 3 Normal mapped blobs of geo after to stick the individual pieces into. I think 3 piles will give a good variety which I can then smoosh together and scatter around to create more individual shapes.

Rubble04

Rubble03

These have turned out quite well. I will be breaking more of the city moving forward.

Infamy – State of the Union

jitsuin requested a dev response to the infamy questions. Its about time we addressed this and my response became so large it deserved its own Devblog.

Lets start with the logic behind infamy

One of the main goals of Hurtworld was to create a survival progression with something closer to that of an RPG. Where once you can handle the starting area, you get some more gear and move up in the world, find better stuff, keep going. What we have currently is a prototype of this progression, it works in some cases and not in others. Once we can get the formula right we plan to create many more tiers of loot and PVE challenges.

The more you let a player progress while still in full loot, the more they have to lose. Add on to that fact that in a PVP environment, a death can be caused by wrong place wrong time and there is nothing you can do about it.

So we have established that we have players carrying possibly weeks of progression that could be lost on death, and being killed could be caused by no fault of their own.

Lets look at ways that other games deal with progression loss

Rust: Materials for a full kit of gear can be farmed relatively quickly, the main progression here is blueprints. If you have the blueprints, even from a fresh spawn you can get back up to speed quickly. Towards end game, items you are holding generally don’t have any value, meaning a death doesn’t set you very far back. Being raided is a larger setback but still doesn’t take away your blueprints. Blueprints look to be replaced by MMO type levels soon. Levels will have the same effect as blueprints, progression that can’t be looted on death.

Day Z: Gear is easy come easy go, a lucky run through Cherno as a fresh spawn can kit you out completely. Death truly does lose everything but the progression ceiling isn’t very high here (based on my time playing the mod, not sure how it is now)

Ark: Though I have never actually played this, my understanding is much of your progression is tied to the level system. PVP seems to play out much like an MMO where higher level players will always win against lower level players. Gear doesn’t seem to hold a great deal of value.

Where does Hurtworld store progression value?

Currently in Hurtworld I would say on average 70% of progression value is stored in gear, 30% stored in your base. Nothing is bound to your character. The reason full loot sucks in Hurtworld, is that losing 70% of your progression (which could be weeks of work) in a single bullet to the back of the head isn’t fun. Its not hardcore, its just stupid. We store much more progression in gear than other games, nothing is secured in your character. Our progression is going to get much deeper and its already too much to lose in one death. Full loot is not the solution!

Lets separate the 2 parts of infamy as they are unrelated

Although these are tied together under one system, there is really no need for them to be related. Our two goals for infamy are:

Punishment for death

People should always fear death. Currently sometimes they do not, this needs to be fixed. However they should not fear death so much that there is no point to living. Investing in progression is pointless if you can’t secure it to a point.

Punishment for murder

The decision to kill someone should come at a cost, this cost should always be lower than death, but never become trivial. This is broken because the punishment for death is usually too low. The prospect of losing a core piece of gear is usually far worse than losing what you have gathered this farming run.

This is a consequence I didn’t foresee

Given the fact that the value of your gear constantly increases, a single farming run diminishes in relative value the further you progress. Meaning the cost of death with no infamy decreases vs the cost of losing a piece of gear due to gaining infamy. AKA Shooting someone sometimes costs more late game than death. This makes the formula above much harder to balance.

The second factor at play here is that with no infamy and all materials banked in your base, death has absolutely no punishment. This needs to be fixed first.

How do we fix it?

We have a few options here, we will probably require a mix of the following:

  • Add more or an altogether different penalty for death so regardless of the situation, you don’t want to be killed. Ever.
  • Change the penalty for murder to something that doesn’t benefit the person being killed. It was a nice perk that an infamous player would become a target to gain items from, in practice it rarely plays out like that. It would probably work better if the penalty didn’t benefit anybody else like it currently does.
  • Reduce the penalty for murder late game, we aren’t trying to discourage PVP
  • Shift some of the progression value from gear to another place like your base, then making players drop more items on death, as losing less progression value wouldn’t be as devastating. This would give players of a similar progression something to gain by killing each other that might outweigh the murder penalty. If balanced right, the murder penalty would be more expensive than what you stand to gain from killing fresh spawns. A problem this opens up is that progression invested in your base can be shared across teams (investment in production facilities etc), giving large clans a big advantage. We could add machines that can only be used by the owner, however as the reasoning for this isn’t clear to the average gamer, we would be barraged with “Why can’t I use my friends C&C machine, this is stupid!?”

The important thing to see from this isn’t that any of these things are the golden bullet to the problem, but that there are lots of complex elements at hand. Every choice a player makes in the game comes down to priorities. The questions we care about here are: “Is it worth shooting this person in the face?”, and “Death, am I too afraid of it or not afraid enough?”. Most of the suggestions I see are only valid for one scenario, and would be exploitable in another. A balance that works for early game will likely be totally broken late game and vise versa. Something that works for players with full gear will likely be broken if someone just runs around naked with a single weapon. Something that works in a 1v1 situation will likely be broken in a 1v5. Not everyone plays the game the same way you do.

We need good feedback on these systems, not knee jerk reactions to patch notes. See how something plays before giving your opinion, and please give it in a way that doesn’t make us dread reading feedback.

We will be adding in changes to address the above points over time, its not going to be perfect over night. Its an iterative process, good games take years to build, not weeks.

Hurtworld Update #23

 Cow_Trix

New Sounds

We’ve got a whole bunch of new sounds coming soon! New ambient soundscapes, impact noises, creatures sounds… Expect everything to have a good going over. We’ve even got per-biome ambience!

AFK Kicking

One of the big problems we’ve had with official servers is people going AFK (most of the time to reduce infamy). This frustrates a lot of people trying to join busy servers, and rightfully so. Hurtworld will have in-built AFK kicking in the next patch! Players will be kicked when inactive for a set period of time, by default 30 minutes. This should free up servers a lot, and means that the player count you’ll see on a server will always be active players.

Changes to InfamyINFAMY

Previously, being killed by someone while you weren’t an Outlaw would reduce your infamy. Talking about this part of the mechanic, we couldn’t really find a justification for it, and it creates a situation of players being used for infamy sinks. This is when one player murders another over and over, to reduce the latter’s infamy. You still won’t gain infamy from killing Outlaws, and you’ll gain less if you kill someone who has some infamy.

We’re also making it so you can see if a player is an outlaw, which is related to a new cool system I’ll talk about below. Outlaws will now have red nametags, so ya might want to think twice before trusting those people. Not that you trust anyone in Hurtworld, of course.

As I briefly mentioned, the afk kick should impact infamy as well. No longer can you just afk it away.

I infamy is a touchy subject for a lot of people, these changes are just another iteration. We will keep tweaking it until it works for everyone.

Player Effects

Currently, there’s no real way to tell what’s happening with another player, in regard to their stats. Are they cold? Poisoned? On fire? Unless you asked them, there was no way to tell. Coming soon will be effects that show these things happening, which will make setting someone on fire just way more satisfying. This system is shaping up to very extensible as well, and I can’t wait to push it to it’s limits. For instance, the infamy nametags are implemented with this system. Or, we could make it so you could set machines and creatures on fire! Or poison them, irradiate them, hell, even get them wet – and now we can give visual feedback on all of these states.

Burn baby, burn!

Burn baby, burn!

Spencer

This week has been mostly a continuation of map sdk for me. While I would love to have some new shiny features to show off each week, some things take a bit more time. Only working on tasks that fit into a weekly schedule would massively hinder what we can achieve. I know you guys are starving for new content, know its coming soon.

We found some big regressions in Unity 5.3 that made vehicles undrivable which is now fixed, and a few more issues around compilation and dependency resolution of shaders in asset bundles working on different platforms. Nothing too exciting but a roadblock we definitely needed to get through for the SDK.

Everything appears to be stable in 5.3 now. I am in the process of updating our build server so it can handle building of the SDK bundles and maps from separate projects which should be done by tonight. If nothing new comes up I should be able to put a new SDK steam branch out tomorrow.

SDK Documentation / New map project

Probably the biggest piece of work left before you guys can start making awesome maps is me documenting the map making process. To make this project a bit more fun, and likely a lot more usable for everyone, I’m not going to be writing massive Wiki pages on how everything works. Starting this week I will be starting a series of screencast / youtube videos where I will create the second official Hurtworld map using only the SDK tools you guys will have access to. Once completed the map will be released as an official map.

The first episode will be a crash course in getting from concept to gameplay in 20 mins or so, then we will look deeper into the more powerful tools that are available inside our Shigitools package.

Once basic documentation is down, I will start work on the engine to Steam workshop integration allowing people to join servers and autodownload the latest version of a community made map.

Dazzler

I have been chipping away in animation land this week. 1st task was setting up explosion ragdoll parts for the two insects, so that they give a satisfying ‘splat’ and send arms/legs/heads flying. Next was a redux of the bow sighted animations so that they do not obscure your target. Lastly, I have rigged and begun animating the cat that Gav showed in the previous blog. Looking forward to seeing it hunt! (funny co-incedence… the gyfycat came out as “PlumpWelloffCreature”… pretty apt for a cat 🙂 )

 

Gavku

Ok look. I read the forums. I read reddit. So I know what everybody has been asking for since we first launched. We have unfortunately been way too busy to act on these community demands. But now, finally, I had some time to create what Hurtworld has been sorely missing……….

I made a Skoogler!!!

SkoogMUD

Its design is based on large birds like the Cassowary, as well as prehistoric winged raptors. Its main attack will most likely be trying to disembowel players with its taloned feet, probably by leaping towards them. It will also have a limited flight ability, maybe something similar to say a chicken, where it wont be off soaring the skies but can glide and use its wings to cover short distances quickly.

SkoogMAX

Mils

Working in the city…

So I’ve been building the modular road and sidewalk part of the cities this week. It’s looking and feeling quite good. This should be able to handle most grid type road structures. There are now around 70 – 80 individual meshes in the city now. My layer palette in Maya is getting a bit owned .

CityRoads2

CityRoads6

CityRoads4

CityRoads3

Note that some of the surfaces don’t have specular (shiny) values so don’t look as snazzy as the the rest. I thought it better to get the look right first.

I think adding some old broken garbage bag piles, rubble piles and whatnot should give it a lived in feeling. Some planter boxes, garbage bins and smashed up stuff would be good.

This would be an ideal place to get cars, perhaps we will split the car spawns and loot crate spawns to the different areas? Not sure as yet though.

CityRoads1

CityRoads7

Dev Blog