The Forge is currently under construction. Data is synchronized with the hub every 30 minutes. Help report issues!

Mod Details

SWAG + Donuts - Dynamic Spawn Waves and Custom Spawn Points

SWAG + Donuts - Dynamic Spawn Waves and Custom Spawn Points 4.0.0

Created by Arys, Props, nooky

425.6K Downloads

SPT 3.10.5 Compatible

Spawn bots anywhere - Reserve D2, Customs Crackhouse, exfils, etc. - all possible with a custom spawn point editor and dynamic spawns. Custom spawn presets, spawn options and much more. Want total spawn unpredictability and freedom? This mod is for you.

SPT 3.10.x ONLY REQUIRED MODS FOR SWAG + DONUTS
Waypoints by DrakiaXYZ

Unity Toolkit by Arys

STRONGLY RECOMMENDED MODS

SAIN by Solarint
Looting Bots by Skwizzy
Questing Bots by DanW
Unicorn (for more spawn points)by PenOkOh

None of this would be possible without PROPS, the creator of SWAG and DONUTS

**SWAG (Simple Wave AI Generator)**is a server mod that enhances the spawns in your SPT raids by giving you full control over each and every bot that spawns. This mod comes with a full set of spawn "patterns" built-in so all you have to do is install and play.

DONUTS is a client mod that provides a full in-raid spawn point editor and dynamic spawn system. Donuts comes with a full set of spawn "patterns" specifically created with and for Donuts built-in so all you have to do is install and play.

Together, SWAG + DONUTS provide complete spawn control, unpredictability and freedom. Bots in D2. Crackhouse. Streets Apartments. Interchange Railway. Exfils. Anywhere.

eR5yQ2Y.png5Lmv0eA.png

What is SWAG + Donuts?**

SWAG + Donuts is a complete overhaul of the SPT bot spawning system. If you're not a fan of vanilla spawns for whatever reason then this is the mod for you. SWAG + Donuts is a combination of client (Donuts) and server (SWAG) mods that each handle certain parts of the spawning system in SPT in various ways and offer a wide variety of flexibility and config options. All PMC and SCAV spawn points are completely custom made for all maps and can be modified with many different parameters.

By default, SWAG + Donuts is packaged with a set of "spawn presets" that you can select in-game (F8 for GUI) among lots of other options you can tinker with, some you can toggle on/off mid-raid.

This is a big mod and be complicated for some - fear not, if all you want is to install a cool spawn mod and just play then you can do just that, the defaults are mostly tuned for a live-like experience. If you prefer that PMCs do NOT respawn during a raid then be sure to select any of the "starting-pmcs-only-*" presets from the Donuts F12 menu.

Features include

- in-game GUI (F9 default)

- custom spawn points and custom zones for all maps, created with a built-in spawn point editor

- various "spawn presets" available or create your own

- options for spawns you can toggle mid-raid, such as force bot type, spawn hard cap, hot spot boost and more (more info on these options below).

- add, remove, change any boss spawns or other bot types (add all bosses to all maps, spawn 10 Kabans and everywhere in-between)

- in-raid custom spawn point editor - edit parameters such as spawn timers, bot count, spawn distance from the player
- adjust bot squad size and chance, max PMC/SCAV counts per map, per preset and much more

qiEy4kI.png

For more info. please see the DONUTS and SWAG tabs above.

How To Install

If you have a previously installed version - I highly recommend you do a "fresh install" - completely uninstall the mod first. Just be sure to save any settings you have created or changed.

1. Download the zip from the link on this mod page

2. Extract to your SPT folder

3. Play

How To Uninstall

1. Delete 'SWAG' from user/mods

2. Delete 'dvize.Donuts' from BepInEx/plugins

3. Clear your temp files (via SPT launcher) just in case

Mod Compatibility

Any mod that changes SPAWNS is likely NOT compatible with SWAG

IF YOU USE REALISM MOD

first, make sure you have the latest REALISM installed. If you do then Realism will config everything for you - no changes needed.

