Ok....I believe I know what the issue is for you, and I'm pretty sure it's a simple misunderstanding of the sliders and what they do. I'll try to explain as best I can so it's hopefully clearer. I've also uploaded a fixed version of the sample scene you gave me which can be found here -
https://drive.google.com/file/d/1I6KA_bbRNx5ywMubQ2pWqTFHYP-Aei8z/view?usp=drive_link
We will start with the top section first (as you can see, I've added a reset button which will be uploaded right after I make this post)
- To start, this plugin works on the principle of "cycles". In other words, a cycle consists of a thrust in and a thrust back out. In order to keep cycles consistent and not allow snapping, the plugin does have built in to it, a feature that doesn't allow changes before a cycle is complete and you can set how many cycles per random setting before it changes to a new random. Since you don't want the random, we can still achieve this by setting the Speed Hold Cycles to just 1.
Starting at the top of the Thrust Cycle Controls.
1 - Initial Entry Duration: This setting ONLY works when going from Thrust being off to Thrust enabled. It's the duration of time when it moves the penis base node from where it is when off, to where it needs to be for the thrust. This plugin, much like the original, aligns the penis base node with two points of the target (which you can turn on in the plugin to see). This is what allows the penis to stay in line with the target since the pose itself may not be perfectly aligned. So to avoid a snap from thrust off to thrust on, we set a duration. I noticed you had these set at zero, meaning you get a snap from resting location to thrust location.
2 - Speed Ramp Duration: This works in tandem with the first setting and is also designed just for starting up the thrust. Instead of going from zero thrust to full thrust, it allows the cycles to ramp up in intensity over a set amount of time. I would suggest having some sort of time set for this, instead of zero. It doesn't have to be the default three seconds, but I'd avoid going less than 1 to avoid snapping behavior.
3 - Cycle Duration Min and Max sliders: As mentioned above, cycles are a complete in/out of a thrust. These sliders control the minimum amount of time a cycle takes and the max amount of time a cycle can take. If you don't want any randomization, you set these to be identical. Slower thrusts would have slower durations. Faster thrusting would have smaller durations. I believe these may have been where you were confused because in your sample scene, these were still set to the defaults.
4 - Duration % in: This slider changes how much of the entire thrust cycle (again, in and then out) is spent on the IN part of the thrust. Default is 40 percent, but you can change this to .5 for even time between in and out.
5 - Duration Change Rate: How fast the Durations (set by the min and max) change over time (this will work in conjunction with the Speed Hold Cycles sliders that I'll mention below) Since you want no variation, and we set the min and max to the same, this would have little effect, except when we load a new preset, so don't set this to zero (actually, I made it impossible to do so in the new version). In your case, think of this as how fast the preset will change from a slower speed to a faster speed when you load it. nothing in life is immediate. Setting this to a reasonable speed will prevent snaps.
6 - Duration range bias: If you WERE using randomization within a preset, this slider will allow the plugin to choose random durations closer to the min or max depending on how it's set. Default is .5 which means an even distribution of random durations within the set parameters of min/max. If both min and max are set identical as mentioned above, then changing this won't really do anything (not entirely true, but for the sake of the cycle speed/duration it is)
7 - Speed Drift Amount: This is very similar to the Duration Change Rate, except that it allows small micro changes in thrust durations for less "robotic" feeling thrusts. You can set this to zero, and it will just mean there's zero subtle variation. It shouldn't impact the change from one preset to another like the one above it does.
8 - Speed Hold Cycle Min and Max: As mentioned above, to prevent sudden changes during a thrust, this plugin works on ensuring a complete cycle before things change to a new random or loaded preset. The default for these allows for several cycles before allowing a change. In your case, you're looking to have the speed/cycle duration change as soon as you load the new preset. For this, setting these to 1 for both means that it will still allow the previous cycle to complete before allowing the new preset cycle to change it. Again, this is to allow for a smooth transition from one speed to the next.
View attachment 561775
Since the next section is also important for the thrust, I'll mention those controls too.
9 - Distance In and Out: As mentioned above, this plugin aligns the penis base node with two points on the target (which you can visibly see if you turn them on in the plugin). Using that "path", the plugin will move the penis base node from the set "out position" to the set "in position" and then back to the Out, completing a full cycle. You can adjust these points with these sliders. If the thrust isn't going in enough, move the Distance In slider up. If the thrust is pushing in too far, pull this back. Same for the out. It's important to note that on the initial movement when you turn thrust on, it moves the penis base node from the resting position of whatever pose is set, to this OUT point. This is why having a duration set in that setting above is vital to avoid a snap. It's basically aligning the penis with the target. When thrust is disabled, it will use that same duration to take it from the thrust path, back to the resting place of the set pose.
10 - Distance Random %: This allows for randomizing the in and out points of the path based on a percentage for less robotic thrusting. If you want consistent thrusts, leave this at zero.
11 - Target Tracking Smoothing - Since the target moves due to being thrust at and perhaps animations set on it, this slider allows for how smoothing the penis base tries to stay with the target path. If it's too low, thrusting may feel jittery if there's a lot of motion on the part of the target. IF she's not moving much, then this isn't as important.
12 - Distance Compression at Max Speed: This label might be confusing. Basically, this works in tandem with the Cycle Duration sliders above. When you're allowing for Randomization, and have a faster duration and a slower duration, this slider sets how much the Distance IN and OUT points compress together on the path, meaning smaller thrusts. In the real world, faster thrusting often means the distance in and out gets smaller. This slider is to mimic that behavior. If you have in and out points set....this compresses them together for the faster thrusts. What this means for you is that if this has a setting other than zero, even though your min and max are identical, the plugin is still choosing a random duration (though it doesn't change since they're identical) and some thrusts might have that compression. You might want to up this so you do get a little variation, or you may want to set it to zero so there's none.
13 - Distance offset at Max Speed: This, like the Compression slider also works in tandem with the Cycle Duration. Setting this to zero means the "offset" of the in and out doesn't change. But changing it to a positive or negative value changes the In and Out offset the closer the cycle gets to the shorter set duration. Again, in your case, if min and max are identical, there's still a "range" of speeds the cycle is randomizing (even though they're the same) and having this set to a non-zero setting will still impact your thrusts.
View attachment 561777
Let me know if all that makes sense.