Hey everyone! It’s time for another dev blog post. We’ve also got a small info update regarding the beta that you can read at the bottom of this post.
But first, we’ll list the major changes since the previous dev blog.
Iuvua: Glaciers of the Dusky Depths
This world has been designed with the concept of a a bleak and chilling enviroment. Due to the low temperatures, some items may behave differently in this world!
The Vortex Drone is a late game mob that is equipped with a short-range teleporter. In addition to firing laser projectiles towards you, it will also teleport all around you and launch homing rocket volleys that will come from all sides. Hitting this enemy is already hard due to its teleportation ability, but aside from that it is also equipped with a shield item. That means that it can regenerate health points in the form of shield points if you aren’t able to continously hit it. To counter this enemy, players need to make sure to utilize weapons that hit continously or have a big area of effect.
Vortex Topaz Laser
The Vortex Topaz Laser is a strong weapon item that consumes a large amount of energy on firing but is also incredibly strong. Furthermore, this item has a special property: the strength of the laser projectiles fired by this weapon is influenced by how much the player uses their ship’s engines. That means the more the player moves, the weaker this weapon becomes. If a player would want to make the best of this item, they’d need to optimize their item loadout for strong defensives as they won’t be dodging as much. A powerful engine item won’t be needed either, so they could save energy by using a low-end engine.
The Ephereal Laser is a very expensive but not particulary strong item. However, it has a very special property that may make it worth its cost: It deals 4x times the damage against health generated from shields. Thus, this item is best suited to bring down the enemy’s shield points. After their shield points have been depleted, a different weapon should be used to finish them off.
Short Range Teleporter
This item is the same item that the Vortex Drone uses to teleport. As this item’s name already states, it has a limited range. Additionally, it also consumes a large amount of energy which limits its usefulness. Still, this item can be incredibly helpful to get out of dire situations - for example, if you’re caught off guard and a black hole grenade is about to tear up your ship, just teleport away. It’s a rare item that Vortex Drones sometimes drop.
Ship Loadout Synchronization Revamp
Our requirements for the loadout synchronization can be summarized as follows:
- The server should be the authority and thus should be able to change a connected player’s loadout as it desires. This may be important for some game mods.
- The server should be the authority and thus should be able to deny a connected player’s loadout change if it considers it to be cheating. For example, a cheating player may try to equip an item that they don’t own.
- When a player moves items around, it should always be instant. There should be no delay.
Now consider the following scenario: A player’s client is connected to a server. The player has 7 weapons and 8 weapon slots. They decide to buy a new weapon item for their last free weapon slot. To the player, the purchase appears to be instant, but the server hasn’t taken notice of the change yet because internet networking comes with a delay. But just before the player bought the new item, the server had decided to give the player a new weapon item because they completed a challenge. The player’s client didn’t know of it in the moment they bought the new item - again due to networking latency. When the client receives the notice from the server that they have gotten a new item, they will have a gamestate conflict: The player has already equipped all 8 weapon slots on their end because they bought a new item and yet the server wants to equip another weapon item to their ship.
In the past, the game client would have simply crashed if such a conflict were to occur. To prevent that, we had set up some safeguards in the code. In the aforementioned scenario, the client would have simply reverted its item purchase. But those conflict resolutions aren’t always as simple as that, as the client can immediately interact with items that they bought. In the worst case, the player may has totally shuffled their loadout around. To revert that, every loadout change that is directly or indirectly related to the bought item would have to be reverted. This kind of reversal may be very annoying to the player, as even seemingly unrelated item swaps would have to be reverted if they depend on another item swap where one of the items was conflicting. Additionally, this kind of approach is quite prone to bugs, since we need to detect which items had to be reverted and in which order.
But now, we have implemented a much simpler strategy for this issue. Instead of sending every single loadout change to each other, client and server will always send their whole loadout to each other if they decide to change something. When they receive such loadout updates, they will simply look for the differences between their local loadout and the loadout update that they receive and accordingly match them. Items that they don’t have yet will be added, while items that are missing from the loadout update will simply be removed. The server will additionally also check if the loadout update is valid.
Regarding the Beta
We’ve been focusing on getting the game ready for the closed beta! And even though we’ve fixed many issues and made several quality-of-life changes to the game experience (that we have not mentioned here as they are too numerous and minor) since the last dev blog, it will still take some time for us get it ready. The game still has some critical issues that need to be fixed before we can send it everyone who has registered for the beta. A beta is not supposed to be perfect, but we still feel obliged to maintain a certain minimum level of quality.
And to everyone who has missed the closed beta registration: We plan on having an open beta at a later date after the end of the closed beta phase. A start date hasn’t been decided yet, but you can keep up to date with news regarding the beta by following us on Social Media or subscribing to our Newsletter.