Repository navigation
ZenDirty
NOTE: This mod is included in my modpack and can be enabled/disabled via ZenDirty in ZenModPackConfig.json
This mod adds a player dirtiness mechanic to the game.
Video guide: https://www.youtube.com/watch?v=sQr9PL3vdO0
Over time, the player gets dirty from performing various actions (configurable in the server mod config).
When a player reaches a certain dirtiness threshold, their hands become filthy (dirt texture is applied like the bloody hands texture).
When a player reaches full 100% dirty, a small hand badge sickness icon appears on their HUD, and they now have a chance to randomly spawn flies on them for a few minutes every ~15-20 minutes (which can give their position away in PVP etc). Their immune system also becomes compromised and their immunity level has a -50% debuff applied, making it easier to get sick (compatible with Terje's Medicine mod).
To clean themselves they'll need to do one of the following (configurable in the server config):
- Wash themselves at a well
- Wash themselves in a natural water source
- Wash themselves with a bottle/canteen/container of water (least effective way to clean yourself)
- Submerge themselves fully into water (ie. go swimming: this instantly washes the player to full clean)
The dirty hands texture will apply regardless of whether gloves are on or not, but it's purely cosmetic. The bloody hands texture takes priority so if the player has bloody hands that will be the texture displayed since that is a higher priority situation. Cleaning your hands does NOT clean your character - cleaning the character is a separate continuous action.
{
"ConfigVersion": "1.29.3", // Don't touch
"Enabled": 1, // Enable/disables the mod
"DebugMode": 0, // Used for debugging action/recipe names etc
"FullDirtyThreshold": 100.0, // This is the level at which flies + debuff begins (max: 100%)
"FullDirtyImmunityMultiplier": 0.5, // This is the NEGATIVE % effect on immunity at full dirty
"SecondsUntilFullDirty": 0.0, // Optional: how many seconds it takes to become full dirty passively (eg. 3600 = 1 hour)
"ShowDirtyBadge": 1, // Enable/disable the dirtiness hand icon on the HUD when full dirty
"DirtyBadgeTexture": "ZenDirty\\gui\\icons\\zen_dirty_badge.paa", // Filepath to the dirty icon
"FliesEnabled": 1, // Enable/disable the flies effect at full dirty
"FliesChancePercent": 75.0, // Dice roll chance of flies occurring (100 = 100%)
"FliesCheckIntervalMinSeconds": 600.0, // Minimum time between flies effect check
"FliesCheckIntervalMaxSeconds": 900.0, // Maximum time between flies effect check
"FliesDurationMinSeconds": 60.0, // Minimum duration of flies effect
"FliesDurationMaxSeconds": 120.0, // Maximum duration of flies effect
"FliesAlwaysTriggerOnFullDirty": 1, // Enable/disable the flies effect immediately when player reaches 100% dirt
"WashDirtyWellsThreshold": 10.0, // The minimum dirtiness level required to wash at wells
"WashDirtyWaterSourceThreshold": 10.0, // The minimum dirtiness level required to wash at rivers/ponds/ocean
"WashDirtyContainerThreshold": 10.0, // The minimum dirtiness level required to wash with a water container
"WashingAtWellsEnabled": 1, // Enable/disable washing at wells
"WashingAtWaterSourcesEnabled": 1, // Enable/disable washing at rivers/ponds/ocean
"WashingFromContainersEnabled": 1, // Enable/disable washing with water containers
"WashWellActionSeconds": 60.0, // How long it takes to wash at wells FROM 100% dirty (time is reduced if less dirty)
"WashWaterSourcesActionSeconds": 30.0, // How long it takes to wash at natural water FROM 100% dirty (time is reduced if less dirty)
"WashPercentPerLitre": 25.0, // How MUCH dirtiness % is washed per litre of water in a container (Canteen = 1L = 25% cleaner)
"ContainerWashActionSeconds": 60.0, // How long it takes to wash with bottles etc FROM 100% dirty (time is reduced if less dirty)
"WashingRemovesHeatBuffer": 1, // Enable/disable washing resetting the player's heat buffer stat
"WashColdHeatComfort": -0.5, // Sets the player's temperature cold (anything < 0 is cold)
"SwimmingCleans": 1, // Enable/disable swimming instantly resetting a player's cleanliness level
"DirtyHandsEnabled": 1, // Enable/disable the dirty hands texture
"DirtyHandsThreshold": 50.0, // The % dirty a player needs to be before hands turn dirty
"ActionDirtiness": { // List of actions/recipes and how much "dirt %" they add to the player (max dirt = 100%)
"ActionDigInStash": 5.0,
"ActionPlantSeed": 1.0,
"ActionBuryAshes": 50.0,
"ActionSkinning": 15.0,
"ActionDigWorms": 2.5,
"ActionFertilizeSlot": 1.0,
"ActionDigOutStash": 5.0,
"ActionWaterGardenSlot": 1.0,
"ActionDismantlePart": 2.5,
"ActionHarvestCrops": 2.0,
"ActionBuildPart": 2.5,
"ActionDigGardenPlot": 10.0,
"ActionDismantleGardenPlot": 10.0,
"ActionWaterPlant": 1.0,
"ActionBuryBody": 50.0,
"ActionDestroyPart": 2.5
},
"RecipeDirtiness": {
"PrepareFish": 5.0,
"PrepareAnimal": 10.0
}
}All my mods are open-source and published under the Mozilla Public License Version 2.0. Any mods based on my code must be open-source - no obfuscation!
You can modify/reupload/repack my mods if you like, but please credit any original authors/3D model/3rd-party asset creators, and keep in mind any future updates I make will not be automatically applied to repacked mods so make sure to check back from time to time for bugfixes and improvements.
If you find my mods useful, please consider buying me a coffee - it's not expected but very much appreciated: https://buymeacoffee.com/zenarchist
- General Setup Guide
- Core Mod Setup Guide
- ZenModPack Master Config
- Various Info
- Known Bugs & Issues
- Report Bug
My utility style mods for debugging etc.
Mods which affect game mechanics:
- ZenAlcohol
- ZenAllowMapBagSlot
- ZenAntiCombatLogout
- ZenAutoConvertStash
- ZenAutoStackItems
- ZenAutoWinterDetect
- ZenAutoRun
- ZenBasebuildingConfig
- ZenBatteryPASPersistence
- ZenBetterChatFont
- ZenBrokenGlasses
- ZenBuildingDescription
- ZenCarAttachments
- ZenCarBatteryIcon
- ZenCarCompass
- ZenCarGlovebox
- ZenCarsCutDownTrees
- ZenCanteenTablets
- ZenCatchRain
- ZenCauseOfDeath
- ZenChickenCoops
- ZenCraftingSounds
- ZenCraftRagHands
- ZenComboLocks
- ZenCombineJSON
- ZenCompatibleGuns
- ZenDirty
- ZenDropRuinedClothing
- ZenDynamicZoneLoot
- ZenEarPlugs
- ZenFireFuel
- ZenFireWood
- ZenFireplaceStick
- ZenFishingConfig
- ZenFixCarAttachmentGUI
- ZenGraves
- ZenGroundCleaning
- ZenHideGearInCars
- ZenHints
- ZenHologram
- ZenHologramControls
- ZenImmersiveChatHUD
- ZenImmersiveLogin
- ZenInformWeaponStateBug
- ZenInventoryAnimation
- ZenKnifeGardens
- ZenLeftovers
- ZenLogPiles
- ZenMagObfuscation
- ZenMap
- ZenMicCheck
- ZenNotifications
- ZenOpenCansRock
- ZenPainting
- ZenPimpMyRide
- ZenRadioPlugin
- ZenRearViewCamera
- ZenRebuildableWells
- ZenRepairJSON
- ZenRepairPumps
- ZenRepairWells
- ZenServerGUI
- ZenShootingStars
- ZenShove
- ZenSplitUI
- ZenSleep
- ZenStaminaSlope
- ZenTerritories
- ZenWeaponEngrave
- ZenWoodHealth
- ZenZombieDoors
Mods which add gear to the game:
- ZenArtillery
- ZenBackwardsCaps
- ZenBookshelf
- ZenBunnyMasks
- ZenCamoCamp
- ZenCarWorkbench
- ZenChess
- ZenChristmasTreeCraft
- ZenConcussionGrenade
- ZenDoubleArmbands
- ZenFlask
- ZenFlint
- ZenGhillie
- ZenJameson
- ZenLadders
- ZenMusic
- ZenNotes
- ZenRaidAlarm
- ZenRaybans
- ZenRunes
- ZenStaticObjects
- ZenSwissKnife
- ZenTimeBomb
- ZenTireRack
- ZenTreasure
- ZenTreehouse
- ZenVikingAxe
- ZenZippoLighter
Mods which run purely server-side:
- ZenBloodDrips
- ZenCampSites
- ZenDynamicZoneLoot
- ZenLootCyclingDetection
- ZenNightConfig
- ZenPersistentTrees
- ZenShelterCargo
- ZenTreesplosions
- ZenZombieController
- ZenZombieConfig
- ZenJameson
My standalone mods