mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-05 22:43:46 +00:00
About The Pull Request Extools maptick stuff is in the game. Stolen from BeeStation/BeeStation-Hornet#1119, improves performance. Requires ex-tools on the server, though. Explosions have been refactored to do the actual exploding in a subsystem. Credit to goon. Here's some videos! Why It's Good For The Game Basically instant max-caps now. We can now give more of a tick over to the sending of map updates Changelog cl Goonstation Coders, Beestation, Extools devs refactor: Explosions have been heavily optimized. /cl
29 lines
1.3 KiB
Plaintext
29 lines
1.3 KiB
Plaintext
/// Percentage of tick to leave for master controller to run
|
|
#define MAPTICK_MC_MIN_RESERVE 70
|
|
/// internal_tick_usage is updated every tick by extools
|
|
#define MAPTICK_LAST_INTERNAL_TICK_USAGE ((GLOB.internal_tick_usage / world.tick_lag) * 100)
|
|
/// Tick limit while running normally
|
|
#define TICK_BYOND_RESERVE 2
|
|
#define TICK_LIMIT_RUNNING (max(100 - TICK_BYOND_RESERVE - MAPTICK_LAST_INTERNAL_TICK_USAGE, MAPTICK_MC_MIN_RESERVE))
|
|
/// Tick limit used to resume things in stoplag
|
|
#define TICK_LIMIT_TO_RUN 70
|
|
/// Tick limit for MC while running
|
|
#define TICK_LIMIT_MC 70
|
|
/// Tick limit while initializing
|
|
#define TICK_LIMIT_MC_INIT_DEFAULT (100 - TICK_BYOND_RESERVE)
|
|
|
|
/// for general usage of tick_usage
|
|
#define TICK_USAGE world.tick_usage
|
|
/// to be used where the result isn't checked
|
|
#define TICK_USAGE_REAL world.tick_usage
|
|
|
|
/// Returns true if tick_usage is above the limit
|
|
#define TICK_CHECK ( TICK_USAGE > Master.current_ticklimit )
|
|
/// runs stoplag if tick_usage is above the limit
|
|
#define CHECK_TICK ( TICK_CHECK ? stoplag() : 0 )
|
|
|
|
/// Returns true if tick usage is above 95, for high priority usage
|
|
#define TICK_CHECK_HIGH_PRIORITY ( TICK_USAGE > 95 )
|
|
/// runs stoplag if tick_usage is above 95, for high priority usage
|
|
#define CHECK_TICK_HIGH_PRIORITY ( TICK_CHECK_HIGH_PRIORITY? stoplag() : 0 )
|