If you want to use Realism Boss changes with SWAG:

go to the SWAG config.json and change these to true:

9ypRnzY.png

**IF YOU USE SVM (Server Value Modifier)

Any of the following options should be DISABLED and are NOT compatible with this mod:

- any options under 'Events' (spawn related stuff)
- any options in the 'Bots' tab

**Donuts Main Settings

DHdWNFm.png

Donuts On/Off**

(default: Enabled)

Enables or disables Donuts completely. This must be toggled before a raid.

Despawn Option

(default: Enabled)

If enabled, any PMCs or SCAVs that spawn over your Donuts presets caps will be despawned on a 10 second interval down to your max cap. Note: despawning only occurs after a spawn points has been triggered, there may be brief periods of time where your bot count will be inflated. If you're not a fan of despawning please see the Hard Cap option below.

If disabled, Donuts spawns essentially have 0 max cap.

Bot Hard Cap Option

(default: Disabled)

If enabled, Donuts will skip any spawn points triggered over your Donuts preset caps. In other words, if you have an active alive bot count that is already at your Donuts preset bot limits then Donuts will skip spawns until a bot dies (sort of like vanilla).

If you do not wish to use despawning then I highly suggest using this option instead. You can also use both options along with the hotspot options in the Advanced Settings (see Advanced Settings section below)

Cool Down Timer

(default: 300 seconds)

Donuts spawn global cooldown. This number defines the time period that occurs after a spawn points is triggered and the max bots before cooldown value has been met (see: Donuts Spawn Point Config Explained). Once this time has passed then the spawn point can be triggered again.

Donuts PMC Group Chance

(default: Default)

This is a string value that defines the probabilities of certain PMC squad sizes. By default, all Donuts PMC spawn points are configured to spawn up to 5 bots, however, this can be changed to any number.Default is "Default", which is balanced set of probabilities for a live-like experience. "Max" forces the max possible number of bots configured by that spawn point (so, 5 bots by default). "None" forces all bots to spawn solo. All of these probabilities are configurable (see: Donuts Advanced Settings)

Donuts SCAV Group Chance

(default: Default)

Same as PMC Group Chance

Donuts PMC Spawn Difficulty

(default: Normal)

This defines the base game difficulty that is applied to your bot spawns. This is not the same as SAIN difficulty. Donuts dificulty is the same as base game difficulty, this option simply provides a more flexible way to define difficulty for your spawns separated by bot type.

Donuts SCAV Spawn Difficulty

(default: Normal)

Same as above.

Other Bot Type Spawn Difficulty

(default: Normal)

Same as above. Note: This applies to all bots other than PMCs and SCAVs that are spawned by Donuts, not SWAG.

**PMC Raid Preset Selection

(default: Live Like (Random))

Select a Donuts spawn preset here. Choose from any of the pre-packaged spawn presets that come with the mod or feel free to experiment and create your own. Default is the Live Like (Random) preset, which is a random pool of live-like presets (more info please see: Donuts Presets Explained)

SCAV Raid Preset Selection**

(default: scav-raids)

Same as above but specifically for SCAV raids. Default is the "scav-raids" preset specifically balaned for SCAV raids.

Show Scenario Selection

(default: Enabled)

If enabled, shows the preset being selected at the bottom-right of your screen when you load into a raid.

vvvvvvv FOR OTHER OPTIONS PLEASE KEEP READING BELOW vvvvvvv

Donuts Additional Spawn Settings

TADFneZ.png

Force PMC Faction (default: Default)
Forces a certain PMC faction, if desired. Default is random USEC or BEAR. Can be toggled mid-raid.
Force Bot Type for All Spawns (default: Disabled)

Forces a specific bot type for all spawns. Can be toggled mid-raid.

