Welcome to another episode of the goings on around the studio. In this week’s (late) edition, we are mostly tied up with Map SDK and Unity upgrade fun. As you can probably tell I’m pretty excited about it… I may have just had too much sugar this morning. We’ve got some more stuff to kill you, cow is up to his usual trix and mils has been making more progress on cities. At this rate you ‘ll be able to build a poor mans GTA5 in our level editor.
Due to the surgery state of the project, the next patch might be a week or two away. We could push out the micro changes and keep what we are doing in a separate branch but that would just slow down the awesome stuff, and who doesn’t like awesome stuff!?
I finally made some good ground on the map SDK this week. Previously we had one single project, with references all over the place between map prefabs / utility scripts / assets and engine code / runtime dynamic prefabs. To ensure the map framework is rock solid we needed to make sure we could build Diemensland using it. Which meant completely decoupling all our map assets and code from our main project.
This was a much needed cleanup that completely isolates everything map related from our core game engine, making the core much more lightweight and easy to enhance. The other benefit of this, is now that Diemensland is isolated, we can release the entire source project used to create it!
This will give map makers an end to end example of how the pipeline works, along with all our source assets like rocks, textures, trees and set pieces to use however you please. Think an area of the map would be better slightly different? Change it and branch off using Diemensland as a base!
When do I get it?
Right now everything builds, and can load custom built maps into the game at runtime. We still need to integrate this with Steam Workshop so users can ensure they have the latest version of custom maps simply by joining a server running it, without having to leave the game. This will take another week or so, but for now I will release the base version of the SDK for people to start playing with. For now you will only be able to load maps into the engine by placing them in the maps folder like the old days.
Our only blocker at the moment is that we are waiting on some confirmation of legal issues with Unity in regards to distribution of assets acquired from different sources, these won’t stop what we are doing but might change the way we let you use our assets.
This integration also touched almost every file in the project, so we need to go through some serious regression testing to ensure all the references match up still. When we’ve gotten confirmation from Unity I will throw whatever state the SDK branch is in onto a Steam beta.
If you want to get an head start, you can download a free version of Unity 5.3 here:
Start playing with the terrain tools, importing models / textures (there are heaps of free ones on the asset store) and start designing your masterpiece. Copying it across to the SDK later will be trivial.
Anything you can create in Unity besides scripts will be importable into Hurtworld!
UI and Input
It’s been a busy week! The upgrade to 5.3 meant I had to fix a bit of regression in the UI, as Unity did some breaking changes between 5.1 and 5.3. While I was at it, I made UI perform significantly better. The biggest quick win was changing how we hid UI that was being unused. Previously, we hid a lot of things by just setting the object to transparent and keeping it active. Now we’ve got it so windows are completely deactivated when not being used. Another big win was changing how we activate and deactivate the Unity EventSystem, the system which figures out things like where your mouse is on the UI – which should give performance gains across the board.
Something that’s been broken since day one has been mouse remapping. Finally got around to giving that some love, and it’s working well. This is still an experimental feature, so please report any bugs you can find with it.
I’ve also been working on putting in some more feedback into the UI. Firstly, mining a resource will now show the health go down on the object as you hit it, as an overlay on your crosshair. Secondly, Binary Effects (think buffs, debuffs, i.e. “Broken Leg”) will now display above your hotbar in standard MMO style, with more information about exactly what they’re doing to you. I think this will give us a lot more legs on a system we haven’t really explored much. Think items that buff/debuff you, diseases, potions – all that cool stuff!
Ownership Stake and Vehicle Claiming Tweaks
There’s also been a few tweaks to the recent Ownership Stake/Vehicle claiming features that were implemented in the last patch. We released that 12 hours of tooting before a stake deauthorises is… probably too much. This is now set to 20 minutes before deauthorisation. Hopefully this will stop the toot spam a bit!
There have been two changes to vehicle claiming. You can now only claim drivable cars – that is, cars that have an engine/gearbox/wheels. This should help stop freshies claiming every chassis they come across. The second change is that you can now disassemble claimed cars, but it will take much longer than a unclaimed one.
Something else that I’ve implemented recently is signs! You can place these on pretty much anything. Label your chests, make a welcome mat for your base, warn people of hazards, all that kinda stuff. Can’t wait for you peeps to show us what you do with these.
Finally, there’s more reason than ever to fear the cold. Blizzards are coming – and when they hit, you don’t want to be out in the open. Take cover and avoid the chill.
I have begun work on some new creatures! Yay! This time I’ll be doing some big cats. Pretty much before starting any new creature I will browse for similar animals, or animals that may display traits that I think might be helpful, usually saving a few out as reference taking into consideration body shape and colour. For example I may save out some images of birds if their plumage has a certain colour range I like, even if the intended creature more resembles a rat.
If I am pretty sure what direction I want to take it when I am sketching up a reference sheet, I will colour one up, as I often then cut up that concept and paste it onto the uv’s as a texturing starting point.
This guys obvious influences are lion/sabre-tooth/ tiger/ caracal , as well as the African wild dog and hyenas.
So I’m trying to build more interesting parts to the city buildings, the parts that give it that believable human touch.
This is tricky because I have to balance the logical repetitive design of all the bits whilst making them look good and not having things in the wrong places.
It’s a kind of sadistic but enjoyable mental Rubics Cube. The texture (below) file so far has around 130 layers in it and is 4096 x 4096 resolution. This is in the upper limit of texture size. The whole city is built on the one texture, this is to save on ‘draw calls’
This week I have been monitoring server performance and population. The Official 14 Day and Infini servers have retained a decent population and will continue in their present form. 7 Day Servers have seen fairly low population and will be dropped from the official servers at the end of their current wipe schedule. This will free up some room to potentially introduce a full loot server to regions that currently don’t have this type of server (looking at you Australia). I will be looking at introducing this to coincide with the Full Loot scheduled wipe next week and it should leave each region with 1 Official, 1 Full Loot and 1 Infini Wipe server moving forward.
On the back of some reports I have also spent a lot of time on official servers tracking down lag issues. This is an ongoing problem but we are making strides in isolating some of the causes. A big shout out to Theeotown of O Town NA E Infini Wipe as well as [OG]bigfukinmegaboat and the boys from [OG] on NA W Infini Wipe for helping me reproduce some of these problems. If you have any information or want to report any issue related to lag on official servers send me a message on Reddit or Steam. I’ll also be doing the rounds on the official servers over the coming weeks so feel free to say hi if you see me around. Now that DDoS issues are, for the most part, behind us sorting out lag is a priority.
On the subject of DDoS I expect that CHINA, SEA and SA servers will be migrated to new hardware over the next couple of days which signifies the end of server migrations as well as the stability issues these servers have had over the last week. For players on SA servers this change will also drastically reduce the latency problems you have been seeing the last few days.