{
    general: {
        enabled: true,

        // Enables verbose logging for debugging. And I mean *verbose*... It will log *everything*; raid times, train
        // schedules, and every existing and newly created bot spawn wave in the system.
        debug: false,
    },

    raidTimes: {
        // Override raid times for all locations, ignoring custom times set for individual locations.
        overrideAll: false,

        // Override raid times options. Used for all maps, but only when the above `overrideAll` is set to `true`.
        //
        // These are examples of how to use the various options. If more than one option is provided, the weights are
        // used to determine how often each object is used. The higher the weight, the more often it is used relative to
        // the others.
        //
        // The minutes and weight options can be a single number, or an object with min and max values which will be
        // used to generate a random number between the two.
        //
        // You can also use a single number for the override option, which will be used for all locations, all the time:
        // override: 300, // Five hour raids
        //
        override: [
            { minutes: 60, weight: 10 }, // 60 minute raid, used 10 times more often than a weight of 1.
            { minutes: 30, weight: { min: 2, max: 5 } }, // 30 minute raid, used 2-5 times more often than a weight of 1.
            { minutes: { min: 15, max: 20 }, weight: 1 }, // 15-20 minute raid, used as often as any other weight of 1.

            // If all you want is a single long raid time, you can uncomment the following line and comment out or
            // delete the three other lines above.
            // { minutes: 360, weight: 1 }, // 6 hour raid (360 minutes).
        ],

        // Custom raid times for specific locations. Used when `overrideAll` is set to `false`.
        // The option can be a number, or an object containing minutes and weight options as described above.
        customTimes: {
            customs: 40,
            factoryDay: 19,
            factoryNight: 25,
            interchange: 40,
            laboratory: 35,
            lighthouse: 40,
            reserve: 40,
            groundZero: 27,
            shoreline: 35,
            streets: 50,
            woods: 40,
        },

        // Override scav raid times?
        overrideScav: true,
    },

    trainSchedule: {
        // Enables the automatic train schedule feature. This automatically generates a schedule for the train that fits
        // within the raid time, and ensures the train arrives with enough time for players to extract. It's *highly*
        // recommended to leave this enabled.
        auto: true,

        static: {
            // All of the following train schedule options are only used when `auto` is set to `false`.
            //
            // WARNING:
            // - If you don't know what you're doing, don't touch these options. Use the auto schedule feature instead.
            // - If the sum of the latest arrival time, wait time, train amimation time, and extraction time is greater
            //   than the resolved raid time, the train will not arrive in time for you to exit the raid.
            // - ABSOLUTLY NO SUPPORT WILL BE PROVIDED FOR USING THIS FEATURE. YOU ARE ON YOUR OWN. ¯\_(ツ)_/¯
            //
            // NOTES:
            // - Setting `arriveEarliestMinutes` to 20 will have the train arrive (at earliest) 20 minutes into raid.
            // - Setting `trainWaitSeconds` to 120 will have the train wait 120 seconds after arriving before departing.
            // - The mod will do it's best to ensure that the latest arrival time lands within the raid time if it's
            //   been set to a time later than the raid time, but I make no guarantee it will work.
            // - To have the train arrive at a specific time, every time, set `arriveEarliestMinutes` and
            //   `arriveLatestMinutes` to the same value.
            // - The defaults are the same as live; 20, 25, 420.
            arriveEarliestMinutes: 20,
            arriveLatestMinutes: 25,
            trainWaitSeconds: 420,
        },
    },
}
