Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
PersistentRaids
Raid monsters keep chasing, skip far-despawn, extra events can stay active, spawners can run with nobody in the circle. Cap 220.
| Date uploaded | a week ago |
| Version | 1.0.1 |
| Download link | cjayride-PersistentRaids-1.0.1.zip |
| Downloads | 33 |
| Dependency string | cjayride-PersistentRaids-1.0.1 |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.
Preferred version: 5.4.2350README
PersistentRaids
Raid monsters keep hunting. Far-despawn blocked. Extra events can stay active. Spawners can run with nobody in the circle. Monster cap 220.
Do not combine with Expand World Events Multiple events.
Commands: persistraid clear | event | cap | boss <prefab>
Config Values
[Despawn]
Block far-from-player despawn (MoveAwayAndDespawn) and mark enemy ZDOs persistent so zone unload does not wipe them. Setting type: Boolean Default value: true NeverDespawnMonsters = true
Bosses keep hunt and persist. Setting type: Boolean Default value: true NeverDespawnBosses = true
Event creatures keep hunting after the raid timer ends. Setting type: Boolean Default value: true EventMonstersSurviveRaidEnd = true
Ignore despawn-in-day on night-spawned event creatures. Setting type: Boolean Default value: true NeverDespawnNightMonsters = true
[Filters]
Comma prefab names. Empty = all enemies. Setting type: String Default value: CreatureWhitelist =
Comma prefab names to ignore. Setting type: String Default value: CreatureBlacklist =
[General]
Master switch. Setting type: Boolean Default value: true Enabled = true
[Logging]
Log blocked despawns and extra raids. Setting type: Boolean Default value: false EnableDebugLogging = false
Log when the monster cap is hit. Setting type: Boolean Default value: true LogCapEvents = true
[MultipleRaids]
Stash the current random event when a new one starts instead of OnStop. Do not run Expand World Events Multiple events with this. Setting type: Boolean Default value: true AllowMultipleRaids = true
Treat event area checks as occupied so spawners keep rolling. Setting type: Boolean Default value: true ContinueSpawningWithoutPlayers = true
Seconds to keep the no-player spawn lie after the last player left. 0 = as long as the event timer. Setting type: Single Default value: 600 SpawnWithoutPlayersDuration = 600
[RaidChase]
Raid/event monsters keep hunt/aggro and do not give up when the event HUD ends. Setting type: Boolean Default value: true EnablePersistentChase = true
Multiplies MonsterAI max chase distance and view range. 1 = vanilla. Setting type: Single Default value: 3 ChaseRangeMultiplier = 3
Absolute chase cap in meters. 0 = multiplier only. Setting type: Single Default value: 200 MaxChaseDistance = 200
[Safety]
Hard cap on living non-player characters. Setting type: Boolean Default value: true EnableMonsterCap = true
Global living monster cap. Setting type: Int32 Default value: 220 MaxActiveMonsters = 220
0 = stop persisting new ones. 1 = despawn oldest. 2 = despawn furthest from any player. Setting type: Int32 Default value: 1 CapBehavior = 1
When no players are online, never-despawn rules are off so the server can unload. Setting type: Boolean Default value: true OnlyApplyWhilePlayersOnline = true
Minutes between cap sweeps. 0 = only on spawn. Setting type: Single Default value: 15 AutoCleanupInterval = 15
Contact
𝕏: x.com/cjayride
Discord: discord.gg/cjayride (find me at the top of the user list) "cjayride"
Twitch: twitch.tv/cjayride
AI Generated
This code was AI Generated.
CHANGELOG
Changelog
1.0.6
- ALL raid/event creatures are forced to fight: block flee, block hunt-clear, re-assert hunt+alert every AI tick. Applies to every raid (Greyling, Boar, Neck, Greydwarf, etc.), not only on spawn.
1.0.5
- Raid timers:
ContinueSpawningWithoutPlayersnow defaults off, so each Custom RaidsDurationandPauseIfNoPlayerInAreaapply as written. PersistentRaids no longer forces the event clock by default. - New optional
OverrideRaidDurations+OverrideDurationSeconds(both unused unless you turn the override on). Leave off to keep per-raid durations. - Raid creature AI: event mobs force hunt + alerted, and clear shy flee flags (
fleeIfNotAlerted, unreachable flee, low-health flee). Fixes Greylings milling around instead of fighting.
1.0.4
- Persistence is now raid-only. Never-despawn and
ZDO.Persistentapply only to raid/event creatures (and bosses viaNeverDespawnBosses). - Open-world wildlife (boars, necks, greylings, etc.) culls like vanilla again, so it no longer accumulates around bases. Fixes base-area FPS drops caused by permanent wildlife.
- Raid mobs get persistence when the event flag is set (
SetEventCreature), not blindly onAwake.
1.0.3
- Fix: 1.0.1 treated every event-area check as “a player is here” and could expose a stashed raid as the current event. Custom Raids refuses to start a new raid while
GetCurrentRandomEvent()is set, so raids stopped appearing. AllowMultipleRaidsdefaults to false. Custom Raids owns raid start; this mod persists raid creatures.persistraid stopclears a stuck current/stashed random event.
1.0.2
- Long-range sight, forced hunt, and never-lose-aggro apply only to RandomEvent / raid creatures (
SetEventCreature). - Open-world mobs (boars, greydwarves, and other non-raid spawns) keep vanilla view range and aggro.
- Night despawn skip is raid-only.
- World bosses no longer inherit raid hunt from
NeverDespawnBosses(far-despawn persist is unchanged).
1.0.1
- Initial release: raid chase, far-despawn block, extra events, spawn-without-players, monster cap 220.