You are viewing a potentially older version of this package. View all versions.
ZenDragon-ZenWorldSettings-0.6.2 icon

ZenWorldSettings

World settings: environment, tombstones, spawners, door keys, candles, shield gens, turrets, etc.

Date uploaded 2 weeks ago
Version 0.6.2
Download link ZenDragon-ZenWorldSettings-0.6.2.zip
Downloads 703
Dependency string ZenDragon-ZenWorldSettings-0.6.2

This mod requires the following mods to function

ZenDragon-Zen_ModLib-1.2.0 icon
ZenDragon-Zen_ModLib

Shared code library used in all ZenMods.

Preferred version: 1.2.0

README

ZenWorldSettings

Designed to be used in conjunction with other ZenMods. Especially ZenSign, ZenUseItem, and ZenHoverItem.

Modifiers (Configurable)

Tombstones:

  • Tombstones are free 32-slot indestructible containers that can be easily abused.
  • Option to prevent them from being used as reusable containers.
  • Once opened, a tombstone will begin to decay. When it finishes decaying, it will self-destruct and drop all items on the ground.
  • The countdown will not start until it has been opened once.
  • Default decay duration: 1 game day (30 minutes)

Spawners:

  • Prevent high-level monsters from spawning in low-level biomes due to advanced world progression. Highly configurable, but the default configuration should meet most player needs. Off by default. Pair with ZenBossStone for excellent multiplayer per player progression.

Limited Use Door Keys:

  • Make keys limited use, they break after you use them too many times.
  • You can repair and upgrade them at the forge by default. (configurable)

Environment:

  • Option: Do not display day number at dawn.
  • Option: Do not display the sky tree.
  • Option: Adjustable day length

Candle:

  • Can be refilled after expired.

Shield Generators:

  • Can eject their fuel to turn them off manually.
  • Can protect fireplaces from the rain and snow.

Turrets:

  • Option: Target player default true - Keep vanilla behavior of targeting players if no target trophy assigned because otherwise the player can just use turrets to cheese areas.
  • Option: Target tames default true - population control
  • Adjustable max number of targets, default 3. Install ZenUseItem to assign targets directly from your inventory instead of needing to place them on the 1-8 hot bar first.
  • Install ZenHoverItem to see the icons of the assigned trophies when looking at a Turret.

Craft / Teleport Rules:

  • Option: Define which things can be crafted or teleported by listing them here.

Improve Your Experience

CORE MODS

The full collection of all Zen MODS:

  • Radically improved QoL
  • Incredible performance
  • Pre-configured
  • 100% Gamepad support
  • Spectacularly immersive

Enjoy!

Sample Config File

## Settings file was created by plugin ZenWorldSettings v0.6.0
## Plugin GUID: ZenDragon.ZenWorldSettings

[Candle]

## [Admin] When enabled the candle can be refilled after it is empty. (Vanilla: false)
# Setting type: Boolean
# Default value: true
Enable Refill = true

[Craft / Teleport]

## [Admin] List of items to remove from crafting.
## Recipies are removed and new instances of the item can't be crafted.
## However, any existing items will still remain.  Additionlly any loot drops of the item will still be possible.
## [reboot required for changes to take effect]
# Setting type: StringList
# Default value: 
Craft Items - Deny = 

## [Admin] List of pieces which can not be crafted.
## However, nocost flag will still allow them to be built. Existing instances of pieces will still remain.
## [reboot required for changes to take effect]
# Setting type: StringList
# Default value: 
Craft Pieces - Deny = 

## [Admin] List of items which CAN NOT be teleported.
## [reboot required for changes to take effect]
# Setting type: StringList
# Default value: 
Teleport Items - Deny = 

## [Admin] List of items which CAN be teleported. 
## Make items teleportable which would otherwise not be teleportable.
## Can be useful for example if you wanted to teleport refined metals but not ore:
## Copper, Tin, Bronze, Iron, Silver, BlackMetal, Flametal, FlametalNew
## [reboot required for changes to take effect]
# Setting type: StringList
# Default value: 
Teleport Items - Allow = 

[Door Keys]

## [Admin] Door keys break after this many uses.  Set to 0 for infinite use. (Vanilla: 0)
## This is the initial number of uses for level 1 keys. Upgrades add more uses.
## Note: The default config settings allow keys to be repaired at the forge.
## [logout required for changes to take effect]
# Setting type: Int32
# Default value: 1
# Acceptable value range: From 0 to 10
Usage Limit = 1

## [Admin] Comma separated list of resource requirements for upgrading keys.
## PrefabName:Cost:IncreasedCostPerLevel
## [logout required for changes to take effect]
# Setting type: StringList
# Default value: Iron:1:1
Upgrade Cost = Iron:1:1

