Things are ramping up a lot around the studio in the last couple of weeks. We’ve been working really hard on heaps of new stuff on our own for ages, and its finally coming together.
I spent most of this week working on planning the road to the ItemV2 release, and implementing a game mode system to support the official Team Deathmatch mode. I figured if we were going to use the deathmatch to iterate on guns, we may as well make it fun.
The main function of the game mode system, is allowing us to swap out logic for things specific to a particular game mode without having hacky checks all over the place to see what we should do when something happens. The game mode drives things like: spawning, scoring, giving equipment, friendly fire etc
This week I’ll be fixing a few bugs that came up in ItemV2 from our deathmatch tests, and improving the feel of the guns before unleashing it on you guys, hopefully the following week.
Sleepers on Logout
It’s been a long time coming, but we’ve finally decided to add a representation of your player in the world after you logout that doesn’t disappear until you connect the next time to the same server. This means your player is always vulnerable to being killed while you are offline. This solves a bunch of issues around people using themselves as unbreakable vaults while logging off, it also solves the issues around raiding a base, taking it over and not knowing if a previous owner will spawn inside your walls. Most importantly, some people discovered an exploit where logging off, building structures in the place where you logged off, then logging back in would kick you through objects. This can only be solved by leaving something behind when you logout that blocks building. This is one of the last steps to ensuring continuity in our physics system.
There will be an option to disable it and use the current functionality on community servers, however all official servers will use sleepers.
Patch And Wipe This Friday
This (and only this, not all the other stuff we’ve been working on) will go out this Friday along with a official server wipe. Wipes will not be mandatory for community servers. Checkout Toms post for more details.
Welcome to Grey Box Citeh… We have entered the grey box phase for the weapons now. The image directly below is just a pretty render of an Assault Rifle and a Sniper Rifle.
These are based off the designs below, although slightly modified from the silhouette sheets, as we are thinking we can squeeze some of these into the existing animation sets. This will help speed up production. These are low poly meshes, which will be mashed up until we lock in the form and function. There will also no doubt be a lot of detail geo added to make them more interesting.
I’ve been getting up to speed on our Static Mesh Baker this week too, so that I can send the goodies across to the coders for testing etc.
This week I was finishing up the 0.3.7.5 patch and then quickly fixing up the broken ladders for 0.3.7.6.
After this I was back into ItemV2, merging up the latest changes from live, fixing some bugs in our new mesh generation system and starting to get vehicles working again.
This didn’t last long though as we were quickly made aware of some remaining bugs and exploits and I was back onto patching them up.
As a part of this next round of fixes we are adding a sleeper proxy system into the game so you can no longer simply log out with your items to keep them safe!
Now after leaving a server for any reason you will leave behind a proxy of yourself in the world. Players will be able to kill the proxy triggering the standard loot drop for the server type.
If your proxy is killed you’ll respawn when you next log in rather than returning to your previous location.
Proxies run their own inventories and stats simulations behind the scenes so we can properly assign infamy and determine loot drops, this also has some other interesting effects such as items being constantly simulated (meaning your food will turn mouldy while offline). The stats simulation is not updated however so you can’t wait out infamy and you won’t starve to death while offline which would be frustrating and overly punishing.
In the future we’ll also also be able to things like let you open a players inventory and take some of their stuff or maybe you’ll be nice and leave them a new item (hey it could happen!), were going to save this kind of stuff for once ItemV2 is live because otherwise we’d have to implement it twice essentially and it’s not worth the time.
At the moment we are aiming to get this next update out in time for the next wipe on the 28th of November, we’ll be wiping the infini wipe servers with this update as well due to the way sleeper proxies are constructed on server start. We wanted the proxies to exist even if a server didn’t shut down correctly so on server startup we construct a proxy for every living player who doesn’t currently have one (players who have had their proxy destroyed are marked as dead so they’ll be skipped over in this process).
So this week I ended up going through all the gear and trialing different paint methods, testing which items look good with global paints, and which should just have selectively masked areas.
All the hair and beard items I think work well with us enabling the player to affect the overall colour of the item, as do things like jeans.
Other Items like the packs would benefit more from selective masking.
I have also started making some new items starting with footwear. At the moment I have made some basic boots and basic sneakers.
Basic sneaker sculpt.
Basic boot sculpt.
In engine pic of basic footwear.
Hey folks. This week has seen a lot of iteration over the map, and I think it’s getting to a pretty good place. This iteration also exposed a few bugs in the road system which have been fixed. Early in the week I did some work on the city suburbs, building out the CBD into suburbia, as well as a park area. I’ve also been working on the general play area generation and I think that we’re pretty close to something workable. Check out some screenshots below.
I also finally came up with a semi-decent solution to blending road segments together, which was mainly a thing of finding a shared boundary between the segments. If the boundary is deterministic from the start and end nodes, then the blending between two nodes will work fine. I still don’t have a great solution to blending between an arbitrary amount of nodes, but considering how we’re doing intersections as separate distinct objects that might be a problem we never need to solve. I also solved a bunch of bugs around rolling nodes, and editor-side bugs to do with selecting, deleting and moving nodes.