Reign of Kings Update R10 has been released on Steam.
This release contains some fixes for new bugs and major changes to our Paging system. Paging has been changed to allow objects to be instantiated over time. This allows more densely populated areas of the map to be loaded in smoother. Previously loading in a dense area could cause large pauses. To allow for this, various systems had to be changed to assure that state changes on incoming objects will not be missed, as this would create desync between clients and the server. Changes were also made to treat empty areas more cleanly, thus reducing the cost of disk I/O and general garbage creation.
- Removed the steamAuthTimeout from the ServerSettings.cfg because it's no longer used.
- Fixed a bug in the steam authentication that may sometimes cause the server to crash on logout.
- Added a more useful error on the server when the steam authentication fails to initialize.
- Fixed a bug in the steam authentication that could cause the server to reject a player if they login, logout then login again really quickly.
- Improved backend logging performance
- Fixed a bug that prevented a client from connecting to a server that is hosting on a port above 32767.
- Instantiate objects over time to reduce the impact while paging
- Instantiate things in two parts to reduce the chance of breakage due to missed states
- Pool block page cells to lower the impact of block instantiation
- Update previous saved data to the current paging system
- Reduce some of the garbage produced by paging
- Create a system so that block events are delayed so state changes won’t be missed
- Reduce disk I/O by requiring disk reading so often