Press Kit Wiki

Hurtworld Update #61

Spencer

Fairly slow progress this week due to end of year stuff. I’ve been madly fixing bugs to get the deathmatch preview into a not so shit state… its getting there, but still a long way from being production release quality. Either way, I promised I would release it before the end of the year so I will open the ItemV2 branch and spin up some servers for you guys to have a play around with over the xmas newyears break.

Keep it mind, heaps of stuff is still broken, we will be constantly iterating over the ItemV2 build in the coming weeks. You can consider it our public test realm, we will expand what you can get your hands on as we flesh out features.

The current build will stay as is on our default branch in steam, you can keep playing that without doing anything. If you want to check out the ItemV2 test servers, you will need to switch to the ItemV2 branch. This can be done under the Hurtworld properties in Steam, under the betas tab. Note: You will have to switch back to the default branch if you want to continue playing on existing survival servers.

New Skybox Stuff

The ItemV2 preview build contains the new skybox and lighting system. As we aren’t sure exactly how this will perform we have added a configuration setting under options, which will allow you to switch back to the old skybox if you have performance issues. We recommend everyone give the new model a try (Tenkoku) and report via the forums if it causes large FPS drops.

Bug reports

I have created a new ItemV2 feedback sub forum on the steam discussions here. Feel free to post any feedback or bugs you encounter. This includes feel of guns, crashes, and anything else you think we should know.

Known issues

Sound is really broken right now, I need to write a system that can re-route audio sources from our content projects into our game mixers. Don’t have time to do that now, so some sounds won’t obey the volume controls. Will fix that asap.

Update:
Been waiting on Steam to come back online so I can push out the update. Its now 5am here, need some sleep. Will check back tomorrow and try to get things rolling.

Mils

I have been pumping out some more weapons ‘a la greybox’. I came up with a Pump Action Crossbow and a Semi Auto Pistol. I have also been iterating on the Assault Rifle also, which is getting closer to a more final design. I’ll let the images do the rest of the talking…

crossovr04 crossovr02 crossovr01 buta02 buta01 assualtrifle_0000_layer-2 assualtrifle_0001_layer-1

Gavku

So I rounded out doing 4 hair sets for our female hair. These being a ponytail, spikey style, flat/short style, and a mid length style. Here are some images of the sculpts, and then their corresponding game mesh’s sitting in our mesh viewer ( with in unity )

ponytailpic

spikepic

flatpic

girlypic

hairlineup2

Tom

Last week after fixing a few bugs left in the construction system in ItemV2 I moved on to working on the melee items like the spear and the axe. With our new item simulation layer it’s a lot easier to make items do complex things so I’ve been experimenting with some new melee mechanics.
First up is a new combo system, upon landing a hit players are given a small window to hit attack again to move to the next step in the combo, attacking too early or too late closes the combo window so spamming attack won’t work. Currently I’ve setup a spear combo that loops around on itself increasing in speed every step of the combo eventually getting too hard to maintain. I also want to make the attacks increase in damage but need to add in some back end code to make it work which I’ll be doing this week.

I’ve also been playing around with charge up attacks where you have to hold down attack to build up power and release at the right time to get the maximum benefit. This works similar to throwing dynamite except I’ve set it up so you can overcook it and then it will either start looping again (meaning you have to wait again to build power) or just have it run the attack without the boost. We can also set it up to branch into different attacks depending on power level and/or mix it up into the combo system as well.

Another possibility under the new system is taking away control from the player briefly and letting animations move and rotate the player. This allows us to do some interesting moves like big leaping attacks or sprinting charges.

This week I’ve got some more things I want to try out with the melee system, creating some animation driven attacks, creating a state machine action to force a quick blend in and out of third person perspective so we can show off flashy moves and also save on not having to animate first person perspectives for all attacks. I also want to experiment with how melee hits register by creating a different kind of attack event that will run over multiple frames but only be able to hit a character once, this should allow us to have more accurate hit detection for melee weapons.
I’ll also be putting these mechanics together into a few items so they can be tested in the deathmatch build and we can find what works well and what doesn’t.

Hurtworld Update #60

Spencer