Max Respawns for PMC/SCAV per Raid (default: 0 - unlimited)
Sets a limit on how many PMC/SCAVs can respawn during a raid. Default is 0 which is no limit. Spawn Hard Stop
Hard Stop: Time Left in Raid
(default: Disabled, 300 seconds)
If enabled, Donuts will stop spawning PMCs or SCAVs once ther eis n time left in your raid (defined by Time Left in Raid). Hot Spot Spawn Boost (default: Disabled)
If enabled, forces all hot spot spawn points to have a 100% chance to spawn (if triggered). Hot Spot Ignore Hard Cap (default: Disabled)
If enabled, all hot spot spawns ignore the Donuts hard cap (if enabled, see above). I recommend using the following for an optimial experience while saving some frames:

Despawn Enabled
Hard Stop Enabled
Hot Spot Boost Enabled
Hot Spot Ignore Hard Cap Enabled
Use Global Min Distance From Player
(default: Enabled)
If enabled, you can set the minimum distance (in meters) that bots should spawn away from the player (you). This option must be enabled for the values for maps to work.

Use Global Min Distance From Other Bots

(default: Enabled)

If enabled, you can set the minimum distance (in meters) that bots should spawn away from other bot spawns. This is useful if you want to avoid bots spawning too close to each other and killing each other too quickly. This option must be enabled for the values for maps to work.

Donuts Advanced Settings

**M4fqlgu.png

Raid Load Time Delay** (default: 60 seconds)
This is the amount of time (in seconds) that Donuts is allowed to generate bot data during raid load. This is important for your starting bots to spawn with you, at the same time.

If this delay is too short then some bots may spawn late at the start. A longer delay means your raid load might take a little longer but your spawns should be more stable at the start. Bot Cache Replenish Interval (default: 10 seconds)
This is the time interval that Donuts "replenshes" bot data - in other words, Donuts generates bot data on a regular interval so that most of your bot spawns are instant. Max Spawn Tries Per Bot
(default: 20)
Maximum number of times Donuts will try to spawn a bot (if it fails) before it skips. You generally never need to change this unless you know what you're doing.

Despawn Bot Interval
(default: 15 seconds)
This is the time interval that Donuts despawns bots (if enabled). Too short and your may experience a minor performance loss. Too long and Donuts may not be despawning bots fast enough - it depends on your settings.
Group Chance Weight Distribution
Low, Default, High
This defines the probabilities of certain group sizes separated by option.
Formula: individual weight / total weight = % chance

Example:
Default: 210, 210, 45, 25, 10
Group sizes of: 1, 2, 3, 4, 5 respectively
Total weight: 210 + 210 + 45 + 25 + 10 = 500

Solo bot spawn: 210 / 500 = 0.42 = 42%
5-man: 10 / 500 = 0.02 = 2%
etc...

Spawn Point Editor
If you plan to use the spawn point editor be sure to set key binds for creating and deleting spawn marker keys (see above screenshot).

For details on all parameters please see the section below: Donuts Spawn Point Parameters Explained

Donuts - Presets Explained

RANDOM PRESETS

Random presets are a collection of presets that are chosen at random given the weights defined by you.

The configs for these can be found here: BepInEx\plugins\dvize.Donuts\RandomScenarioconfig.json

Live Like

An equal chance for any of the live-like presets (live-like, alt2, alt3, alt4)

Starting PMCs Only

An equal chance for either of the starting-pmcs-only-live-like presets

Whole Lotta SCAVs

An equal chance for either of the morescavs presets with a small chance for "all-scavs"

ALL PRESETS

Any of the following presets can be selected from the Donuts F12 menu. Simply select a preset of your choice before the next raid and play, no need to set it every time.

live-like, live-like-alt

Presets that aim to provide a "live-like" experience with PMC respawns. live-like-alt has different starting bot spawn locations. If you do not wish to have PMC respawns in your raids then try starting-pmcs-only presets!

crazyraids
Increased spawn frequency on all maps, for all spawns, ~80-90% chance to spawn for each and all spawns. if the live-like presets don't offer enough action for you then try this.

impossibleraids

Increased spawn frequency on all maps to 100% for all spawns - if crazyraids doesn't offer enough action for you then try this.

quietraids

