Jump to content

Recommended Posts

View File

Introduction

Prisoners and slaves are usually forced to go barefoot and this is true in the Elder Scrolls universe as well. Remember slaves in Morrowind or those prisoners dragged through Skyrim by the Thalmor?

 

I often start my roleplaying runs on the bottom of society, as a runaway slave/prisoner or a poor peasant and have always been upset at how it was way too unrealistic. Dressed in rags, barefoot and penniless, my character can run across Skyrim as fast as a shod one without any consequences and buy/sell items at normal prices without the merchants batting an eyelash. Whatever happened to no shoes, no service?

 

This mod tries to add a touch of realism to this experience. Feet now get dirtier (using SlaveTats) depending which surfaces the player has been walking on and can be washed by wading in a stream or using a spell. This isn't a cosmetic change, either: the player's speechcraft skill is affected by the dirtiness of their feet. There's also an option for merchants to refuse service to barefoot characters in cheap clothing or all barefoot characters. Innkeepers will also refuse to rent rooms to people with dirty feet.

 

A kidnapped noble girl with pampered feet now won't be able to run away from those bandits easily. Every surface has a different roughness level which influences the chances to step on something nasty and stagger, stopping the character for a bit and alerting everyone to their presence. Worse even, just walking barefoot slowly accumulates feet pain, slowing the player down. The pain heals slowly over time, but don't expect to be able to walk even from Riverwood to Whiterun without moderate pain by the end of the trip.

 

Luckily, the character's feet will get tougher over time and at higher levels the player will be able to even sprint across gravel without letting out so much as a whimper. Feet toughness decays over time, though, so it may well be back to square one after a year of shod life.

 

The only good side to this mod for now is that being barefoot adds 10 to the character's sneak skill.

 

Finally, ever wondered how those ZaZ/DD ankle irons managed to fit over your character's massive boots? There's also an option to unequip boots or shoes when the character's ankles are shackled. That barefoot fettered girl won't be able to just loot some boots off of a dead soldier to ease her ordeal.

 

All of this is powered by a highly customizable (via MCM) and slightly overengineered mess of exponential decay functions and thresholds.

 

This is a rather early version, so don't use it on saves that you value. I've been using it for a couple of years and decided to release it to the world since it mostly seems to work, but I've only added MCM customization recently, so it could be broken.

 

This mod isn't really gender-specific, but I've only tested the dirty feet SlaveTats textures on female feet.

 

Installation and requirements

 

Requirements:

  • SKSE
  • SkyUI
  • SlaveTats

 

ZaZ Animation Pack / Devious Devices are not a hard requirement: if either are installed, the mod detects their leg irons (keywords zbfWornAnkles/zad_DeviousAnkleShackles) as having an option to block footwear.

 

Bathing In Skyrim is also a soft dependency: when the player washes, their feet become clean too. I couldn't find a good way to hook into the BIS washing process, so currently the mod resets feet dirtiness to 0 whenever the BIS dirtiness global decreases (which only happens when the player washes). So if the player is clean and washes again, this won't reset the feet dirtiness -- but if the BIS dirtiness is >20% and the player washes, then it will.

 