Closing in on the deathmatch build this week, we’ve been hammering out some play testing and having heaps of fun. Getting pretty close to something releasable.

Lighting / Skybox

Since the migration of all our lighting settings over to ItemV2, we upgraded our Skybox plugin to the latest version. Our of the box the lighting settings are not great, I managed to get our early access release looking decent by countless hours of tweaking. Since the upgrade to the latest version, all the configuration settings have changed, and the calculation model is completely different meaning all those finely tuned settings are now useless, hence why our screenshots of late have had pretty rubbish lighting.

While deciding whether we should downgrade back to the old version or not, I dug around a bit for new solutions that have come up since our initial build. What I found was an amazing asset called Tenkoku Sky which out of the box looks absolutely amazing. I spent a day having a crack at implementing this to link into our biome and lighting systems and it ported across like a dream thanks to some awesome work cowtrix did abstracting our old skybox with some neat ahead of time compiled logic.

Not only was I able to quickly switch to the new skybox, I was able to leave the old skybox intact as a fail safe if performance of Tenkoku sucked on lower end machines.

Here is a before and after screenshot of old and new skybox in action around the same time of day:

oldsky

newsky

Another awesome win we got from this switch was the skybox and lighting play Heaps better with our water plugin:

waternice

watersunset

Deathmatch Preview

Lastly I’ve been madly building a tuning weapons for the ItemV2 preview deathmatch build. We’ve been having a heap of fun playing with them, and can’t wait to get your hands on it. Just a few last bugs to iron out.

Cowtrix made an awesome TDM map this morning out of a section of the city. Here is 10 mins of unedited footage from this morning of Tom mopping us all up 🙂

Mils

Greybox sights have been my world this week. So far I have made some of these very similar to real life, some I made up. I tried to follow the engineering techniques/style that real life sights follow. We had a play with them on Friday in the ever-evolving Deathmatch map and damn some of them feel really good. The new gun systems Spencer has been working on, combined with the new sounds has made these guns really start to come alive. I had a lot of fun shooting my co-workers. The image below shows the sighted and unsighted view the models.

greyboxsights01

Tom

This week I’ve been working on getting construction up and going again in ItemV2. It was the first time for me going deep into our construction system internals so I started out with recreating basic machine placement by implementing the campfire.
This led to finding a few bugs in our revamped entity stats system that I’ve patched up and now campfires are working correctly and we have a basic construction prefab item component to allow items to place construction prefabs into the world.

After this I did some more work on the mesh baking system, fixing up a problem with normals and tangents not being transformed correctly and streamlining the workflow a bit by saving static mesh offsets and allowing new static meshes to be baked from an existing reference rather than having to be aligned with the skeleton.
Then I was on to recreating the construction hammer, luckily I could use a lot of the logic from the basic prefab construction component, the main change was just driving the prefab selection from the client side construction ui menu. The rest of the work was recreating the various materials and resources and updating the construction prefabs with references to the new items so they could resolve their costs and refund amounts properly.

Today I’ve been fixing a few remaining bugs with the construction hammer refund costs and creating the rest of the construction prefab items (storage chest, ownership stake etc.) which is super fast once the first one is figured out, just a matter of cloning then renaming things and setting up the prefab reference.
This week I’ll be continuing to implement our items from the live build, next up should be the spear so it’ll be ready for the deathmatch build!

Gavku

So I have continued exploring character stuff focusing on a female in particular. I created a female head piece which seems to look ok so far. I have also made a few hair pieces starting with a couple of shorter styles.

female_sculpts

female_unity

After texturing up some hair we will have to make an evaluation of her in game and see what sort of body tweaks we can get away with.

Cow_Trix

This week I started off by extending the biome framework to allow for skybox modifiers. In simple terms, this means that biomes can now change how other biomes display. For instance, now you can make a biome that instead of setting the sunlight color directly, just darkens or lightens whatever the light color was going to be. To do this I extended the skybox Ahead-Of-Time compilation framework, so it will reflectively look at the skybox configuration classes and figure out what needs to be done to provide serializable modifiers for each variable. As Spencer may have mentioned, he has been playing with Tenkoku sky, and it was pretty much plug-and-play for swapping that system over, which I was pretty happy with. Spence just had to tell the AOT framework to create “stack” classes for Tenkoku, and it went and generated a whole bunch of modifiers for it.