Decreased spawn frequency on all maps - for a more relaxed Tarky experience.

starting-pmcs-only-live-like, starting-pmcs-only-live-like-alt

Only spawn PMCs at the start - no PMC respawns. Alt version spawns starting PMCs at more random locations.

starting-pmcs-only-morescavs

Starting pmcs only but with more scavs.morepmcs

"live-like" but with more PMCs, fewer SCAVs. Good for PMC kill quests.

morescavs

"live-like" but with more SCAVs, fewer PMCs. Good for SCAV kill quests.

scav-raids

Live-like but with a minor twist - PMC spawns are sprinkled throughout maps rather than at live starting locations to simulate a SCAV entering mid-raid.

Donuts Spawn Point Parameters Explained

"MapName" - name of the map. be sure you use proper names, i.e. "bigmap" for Customs

"GroupNum" - spawn group. all spawns with the same GroupNum will share one trigger. in other words, if you have 3 spawn points in one group, and one of those trigger, then the other 2 won't.

"Name" - name of spawn. you can name them whatever you want

"Position": { - x,y,z coordinates of spawn position. this is provided by the in-raid spawn point editor

"x": 89.5103455,

"y": 4.672584,

"z": -158.156723

}

"WildSpawnType" - bot type, i.e. pmc, sptusec, assault, etc.

"MinDistance" - min spawn point radius (can be 0)

"MaxDistance" - max spawn point radius - this is the size of the spawn point. when using the spawn editor, enable "real size" markers to see the actual radius of your spawn point

"MaxRandomNumBots" - max number of bots to spawn. this is 1-max inclusive and it's random

"BotTriggerDistance" - distance to player for spawn trigger. once the player is within this distance then the spawn timer will start

"BotTimerTrigger" - spawn timer. if the player is within trigger distance this timer will continue to run

"SpawnChance" - spawn chance %

"MaxSpawnsBeforeCooldown" - once this many bots have spawned the spawn point will enter a cooldown (wait for 180s, default, configurable in F12 menu)

"IgnoreTimerFirstSpawn" - if true, once player is within BotTriggerDistance the spawn will trigger regardless of timer. If false, the timer must run at least once for the first spawn trigger.

"MinSpawnDistanceFromPlayer" - the min distance from player that bots should spawn. this is to hopefully prevent bots spawning too close to you.

---

The Rules of DONUTS

Rules

1. Bots will only spawn in same level/height as the spawn marker

2. Bots will only spawn in maximum distance (radius) around the spawn marker

3. One random spawn marker will be picked in a group

- if the timer is passed its eligible to spawn (Unless IgnoreTimerFirstSpawn is true for the point. It will be set to false after a successful spawn)

- if they are within the BotTimerTrigger distance the point is eligible to spawn.

- If the SpawnChance is reached, it is eligible to spawn.

- Validate that the spawn is not in a wall, in the air, in the player's line of site, minimum distance from the player. It will attempt to find a valid point up to the Bepinex Configured Max Tries specified.

- One to MaxRandomNumBots from the Spawn Marker info will be generated of type WildSpawnType

4. Timers will be reset if there is a successful spawn or a failure from within a group.

5. If a spawn sucessfully spawns up to their MaxSpawnsBeforeCooldown number, then it is in 'cooldown' until the timer specified in the bepinex config is reached.

Assumptions

- Spawns within a group will be on/around the same bot trigger distance otherwise only the closest spawn will be enabled.

- Each unique or standalone spawn should be given its own group number.

**Donuts - Not Enough Bots? Too Many? - Start and Wave files Explained, ScenarioConfig, RandomScenarioConfig Explained

Donuts spawns bots using two json config files defined per map located here: dvize.Donuts\patterns\<preset_name>\map_waves.json or map_start.json

_start: This is your starting bots config

bsSnmqK.png

