Overmind uses several global constants in ~settings.ts to control its behavior, profiling, and operational modes. While many are managed automatically, certain settings can be adjusted to tune performance or enable specific modes like Reinforcement Learning (RL) training.
Profiling Settings
Profiling is computationally expensive and can cause script timeouts. You can control its impact using:
USE_PROFILER: Set to true to build from source including screeps-profiler.PROFILER_COLONY_LIMIT: Limits the number of colonies handled while profiling. Colonies above this limit are skipped.PROFILER_INCLUDE_COLONIES: A list of specific colony names to ensure are included in the random selection when profiling.
Operational Modes and Limits
DEFAULT_OPERATION_MODE: Sets the initial mode (e.g., 'automatic'). If enabled, Memory.bot will default to true.MAX_OWNED_ROOMS: The global limit for how many rooms you can claim across all shards.SHARD3_MAX_OWNED_ROOMS: A specific limit for shard3 (where CPU limits are lower).USE_TRY_CATCH: When true, wraps evaluations of constructor, init, and run phases for each colony in try...catch statements to prevent total script failure.
Reinforcement Learning (RL) Training Mode
WARNING: Enabling RL_TRAINING_MODE will wipe the contents of your memory!
When RL_TRAINING_MODE is true:
- A stripped-down version of Overmind is run, suitable for training with a Python Screeps environment.
- The main loop is disabled.
- Creeps are controlled via serialized actions communicated from the RL model through
Memory. RL_TRAINING_VERBOSITY controls console logging levels:0: No logging.1: Log every 100th or 101st tick.2: Log every tick.