todmods

Tenkoku raised some annoying render bugs with transparent objects and image effects. As anyone who has delved into the Unity render pipeline can tell you, things like screen-space fog and transparent objects can have a… tricky relationship, especially in deferred rendering. Transparent objects do not write to the depth buffer (and rightly so, as otherwise the objects behind them would not be rendered). However, screenspace fog uses the depth buffer to calculate how far away a pixel is from the camera, and so it ends up seeming like transparent objects are floating above the fog. Now one method of solving this is just telling the screen-space ambient effect to draw after transparent objects. This solves tree billboards not fogging perfectly, as we can get them to draw to the depth buffer. It even solves the issue somewhat for water, but not quite. There are still some issue with the depth buffer here, obviously, that need fixing.

I’ve also been iterating over the forest, trying to get some interesting rises and falls in the terrain. Check out some screenshots.

forest forest2

Hurtworld Update #59

Spencer

Good progress this week, but before I get into it I should probably talk a bit about scheduling of big updates. I have mentioned vague dates we want to release by in the past, we were originally aiming to push out the full ItemV2 in December. As we still have a truckload of stuff to do, so December isn’t going to happen 🙁

What I will commit to is ItemV2 deathmatch before the end of December, it’s starting to feel really nice, and once I add in the last few features to weapons we will throw out a build and constantly iterate over it. We will be posting out polls to get some feedback from you guys on what you like and what you don’t.

The full ItemV2 still requires a lot of work, as we have massive plans for it. Its really going to be closer to a sequel than a content update, and we don’t want to cut our scope short after pushing through the hard parts. Another factor here is we know how much everyone loves to hit the ground running when a big update drops, discovering stuff first, bringing back the competetive spirit. With that in mind, we don’t want all our new systems to fall over under the stress of an influx of players old and new. Thats why we will be releasing smaller chunks to battle test them before bringing it all together and really pushing the marketing side to let everyone know, we’re ready for them.

We’ve been quiet while developing ItemV2, and you might have noticed we haven’t gone on sale for a while. We think now isn’t the best time to pickup Hurtworld. We have so much awesome stuff almost finished, we want to stay under the radar until ItemV2 is ready to go, at which point we will be going full ham on the hype train. We expect this to bring in more players than we have had before and we will be much better equipped to deliver frequent content to keep everyone focused unlike our EA release.

We appreciate you guys sticking with us while we get our shit sorted. And those who haven’t, we love you anyways 😉

Week Progress

Now onto this weeks progress. I started with working on the damage feedback layer. Firstly by re-implementing the directional hit indicator, then enabling the outer screen non directional indicator for directional damage also. Lastly I added in the new camera spring force procedural animation which depends on direction you were hit from to give more instantaneous info when hit. Not only will it grab your attention, but also tell you the direction the hit came from. Damage in the below video is being caused by a Testing Creature i created to spam me with damage. The impact force will also scale with the amount of damage that the source did to you. The below shows damage of 1/3 your HP bar indicating a large hit.

Next up I started integrating the grey box weapons Mils has been working on. The idea behind the grey boxing is to test the overall feel of the gun shapes and sightes without going into high detail on the models, so we can rapidly iterate over them. While doing this, I implemented the bolt action properly inside the ItemV2 framework. The state machine layer allowed me to do some stuff I’ve wanted to fix for ages. I’ve decoupled the bolt pull from the fire animation, meaning the gun keeps track of a bullet in the chamber. If you sprint right after firing, you will still need to load another bullet once you stop sprinting. It also didn’t make sense that you would bother doing a bolt reload before a clip reload, as there is nothing left in the clip. The player will automatically go into the reload animation without a bolt reload once the clip is empty making it feel a lot less clunky.

Next I built a method for guns to adjust their FPS viewmodel depending on the sight position without requiring us to build new animations. This allows us to generate a weapon of any configuration, and simple push around the fps viewmodel proceduralally so the sights always line up. Part of this phase is to get a feel for what is good in terms of sights for different weapon types. We deliberately made the stock sights for some of the weapons suck, so there is more insensitive to upgrade them later on.

