This year was full of projects for UpGun, and i'm finally glad to present to you what we've been working on lately both ingame and IRL ! This summer we are planning to add a lot of features et new content to UpGun and it starts today ! We release today a brand new map, decks, new skills, Two more updates are planned to come out soon !
New map
Discover our new arena "Arcadium" a real playground filled with arcades, an escape room and a laser game !
Face your friends in the tense laser game room and leave on top !
I recommend to play with 4 players on this map as you can easily get lost in the laser labyrinth.
New Skills
Try out new skills to surprise your friends !
Reflected laser : Upgrade your laser to reflect it on surfaces and hit hidden targets !
Piercing laser : Your laser can now hit multiple targets at once, each target multiplies the total damage.
[COMPROMISE] Maximum Switfness : Run really fast ! (but slow down is you get hit)
Long slide : Slide, but longer.
Controlled explosion specialist : Your controlled explosion deals 50% less damage to yourself !
New limited merch
UpGun finally gets unique merch !
Get this limited edition plush this now on MakeShip
New deck system
UpGun (the full version) now has more than 80 unique upgrades. We get that it can be hard to get what you want each round but it is part of the fun ! However, we listened and added a new alternative playstyle using decks.
Play with your friends and a limited deck you chose ! Create a deck from the main menu and select one from the lobby menu !
New stuff
-Added decks to gamemodes -Added a new animation to inspect your knife -Added a delay and a progress bar on the lobby button to start a game -Changed laser visuals -New achievements -Added new secrets promo codes -New spawn animation
-Optimized UI -Optimized particle pooling -More optimizations -New spawn points on Farm -Added better air control when dead -Increased default skills limit to 7 (was 5) -Increased banned skills limit to 15 (was 10) -Improved scoreboard -Improved controller compatibility -Added partial spanish translation
New skins
Each Update comes with some new skins to customize your character, today we're adding 10 new skins, here they are : Some of them are available to buy on Steam but you always can drop these ones by playing (also on the free version)
Balance changes
-Buffed default grenades -Buffed laser damage -Nerfed Instant grenade -Buffed anti gravity grenade -Buffed Jump boost (+40%) -Buffed magazine size damage bonus for thrown magazines. -Added a level to jump boost (max level is now 3) -Nerfed Auto repair -"Reset" now gives back a throwing knife
Bug fixes :
-Corrected animation delay on Lasers, grenade launchers and shotguns -Fixed grenade launcher fire sound spacialisation -Fixed shrapnel kills not giving points. -Fixed knife weight painting -Fixed typo in credits
We continue our set of summer specials! Today it’s the turn of reduced upgrade cost special.
From July 21, 12:00 GMT, to July 25, 11:59 GMT, you will need only one additional (identical) part to upgrade your hardware.
Please, pay attention that not all parts participate in these summer upgrades specials:
For the “upgrade removal” specials you can not use those that are part of the “Road to Singularity” season and “Foxy’s secrets” event (either new parts or those produced on the workbench of the season / event).
In all the “upgrade” specials you can’t use parts that are included in reward scales of: “Road to Singularity” season, “Polar lights” season and “Foxy’s secrets” event. Parts that are present on workbenches of both “Road to Singularity” season and “Foxy’s secrets” events also do not participate in these specials.
For more information on Crossout, follow these channels:
We have reduced the difficulty of the mission Prodigal Son.
Enemies can no longer equip the SB-87 Shield Booster system.
The damage caused by enemies to the player has been reduced by 20%.
To avoid possible softlocks in the final event, now it is not possible to suffer casualties in the space combats of the missions Moral Enemies and Beyond the Sun.
We have added Faulknen's voice audios.
We have added a missing voice audio of the male engineer.
With this patch all new radio transmissions should have voice audio.
We have fixed a graphical issue that caused a transparent square to appear behind the letters of some texts on small screen resolutions.
The initial cinematic of the mission Mortal Enemies has been improved.
You will have the chance to test this iteration of the expedition event for 3 weeks. You will start with level 1 but throughout the test the character level will increase twice, gaining +250 levels with each level up and the 98% bonus from the scrapbook will be unlocked.
The following features are still in development:
Tutorial
All graphics are placeholders and not final
Only two regions available
The mushroom dealer will not be available.
Find the changelog towards the last test and a general overview of all tasks and encounters in our help center.
Closed Beta Facts
We increased the number of participants to 1,000 and will provide a registration key in-game prior to the closed beta start. The principle will be first come, first serve. Once the limit has been reached, you won’t be able to create an account anymore. Some personal codes may be distributed on Twitch or YouTube, though. Keep your eyes open!
The next closed beta will start on Wednesday, 26 July 2023 at 4PM (CEST) and will be open for 21 days.
Once again, it’s time to share some news about the development of The Riftbreaker co-op mode. When we released the last article, we told you about the major breakthrough that allowed us to test this game mode with more than two players simultaneously. We told you our next optimization targets and how we aimed to reduce the data transferred between the game’s server and its client PCs. This time we will tell you what we have been doing over the past few months, what improvements we made, and what comes next.
Much of our work has gone into optimizing the EntityComponentSystem, or ECS, for short. It is responsible for storing data about all in-game objects. The properties of almost everything you see in The Riftbreaker are stored within the ECS structures - the amount of HP enemies have, the light emitted by particles, the destruction system of buildings, and many more. It is a genuinely massive part of the game, so it is no surprise that we can find many places to improve within its code. Our current form of ECS in the game has been created with single-player gameplay in mind. The data for all entities are stored at all times. When an entity is visible or otherwise relevant to the gameplay, it is held in memory for immediate access. If an object is temporarily not used for any calculations, its data is packed and kept for later reference. The Riftbreaker is a huge game, so the amount of data the ECS has to handle is quite substantial. As we told you last time, large data structures are not desirable for multiplayer, where every byte of transfer and every millisecond count.
Thus we began the great work of rewriting the EntityComponentSystem, one component at a time, to optimize it for co-op scenarios. We have been working tirelessly, deciding which components have to stay on the server and be synchronized with the client PCs and which elements can remain solely at the client PC’s discretion. As we told you last time, we aim to keep things that are irrelevant to the gameplay state on clients only. However, with as many as 291 components to check, verify, and potentially rewrite, it still is a massive undertaking. However, we have made a lot of progress already, and we are sure that we will be able to enjoy the benefits of it very soon.
Minimap Rework
One of the main problems we encountered while playtesting the Riftbreaker in co-op mode was something that you could see during our dev streams (yeah, we stream co-op gameplay fairly regularly! Tuesday and Thursdays, 3 PM CEST at twitch.tv/exorstudios. Co-op streams don’t happen every time, but we try to show off our progress as often as possible.) was the broken minimap. The map would only show the player what they discovered themselves. Whatever your co-op partners found or built would not show up until you went there by yourself. Moreover, some objects outright refused to show up entirely - for example, resource deposits. This seems like not a big deal, but in reality, it made terrain orientation really tricky. It was also almost impossible to tell where attacks would come from, as their markers did not show up either. The only means of communication and marking places of interest was placing Rift Portals. While placing Portals next to valuable spots is generally okay, more was needed for players to enjoy the game.
With that in mind, we decided to rework the minimap from the ground up. The new minimap will collect data individually gathered from all players, combine all information into one on the server and then distribute a copy for each player. This way, we can ensure that every party member has access to the same knowledge at all times, making coordination and planning much more manageable. Reworking the minimap system also allows us to introduce performance optimizations. The minimap might not be the most breathtaking feature, but it’s resource-intensive. Every object marked on the map is a separate draw call for the GPU. With thousands of units, hundreds of bullets, and dozens of buildings appearing simultaneously, the cost of rendering the minimap grows quite drastically. Luckily, now is when we can make significant changes and reduce the strain on your PC’s resources.
The Sound of Silence
When it came to sounds in our early tests of The Riftbreaker’s multiplayer, the experience was hit-and-miss. During one session, you would hear all sounds playing back fine, and during others, nothing. Sometimes, you would hear sounds only if another player was hanging around in the vicinity of your screen. The problems resulted from the way we handled spatial sounds. The implementation was fine - but again, it was made with single-player gameplay in mind. Here’s a short breakdown of how the sound system in The Riftbreaker works and what we did in order to fix the problems we encountered.
We used so-called ' ears ' to simulate the effect of various sound effects coming from different parts of the screen (or entirely off-screen). Think of those ‘ears’ as a set of microphones attached to the game’s camera, each recording the sounds from the direction it is facing. When a sound is being played, we check whether it can reach one of the ears. Then, the sound’s distance from the ear would determine its volume and placement in the dimensional mix of the entire soundscape of the game. It is also worth noting that the mixing algorithm depends on a user’s sound system - it’s different for stereo headphones and for a 7.1 surround sound setup. In a multiplayer setting, the information coming from the ears of all the client machines mixed and resulted in various errors. The solution that we used in single-player was clearly insufficient.
To combat this issue and reduce unnecessary data transfers, we decided to handle sound information on the server side and send complete sound mix information to the client. Based on the position of each client’s ears, the server prepares information about all the sounds that should be audible for that player and sends it as a complete set of instructions. The only thing that’s left for the client to do is to play back the sounds from the disk. This means we won’t have to play with no sounds during our Twitch streams soon!
TurretSystem
While looking for potential candidates for further optimizations, the TurretSystem caught our attention. This system handles all the operations of defensive towers you place in your base during your gameplay. It takes care of aiming, shooting, and checking if enough ammo or energy is available for the tower to take a shot. We discovered that the calculation costs related to this system rose unexpectedly high when the player had many towers in their base. We expected the system to take up more resources for huge bases with hundreds of towers, but the numbers we saw did not match up with our calculations. We dug deeper.
Upon further investigation, we found out that the TurretSystem was optimized well, and we did not spot any immediate errors or places where we could make improvements. Clearly, it was not where the problem lay. Then, we decide to check all the systems that interact with turrets. This is finally when we got to the root of the problem. It turns out that the ResourceManager, the system that was responsible for checking if the towers had enough ammunition to operate, would take up as much as 10 milliseconds of calculation time per frame due to a bug. This problem was introduced when we refactored the resource system to handle resources appropriately for multiple players (e.g. each player’s ammunition is handled separately). When we fixed that bug, the time dropped from the dreadful 10ms to a much more reasonable 0.4ms. This is a great example of how expanding the game engine to support multiple players can drastically decrease performance and what we have to do to combat this type of problem. While working on adding multiplayer support, one of the most difficult, most time-consuming, and always ongoing tasks is to optimize the code in such a way that it runs at least as fast as single-player code.
Saves Work Too!
One more thing that we have been working on is the save system. After a couple of hard weeks of work, we implemented our first version of this system into the co-op version of The Riftbreaker. In its current form, it is quite simple and far from what it will be in the final version - please bear that in mind. Currently, the server saves only the state of the world and the ongoing missions. It does not store any information about the players, meaning that when we load a saved game on the server and connect to it with one of the clients, we are treated as a completely new player. Saving player progression and establishing an interface for reconnecting players is something that is still left to be done..
One of the main problems with testing unfinished products is the lack of stability. The server can crash anytime for any reason, ending our playtest on the spot. While some crashes happen 100% of the time, and there is nothing we can do about them apart from fixing them, others occur randomly. When you test software, you want to avoid being held up waiting for a fix to an issue that does not occur 100% of the time. While we can’t load player progression at the moment, even the current state of save/load implementation is of great help to us during development. If a crash occurs, we can simply come back to the latest saved game state and try again. If we crash again, we have a great way to reproduce a bug and make it easier for a programmer to track it down. If the game doesn’t crash, we can continue looking for more potential issues and speeding up our work.
There’s still a lot of work remaining to get the save/load system to where it needs to be, but we can already claim a major milestone as the core of the mechanism is already functional.
Conclusion
Over the course of the past few months, we managed to complete quite a few tasks and reach milestones we set for ourselves on our road to a functionally complete multiplayer build. Our programmers have laid the groundwork for the introduction of new technologies and optimizations that we have been planning for The Riftbreaker.
We have already mentioned the first of them in this article - the general-purpose optimized octree finder algorithm. An octree is a data structure where each node of the tree has exactly eight subnodes. Those subnodes can be divided further and further into more nodes. Octrees are an extremely useful tool when dealing with large, rather unorganized data sets. Dividing the data into smaller subsets significantly speeds up queries. We are currently making improvements to our current general octree search implementation that will allow us to see significant gains in various areas - both data transfers and performance. The new optimized octree organizes entity data into linear structures based on their spatial positioning. Most spatial entity queries look for entities that are close to each other, so having them close to each other within memory improves read speed and reduces CPU cache misses. Furthermore, the new algorithm is capable of returning entity component data along with the entities that are the result of the original query. Our current implementation has to divide that into separate operations, which is quite expensive. The new algorithm is very promising. However, we have to propagate its usage along all of our in-game systems to reap the benefits. It is one of the major tasks that are ongoing at the moment, and we hope to be able to report the results to you soon.
Another ‘big thing’ our programmers are working on is an entirely new dependency system within the EntityComponentSystem. Right now, when two entities make use of the same data, each of them has to create a copy of that data for ‘personal’ use, essentially wasting memory. While we are talking about sub-kilobyte numbers here, this number quickly adds up in a game like The Riftbreaker, where we often deal with hundreds of thousands of entities on one map. With this new system in place, entities will be able to share data with each other without the need to make a copy beforehand. This will reduce the amount of RAM needed by the game, make data reading quicker, and will positively impact the network transfer volumes.
We know that most of you would only like to hear the answer to a single question - when is coop going to be ready? The honest answer is that we don’t know yet. Looking back at the amount of work that we’ve poured into the online co-op, we can easily say that it already equals making a small game, and there’s already quite a bit of work to be done and a lot of unknown factors at play.
Our “immediate” goal is to achieve a stable multiplayer build with most of the game’s single-player functionality working in multiplayer through a local network. The biggest tasks that are required to achieve this milestone is - improving multiplayer CPU performance, reducing data transfer, and achieving full stability and feature parity.
As you can see, we have a clear vision and plans on how to make the co-op mode in The Riftbreaker a reality. The only thing we are asking in return is patience - we are doing our best to let you play the game with your friends as soon as possible. If you want to monitor our progress closer, visit our Discord at www.discord.gg/exorstudios and talk to us! We’re here to answer all your questions. You can also check out our streams every Tuesday and Thursday at 3 PM CEST over at www.twitch.tv/exorstudios - we try to stream our co-op tests as often as possible.
Greetings, as promised in the latest state of development, in this event you will find the release date of the Final Chapter, Q&A, and the soundtrack disc 4 tracklist as well, so without further ado let's start with the Finale trailers.
Video Subject: Finale Gameplay Trailer
Video Subject: Finale Story Trailer
What is the size of the next transition/update?
The next update's size is going to be between 2.1GB to 2.6 GB.
Knowing that this is the final chapter, what is the level cap for each party member?
All the party members' max level is 99.
How long is the Finale compared to the previous chapters?
Let's say the finale is 3 times the full Prolepsis.
How close the Final Early Access phase will be to the launch version?
There is not much difference, the Final E.A Phase will start at 0.9.X so it is as close to launch as it can be in a matter of gameplay and optional events/activities.
When will the Final Chapter be released?
If you decided not to watch the trailers above, then the release date is:
August 4th, 2023
The Final Chapter, titled Knights of the Alder Forge as mentioned in the game's announcement, March 2021, will conclude all the paths and storylines, including the Guiding Box, the Binding Ritual, the secrets of the Twelve, the Netherwave Sangréal, and the dark truths about the world you live in.
For members of the Alder Forge community who owns the Soundtrack DLC, disc 4 will also be released on August 4th, 2023, similar to all the previous transitions and will include all the soundtracks from the final chapter's battles, environment, and specials.
Video Subject: Soundtrack & Environment Preview from the Finale
The sum of all gameplay additions, optional events, and updates that happened during early access Phase 3 will be listed in the upcoming transition's manifest, and the plans for the final early access phase as well.
Thank you for the time invested in this world, story, and characters.