Our latest update is now live. This update focuses a little more on general optimisations, bug fixes and a couple of nice tweaks and features, such as the Controls Screen! This update also includes the multiplayer preview. Read the full patch notes below.
Yes, as we teased in last weeks blog post, the Control Screen is here! Accessible in both the Main Menu and in-game, you’ll finally be able to tweak your mouse sensitivity, flip the y-axis and rebind all of the basic controls.
This is all fairly straight forward but we’ll give you a quick rundown on how it works. Simply click on the Controls button in the menu to open up the Controls Screen.
From here, you can tweak the mouse sensitivity slider to adjust the speed Leo looks around (N.B: This will not affect the cursor in menus). You can also toggle the mouse invert to make Leo look down when you move the mouse forwards.
Hook up a new keybind for any action in the list by clicking on the currently assigned keys, which will bring up an “Assign Control” dialogue. While this dialogue is open, any keyboard or mouse button input will be recorded and saved as soon as you let go. If you want to assign a combination of keys, you can do that too! By holding CTRL, Shift or Alt you can create a combination of keypresses to assign to an action. For example, if you want “Start/Stop Time” to be “CTRL + Shift + E” instead then you can hold both of these keys before pressing E.
You’ll see a couple of controls highlighted orange. These show that the key is also being used by another control, like CTRL being used for scaling as well as sprinting by default. While we recommend keeping your keys unique, there isn’t usually much harm in overlapping them (unless you decide to put “Place Block” and “Move Forwards” on W, or something like that...) so we just highlight them as a potential conflict for you to act on.
Each key has an individual reset button, just in case you want to revert a single change, as well as a “Reset Defaults” button at the bottom which will revert everything other than the mouse sensitivity and invert Y to their default key/button.
These controls will be saved per account, per machine. This means that multiple people playing on the same machine can have their own preferred setup. It also means that you can have a different setup for your PC and laptop if you choose.
The preview branch will be shutting down again shortly as we’ve cleaned up most of the major errors and issues with the multiplayer preview and put all of that into the standard branch. Multiplayer is still far from “release ready” but we think it should be in a stable enough state going forwards that crafters can still play around together if they wish.
A huge thanks to everyone who jumped into the preview and helped us out by reporting issues. We’ll cover the bug fixes and changes a bit later on. We’ve got a lot of work ahead of us next year but we’ll continue to work on getting multiplayer up to scratch with your support.
Other Changes and Optimisations
[h2]Changes to Foliage Collisions[/h2]
We’ve done two things to address some of the concerns and complaints regarding flowers in particular.
The first is to simply have Leo ignore collisions with flowers that are not directly attached to the floor. Any flower connected to a block can still be deleted/coloured, but should no longer prevent Leo from walking. Any flowers that are placed in the air will still collide with Leo when they land. This should make moving around lush gardens a lot less painful!
The second change is to slightly tweak the colliders while in build mode, making it easier to paint or remove plants and bushes that you’ve placed, while not stopping you from interacting with blocks close by or behind them.
One of the more resource heavy parts have always been the trees. We’ve done a couple of things over the last few updates to try and reduce their impact a bit, removing the wind animations (as much as we really wanted them) and reducing the density of leaves are a couple of examples. This time around we’ve implemented basic LOD’s (Level of detail) on all foliage. As you walk further away from them, you’ll see them blend into a less detailed version. We still need to tweak these a bit more so they don’t look fantastic at the moment but they should perform better now.
[h2]Renaming of some parts/terms[/h2]
A couple of parts have been renamed in this update as we’ve been using a lot of overlapping names internally and we’ve seen a bit of confusion in discussions. These, coupled with the addition of Controls and an increase in “command” usage for multiplayer, the following changes have been made:* Console Block -> Command Computer
- Control console -> Pilot Controls
[h2]Main Menu Social Spaces[/h2]
We’ve added another couple of links on the Main Menu for our other social spaces to help keep you updated:
Most of the work we’ve done since the preview went live is error fixing and cutting back on bandwidth where possible. A lot of the work that needs to be done in this area takes time, so there isn’t a drastic improvement this time around. We have some small improvements but things aren’t quite smooth yet.
One of the changes here is that players connecting during simulation are now rejected and returned to the menu rather than triggering an error. We’ll have better systems in place to handle these connections in the long run but for now the safest and simplest option is to simply stop the connection happening. We’ve also made the timeout period a bit more lenient, but it will still kick you if you fall too far behind for too long. This process should be a bit cleaner as well now, with clearer messaging and no errors.
Another change is to the console commands. Console commands are now synced for all players where possible. This does not include player related commands like teleport, camera distance etc. so those have been disabled while multiplayer is running for now. Commands like setGravity, sky colour etc. can all be called by any player, and will correctly update for everyone.
We’ve also added a couple of extra commands to tweak the performance in multiplayer:* SetNetSyncBanwidthLimit - This command specifies how much of the world should be sent each frame. A higher number is going to have a larger impact on the host’s performance (which could then cause issues for everyone else down the line) while lower numbers mean less objects are being updated for other players. The default is 20% and can be set by the host
- SetNetworkJitterFrames - This command controls how often input messages are processed. There probably isn’t going to be much need for this command but we’ve included it just in case. A higher number means there is less chance for messages to be missed, but it will hurt performance. The defaults are 1 1 and can be tweaked by the clients.
We’re still hard at work optimising various areas of Gamecraft. A lot of it is very ‘under the hood’ so there isn’t much to show or talk about here but there should be some noticeable improvements all around in this update and we’ll be keeping on top of further optimisations as we continue to develop.
- Fixed a bug that caused parts to become offset from the grid in certain scenarios
- Fixed a couple of preview-specific bugs where painting or changing signal channels repeatedly could cause an error
- Fixed a preview-specific bug that caused an error when replacing a hotbar item that you currently have selected
- Fixed a bug with the new wheel colliders that caused them to lock up when things are placed directly behind them
- Fixed a bug that caused vehicles to act strange when objects are placed directly behind a pilot seat
- Fixed a rare error when saved player data (hotbar/filters) could become corrupt or empty
- If a Host disconnects with an error, it should always kick other players after a short delay now
We’ll post one final Dev Blog for 2019 later this week before we sign off. We’ve got a lot of interesting things planned already for next year and things are definitely going to continue to get bigger and better as Gamecraft continues to expand and evolve. We’d like to give a massive thanks to all of our early adopters, from way back in Experiment 01 all the way up to today’s update. You’ve all been extremely helpful and understanding as we’ve been through some major save-breaking changes and worked through a number of hiccups along the way.
The Gamecraft Team