MinCount, MaxCount: This is the range of ALL starting bots for that type
MinGroupSize, MaxGroupSize: This is the range of group size for each starting spawn
Zones: Spawn zones - Donuts will select a random set of coordinates from each zone defined here. For starting bots specifically, Donuts will use each Zone until all points have been used then Donuts will repeat points afterward. For more info on custom zones and how to use them please see the section below: Donuts Custom Zones

_waves: These are all of your bot waves for each map

N0VDdAg.png

Please see the section Donuts Spawn Point Parameters Explained for more info on these parameters.

ScenarioConfig file defines all of the PMC and SCAV max bot caps for each map, for all presets. If you want to change the number of total PMCs and/or SCAVs in your raids then this is where you would do it. If you create a new preset be sure to add it to this file.

RandomScenarioConfig file defines "random pool" packages of presets that you can randomly cycle through. You can create a new random pool in this file, add any presets you want (try adding all of them, why not) and give each preset a weight. Weights work like this: individual weight / total weight = % chance

Then select the random preset pool from the preset selector in the Donuts F12 menu.

Donuts Custom Zones

All Donuts spawn points are hand-created and completely customizable. All spawn points are defined here: dvize.Donuts\zoneSpawnPoints
Each map contains a list of custom zones that each have their own list of coordinates (created by the Donuts spawn point editor). You can add/change/remove any zones or spawn points.

Example: customs_start.json

3jOVlGb.png

Hotspot Example:

ueDI6pt.png

How to use custom zones and zone keywords

Once you have zones and spawn points defined (like the above) you can use those zones in the Donuts pattern spawn files
i.e. customs_waves.json:

1UQdKG0.png

You can specify zones by zone name or use a built-in zone keyword:

- "start": uses all zones defined in the _start.json zone spawn point files

- "hotspot": uses all zones labeled with "hotspot" anywhere in the name

- "all" : uses all zones listed in the zone spawn point file for the corresponding map

Donuts Custom Zone Maps

Woods

rtcgErg.png

Ground Zero

IBD2WEK.png

Shoreline

IkWGlvY.png

Interchange

mz7gz5f.jpg

Customs

rdNxsyf.png

Lighthouse

vCfuNNq.png

Streets

PWFcbkS.png

SWAG Config and Boss Config

For General SWAG options: user\mods\SWAG\config\config.json

For Boss options: user\mods\SWAG\config\bossConfig.json

For spawn configs (to modify, add, remove):

Named bosses (Killa, Tagilla, etc.)
user\mods\SWAG\config\bosses\

Other "bosses" (Raiders, Rogues, Cultists, SCAV snipers, etc.)

user\mods\SWAG\config\other\

"Custom" bosses and Event bosses (Santa, Punisher mod boss, etc.)

user\mods\SWAG\config\custom\

SWAG config.json Options Explained

CVybclW.png

disableAllSpawns

Quick way of disabling all of a certain type of spawns. If true, then all spawn chances for that type are set to 0 for all maps.

bossDifficulty

bossEscortDifficulty

In-game difficulty that gets assigned to bosses and their guards - "asonline", "easy", "normal", "hard", "impossible" are all valid options. "asonline" randomly chooses between easy, normal, hard and impossible.

Spawns - useGlobalSpawnChance

XA9wirY.png

if true (default) then the spawn chances defined per map (see above) are used. If false, then the spawn chance defined in the boss config files are used instead.

By default, SWAG adds all bot types to all maps, however, they're only configured to spawn once at the start of the raid in a random zone (default). This is entirely configurable, as well as adding more bosses if you wish (see: SWAG: How-To - Modifying boss spawn configs).

For example, if you quickly wanted to add more cultists to other maps, simply change the above numbers and you're set. If you want to change up when and where they spawn then that's where modifying spawn configs comes in.

SWAG bossConfig.json Options Explained

TotalBossesPerMap
If set to -1 (default), then any number of bosses can spawn. If set to 0, then no bosses spawn. If set to 1 for example, then only 1 boss can spawn. If you have multiple bosses set to spawn for one map then SWAG will randomly pick one.

DkJXKxC.png

Boss Spawns - useGlobalBossSpawnChance
W69WGQ8.png

