diff --git a/README.md b/README.md index 55edddd0..ef091058 100644 --- a/README.md +++ b/README.md @@ -12,3 +12,4 @@ To get an idea of what functionality you can expect to be missing [have a look t - `logger.level` can be `fatal`, `error`, `warn`, `info`, `http`, `debug`, or `trace`. - `myIrcAddresses` can be used to point to an IRC server. If not provided, defaults to `[ myAddress ]`. +- `worldState.lockTime` will lock the time provided in worldState if nonzero, e.g. `1743202800` for night in POE. diff --git a/config.json.example b/config.json.example index ef51405b..d1c93a66 100644 --- a/config.json.example +++ b/config.json.example @@ -42,6 +42,7 @@ "creditBoost": false, "affinityBoost": false, "resourceBoost": false, - "starDays": true + "starDays": true, + "lockTime": 0 } } diff --git a/src/controllers/dynamic/worldStateController.ts b/src/controllers/dynamic/worldStateController.ts index 33bc17f4..05c7f60f 100644 --- a/src/controllers/dynamic/worldStateController.ts +++ b/src/controllers/dynamic/worldStateController.ts @@ -24,7 +24,7 @@ export const worldStateController: RequestHandler = (req, res) => { typeof req.query.buildLabel == "string" ? req.query.buildLabel.split(" ").join("+") : buildConfig.buildLabel, - Time: Math.round(Date.now() / 1000), + Time: config.worldState?.lockTime || Math.round(Date.now() / 1000), Goals: [], GlobalUpgrades: [], LiteSorties: [], diff --git a/src/services/configService.ts b/src/services/configService.ts index fbf075f8..3aaa2796 100644 --- a/src/services/configService.ts +++ b/src/services/configService.ts @@ -69,6 +69,7 @@ interface IConfig { affinityBoost?: boolean; resourceBoost?: boolean; starDays?: boolean; + lockTime?: number; }; }