Spencer
Hey guys, apologies for the blog not getting posted last week, I usually publish it and was sick last week. So the following is 2 weeks rolled in to one.
Using Legacy as a Baseline
This week I’ve been playing a bit of legacy and getting a good contrast of where we are at now with experimental vs legacy. There is definitely something to be said for the original loot tables, damage, progression and stats that we iterated on for some time before releasing Hurtworld to steam. This is a treatment our experimental branches don’t get at all due to us trying to design a full progression from scratch a lot of the time in a week. While this serves its purpose for testing an idea out in a really rough way, it often clouds our judgement on what works and what doesn’t due to the imbalances in the basic metagame.
Now that we are moving back towards something closer to legacy in terms of structure, I’ve decided to bring back the loot, crafting, damage and stat balance from legacy to use as a base that we can iterate one from a more predictable base. This also makes a shift in our goals for Experimental, we will now focus more on the sustained play-ability of Experimental to up the progress towards replacing legacy.
I feel we have now learnt enough from our experiments to properly solve the major issues with legacy. Namingly: Infamy / Death Punishment, Camping Hotspots, Reasons to wear gear.
Timeline
I’m 70% of the way bringing experimental in line with Legacy, we are currently testing a new valuable gear protection mechanism to work in the place of infamy to allow us to A) Abolish durability, B) Bring back expensive to craft items. I will go into this more in next weeks blog.
The office will by at minimum capacity over Christmas / New Year, I would expect us to have a pretty solid build in early Jan.
Merry Christmas Yall!
Mils
Good news! The Recurve Bow textures are finished! This last set has really come out fit for a king. The combination of wood, steel and ivory have combined really well to give that luxuriant feel. Now we will need a pompous set of clothes to go with it. I am very happy with how this came out. I was a bit worried that this set would look a little less interesting than the other two, but with the addition of the ivory lions head and the filigree panels, it looks far from boring. The 3 bows are really quite different, which is what we tend to want in Hurtworld. Lot’s of variation and the ability to mix them really does add a lot to the game. It was particularly nice to sculpt the lion’s head, as I don’t get much chance to do organic modeling since Splatt has that well in hand. I’ve got the weight skinning almost done also, this has been a tricky process, as we have tried to simplify the method we use to accomplish this. Previously I would skin the mesh in the position that the bow was held in by the character, this took a lot of extra time and confusion as I had to move the meshes exactly into position so the animations wouldn’t look bad. I had created my own workaround for this, but it was clunky as. This time round Tom helped out and created a stripped down skeleton that contained only the necessary bones, which we then moved into position to suite the mesh in it’s axis oriented build position. The mesh then gets moved into position when the bones snap back to their previous locations later.
These are some combinations of the various parts that are possible with the Recurve Bow. We are looking into making the skinning of the RBow easier/faster, while Tom is wokring on that I will be dabbling with the Pistol for a bit, so we can get that updated and into game soon too.
Recurve Bows in all their glory; skinned, textured and added to the project.
Cow_Trix
Heya folks! Firstly, I have been optimizing our build process and starting the search for memory leaks. Our current asset structure sees the game’s SDK content split up into two parts, content
and art
. Content is all configuration objects, data containers, and similar assets. It’s where we define items, machines, loot tables, and all that other good gameplay based stuff. Art is where we put all the textures, audio assets, meshes, and other big binary files. The purpose of this separation is to make Content as quick a possible to build by putting all the things that slow a build down – i.e. big binary files – into the Art pack.
There’s still a fair few assets still in Content however, which I’ve been working on moving over to Art while maintaining all necessary references. There are still a few places where we will need some kind of code refactor to allow for that separation to take place, namely construction items and creatures, so that may be a project for the future.
I’ve also been looking for server memory leaks. The best way we’ve found to do this is to smash individual systems and see what explodes. This is a pretty slow and difficult way to do things, and we typically have written these tests as just throwaway code, so I’m trying to think about how we could make something a bit more reusable this time around. I’ve written a pretty simple set of tests that we can store as scriptable assets, which run on the server and record it’s memory usage. Stress testing leads to some pretty cool screenshots – check it out!
I discovered a few places where we were leaking some data, like when we exploded buildings or let them decay we would create the refund item and then it would just be left in limbo until the server was restarted. However, no big breakthroughs on massive leaks, although I’ve heard from several server owners that the worst of it seems to be fixed now.
Now, I’m back on map stuff and working on a revamp of Mangatang for this balance pass. This will mean a few structural changes to the map layout, which I’ll get more into next dev blog, but expect the central building biome to be removed as everywhere is buildable again.
TEHSPLATT
Afternoon, this week I spent my time getting the female characters game ready. This whole process went pretty smoothly, Tom had to do some Python scripting to help me out with a skinning problem causing seams to show where the different sections of the mesh met during deformation, this problem was most likely handled manually on the original character which would have consumed a lot of time, so having custom tools for the job really does save a lot of time. The main thing now is just all the small tweaks to really refine the characters. Even today alone there’s been a ton of tweaks to textures, eye size, facial structure etc. and still a few more things I would like to do. I also got two hair styles in game, sculpting hair can be a bit time consuming as it needs a lot of polish or else it looks pretty bad. I’ll be creating more hair styles this week and tweaking what ever else needs refining on the female models.
I’ve also been testing out some new environment stuff, at the moment there’s not much in the way of cover, so if you get caught out in the open it can be pretty harsh. I did some research and found a pretty easy to implement technique that can have a lot of impact both visually and from a game play perspective. These clumps of terrain really break up the silhouette of the rolling hills and give you lots of cover, they also work really well for isolating small areas to use as focal points. They are in a very early test stage visually so they don’t look amazing. Also adding in new vegetation and rocks really help break up the world as well as add additional cover. Also been looking at some new terrain splats for the future just to break up the tiling a bit, as well as hopefully getting to use a bit more water.
Tom
This week I continued working mostly with vehicles getting as much ready to go for last Friday’s 0.4.8.3 patch as I could.
I started with continuing to flesh out the vehicle destruction work with adding pvp armor onto vehicle attachment panels, this gives the attachment panels more importance in gameplay as all attachments will now have useful stats rather than just the few adding storage capacity or extra utility like a light or a seat.
Next I added the vehicle repair wrench to the game which consumes a large amount of its durability each swing to heal the hit vehicle.
TehSplatt helped me out with an improved damaged vehicle smoke particle effect and then I added a healthbar into the vehicle ui window as a damaged / not damaged state wasn’t really enough information to be able to make decisions like, can I take this vehicle on a quick run or should I repair it first?
I also spent some time working on material assignments in our mesh baking system. Currently our mesh attachment configuration assets can either take an explicit material assignment or a series of textures to be built into a material using our ‘uber’ shader. Previously the generated material was being built in the editor along with the mod it belongs to but I’ve now changed this over to happen at runtime after all mods are loaded, this allows us to share materials between mods easier reducing draw calls when these attachments are baked together.
I’ve also been fixing a bunch of bugs such as air drop caches bouncing back into the sky after touchdown, being able to enter vehicles while carrying a heavy slot item, cracks not showing up on meteor resource nodes and making sure vehicle damage smoke particles stop playing after the vehicle has been healed out of low health. As well as bug fixing I’ve been helping Mils with skinning the new bow models so they deform with their bow strings and then getting them into the game and they are looking great!