By default, SWAG adds all bot types to all maps, however, they're only configured to spawn once at the start of the raid in a random zone (default). This is entirely configurable, as well as adding more bosses if you wish (see: SWAG: How-To - Modifying boss spawn configs).

For example, if you quickly wanted to add more gluhar to other maps, simply change the above numbers and you're set. If you want to change up when and where they spawn then that's where modifying spawn configs comes in.

SWAG: How-To - Modifying boss spawn configs

All bosses in SWAG are pre-configured for all maps. By default, bosses are configured to spawn on other maps with a random zone and at time -1 (see examples below)

DzAnrnE.png

Example: gluhar

pPzip5D.png And so on. You can add, remove or change any of the boss files to your liking but they must be valid values, otherwise **you will experience problems.

FAQ

How do I know this mod is actually working?

Two ways - you'll see some SWAG load up in your server console along with your server mods (and hopefully no red text)

Additionally, you need to check that Donuts shows up in your BepInEx F12 menu, if it doesn't then it's not installed correctly

Is this mod compatible with x, y, z?

See: Mod Compatibility tab above

Can I use base game vanilla spawns with this mod?

No - once upon time this mod supported that but I no longer want to maintain an old spawning system. If you prefer base game spawns I highly recommend BetterSpawnsPlus by PreyToLive or other spawn mods.

Does this mod impact performance?

Short answer is yes. The longer answer is it can make both a positive and negative impact on your performance depending on your settings. For example, if you used lower bot caps, tweaked some presets to spawn bots closer to you, etc, you can save a lot on frames. The despawn and hard cap options also help in this regard.

I like long raids (60 min+), will these spawns work for me?

Yes - SWAG + Donuts spawns go on forever, raid time is irrelevant.

REMINDER - THIS IS A WORK IN PROGRESS - I'm always open for improvements, please give me feedback in the comments or find me in the SPT Discord!

https://youtu.be/nKBlWAEyuow?si=6iKBwU6UCQ_nW4rs

https://youtu.be/yRSzwaKDyIY?si=95icVhLmzcVW4MPK

https://youtu.be/LYXEa1RAF3I?si=psgYxHSg7zMWfwmx

https://youtu.be/6KEffBsEXXA?si=u-hWVlKARnWibWq4

https://www.youtube.com/watch?v=EVfAYaU3C2c

Version 4.0.0

SPT 3.10.5

18.3K Downloads

Created Feb 21st, 11:25 PM

Updated Feb 21st, 11:25 PM

Virus Total Results

SPT 3.10.x ONLY

REQUIRED:

**UnityToolkit V1.2.0

Waypoints

SWAG + Donuts v4.0.0 for SPT 3.10.x

Summary of changes

  • Complete rewrite of Donuts code
  • Spawns are more consistent now, no more boss spawn issues unlike in SPT 3.9
  • Improved performance
  • Added debugging option for users to verify spawns are working as intended

Known issues

  • The Donuts F9 configuration menu's background may become transparent during or after a raid
    • Will be fixed when the UI gets reworked
  • The "Force All Bot Type" setting does not work correctly when set to any option other than "Disabled" (the default setting)

Thanks to

  • Shibdib: fixed up SWAG-related issues such as boss and raider spawns
  • Lacyway: fixed issues relating to Fika compatibility
  • MaTSix: as a SWAGnuts preset maker, provided excellent feedback to help fix issues with the mod
  • Huge thanks to all the testers, for providing feedback in each Release Candidate build
  • And of course, big thanks to Nooky and Props for making SWAGnuts, this update wouldn't be possible without their work in the first place!

See full changes here: https://github.com/Nympfonic/Donuts/releases/tag/v4.0.0

mgs-mgsv.gif

Version 3.5.1

Unknown SPT Version

105.9K Downloads

Created Jul 23rd, 2024

Updated Jul 23rd, 2024

Virus Total Results

SPT 3.9.x ONLY

SWAG + Donuts v3.5.1 for SPT 3.9.x