## [Admin] Max quality that door keys can be leveled up.  (Vanilla: 1)
## Each level increases the number of uses by 1.
## Set to 1 to disable upgrading keys.
## [logout required for changes to take effect]
# Setting type: Int32
# Default value: 5
# Acceptable value range: From 1 to 9
Max Quality = 5

## [Admin] Minimum station level needed to upgrade or repair keys.
## [logout required for changes to take effect]
# Setting type: Int32
# Default value: 1
# Acceptable value range: From 1 to 4
Default Station Level = 1

## [Admin] The station that can be used to repair and upgrade any keys that are NOT crafted, such as keys dropped from monsters, or found in chests, or purchased.
## If the key is crafted then it repairs and upgrades at the station that was used to craft it.
## [logout required for changes to take effect]
# Setting type: String
# Default value: Forge
# Acceptable values: None, Workbench, Forge, Stonecutter, Cauldron, ArtisanTable, BlackForge, GaldrTable, MeadKetill, FoodPreparationTable
Default Station = Forge

## [Admin] If true then keys can be repaired when broken. This requires a Default Station
## A broken key can not be used to open a door.  However, it can be recycled for scrap using ZenRecycle.
## [logout required for changes to take effect]
# Setting type: Boolean
# Default value: true
Repairable = true

## [Admin] Comma separted list of item prefab names for Door Keys that should never break.
## These keys will be ignored by the system.
## [logout required for changes to take effect]
# Setting type: StringList
# Default value: 
Indestructible Keys = 

[Environment]

## [Admin] Navigate with only the sun and stars.
# Setting type: Boolean
# Default value: false
Show Sky Tree = false

## [Admin] Enable the chunky wind pixels
# Setting type: Boolean
# Default value: false
Show Wind Pixels = false

## [Admin] Length of an in game day in seconds. (Vanilla: 1800)
## Set to 0 to disable this setting.
# Setting type: Int32
# Default value: 0
# Acceptable value range: From 0 to 10800
Day Length Seconds = 0

## [Admin] Display the day number each morning. (Vanilla: true)
# Setting type: Boolean
# Default value: false
Show Day Number = false

[Shield Generator]

## [Admin] Add an option to eject the fuel on shield generators and cause them to shutdown.
# Setting type: Boolean
# Default value: true
Enable Eject Fuel = true

## [Admin] Shield Generator protects fireplaces from the rain so they stay lit without a roof. (Vanilla: False)
# Setting type: Boolean
# Default value: true
Shield Protects Fire From Rain = true

[Spawners]

## [Admin] Enable or disable this entire section. If disabled then vanilla spawn rules are applied.
## The default configuration is setup to prevent high level monsters from spawning in low level zones.
## This is to help keep some zones safe from global world progression and make the game a bit
## easier for low level players just starting out, or to just have some areas safe from the harder spawns.
## These rules are not applied to raid events or trigger spawns.
## NOTE: These rules do not affect existing monsters. Only spawning new ones.
## For more info: 
## See: https://valheim.fandom.com/wiki/Spawn_zones
## To view the spawners in the world run this command.
## It is useful for figuring out what rules you would like to apply apply:
## Console command: ZenWorldSettings_Spawners
# Setting type: Boolean
# Default value: false
_Enable Spawner Rules = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in Meadows.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: defeated_gdking, defeated_bonemass, defeated_dragon, defeated_goblinking, defeated_queen, defeated_fader
Meadows - Blocked Keys = defeated_gdking, defeated_bonemass, defeated_dragon, defeated_goblinking, defeated_queen, defeated_fader

## [Admin] Comma separated list of prefab names that are never allowed to spawn in Meadows.
# Setting type: StringList
# Default value: 
Meadows - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the Meadows even if restrictions are applied.
# Setting type: StringList
# Default value: 
Meadows - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in Meadows.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
Meadows - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in BlackForest.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: defeated_bonemass, defeated_dragon, defeated_goblinking, defeated_queen, defeated_fader
BlackForest - Blocked Keys = defeated_bonemass, defeated_dragon, defeated_goblinking, defeated_queen, defeated_fader

## [Admin] Comma separated list of prefab names that are never allowed to spawn in BlackForest.
# Setting type: StringList
# Default value: 
BlackForest - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the BlackForest even if restrictions are applied.
# Setting type: StringList
# Default value: 
BlackForest - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in BlackForest.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
BlackForest - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in Swamp.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: defeated_dragon, defeated_goblinking, defeated_queen, defeated_fader
Swamp - Blocked Keys = defeated_dragon, defeated_goblinking, defeated_queen, defeated_fader

