Build 308 Now Live on Steam!

Posted by WasabiOne 3 years ago

A few weeks back Remi wrote up a blog called “Enter the Roadmap” and today we take the first step down that road with the release of Build 308. One of our biggest hopes is to finally take NS2 to 64bit but there are many hurdles along the way, a big one being LuaJIT. FSFOD and the other programmers have been hard at work on an upgrade to the newest version of LuaJIT and testing, testing and more testing. The upgraded JIT allows for more of the overall NS2 code to be jitted, and additional trace stitching which provides more opportunity for improving existing performance logging.

This update was delayed for further testing a couple weeks ago, but thanks to a few community server ops, playtesters and public players we have spent a lot of time this week finally ironing out the last of the major issues. However, an upgrade to a core system such as this is likely to have some sneaky bugs appear and we hope that you can get in touch with us on Discord or through tech support in the forums to help solve those issues.

CHANGELOG

Tweaks / Improvements

  • Upgraded LuaJIT to Version 2.1
    • More code is jittable now (runs slightly faster on average)
    • String operations have been improved which helps with our GUI code
    • Switched to JIT specialized table functions
  • Crash dump always saved before showing report dialogue and command line switch to enable a full dump if requested
  • Add icon which will flash on screen when a client encounters a script error

Fixes

  • Fixed Trace object field access unintentionally always failing to JIT.
  • Fixed script error when Alien Commander failed to place a Cyst
  • Fixed script error when Alien Commander failed to place a Drifter
  • Fixed script error when a ViewModel’s parent entity has been destroyed
  • Fixed that rifles sometimes cause a script error because its cinematics have already been destroyed
  • Fixed script error caused by entering hive after activating xenocide
  • Fixed script error caused by code not expecting there to be nil entries in an entity list

SDK

  • Added ErrorCallback Lua event that is fired every time there is an Lua error. The error message is passed as the first argument of the event
  • Added `display_errors` console command which will trigger a popup if there is a script error so you don’t need to dig through logs to find the first one. You can also activate this by using the `-debug` launch option.
  • Removed out of date and unusable model source assets from NS2 install. This reduces the install footprint by roughly 1.3Gb. The files can still be accessed on the “build_307” Steam branch.