About This File
Have you ever wanted an AAF experience where you're actually playing instead of just watching?
Have you ever wanted Sex Attributes to matter during a scene instead of mostly before and after it?
Have you ever wanted Resisting, Participating, Arousal, Willpower, Self-Esteem, and the actual outcome of the scene to feel like parts of the same system?
The goal is to make AAF encounters feel less like a cutscene and more like something your character is actively experiencing. If you end up in a bad situation, you'll need to work your way out. If you end up in a fun situation, it should be fun!
What is Shtick?
Shtick is an interactive AAF participation minigame. it is intended to be a companion to my other mod, Kick, but DOES NOT REQUIRE IT. However, some of Kick's more interesting mechanics make Shtick a lot more fun to play.
The basic idea is simple: once an AAF scene involving the player starts, Shtick puts a minigame on screen, and you must participate to finish the scene, how you participate determines what happens.
The goal is to move the avatar in the HUD according to what YOU want.
-
It starts around the middle depending on stats
- Dominant palyers start at neutral
- Submissive players bias towards "Enjoy" depending on orientation
- Travelling to the left will reduce Sole Survivor's arousal increase rate to near zero -> You dont want to climax during an aggressive scene! You lose XP!
- Traveling to the right will increase sole survivor's arousal increase rate to double the baseline rate -> In consensual scenes, each climax GAINS XP!
-
Travelling anywhere at all will increase NPC arousal cumulatively so long as you're playing the game as intended.
- You cant just hold E or R - you must 'play' the game or let the scene time out
- NPC arousal, determiend by playing the game, when it maxes out will end the AAF scene
- Currently it is set up so that scenes last roughly 25-40s. I intend to eventually make this adjustable and situational.
- There is an oscillating wave mechanic that must be fought. I think of it like trying to swim at the beach to or from the shore - you gotta go with the waves!
Goal
- Max NPC arousal (top bar on hud, in red) to end the scene
- maximize or minimize your own arousal rate by biasing to the left or right side of the Shtick meter
Shtick is not intended to replace AAF or Sex Attributes. It sits between them.
AAF still handles animations, actors, positions, scene setup, scene teardown, and all the horrible black magic required to make Fallout 4 actors interact with each other without immediately exploding (most of the time). All Shtick does is play with Sex Attributes, and terminate scenes when its conditions are met. The way it is wired up now, I dont know how to force scenes to wait on Shtick, so you must set your AAF mods to have longer scene lengths.
Sex Attributes remains responsible for the player’s actual arousal, orgasms, Willpower, Self-Esteem, Orientation, and related character state.
Shtick turns those systems into gameplay. Willpower, self-esteem, and orientation DIRECTLY affect the way shtick's mechanics feel.
How It Works
When an AAF scene involving the player begins, Shtick automatically activates the Shtick HUD
The native HUD appears with three primary pieces of information:
- Participation — ranges from -50 Resist to +50 Enjoy
- NPC Arousal — effectively Shtick’s scene progress meter. When it reaches 100, Shtick asks AAF to end the scene normally.
- Player Arousal — your actual Sex Attributes arousal value.
Your current Participation directly modifies how quickly Sex Attributes builds your arousal during the scene.
At full left, normal sex-arousal gain is heavily reduced.
At neutral, arousal gain is the same as the default sex attributes baseline you're all used to, but the scene will play forever
At full right, arousal gain is significantly increased, to nearly 2x normal
The Minigame
I believe the game to be very quickly intuitive even if you dont know how to play it. It requires E and R presses in the keyboard. Its just about moving to the left or the right. The rules should become VERY obvious quickly.
Shtick requires e and r to surf waves and brace against waves pulling you to center
The input has momentum, acceleration, deceleration, timing, and a dynamic tempo.
The exact feel is intentionally somewhat physical rather than binary.
Your character’s attributes modify the way the inputs feel.
High Self-Esteem makes it easier to push the meter.
High Willpower makes resistance against wave action against your intent (less backslide)
Orientation affects where the Participation meter begins when a scene starts. A submissive player will start to the right of neutral in the "enjoy" side of the bar, with higher arousal rates, and all the immediate penalties/rewards of that bias. Dominant players get to choose from neutral
This means two characters with different Sex Attributes values can experience the same scene very differently.
A character with low Willpower and low Self-Esteem may struggle to control the meter in either direction.
A character with strong Willpower can maintain resistance much more effectively.
A character who is already psychologically inclined toward the encounter may begin closer to the enjoy side of the meter
That is the kind of character-mechanics interaction I am trying to build around, but none of these are final. If you have ideas, let me know!
Climaxes during non consensual scenes result in -10 XP.
Climaxes during consensual scenes result in +10XP.
The avatar location in the participation meter represents your character's current arousal gain rate.
NPC arousal is the red bar on the top that moves from right to left, when this maxes out, scene will end shortly.
Playable character arousal is the pink bar on the bottom of the HUD that moves from left to right. This can be maxed and reset perpetually
The only way to move the NPC arousal bar, which is basically a scene completion bar, is to play the game. If you press NO buttons, no completion happens. If you press one button the whole time, you will only get completion points while you're moving 'with' the wave.
The scene will eventually time out whenever YOU set your AAF initiating mod scenes to last.
Scene Tempo
Every Shtick scene rolls its own maximum tempo.
Consensual/non-aggressive scenes begin at a lower speed and progressively become faster as NPC arousal rises.
The encounter therefore starts relatively manageable and becomes a little faster as it approaches completion.
Aggressive scenes work differently.
They immediately begin at the rolled maximum tempo.
There is no gentle ramp-up.
The idea is not necessarily to make aggressive scenes mathematically impossible or overwhelmingly difficult. It is simply to make them feel mechanically different from the first second.
The tempo itself is randomized within a controlled range, so two otherwise identical scenes should not always feel exactly the same.
Sex Attributes Tie-ins
Sex Attributes is a major part of Shtick.
Shtick currently uses:
Arousal
This is the player’s actual Sex Attributes arousal value.
Shtick does not maintain a fake duplicate player-arousal system.
Participation value changes the rate at which Sex Attributes' normal dynamic sex arousal increases.
Willpower
Willpower primarily affects resistance.
High Willpower reduces how much movement leaks through while you are trying to hold against the wave
Self-Esteem
Self-Esteem determines how fast the avatar can move on the meter when moving with the wave.
Higher Self-Esteem gives the player more speed to move with the waves.
Orientation
Orientation affects the initial Participation position when the scene begins.
Negative Orientation values currently bias the starting point toward participation.
Neutral or positive values begin at neutral.
This is intentionally fairly mild. Orientation influences the starting condition rather than deciding the entire scene for you.
Orgasm
Shtick listens to actual Sex Attributes orgasm events.
If Sex Attributes says an orgasm happened, Shtick considers it real.
Shtick does not manufacture orgasms just to satisfy its own mechanics.
This also means other mods that legitimately alter Sex Attributes orgasm behavior can naturally affect Shtick.
Kick is a good example.
If Kick causes an orgasm attempt to fail, Shtick does not award an orgasm because there wasn't one.
If Kick causes what I call a kick-chain of actual Sex Attributes orgasms, Shtick sees all of them.
This is intentional.
Loss of Control
Once player arousal becomes very high, Shtick will temporarily take control away from you. You are past the point of no return.
At approximately 85 arousal, the Participation meter snaps back to neutral.
During this state:
- Resist/Enjoy control stops influencing the meter.
- NPC progression temporarily stops.
- Participation remains neutral, so Sex Attributes continues at its default 1.0x arousal rate.
Once player arousal falls below the release threshold, Shtick smoothly returns the Participation marker toward the scene’s starting position.
When control is restored, the NPC receives a small arousal bump and normal gameplay resumes.
The idea is to make extreme arousal meaningful and you'll lose control briefly.
When/if arousal drops, you will regain control again.
Note that currently there is a cooldown period embedded in Sex Attributes - the HUD will let you see this in action in real time.
The current threshold for return of control is 75. This mostly affects Kick users (my other mod), If you dont want to use Kick, it'll just reset after each orgasm and go straight to the cooldown period.
NPC Arousal and Scene Completion
Shtick measures participation in the minigame as cumulative NPC Arousal. When NPC arousal maxes out, the scene ends.
This is separate from the player’s Sex Attributes arousal.
The red NPC bar on the top of the hud moves from right to left, it represents how close the encounter is to ending.
When NPC arousal reaches 100, Shtick does not simply kill the animation or disable AAF.
It requests a normal AAF StopScene() using the player as the target.
AAF then performs its normal scene-end process.
Shtick waits for the actual AAF stop event before shutting itself down.
This has been much more reliable than trying to pretend Shtick owns the animation lifecycle.
AAF still owns AAF.
Shtick merely decides when it has had enough.
Shtick does not control other AAF mods and their scene lengths. That means, for now, the way Shtick works is by setting other AAF mods to default scene lengths longer than you need to complete the shtick minigame. I would recommend around 120s, but you can do 300-600. If you do absolutely nothing to participate and play Shtick, the scene will time out per the AAF initiating mod's normal rules. Shtick merely ends them on its own terms if you give it the runway to exert its authority. Basically, the mechanic is simply "work the game, end the scene earlier than the mod would normally". I suggest if you play it as intended, you can probably use 90s+, but you can also use 300 or some other exorbitantly high value.
Aggressive vs Consensual Scenes
Shtick inspects AAF scene tags and metadata when a scene begins.
Aggressive scenes are identified using AAF’s own scene information rather than by asking Sex Attributes to classify the scene.
This matters because Sex Attributes has some classification functions with side effects, and I very deliberately do not want Shtick consuming another mod’s one-shot state just to answer a question it can answer itself.
Current aggressive-scene detection takes into account:
- player-victim metadata
- aggressive tags
- consensual metadata
- player-aggressor metadata
The result determines both gameplay tempo and XP behavior.
This has been tested with both consensual and aggressive scenes and is currently behaving correctly in my load order.
If you find a framework/mod/scene generator that uses strange metadata and Shtick classifies it incorrectly, please report it.
That is exactly the kind of thing this beta is for.
XP
Shtick awards or removes normal Fallout XP when the player has a real Sex Attributes orgasm during an active Shtick scene.
Current values:
Consensual scene player orgasm: +10 XP
Aggressive scene player orgasm: -10 XP
The running scene XP total is displayed briefly above the Shtick HUD whenever it changes.
Positive XP uses the normal Fallout-style HUD color.
Negative XP is displayed in red.
Negative XP cannot reduce the player below the beginning of their current level.
You can lose progress toward your next level.
You cannot be de-leveled.
The level-floor protection approach was inspired by Sex Education, which is part of my every day mod stack, but it can be used with or without Shtick.
AAF Integration
Shtick does not care what animation is currently playing.
It does not care whether AAF advances to another stage, another position, another animation tree entry, or some other internal scene state.
As long as AAF still considers it one continuous player scene, Shtick remains active.
This is important because I do not want Shtick tightly coupled to individual animation packs or position names.
The intended lifecycle is:
AAF starts a player scene.
Shtick notices.
Shtick runs.
NPC progress reaches 100.
Shtick asks AAF to stop.
AAF actually stops.
Shtick shuts down.
That separation is deliberate.
When another scene starts (think about mods like AAF Violate), shtick will restart with the next triggered scene.
Controls
Current default controls are:
E — Resist (decrease playable character arousal rate)
R — Enjoy (increase playable character arousal rate)
There is no Progress towards completing the scene without playing the game.
These are handled through the native F4SE Menu Framework input layer rather than through Papyrus key polling.
That ended up being considerably more work than it sounds like it should have been.
Welcome to Fallout 4.
Input handling may become configurable later.
For this first beta, I primarily want to know whether the mechanic itself is fun, intuitive, simple, and whether the default controls feel natural.
F4SE Menu Framework 3
Shtick's HUD, rendering, and native input handling are built on F4SE Menu Framework 1.53+. This is a HARD requirement
https://www.nexusmods.com/fallout4/mods/105090
Sex Attributes Compatibility Patch
Shtick currently makes one intentionally small change to Sex Attributes.
Sex Attributes normally calculates its own dynamic sex-arousal gain internally.
Shtick adds an external multiplier so Participation score can influence that rate without replacing Sex Attributes' arousal system or repeatedly correcting its value after the fact.
The added property is effectively:
Float Property ExternalDynamicSexArousalMult = 1.0 Auto
and that multiplier is applied only to Sex Attributes' internal dynamic scene-arousal calculation.
I specifically avoided modifying the public ModifyArousal() behavior because other mods call that API.
This means Shtick currently ships a patched Sex Attributes script.
That is something I would eventually prefer to replace with an official integration point if one becomes available.
For now, this was the cleanest way I found to make the systems cooperate without creating duplicate arousal events or fighting Sex Attributes every update.
If people like this, I plan to request the sex attributes mod author add a handle for Shtick to grab. I've already provided the small modification, so hopefully if this is needed, it's a simple update.
This change to FPA_Main.pex should not affect any other mods. I was VERY careful to make sure I implemented this in a way that wouldn't upset the way any other mod I know of talks to sex attributes.
How to Install
Install the ShtickBetavX.Y.Z file through your normal Fallout 4 mod manager.
SOURCE CODE FILE IS FOR REFERENCE ONLY - IT IS NOT A MOD. DO NOT DEPLOY IT IN VORTEX. It is the recipe to build the shtickNative.dll minigame. If you just want to use the mod, the main ShtickBetaV0.X.X.zip is all you need.
This beta contains the
- Shtick ESP
- Compiled Papyrus scripts for Shtick
- Compiled papyrus scripts for Sex Attributes
- A native F4SE plugin
Make sure all hard requirements are installed first.
Current input handling lives inside ShtickNative.dll.
USE BUNDLED SEX ATTRIBUTES (FPATTRIBUTES) PEX FILES - LOAD THEM AFTER DEFAULT SEX ATTRIBUTES FILES. If this is popular, I intend to request the author update their mod with a handle that Shtick can use directly, but the change made was VERY small.
ANY AAF MODS NEED SCENE LENGTH EXTENDED LONG ENOUGH TO ENSURE THAT SHTICK HAS SCENE LENGTH ENDING AUTHORITY TO USE SHTICK AS INTENDED. RECOMMEND 300+ SECONDS TO ENSURE IT NEVER MATTERS
Source code for Shtick is ShtickNative_Source_0.1.1.zip
This is NOT REQUIRED TO INSTALL. It is there for transparency so people can see how ShtickInput.dll was made. It's reference, not required for anything else. If youre just an interested player, feel free to ignore, or yeet it into Claude or chatgpt for an explanation. UI.cpp in the src folder is the core 'game' if you want to open in notepad and look at the C++ code.
Hard Requirements
OLD GEN 1.10.163 for now - Current Version MAY be AE/NG compatible, waiting for feedback
F4SE
Runtime Database - Required for latest versions 0.2.0+
F4SE Menu Framework - Absolute HARD requirement
Address Library for F4SE Plugins
AAF and so on
LL_FourPlay
Sex Attributes / FPAttributes
F4SE Menu Framework 3
Recommended Mods
Kick - Shtick does not require Kick, but was intended to be a companion mod.
Kick can affect Sex Attributes orgasm success, multiple-orgasm chains, arousal floors, Willpower, and other states.
Because Shtick listens to Sex Attributes instead of trying to override it, those effects naturally become part of the minigame.
Perverted Mechanics - Still early, but super fun mod, I think it makes it way more fun
Sex Education - Adds to the XP modifier framework
AAF Violate
Oher AAF ecosystem mods such as Violate, Sexual Harassment, SEU, and similar scene initiators should generally be able to start scenes normally and allow Shtick to observe them, ENSURE YOU EXTEND YOUR SCENE LENGTHS to ensure that Shtick has enough runway to have scene-ending authority.
Compatibility with every possible AAF initiator has absolutely not been tested.
Please break it.
What This Beta Is For
The core loop is working. I am very excited about it. I want to see what the community thinks.
At this point I am less interested in proving that the technology can function and more interested in whether other people actually find the thing fun.
The areas where feedback would be especially useful are:
minigame difficulty, oscillator tempo, Willpower balance, Self-Esteem balance, Loss of Control behavior, HUD readability, aggressive-scene difficulty, scene classification, AAF initiator compatibility, and whether any particular mod causes Shtick to activate or terminate incorrectly.
If something feels bad, tell me.
If something feels unexpectedly good, tell me that too.
If you find a way to horribly break it that I somehow missed after spending far too much time staring at Papyrus logs, I especially want to know.
Known Problems / Limitations
Does not work on NG or AE yet
AAF can hitch - Sometimes badly. Shtick is designed so that a game hitch generally behaves more like a pause than a catastrophic state jump, and so far it appears to recover cleanly when Fallout resumes. That does not mean Shtick is incapable of contributing to a hitch. It means I have not yet found evidence that its native update loop is the source of the large AAF pauses I occasionally see. If you encounter repeatable hitching that only happens with Shtick installed, please report it. Shtick is also being developed in an extremely modded AAF ecosystem. That is useful for stress testing. It is not useful for pretending I have a pristine scientific test environment.
Shtick Requires enough time for its scene ending authority to matter
Special Thanks and Credit
DCCStudios
F4SE Menu Framework 3. Shtick's native HUD and input system would not exist in its current form without this framework.
QTR-Modding
Original SKSE Menu Framework 3, on which the Fallout 4 framework is based.
Omar Cornut / ocornut
Dear ImGui.
Ryan McKenzie
CommonLibF4.
P-K-0 and jarari
D3D11 / ImGui reference patterns credited by F4SE Menu Framework.
F4SE Team
Fallout 4 Script Extender.
AAF and its contributors
For providing the scene framework Shtick observes instead of forcing me to invent one, which would have been a terrible idea.
Sex Attributes / FPAttributes
For providing the character stats, arousal, and orgasm systems Shtick is built around.
Sex Education
For the XP level-floor protection concept.The LoversLab community
For creating an ecosystem where someone can say, “I think Fallout sex scenes need a skill-based oscillator tied to psychological stats,” and several people will respond by helping debug it instead of asking why.
What's New in Version 0.2.7
Released
V0.2.7 Changelog:
-
Solo scenes now have increased difficulty and a longer payoff time. Make sure you set your preferred solo scene initiating AAF mod to a much longer duration than normal to let it play out.
V0.2.5 Changelog:
- NPC Arousal/completion score is now variable. Most wll be around the previous default 100 "points" to complete the scene, but there will be some disappointingly short scenes, and some much longer scenes.
V0.2.0 Changelog:
- Recompiled using CommonLibF4RD - This means there's a good chance NG and AE versions may work now.
- Verified that somewhere along the way, the dependency on an updated F4SEMenuFramework.dll file is apparently not required. New package does not include it.
-
Runtime Database on Nexus is now a new hard requirement.
-
This is part of the AE/NG compatibility attempt, and also seems to have potentially made the default nexus F4SE MEnu Framework play nice with it!
-
This is part of the AE/NG compatibility attempt, and also seems to have potentially made the default nexus F4SE MEnu Framework play nice with it!
V0.1.4 Changelog:
- Added resolution scaling, it SHOULD scale horizontally with your resolution now even if its a small monitor. It's meant to be a certain ratio vertically to your vertical resolution so the height should always be pretty consistent.
- Added "Resist/Enjoy" to the HUD axis
- Removed debug key input indicator (Still visible on some screenshots)
V0.1.2 Changelog:
- The .esp included a stale HUD Framework as a master, I didnt disclose that, because I forgot it was rolled along. This has been addressed
V0.1.1 Changelog:
- Added XP cap per AAF scene
- I had a script in the wrong place and a pex in the wrong place. Fixed.
- Added Shticknative.dll source code for modders to look through
Version 0.1.0 Beta
Initial public beta
This release includes the first complete public version of the Shtick gameplay loop:
- native F4SE/ImGui HUD
- Participate / Resist input
- momentum-based Participation oscillator
- variable per-scene tempo
- escalating consensual scene tempo
- immediate full-tempo aggressive scenes
- NPC arousal/progress
- Sex Attributes player-arousal display
- Willpower integration
- Self-Esteem integration
- Orientation-based starting position
- Loss of Control at high player arousal
- normal AAF scene termination at NPC completion
- AAF aggressive/consensual scene classification
- actual Sex Attributes orgasm detection
- positive/negative XP per orgasm
- XP level-loss protection
- transient scene-XP HUD display
- compatibility behavior with external Sex Attributes modifiers such as Kick
- native Menu Framework input handling
-
This is not finished.
It is, however, finally far enough along that I want other people to play with it instead of me continuing to endlessly tune it in a vacuum.