Here is a few in action:

 

Lastly I spent a bit more time on the new audio layer and implemented a way to trigger audio for player animations like equipment and footsteps that doesn’t rely on horrible Unity animation events. We are now using StateMachineBehaviors, which seem to fit the task perfectly, and allow us to do more inteligent things like stop a long running sound if an animation is stopped half way through. To finish up I built a audio test bed for authoring sound effects that will ship with our SharedSDK, making it much easier to create good falloff curves and ensure sounds aren’t audible over dumb ranges. The weapons are the first things using this system, and Its an absolute dream to work with compared to the Unity AudioSource + Clip system. Something simple like a gunshot being audible over 200m, but the bolt reload only being audible over 20m requires no work at all. And doing things like playing different clips when the sound is further from the Camera can be done purely in configuration without the equip layer knowing about it. Expect our audio stuff to get a hell of a lot better.

audiotestscene

Mils

pickaxe_0004_layer-1 pickaxe_0003_layer-2 pickaxe_0002_layer-3 pickaxe_0001_layer-4 pickaxe_0000_layer-5

Between greyboxing the new weapons and getting used to the process of adding Static Meshes into the project I had a crack at some concepts for the Pickaxe.

I started out with a few different variations to get a feel for what we wanted. After that we narrowed down the way the parts would work together so that the thing could actually be built. In the end it’s like the gun component system with fewer parts.

Cow_Trix

Hey folks. I started off this week with some heavy modifications to the macro map generation, as we weren’t happy with the shapes it was creating. Previously we were generating areas “hill-in”, where we laid out lines where the hills would be generated and the valleys ended up being the negative space between these lines. However we found this led to some undesirable things like very long valleys, or large areas without any significant valleys. So the shift in logic was moving to a “valley-in” generation logic, where we allocate space for the central valley areas and then fill in the hills and mountains around them. This worked pretty well and the maps feel much better laid out now.

We’ve been iterating over some other biomes, mainly the forest area. This has been interesting figuring out what makes that biome feel different, and we’re trying to open up the area, play with the noise a bit, and get it feeling both unique and interesting.

forest1 forest2 forest3

I also made a cool gif of the map generation process so that you can get an idea of what we’re actually doing here under the hood.

Map:

I also have been changing the way the road system works after some feedback, so it is now a destructive process overlaid over the generated terrain. As well as this separation from Map Magic, it’s now asynchronous! Which means it won’t freeze Unity for a few seconds every time you want to rebake. This was a fun challenge and I’m pretty happy with how it turned out. One of the bigger things was that it’s tricky handling the data when it lives in the Terrain object, as it’s a C++ object that you can only pass information to, not hold a .Net reference to. The solution to this was to create a simple wrapper for the Terrain object that lives entirely in C# land, which we can do things like keep references to and treat as a cardinal dataset. The road tool just keeps getting more awesome!

Roads:

Tom

Last week after finishing up on 0.3.8.1 I’ve moved back onto ItemV2 and getting vehicles working under the new item system.
This has involved writing lots of new item components and adapting the mesh baking system to accommodate vehicles.
I’ve added a way to override bones when passing meshes into the mesh baking system, this allows 1 mesh to be used for all wheels easily and will allow us to do other cool stuff like attaching guns and tools to the player if they aren’t selected but are equipped in the hotbar so you can see what setup people are using.
I also developed some item components that change what they attach depending on the slot they are equipped to, this is used to handle things like vehicle doors (1 item but different attachments for left and right door) and the kanga wheels which use a different model for the same wheel depending on front or rear slot.
We’re now at a point where vehicles are equivalent to live with all the vehicle items reimplemented which is going to help us a lot for nailing down the feel of the new map generation tech Cow_Trix has been working on.

This week I’ll be going through reimplementing the rest of our items from live starting with the construction hammer.

Gavku

So I am going through and still working on testing out new models for different player characters. We’re hoping to have a decent selection by the end resulting in a variety of player types rather than the same old guy running around. Included in this I will be having a crack at a female character and seeing what we can get away with in regards to workload vs a decent result.

asian_mud2_screen

asianhead_max

x

Dev Blog