Developer postOriginal post (opens in a new tab)

v1.23.0.0 update - Improved online lobby screen and significant engine improvements, including frame pacing, frame rate cap selection, multithreading, and net code

A big new update has been released for BlastZone 2! The most notable new feature in this update is a greatly improved online lobby screen. Now it is at the same level of information and presentation as other ship selection screens in the game.

In addition, there are many technical improvements to the underlying game engine. This includes improved frame pacing and framerate cap selection, which now allows for single frame increments and a much wider range of selection. This is ideal for a wide range of high refresh rate displays and adaptive-sync displays such as g-sync or freesync. To facilitate this, multithreading has been improved to support up to 6 cpu cores, or take better advantage of dual core and quad core cpu’s. This better sustains higher frame rates, which also helps lower end multicore machines to sustain playable framerates. In addition, the net code has been greatly improved to be more robust and tolerate much higher packet loss without causing bugs. For more information about this and the many other improvements and bug fixes, here are the full release notes:

  • Greatly improved the online multiplayer lobby screen -Now shows ship previews for each player -Reorganized the screen to present ship information better -Added stat bars similar to other ship selection screens
  • Updated framerate cap selection to allow for any value of the range 20-240 or unlimited -Previously only allowed for 4 fixed values of 20, 30, 60, and unlimited -Allows for increments of 1 fps for the highest precision of desired framerates -This improves support for high refresh rate and adaptive-sync displays -Allows for high refresh rate displays to take advantage of the power saving and heat reducing properties of frame rate caps without resorting to using uncapped framerates -This can also be used on standard 60hz displays with vsync off to reduce control response times without increasing heat and power consumption much
  • Multithreading improvements; Split the main game update and rendering operations into separate threads -Can now take advantage of up to 6 CPU cores/threads if available -Improves parallelism and core usage for dual core and quad core systems -Improves performance for multicore systems (up to 10% depending on the system and situation) -Doesn't adversely affect performance for single core systems -This doesn't increase control latency, which often occurs in other implementations -This is ideal for better maintaining high frame rates for high refresh rate displays or maintaining a smooth experience for lower end multicore systems
  • Improved frame pacing consistency to reduce hitching when using framerate caps -Can now maintain constant frame times with occasional variance down to 0.02ms or lower
  • Greatly improved robustness of the online multiplayer netcode -Improved packet loss tolerance in many areas, including bosses, object spawning, wave progression, and cutscene skipping -The netcode can now tolerate up to 75% constant packet loss without causing bugs and can occasionally allow for spikes up to 80% packet loss or higher
  • Added the ability for gamepads to hold the left or right direction in menus to quickly scroll left or right (previously only had this behavior for up and down)
  • Fixed a bug when pressing Escape to leave the online multiplayer lobby screen that would internally keep the game in online mode, causing a number of other bugs
  • Fixed occasional model corruption after applying new video settings in game or pressing Alt+Enter
  • Adjusted positioning of leaderboard submission text in the game over screen
  • Updated the mouse cursor draw order so it doesn't appear on top of text messages or dialog boxes
  • Screen wipes now render behind dialog boxes so they aren't obscured during cutscenes
  • Fixed slight player booster misalignment during wave/area intros and outros
  • Eliminated all Classic A/B weapon firing during wave intermissions to prevent accidental chain resets or wasting ammo
  • Updated the config program to be compatible with the new Framerate options and disabled manual value entry for most options to limit them to dropdown values
  • Upgraded to the latest Steam SDK (v1.40)

To make sure you have this update, start the game and check the lower left corner of the title screen for “v1.23.0.0” or above. Since this is a pretty big update, I would greatly appreciate any feedback including bug reports in the forums. Thanks and enjoy!