## [Admin] Comma separated list of prefab names that are never allowed to spawn in Swamp.
# Setting type: StringList
# Default value: 
Swamp - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the Swamp even if restrictions are applied.
# Setting type: StringList
# Default value: 
Swamp - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in Swamp.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
Swamp - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in Mountain.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: defeated_goblinking, defeated_queen, defeated_fader
Mountain - Blocked Keys = defeated_goblinking, defeated_queen, defeated_fader

## [Admin] Comma separated list of prefab names that are never allowed to spawn in Mountain.
# Setting type: StringList
# Default value: 
Mountain - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the Mountain even if restrictions are applied.
# Setting type: StringList
# Default value: 
Mountain - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in Mountain.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
Mountain - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in Plains.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: defeated_queen, defeated_fader
Plains - Blocked Keys = defeated_queen, defeated_fader

## [Admin] Comma separated list of prefab names that are never allowed to spawn in Plains.
# Setting type: StringList
# Default value: 
Plains - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the Plains even if restrictions are applied.
# Setting type: StringList
# Default value: 
Plains - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in Plains.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
Plains - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in Mistlands.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: defeated_fader
Mistlands - Blocked Keys = defeated_fader

## [Admin] Comma separated list of prefab names that are never allowed to spawn in Mistlands.
# Setting type: StringList
# Default value: 
Mistlands - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the Mistlands even if restrictions are applied.
# Setting type: StringList
# Default value: 
Mistlands - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in Mistlands.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
Mistlands - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in AshLands.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: 
AshLands - Blocked Keys = 

## [Admin] Comma separated list of prefab names that are never allowed to spawn in AshLands.
# Setting type: StringList
# Default value: 
AshLands - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the AshLands even if restrictions are applied.
# Setting type: StringList
# Default value: 
AshLands - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in AshLands.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
AshLands - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in DeepNorth.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: 
DeepNorth - Blocked Keys = 

## [Admin] Comma separated list of prefab names that are never allowed to spawn in DeepNorth.
# Setting type: StringList
# Default value: 
DeepNorth - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the DeepNorth even if restrictions are applied.
# Setting type: StringList
# Default value: 
DeepNorth - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in DeepNorth.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
DeepNorth - Disable Hunt Player = false

## [Admin] Comma separated list of global keys.
## Any prefabs that require these keys to be present are prevented from spawning in Ocean.
## Useful for preventing high level monsters from spawning in newbie zones based on world progression.
# Setting type: StringList
# Default value: 
Ocean - Blocked Keys = 

## [Admin] Comma separated list of prefab names that are never allowed to spawn in Ocean.
# Setting type: StringList
# Default value: 
Ocean - Blocked Creatures = 

## [Admin] Comma separated list of prefab names that are always allowed to spawn in the Ocean even if restrictions are applied.
# Setting type: StringList
# Default value: 
Ocean - Allowed Creatures = 

## [Admin] If true the spawned monster will not hunt the player in Ocean.
## Note, this does not prevent mhunting from events or spawn triggers.  Just regular spawns.
# Setting type: Boolean
# Default value: false
Ocean - Disable Hunt Player = false

[Tombstone]

## [Admin] Tombstones are a free 32 slot indestructible containers that can be easily abused.
## This option prevents them from being used as reusable containers.
## Once opened, a tombstone will begin to decay. When it finishes decaying, it will 
## self-destruct and drop all its contents on the ground.
## The countdown will not start until it has been opened once. (vanilla: false)
# Setting type: Boolean
# Default value: true
Decay After Open = true

## [Admin] How frequently should warning messages be displayed when the tombstone is decaying? (seconds)
## Set to 0 to disable repeating warning messages.
# Setting type: Int32
# Default value: 30
# Acceptable value range: From 0 to 600
Decay Message Interval = 30

## [Admin] After opening the tombstone once, how long before it self-destructs? (seconds)
## When it self destructs it will drop all items on the ground.
## Default is 1 game day (30 minutes) 
## 0 = self-destruct instantly after closing the container.
# Setting type: Int32
# Default value: 1800
# Acceptable value range: From 0 to 3600
Decay Timer = 1800

[Turret]

## [Admin] Can turrets target players? (Vanilla: true)
## Vanilla behavior is to target players unless a trophy is set.
## If this is disabled then turrets can be used to be easily cheese boss fights and push into in
## unexplored areas because all the undefeated monsters will be targeted and the player will not.
## Placing a trophy to limit which creature type the turret attacks is a sensible balance as it
## makes it a bit more difficult to use the turrets to cheese into unexplored areas since you
## need to kill the creature once before it can be targeted and the turret can only kill a single type
## of monster, therefor multiple turrets would need to be built in order to defend against multiple types.
## If this option is false then the turret will always ignore the Player and kill anything else...
## That will result in an easier run since less turrets would need to be built.
# Setting type: Boolean
# Default value: true
Target Players = true