Huge thanks to props and Archangel from the Fika discord for their hard work!

IF YOU HAVE PREVIOUSLY INSTALLED SWAG + DONUTS PLEASE READ:

Delete this folder first: <YOUR_SPT_FOLDER\BepInEx\plugins\dvize.Donuts\Config

Donuts will recreate this with updated default settings. If you wish to keep your old Donuts settings then you do not have to do this step but I highly recommend it as many default values have changed.

Fixes

- fixed spawn chance checks: Donuts would continuously check the same point that would result in low spawn chance points spawning bots anyway

- fixed random preset selection not working as intended

- fixed slow bot prep/raid load on subsequent raids

- fixed list of coordinates per selected zone note being properly randomized

- fixed starting bot available zones not getting reset properly after all zones were used (resulting in some number of starting bots not spawning in some cases)

Other Changes

- global minimum spawn distance to player/bots improvements - this check should be faster overall for solo bots especially; spawn point selection by Donuts is a little smarter now, if a coordinate is too close then Donuts will retry the next coordinate defined to that zone (at random) until all coordinates have been exhausted, then it fails that zone and moves on to the next spawn.

- global min spawn distance to player/bots now ENABLED by default again, sorry for the close bots

- global min spawn distance to player/bots values adjusted

- added presets: crazyraids, starting-pmcs-only-quietraids

- added new spawn points to Factory, Lighthouse

- added new starting spawn points to Ground Zero

- PMC Donuts bot caps increased slightly for all starting-pmcs-only presets

- PMC Donuts bot caps increased slightly for morepmcs preset

- SCAV Donuts bot caps increased slightly for morescavs preset

- Max Spawn Tries Per Bot (advanced settings) is now set to 1 by default

- code optimizations

- SWAG: added options for Ground Zero High Level. Kollontay and Cultists have a chance to spawn by default.

Known Issues

- Boss problems: I'm aware there are some users experiencing issues with boss spawns, it doesn't affect everyone so it's difficult to troubleshoot but it's on my to-do list!

Version 3.5.0

Unknown SPT Version

19.9K Downloads

Created Jul 14th, 2024

Updated Jul 14th, 2024

Virus Total Results

SPT 3.9.0-3.9.1 ONLY

SWAG + Donuts v3.5.0 for SPT 3.9.0-3.9.1 SWAG + Donuts v3.4.0 for SPT 3.8.x

Sorry everyone for the wait, I hope it was worth it. 8)

A huge thank you as always to props, this update would not have been possible without him.

SWAG + Donuts now requires Unity Toolkit by Arys (in addition to Waypoints). Please download and install that first!
UnityToolkit

Unity Toolkit allows for more performant and optimized code in SWAG + Donuts, a huge thanks to Arys for developing this!

For SPT 3.9.x ONLY: Please use DanW (Author of Questing Bots) AI Hostility Fix mod to fix buggy base game AI hostility: https://github.com/dwesterwick/SPTAIHostilityFix/releases/tag/1.0.0
Please use the hub release of this once that is ready.

IF YOU HAVE PREVIOUSLY INSTALLED SWAG + DONUTS:

You must uninstall and delete all SWAG + Donuts files first! All mod folders in addition to the BepInEx mod config file- com.dvize.Donuts.cfg file from BepInEx\config folder must be deleted.

MAJOR CHANGES

NEW: In-game GUI

Donuts now has a GUI (all credit goes to props!). Accessible with F9 by default.

qiEy4kI.png

NEW: zoneSpawnPoints folder

This new folder contains all the spawn points available for Donuts to use. Each spawn points is assigned to a custom zone (defined by you). These spawn points and zones are used by the new spawn config files (read below). All spawn points are entirely configurable, feel free to add/change/remove any as you see fit or try creating your own.

NEW: map_start.json, map_waves.json files (patterns folders)

map_start - configs for all starting bots, PMC and SCAV.

map_waves - configs for all bot waves/respawns

For details on how these work please see the mod page > Donuts tab.

