Goonstation 13 - Modules - TypesDefine Details

_std/defines/lag.dm

UNTILWaits until a given condition is true, tg-style async
MIN_TICKLAGmin value ticklag can be
OVERLOADED_WORLD_TICKLAGmax value ticklag can be
SEMIOVERLOADED_WORLD_TICKLAGwhere to start ticklag if many players present
TICKLAG_DILATION_INChow ticklag much to increase by when appropriate
TICKLAG_DILATION_DEChow much to decrease by when appropriate //MBCX I DONT KNOW WHY BUT MOST VALUES CAUSE ROUNDING ERRORS, ITS VERY IMPORTANT THAT THIS REMAINS 0.2 FIOR NOW
TICKLAG_CPU_MAXwhat cpu percent is too high in the dilation check
TICKLAG_CPU_MINwhat cpu percent is low enough in the dilation check
TICKLAG_MAPCPU_MAXwhat map_cpu percent is too high in the dilation check
TICKLAG_MAPCPU_MINwhat map_cpu percent is low enough in the dilation check
TICKLAG_INCREASE_THRESHOLDnumber of times the dilation check needs to see lag in a row to slow down the ticker
TICKLAG_DECREASE_THRESHOLDnumber of times to see no lag in a row to speed up the ticker
TICKLAG_DILATE_INTERVALhow often to check for time dilation, against world.time, so counted in game ticks.
PRE_PROFILING_ENABLEDwhether we want to profile in advance of a lagspike every tick to catch relevant lagspike info
CPU_START_PROFILING_THRESHOLDwhat value must world.cpu cross upwards to trigger automatic profiling
CPU_START_PROFILING_IMMEDIATELY_THRESHOLDwhat value must world.cpu cross upwards to trigger automatic profiling but this one ignores CPU_START_PROFILING_COUNT
CPU_STOP_PROFILING_THRESHOLDwhat value must world.cpu cross downwards to stop automatic profiling
CPU_START_PROFILING_COUNThow many ticks in a row does world.cpu needs to be above the threshold to start profiling
CPU_STOP_PROFILING_COUNThow many ticks in a row does world.cpu needs to be below the threshold to stop profiling
CPU_PROFILING_ROUNDSTART_GRACE_PERIODhow long the round needs to be in progress before we can start profiling
TICK_TIME_PROFILING_THRESHOLDeven if world.cpu is normal if tick took this amount of time profiling will start
OVERLOAD_PLAYERCOUNTwhen pcount is above this number on round start, increase ticklag to OVERLOADED_WORLD_TICKLAG to try to maintain smoothness
SEMIOVERLOAD_PLAYERCOUNTwhen pcount is above this number on round start, increase ticklag to SEMIOVERLOADED_WORLD_TICKLAG to try to maintain smoothness
OSHAN_LIGHT_OVERLOADwhen pcount is above this number on game load, dont generate lighting surrounding the station because it lags the map to heck
SLOW_LIFE_PLAYERCOUNTwhenn pcount is >= this number, slow Life() processing a bit
SLOWEST_LIFE_PLAYERCOUNTwhenn pcount is >= this number, slow Life() processing a lot
DEFAULT_POOL_SIZEHow much stuff is allowed in the pools before the lifeguard throws them into the deletequeue instead. A shameful lifeguard.

Define Details

CPU_PROFILING_ROUNDSTART_GRACE_PERIOD

how long the round needs to be in progress before we can start profiling

CPU_START_PROFILING_COUNT

how many ticks in a row does world.cpu needs to be above the threshold to start profiling

CPU_START_PROFILING_IMMEDIATELY_THRESHOLD

what value must world.cpu cross upwards to trigger automatic profiling but this one ignores CPU_START_PROFILING_COUNT

CPU_START_PROFILING_THRESHOLD

what value must world.cpu cross upwards to trigger automatic profiling

CPU_STOP_PROFILING_COUNT

how many ticks in a row does world.cpu needs to be below the threshold to stop profiling

CPU_STOP_PROFILING_THRESHOLD

what value must world.cpu cross downwards to stop automatic profiling

DEFAULT_POOL_SIZE

How much stuff is allowed in the pools before the lifeguard throws them into the deletequeue instead. A shameful lifeguard.

MIN_TICKLAG

min value ticklag can be

OSHAN_LIGHT_OVERLOAD

when pcount is above this number on game load, dont generate lighting surrounding the station because it lags the map to heck

OVERLOADED_WORLD_TICKLAG

max value ticklag can be

OVERLOAD_PLAYERCOUNT

when pcount is above this number on round start, increase ticklag to OVERLOADED_WORLD_TICKLAG to try to maintain smoothness

PRE_PROFILING_ENABLED

whether we want to profile in advance of a lagspike every tick to catch relevant lagspike info

SEMIOVERLOADED_WORLD_TICKLAG

where to start ticklag if many players present

SEMIOVERLOAD_PLAYERCOUNT

when pcount is above this number on round start, increase ticklag to SEMIOVERLOADED_WORLD_TICKLAG to try to maintain smoothness

SLOWEST_LIFE_PLAYERCOUNT

whenn pcount is >= this number, slow Life() processing a lot

SLOW_LIFE_PLAYERCOUNT

whenn pcount is >= this number, slow Life() processing a bit

TICKLAG_CPU_MAX

what cpu percent is too high in the dilation check

TICKLAG_CPU_MIN

what cpu percent is low enough in the dilation check

TICKLAG_DECREASE_THRESHOLD

number of times to see no lag in a row to speed up the ticker

TICKLAG_DILATE_INTERVAL

how often to check for time dilation, against world.time, so counted in game ticks.

TICKLAG_DILATION_DEC

how much to decrease by when appropriate //MBCX I DONT KNOW WHY BUT MOST VALUES CAUSE ROUNDING ERRORS, ITS VERY IMPORTANT THAT THIS REMAINS 0.2 FIOR NOW

TICKLAG_DILATION_INC

how ticklag much to increase by when appropriate

TICKLAG_INCREASE_THRESHOLD

number of times the dilation check needs to see lag in a row to slow down the ticker

TICKLAG_MAPCPU_MAX

what map_cpu percent is too high in the dilation check

TICKLAG_MAPCPU_MIN

what map_cpu percent is low enough in the dilation check

TICK_TIME_PROFILING_THRESHOLD

even if world.cpu is normal if tick took this amount of time profiling will start

UNTIL

Waits until a given condition is true, tg-style async