The dirt textures work with female CBBE (by default) and UNP (download the file BarefootRealism_UNP_(merge only!).zip and overwrite the base mod's files with it).

 

Installation:

Copy the files to your Skyrim/Data directory or use Mod Organizer. There's nothing really specific about the installation and there's no FNIS required for now.

 

Roadmap / future work

Stuff I am currently working on/planning to work on for the mod. Priority is mostly based on how much people want it and whether it's a severe gameplay-impacting bug, as well as how much fun I'd have working on it.

 

High

Textures for other foot types (SoS/UNP Special (?))

 

Medium

Cleaning/water detection inconsistent with some areas not being detected as water.

Some sort of a cloak spell to add dirt tattoos to NPCs around?

 

Low

Tear out SlaveTats hard dependency and switch to NiOverride instead.

Refactor the scripts and move stuff out from OnUpdate and into OnEquip/Unequip

 

Advanced Details

This is the maths that powers the mod. I'll also describe the effect of the default settings. You don't really need to read this, unless you want to customize your experience.

Barefoot Realism adds 3 parameters/skills to the player, all ranging from 0 to 1: feet dirtiness, roughness and pain. They're stored in 3 globals: PlayerFeetDirtiness, PlayerFeetRoughness and PlayerFeetPain and are the only bits of player state. You can modify them with console commands to back them up if you are going to delete the mod, for example.

 

Dirtiness

Barefoot Realism can detect the surface the player is walking/running on, which lets different surfaces have different dirtiness levels. In addition, BR also detects the location type the player's in. The reasoning behind this is that a stone floor in someone's house will be much cleaner than the stone floor in a random dungeon.

Here are the default surface dirtiness levels:

  • Stone: 0.2
  • Dirt: 0.4
  • Mud: 1.0
  • Wood: 0.2
  • Grass: 0.3
  • Snow: 0.1
  • Carpet: 0.05
  • Gravel: 0.2
  • Water: -5.0

The default location dirtiness multipliers are:

  • Home (any owned interior): 1.0
  • Mines/prisons (dungeons with "Mine"/"Prison" in the name): 1.5
  • City (exterior): 2.0
  • Other dungeons: 2.0
  • Wilderness: 2.5

  
The total surface dirtiness is

surface dirtiness * location dirtiness multiplier


In addition, if it's raining, the dirtiness is multiplied by 2.

 

The feet dirtiness tends to the total surface dirtiness: it's logical that the player's feet won't get dirtier than the actual surface the character's walking on.

Dirtiness per step = (total surface dirtiness - feet dirtiness) * multiplier

If the feet are dirtier than the ground, the multiplier is 0.0005 and if they're cleaner, the multiplier is 0.001 (so accumulating dirt is faster than cleaning it off by walking on a clean surface).

 

The water dirtiness level is negative: the player can run around in some water sources (like the streams in Whiterun's Cloud District that they can still get to very often) to decrease feet dirtiness or use the Wash Feet spell near/in a body of water (waterfalls etc, the bodies are the same as defined in iNeed) to clear the dirtiness completely.

There are 5 spells draining Speechcraft and SlaveTats tattoos applied to the player's feet at different dirtiness levels: 0.0 (Speechcraft -10), 0.03 (-20), 0.1 (-30), 0.3 (-40), and 0.9 (-50).

 

At feet dirtiness > 0.25, innkeepers will refuse to rent rooms to the player.

 

Roughness and Pain

 

Different surfaces and location also have different roughness levels and again, to get the total roughness level, both are multiplied:

  • Stone: 0.4
  • Dirt: 0.2
  • Mud: 0.1
  • Wood: 0.2
  • Grass: 0.1
  • Snow: 0.7
  • Carpet: 0.05
  • Gravel: 1.0
  • Water: 0.05
  • Home: 0.1
  • Mines/prisons: 1.2
  • City: 1.0
  • Other dungeons: 1.5
  • Wilderness: 1.5

 

Feet pain accumulates per step as well. The formula is:

pain multiplier * (total surface roughness / (feet roughness + 1)) ^ pain exponent

The default pain multiplier is 0.01 and the exponent is 4.

 

This might be a bit overengineered, but the idea is that the pain increase dramatically decreases when feet roughness is greater than the total surface roughness. Let's say the feet roughness is 0 and the player is walking around Whiterun (location roughness 1.0, surface roughness 0.4 for a total of 0.4). Then, with the default settings, the pain increase is 0.01 * (0.4 / (0 + 1)) ^ 4 = 0.000256 per step or 0.256 per thousand steps. If the roughness is 0.4, we get 0.01 * (0.4 / 1.4)^4; 0.067 per thousand steps. If the roughness is 1, we get 0.016.

 

Feet pain decays constantly at a default rate of 0.25 per game day. So at a roughness level of 0, a thousand steps around Whiterun will take a whole game day to clear and at a roughness level of 1, it will take about 1.5 hours to clear, presumably faster than accumulating them.

 

The feet roughness increases every step by a roughness multiplier (default 0.1) * the pain increase incurred. So by default, it accumulates 10 times slower than the pain. The roughness also decays at a default rate of 0.005 per game day (50 times faster the pain), so it will take 200 game days for fully trained feet to return to the 0 level.

 

Stagger Chance

Staggering by stepping on a pebble or a twig is a way to immediately slow down the player. It also emits a detection event, alerting enemies to the player's location. The stagger chance per every step is:

0.1 * e ^ (stagger exponent * feet roughness) * movement modifier * total surface roughness

The default stagger exponent, -4.6052, has been calibrated so that at feet roughness of 0 the stagger chance (before applying movement/surface modifiers) is 10% and at the roughness of 1 the stagger chance is 0.1%.

 

The movement modifier depends on whether the player is running (1.0), walking (default 0.25), sneaking (default 0.1) or sprinting (default 2.0).

 

With these defaults, a player running on a stone road (roughness 0.4) in the wilderness (roughness 1.5) will have a 6% chance of staggering every step (about every 15 steps). If she's sprinting, the chance becomes 12% (about every 8 steps). If she decides to save her feet and step off from the road into the dirt instead (roughness 0.2), she has a 3% chance of staggering (about every 33 steps) if running and 6% if walking.


  • Submitter
  • Submitted
    01/06/2018
  • Category
  • Requires
    SKSE, SkyUI, SlaveTats
  • Special Edition Compatible
    No

 

Link to comment

Have you talked to the author of YPS Immersive? It also does some management of feet, staggering, interacting with slavetats. Incorporating the features of your mod into YPS could enhance both of them. People in high heels could stumble more on rough terrain. High heel training and barefoot training could work against each other.

 

The amount of overlap between the two mods is quite high despite doing different things. Combining them seems like a great idea, to me at least!

Link to comment
1 minute ago, markdf said:

Have you talked to the author of YPS Immersive? It also does some management of feet, staggering, interacting with slavetats. Incorporating the features of your mod into YPS could enhance both of them. People in high heels could stumble more on rough terrain. High heel training and barefoot training could work against each other.

 

The amount of overlap between the two mods is quite high despite doing different things. Combining them seems like a great idea, to me at least!

Haven't seen Emily in awhile, though. :frown:

Link to comment
Just now, jfraser said:

Haven't seen Emily in awhile, though. :frown:

People get busy with life, it happens. Especially at the end of the year. I doubt they would walk away from such an amazing project, not after investing so much energy and passion. I'd bet money that Emily will be back soon.

Link to comment
Just now, markdf said:

People get busy with life, it happens. Especially at the end of the year. I doubt they would walk away from such an amazing project, not after investing so much energy and passion. I'd bet money that Emily will be back soon.

Hopefully. Although even if not, YPS is amazing as is.

Link to comment

I love it. A couple minor things though:

 

1. Would it be possible to get a UNP version of the textures? It's almost perfect, but the toenails don't line up:

 

Spoiler

unpdirt.png.a1ed1ee3d49e153e7c9469dce54b032e.png

 

2. A way to mark footwear as barefoot (a keyword?) - for example, the "ring slave shoes" from DDx (only the balls of the feet touch the ground, but there's nothing covering them).

Link to comment

installed this but found that when installed, even with the ignore option set for vendors regarding bare feet, mralki at the rorikstead inn wouldn't let me rent a room not sure if it was something wrong with the mod or a conflict. So uninstalled, Otherwise seemed to work fine. The sounds made when in pain from walking seem to be the same used in other mods for  wearing a gag, found that a little offputting, but I could overlook it.

 

Link to comment

Thanks for the feedback all!

 

20 hours ago, chevalierx said:

thank you time to walk and walk

but why DD ?

Devious Devices? It doesn't require them, it's just that the HDT leg irons from the new version etc. have the zbfWornAnkles keyword and so will prevent wearing boots when worn

 

19 hours ago, chaimhewast said:

1. Would it be possible to get a UNP version of the textures? It's almost perfect, but the toenails don't line up:

Yep, will get on that. Should probably have noted I was making the textures with CBBE in mind (+FemFeet Redesigned).

19 hours ago, chaimhewast said:

2. A way to mark footwear as barefoot (a keyword?) - for example, the "ring slave shoes" from DDx (only the balls of the feet touch the ground, but there's nothing covering them).

Good idea, I'll see if the slave boots have some keywords I could use.

 

19 hours ago, Halleaon said:

installed this but found that when installed, even with the ignore option set for vendors regarding bare feet, mralki at the rorikstead inn wouldn't let me rent a room not sure if it was something wrong with the mod or a conflict. So uninstalled, Otherwise seemed to work fine. The sounds made when in pain from walking seem to be the same used in other mods for  wearing a gag, found that a little offputting, but I could overlook it.

 

Oh yeah, innkeepers refuse to rent rooms if feet dirtiness is > 0.25, you can use the Wash Feet spell near a body of water or walk around in a puddle. I'll make sure the innkeepers are affected by the vendor settings too.

I didn't have any volunteers to record sounds off so I had to use the standard ZaZ gag talk sounds. Would you rather there be an option to turn them off or is there a better sound set for this?

5 hours ago, SAC said:

Is there any way to extend this effect to NPCs as well?

Hmm, depending on what you mean. The dirt slavetats can be applied to them as well (through the SlaveTats MCM or with some scripting to everybody around), but adding the dynamic surface detection/dirtiness would be more difficult (the surface detection is a massive hack: every second, a spell is cast on the ground in front of the player that leaves a different impact object depending on the surface type, which are then scanned for).

Link to comment
1 hour ago, cytochrome_p450 said:

 

Hmm, depending on what you mean. The dirt slavetats can be applied to them as well (through the SlaveTats MCM or with some scripting to everybody around)

 

Yes, this is what I meant, applying the slavetats to everybody around. Definitely not individually via interface.

Link to comment
4 hours ago, cytochrome_p450 said:
23 hours ago, chaimhewast said:

1. Would it be possible to get a UNP version of the textures? It's almost perfect, but the toenails don't line up:

Yep, will get on that. Should probably have noted I was making the textures with CBBE in mind (+FemFeet Redesigned).

23 hours ago, chaimhewast said:

2. A way to mark footwear as barefoot (a keyword?) - for example, the "ring slave shoes" from DDx (only the balls of the feet touch the ground, but there's nothing covering them).

Good idea, I'll see if the slave boots have some keywords I could use.

Thanks for the considering my idea, and glad to hear that a UNP version is in the works. :smile:

 

I don't think those boots have any keyword specific to them, but looking at the sources for Sexlab and Sexlab Aroused, it looks like you could use StorageUtil to store a list of "barefoot" armors in addition to having your own keyword for it.

Link to comment
1 minute ago, chaimhewast said:

 

I don't think those boots have any keyword specific to them, but looking at the sources for Sexlab and Sexlab Aroused, it looks like you could use StorageUtil to store a list of "barefoot" armors in addition to having your own keyword for it.

I'll take a look. In the meantime, you can add a single footwear item as an exception in Miscellaneous settings.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use