NEW: Max PMC/SCAV Respawns per Raid

You can now set the maximum number of PMC/SCAV respawns in each raid. Default is 0 which is unlimited.

NEW: Despawn Interval & Replenish Bot Interval

You can now change the interval at which Donuts despawns bots. Previously this was 10 seconds, now the default is 15 seconds.

Replenish Bot Interval is the frequency at which Donuts generates bot data during a raid for later use (so that bots spawn immediately when triggered).

OTHER CHANGES

- global minimum distance options are now DISABLED by default. if you don't want bots spawning too close to you then you need to enable this! keep in mind when using this option that if Donuts detects the spawn point is too close then it will skip that spawn entirely.

- performance improvements and code optimizations (thank you props, Arys for Unity Toolkit!)

- start of raid performance improvements: Donuts now only generates bot data it needs as defined by your starting bots configs. In other words, if you use lower bot counts/caps then Donuts needs to do less work = more performance.

- all presets have been changed to the new spawn config system; some presets have been removed

- SWAG: TotalBossesPerMap for all maps changed to from 1 to -1, this means any number of bosses can spawn per raid. If you do not want the chance of multiple bosses spawning in your raids then you need to change this!

FIXES

- fixed cooldown timers not working as expected

- fixed some grouped timers from not being reset properly resulting in too many spawns in some cases

- fixed bots sometimes "leaking" through the hard cap

- lots of other minor fixes, I forgot them all to be honest

Version 3.4.0

Unknown SPT Version

2.7K Downloads

Created Jul 14th, 2024

Updated Jul 14th, 2024

Virus Total Results

SPT 3.8.x ONLY

SWAG + Donuts v3.4.0 for SPT 3.8.x

For all who have been waiting so patiently, this one is for you. Please read the SWAG + Donuts v3.5.0 for SPT 3.9.0 changelog for a full list of changes.

Version 3.3.5

Unknown SPT Version

80.1K Downloads

Created Apr 27th, 2024

Updated Apr 27th, 2024

Virus Total Results

SPT 3.8.0 ONLY

This update includes performance improvements, bug fixes and some new stuff.

Performance Improvements

Some Donuts code has been refactored from running every frame and instead runs every second which should provide a significant performance boost. Huge thanks to Chomp for the idea and DanW (Questing Bots mod author) for using some of their code!

Global Minimum Spawn Distance From Player Improvements

Before this update the code for checking player distance from bots was slow at certain times which would still cause certain bots to spawn too close to the player. Now this code has been improved greatly so that it checks this distance value just before the bot is ready to spawn instead of earlier in the process which makes this check far more accurate.

NEW: Global Minimum Spawn Distance From Other Bots (Optional)

Similar to Distance From Player, these values set a minimum distance that bots can spawn from each other. If this check fails then that spawn will be skipped. Default is disabled.

NEW: Set your own Despawn Interval (Advanced Settings, Optional)

Under the BepInEx Advanced Settings for Donuts you can adjust how fast Donuts despawns bots in your raid. By default this is set to 10 seconds. Note: lowering this value may affect your performance!

DONUTS PRESETS

All spawn points re-balanced

SWAG

all boss spawn chances updated to match live (Kollontay added to Ground Zero)

Version 3.3.4

Unknown SPT Version

18.3K Downloads

Created Apr 13th, 2024

Updated Apr 13th, 2024

Virus Total Results

SPT 3.8.0 ONLY

This in a minor update that adds compatibility and support for Punisher mod by GrooveypenguinX and Raid Overhaul mod by DjLang for custom bosses.

NEW: Legion - Raid Overhaul Custom Boss

The future SPT 3.8 update of Raid Overhaul will include a custom boss, Legion. To enable, go to bossConfig and scroll down to custom bosses. For more info, stay tuned for the new RO update 8) (thank you DjLang!)

OTHER CHANGES

- Punisher compatibility improvements for SPT 3.8 (contributor: GrooveypenguinX)

- Labs added to Killa in bossConfig (was previously missing)