For a while now I've been planning, designing, and as of about a week ago building a new mod to handle many of the social interactions you may expect in a deviously modded skyrim.
The mod has three core components so far.
Submissive and Dominant Followers :
- There are a lot of options for dominant followers, each with their own strengths and weaknesses.
- The main objectives for my variation is to not only add the possibility for followers to be submissive, but to make the experience of playing with a dominant one more interactive.
- Instead of having to pay them or suffer consequences (eg. Devious Followers), or just having to deal with when it randomly decides to do something to the player (eg. XDFF or Deviously Enslaved Continued) the goal is to have a dynamic relationship between the player and their active followers.
- Over time the follower will start requesting things of the player, If you don't do what they want for long enough then a more dominant follower may decide to start taking what they want, while more submissive followers will get whiny and eventually abandon you for someone more fun.
There are going to be various options for increasing follower happiness
- Giving them gold
- Accepting their requests
- Protecting them from aggressive events (some may be able to target your followers in addition/instead of the player)
- Offering to do things for them (sex, bondage, games, etc. cooldowns for each type of offer)
There will also be various ways to decrease follower happiness
- Refusing their requests
Having consensual sex outside the group while the follower is aroused
- Even greater loss if you masturbate
- Repeatedly offering to do things for them.
- Asking for them to do things for you too often
- Follower raped
- Follower downed
- As you dominate submissives or submit to dominants you gradually change your base submissiveness/dominance, and they will feel more like you own them/they own you. The more dominant you are the easier it is to resist events being forced on you, and the more likely a submissive follower will do what you ask of them. On the other hand being more submissive will make resisting events more difficult (should always be possible, if somewhat difficult), and dominant followers are more likely to demand things from you.
When having more than one active follower the group dynamic changes and there are three positions for either the player or various followers
- Group Dominant - The individual that dictates the actions of the group (only one)
- Alpha Submissive/Supporting Dom - The individual that leads the submissives/supports the dominant in controlling the submissives, if as the player you are neither this or the Group Dominant you will lose the most control over the situation as you have two individuals trying to get you to do things. (only one)
- Submissives - Any individuals that are not either of the above positions will be placed in this position of the group.
When you first hire a new follower it will determine what their base personality is, and at first they treat the player as someone they are working with rather than their pet/master.
Available Personalities, There are variations on each depending on how sadistic/masochistic they are, as player submissiveness/dominance and follower ownership grows the differences become more pronounced.
- Fully Submissive - Less likely to decline the wishes of the player/dominant, will never force things on the player and are slower to abandon the player when ignored, If repeatedly bullied or forced to do things they don't like they are likely to run away.
- Alpha Submissive - When the player is more dominant than them they will act as a fully submissive character, outside of group dynamics and before the player develops submissiveness they are almost indistinguishable from them. When significantly more dominant than the player they can become the group dominant if there are no followers with more dominant personalities.
- Neutral - Not particularly submissive or dominant, will generally treat the player as an equal and only play games when both they and the player want to. They may force things on a player that annoys them, but only then.
- Dominant - More likely to try and get the player to do what they want, if upset with the player they are likely to attempt to force things on you.
- Alpha Dominant - Quickly becomes demanding of the player unless you can match their dominance, the more the relationship develops the more they will treat the player like their pet/slave rather than an equal.
- Available Personalities, There are variations on each depending on how sadistic/masochistic they are, as player submissiveness/dominance and follower ownership grows the differences become more pronounced.
- It will be possible to edit the personality stats for NPCs in the MCM, or via modEvents
Player Slavery to NPCs :
- While there are options to make the player into a slave, most of them aren't aware of and fight with other mods that attempt to interact with the player.
- This system at its core will be a harder version of player with a dominant follower.
There are plans for three levels of slavery
- Voluntary - Is possible with any NPC. Acts more as a game than actual slavery you can quit at any time and resisting requests is fairly easy. Repeatedly denying what your 'master' asks will result in the game ending when it ends in this way there is a chance that they will forcibly enslave you instead of releasing you, tired of you being a tease they will take what they want. When cooperating this will quickly raise player submissiveness, and if done with a follower their ownership will also raise quickly.
- Forced - Is possible with any NPC. Acts closer to mods like SD+, your master will demand things of you and while you can try and resist doing so will likely just result in harsher treatments. The actor's Sadism trait will alter how they behave as your master with more sadistic masters being more readily punishing, and requesting more severe events. While masters with low sadism will be kind treating you more like a pet than a slave. If you anger your master enough they may decide to sell you or abandon you somewhere in the wilderness, while if you please them enough they may let you go free. When enslaved to a non-follower this way it will be easier to convince them to let you go free so that you can get back to the normal game.
- Endless - This kind of enslavement is only possible with followers. This kind of slavery can result from the 'good' ending of forced enslavement to a follower, playing voluntary enslavement with a follower for an extended period of time. or being highly submissive to a dominant follower. You can still get out of this form of enslavement by pissing off your follower enough for them to be rid of you, though expect harsher results than from forced if possible. Convincing them to release you will be next to impossible. Escape is an option, be it a difficult one. Generally it acts much like Forced enslavement, but as it is always with a follower you will get more events that involve you going to other locations.
Modular events system :
The events system is being reworked, initial design concept still stands, but how much will be in the final implementation is unknown.
- Events will be registered to the events controller in a similar fashion to how generic Devious Devices are handled I believe.
When registering an event you provide :
- the quest for your event (with the dialogue and scripts that run during the event)
- a string name for use in the MCM when configuring preferences.
- a float minimum vulnerability that determines how bad of a state the player must be in to trigger the event.
and two boolean arrays that signify what conditions must be met, and must not be met in order to trigger that event. (one int array? [+] requires [-] restricted)
- teasing a blindfolded player would require them to be wearing a blindfold
- attempting to demand/force sex on a player requires they not be in a chastity belt
- The script for events must extend the EventsScript script from this mod so that the controller can properly register everything and read conditions.
- And you add a dialogue branch to the main controller, that uses GetVMQuestVariable [the quest] ValidEvent = 1 as one of its entry conditions, sending the dialogue to your events quest dialogue branch.
- When the scanner decides to fire an event it will check all the registered events for ones that have their criteria met and starts one of those events.
- Current plans include a dialogue option at the start of each event that acts as a safeword (disableable in config) that when selected will cancel that event and temporarily prevent other events from firing for a (configurable) length of time. This way you can generally continue playing in an area where the events going off doesn't make sense but there isn't any implementation that would prevent them normally.
- Most if not all events should be handled through a dialogue tree with multiple possible outcomes, what options are available and possibly how each option turns out will be dependent on the player and npc personality stats.
Plans may allow for a combat defeat scenario to be added to the events system - when defeated/surrendering normally it fires a event scan with combat defeat as a condition, if defeated as part of the dialogue tree of a running event it runs the defeated in combat result of that event. It may be possible to allow followers to abandon the player during a combat defeat depending on their personality and how happy they are with the player.
Options for follower abandoning player during defeat:
- having them leave your service, not the best option but fairly simple.
- have them set to wait (if possible) and teleport them to (the nearest?) inn
- disable them for a time and then enable them and have them return to the player later
Updated progress information:
Dynamic assignment of Followers and Masters - Completed
Generation of Follower personalities - Minor changes then testing
Isolation of dialogues to specific Dynamics (Male/Female Follower/Master/Random NPC to Free/Enslaved/Alone Male/Female Player, etc.) - Proof of concept completed
Initiation of events - Initial design phase
- Dynamic selection of random NPCs for events - Initial theoretical design finished, pending implementation and testing
- Combat defeat event trigger - Initial theoretical design finished, pending implementation and testing
- Forcegreet event trigger - Not tested, unsure of best way to trigger a forcegreet, especially with multiple branching paths that shouldn't all start the same
- Blocking Dialogue event trigger - Tested, need to determine how to enable/disable them dynamically
- Need to learn how to run an event/scene if the player backs out of dialogue partway through
Creation of dialogue trees - Not started
MCM construction - In progress, finalisation pending completion of major features (Paused)
When it comes to the writing of actual dialogues I will do my best, but I am more of a feature designer than a content designer. If there are interactions that you want to see, or when I get there ideas to improve what I come up with, I will welcome the input.