## [Admin] Can turrets target tamed creatures? (Vanilla: true)
## Population control...
# Setting type: Boolean
# Default value: true
Target Tamed = true

## [Admin] Max ammo capacity (Vanilla: 40)
# Setting type: Int32
# Default value: 40
# Acceptable value range: From 1 to 100
Max Ammo = 40

## [Admin] Max number of target trophies that can be set at once. (Vanilla: 1)
# Setting type: Int32
# Default value: 2
# Acceptable value range: From 1 to 10
Max Targets = 2

## [Admin] When the turret dies should the ammo be returned as a stack or as a bunch of individual bolts on the ground?
## Caution: if Max Ammo is high this can kill the framerate as it tries to dump a ton of ammo objects on the ground unstacked.  (Vanilla: false)
# Setting type: Boolean
# Default value: false
Stack Ammo On Destroy = false


Like My Mods? Donations Welcome

Bitcoin

Donation QR

CHANGELOG

v0.7.0

  • added "Ironpit" to the default set of items which are allowed to teleport. Not sure why IG has it as no-teleport by default, if you know why, let me know, please.
  • updated for Zen.ModLib v1.2.0
  • recompile for BepInEx v5.4.2332
  • recompile for JVL v2.26.0

v0.6.2

  • change config option names for DoorKeys: "Default Station Level" becomes "Station Level" and "Default Station" becomes "Station"

v0.6.1

  • updated mod description, no code changes.

v0.6.0

  • Moved cart handling code out of this mod and into ZenDistributor

v0.5.4

  • add a config option for tombstone decay message repeat interval delay.

v0.5.3

  • added an option to allow items to teleport.
  • changed config names and sections related to NoCraft/NoTeleport. Please check your configs if you use these sections.

v0.5.2

  • add an option to prevent tombstones from being used as free 32 slot containers.
  • moved a vanilla fix into Zen.ModLib v1.1.11

v0.5.1

  • Added feature: Spawners control to limit the monsters that can spawn in biomes based on world progression. Prevent high-level monsters from spawning in low-level biomes after advancing world progression. Highly configurable, but the default configuration should suite most player needs. Off by default.

v0.5.0

  • overhaul of "Limited Use Door Keys" check the configs! Keys can now be repaired and upgraded.
  • Introduced new configs for key upgrades, durability, and station requirements.

v0.4.0

  • "Single Use Door Keys" are now "Limited Use Door Keys"
  • They can be defined to break after a fixed number of uses (default 2)
  • Broken keys will remain in your inventory. However, they will not open doors until repaired.
  • Default configs enable the Forge to repair keys.

v0.3.5

  • fixed readme

v0.3.4

  • change config option params for "Day Length Seconds" so that setting it to 0 to disables the option. New default: 0

v0.3.3

  • fix: load env configs on login instead of ZNetScene.Awake
  • update for Zen.ModLib v1.1.0

v0.3.2

  • fixed config sync

v0.3.1

  • removed BepInEx from dependency, Zen.ModLib handles it.

v0.3.0

  • use Zen.ModLib

v0.2.6

  • removed fireplace check code entirely. npc fireplaces can burn out of fuel.

v0.2.5

  • fixed nullref error that can happen with some mods regarding Fireplaces.

v0.2.4

  • Moved SingleUseDoorKeys from ZenPlayer back to ZenWorldSettings, it's a global world setting not a per player setting. Also changed the default to false instead of true.
  • Updated logging and configs subsystem

v0.2.3

  • code cleanup and bugfixes

v0.2.2

  • UPDATE FOR VALHEIM v0.220.3

v0.2.1

  • UNDO: moved to fast with prior update. Put NoCraftNoTeleport options back here from ZenConstruction

v0.2.0

  • moved SmashTrash to ZenRecycle
  • moved Structure and NoCraftNoTeleport related options to ZenConstruction
  • moved Raid & SpawnProtect related stuff to ZenRaids
  • moved all player related stuff to new mod ZenPlayer
    • inventory
    • death
    • health
    • food
    • durability
    • skills
    • stamina
    • autopickup
    • sleep
    • workstation

v0.1.20

  • Add config option to extend Autopickup Toggle Button with 3rd option: Pickup only items already in your inventory.

v0.1.19

  • Update README, no code changes.

v0.1.18

  • Fixed typo in description.

v0.1.17

  • Moved the Breeding section to its own mod: ZenBreeding