19 May 2016, 6PM
Here’s a preview of one of the tunes I started last week and polished up this week. I did a bit of recording specifically for this as well, which was fun. Some of the echoey, high-end percussion was made from bits of a disassembled door knob moving around (which also makes great gun foley sounds!), and some of the metallic swells in the background are pitched down recordings of me playing some metal mixing bowls and pots that were partially filled with water with a cello bow. There’s a few things I want to tweak with this one still, but I’m pretty happy with it so far. Listen to it and enjoy the blog!
I've merged the past month's changes into Prerelease and got it up and running again. I've also set the price of the new items in the XP system and adjusted their unlock levels. Next week I'm going to do some gamefeel stuff, so it's more obvious when new items are unlocked. I'll also be going through each level and making sure we aren't getting too many unlocks at once (some levels unlock 8 items!), as well as a standardized pricing scheme (common tool = 5 XP, very rare weapon = 50 XP).
I added decay to a number of deployables this week. All sleeping bags, tool cupboards, barricades and traps will now slowly decay when inactive. Opening or closing nearby doors resets the decay timer the same way it does for building blocks, which means those things should be safe inside occupied bases, but will decay fairly quickly out in the wild or when a base is abandoned.
The things I’m hoping to achieve with this is to cut back on the sleeping bag/trap/floor spike spam in bushes, and to make tool cupboard griefing less effective. Another interesting aspect could be the possibility to move into an abandoned base once the cupboard is decayed, since it will break down faster than the higher end building tiers. I didn’t go too crazy with the decay rates for now (~2-3 days for most of those deployables) so we have some time to get feedback and balance it in the upcoming weeks.
We now track some interesting stats for server admins that can easily be accessed with the “stats” or “stats playersteamid” console commands. The reason for doing this is that I’m interested in the number of projectile hits with or without a direct line of sight between the attacker and the target. While there are legitimate reasons like ricochet that can lead to hits without a direct line of sight between two players, things get suspicious once they are happening at a high enough frequency.
For now this feature is mostly there to evaluate the performance of those kinds of checks and see what the data will tell us. It’s also useful for server admins to look into hacking accusations, which is why I decided to make this early development version available to them.
There’s much work to be done on the farming system, but I just wanted to address some low hanging fruit (hue hue) this week. I increased the time the fully grown plants stick around before they start a new season or die, so you’re less likely to miss the right moment to harvest them. Domesticated hemp now gives 20 cloth when fully grown and can be harvested when the plant is still small for a portion of that maximum amount of cloth.
There was a fairly serious issue with the water bucket that could make the physics system of a server crash entirely. After a painful debugging process this is now finally fixed - sorry to any server owners who experienced this.
There were some issues with the water purifier caused by a fairly low level bug in our entity parenting system. I implemented a workaround over the weekend and starting today you should no longer run into invisible water purifiers or ones that cannot be interacted with. I’ll probably have to put some more work into the entity parenting system in the future if we decide to use it with more objects than just quarries and water purifiers, but for now everything should be working as intended.
Something I've wanted to return to for a while is throwable weapons. The current system results in a lot of accidental throws & hads only a small sense of accuracy, so what I've looked at this week is adding an aiming state. Holding down right-click will keep you in this state until you're ready to throw, releasing the button will execute the throw.
Now, this system involves code changes to baseMelee & will effect third-person anims too. Once the code is updated it will be looking for this new aiming state on all throwable weapons, which means I'll probably need to get them all working before committing. This is only worth doing if players feel they will use this aiming feature, so let me know what you think of the idea.
I've added a female component to the randomised faces script, there's limited variation due to it only sampling three blendshapes (and one set of textures!) at the moment but we'll be able to get some unique faces when more are added.
When I first made the eyes I used photos to create the textures and although they look fine, they're a pain in the ass to edit or do anything with. I'd like to introduce randomised eye colour at some point so I figure now was as good a time as ever sculpt an eye and have some nice, flexible maps to work with.
I’ve continued working on physics sounds this week. I’m almost done with the world items now (which is actually most of the physics-enabled stuff in the game at the moment). I’ve got a couple more things to record still, but I’m planning on doing that tomorrow and merging this stuff in over the weekend so we can test it a bit and release it next week. After this first round of this is done I’d like to work on more item-specific sounds to give everything a bit more distinct flavor.
I’ve started on a few more item UI sounds this week. Paper, small plastic objects, and water bucket/bucket helmet. I’ve also been hunting for something that will work well for the big scrappy metal tools, like the salvaged axe, but haven’t found anything that’s giving me quite the right sound for those yet. All the metal objects I’ve got that are rattley enough are too thin so I’m going to take a trip to Goodwill and/or the hardware store next week.
I started animating the weapon models in third-person--as seen from other players--which will better allow you to visualize what other players are doing with their weapons: reload, shoot, etc. The early results already add a lot to the visual impact of the weapon handling, but they're too janky to show off right now.
newAdded deployable decay to sleeping bags, tool cupboards, barricades and traps newAdded server side stat tracking (separate for every server instance) newAdded projectile line of sight tracking (no enforcement yet) newAdded lineofsight_protection server convar (only toggles tracking for now) newAdded decay.tick server startup parameter (specifies decay tick interval) fixedImproved fly hack detection (fixed a potential false positive) fixedFixed overly bright clouds at night fixedFixed blurry Facepunch logo on low quality settings fixedFixed issue that could render the water purifier invisible fixedFixed issue where the water purifier bucket could not be interacted with fixedFixed potential server crash caused by water bucket fixedFixed line of sight loot exploits fixedFixed exploit to disable gunshot sounds fixedFixed survey charge particle effect rotation fixedFixed estimated player velocity being extremely inaccurate during server lag fixedFixed offset Holosights fixedFixed issue with revz not being set causing rendering problems fixedFixed revz darkening environment fixedFixed revz player preview fixedFixed revz deferred lighting and reflections fixedFixed revz missing decals, player tags, holosight dot, lantern glass fixedFixed revz missing heli body and heli interiors fixedFixed revz painting signs fixedFixed revz greyboxes not visible fixedFixed revz horse hair, helicopter glass seen through objects fixedFixed revz menus darkening water fixedFixed horse hair discoloration fixedFixed teddy bear mesh + material fixedFixed water simulation issue causing seams in shore blend fixedFixed speedtree billboards in d3d9 fixedFixed pitch black shadow on grass when shader level < 300 fixedFixed pitch black horse lowest LOD mesh fixedFixed ocean and rivers not showing specular highlights for secondary lights fixedFixed research table glass shader updatedTool cupboards can be repaired updatedIncreased available time to harvest plants before they die updatedHemp can be harvested for reduced cloth when small updatedIgnore projectiles from stalled players updatedTake player lag into consideration for server side projectile speed verification updatedProjectile entity distance verification takes entity speed into account updatedInclude player and target names in server side projectile logs updatedNo longer give anti hack violations to players that are stuck behind doors updatedPlayer animation tweaks
If you want to follow this project you can sign up to the mailing list.
We'll only update you about this project, we won't spam you about other stuff or sell your email address.