Jump to content

Recommended Posts

Possible bug report: I was running around with several freed Commonwealth Captives in tow and together we entered Fraternal Post 115. I (eagerly) surrendered to the super mutant inhabitants, and rapey-fun-time ensued. Unfortunately, one of the companions following me had previously been commanded to get into a suit of power armor we came across, and when one of the muties chose her as a sex partner she did not exit the suit. Rather, her mesh switched to that of a naked human but kept the power armor skeleton, so her limbs were all freakishly elongated. The power armor frame vanished and the previously equipped power armor parts were left in her inventory, but her skeleton was permanently deformed as if she was still in power armor. I restored and replayed this scene multiple times, and while most of the time she did not get picked for sex, the times that she did the behavior was consistently broken.

Link to comment
9 minutes ago, vaultbait said:

when Violate sends the player to BiP the followers come along

 

See if they are still running Violate's "flee with player" AI package.  You can run the console command "cqf fpv_player gcp [refID]" and the actor's AI info will be printed in the script log.

Link to comment
Just now, EgoBallistic said:

 

See if they are still running Violate's "flee with player" AI package.  You can run the console command "cqf fpv_player gcp [refID]" and the actor's AI info will be printed in the script log.

 

Thanks! I did try variations of the linked patch which also told them to stop following, reinitialized packages and disabled AI, but I didn't consider that Violate might be overriding their packages through an alias. I bet that's the problem.

Link to comment
35 minutes ago, EgoBallistic said:

 

No it's nothing like that.

 

Here's the issue.  One of the settings that mods can pass into AAF when requesting an animation is the "meta string".  The mod passes the meta string in during the StartScene call, and AAF sends it back out with the resulting animation events.  Violate uses this string to identify which animations it started, so that it won't react to animations from other mods. 

 

The bug that is happening is simply that the string is getting deleted inside AAF.  I added logging to AAF itself; the string is there when the mod calls StartScene() but it is empty when AAF is about to send out the OnAnimation / OnScene events.  This doesn't just happen to Violate, it happens to every mod that calls animations and uses the meta string.

 

There isn't a simple explanation for this, unfortunately.  AAF has had the meta feature for years, and Violate has used it since April of 2021.  If it was something simple, it would have been discovered long ago.

 

I think it actually is something low level, possibly related to the game's string cache, or something stomping on AAF's Scaleform memory, something like that.  But I'm really just speculating.  And, frustratingly, I haven't been able to reproduce the issue myself.  My load order right now has the latest SS2 with all three chapters, along with big quest mods like Tales from the Commonwealth, Heather Casdin, Milking Human Kindness, Nuka Ride, and every AAF mod I could think of that reacts to animations.  Unfortunately everything works perfectly every time.  I'm going to continue trying but I am forced to admit I'm starting to run out of ideas.

I know it's on the event and that's why I assumed it's something low level to begin with a ddl hooked in of some sort... I know a mod using aaf would have to know when the animation finishes, only aaf could tell the mod that. ... still the api functions should be direct in intent of what's passed to aaf and aaf in what's being passed back.

 

Fact that it's not happening to many others, including when I set up a similar F4SE env is perplexing. Of course I do not know the settings being used on them, Do you think might be BakaScrapHeap is somehow messing with Buffout? Hard to tell....

 

.pex is pretty much a kind of p-code using the .ddl's ... are the ,exe and .ddl doing the work.

 

i.e. I remember a few years ago when nvse updated from 5.x to 6.0.1 it played havoc with old mods due they redefined a number of functions and primitive types of all things in order to optimize performance and save files on disk... blew many Sexout mods out of the water, especially those which were building a lot of structs dynamically - to provide such as features as diynamic MCM menus etc... found myself tracing through a ton of nvse new C++ source and comparing to the old.

Edited by eflat01
Link to comment
7 hours ago, EgoBallistic said:

 

The admin error shows that it's trying to find an FMMMM animation with the "Aggressive" and "Rough" tags.  My guess is the problem is with the tags.  Perhaps you are using an animations patch that removed these tags?


The basic SavageCabbage mod uses the correct tags for this:

 

<position id="SC-FMMMM-Human-Floor01-03Gangbang" tags="SavageCabbage,F_M_M_M_M,NoFurn,Aggressive,MidStage,Held9,Love0,Stim9,Dom-9,NullToSelf,PenisToVagina,PenisToAnus,PenisToMouth,PenisToHand"/>

 

However I think UAP's patch for SavageCabbage is messed up.  If you're using UAP, I recommend doing the following:

 

1) Uninstall UAP

2) Uninstall SavageCabbage 1.2.8

3) Install SavageCabbage 1.3.0

4) Reinstall UAP and do not let it patch SavageCabbage

 

That should get the animations working correctly.

Allrighty....

 

Did as you said and removed SC and UAP, then re-installed SC and UAP with UAP denied access to the SC animations and tested again... And it works like a charm!

 

Thanks a bunch! Have a beer and a cookie on me!!

:D

 

Link to comment
50 minutes ago, vaultbait said:

Unfortunately, one of the companions following me had previously been commanded to get into a suit of power armor we came across, and when one of the muties chose her as a sex partner she did not exit the suit. Rather, her mesh switched to that of a naked human but kept the power armor skeleton, so her limbs were all freakishly elongated

 

Thanks for reporting this.  Violate checks if followers are in PA and makes them exit if so.  I reproduced the problem, it turns out for whatever reason, in that location Actor.IsInPowerArmor() always returns False on NPCs.  I fixed it by also checking for WornHasKeyword(isPowerArmorFrame).

Link to comment
2 hours ago, vaultbait said:

 

I'm guess you have Buffout 4 installed too, it does a bit with memory management but presumably isn't causing this. What other F4SE plugins were active for the person who was observing the problem? Maybe one of them is doing something naughty to in-memory structures. Or do they have anything patching F4SE itself? For example, Baka Framework overwrites StringUtil.pex.

Great idea, I did have bakaframework installed in the past, but removed it.  I just checked my scripts folder for anything left behind, but it's clear. I'll post my F4SE directory: I'm using MO2, so the AAF dll files are in their own F4se folder, but here is the rest of my folder. In any event, I could also post my scripts folder in case there's anything there, as I'm using a hybid mo2 installation, and moved out active AAF mods to use MO2 system

 

edit: added f4se logf4se.log

 

 

Spoiler

image.thumb.png.29d4107f5e647cc4a493e1ad6c15fc7a.png

 

Edited by Robert T
Link to comment
3 hours ago, EgoBallistic said:

 

No it's nothing like that.

 

Here's the issue.  One of the settings that mods can pass into AAF when requesting an animation is the "meta string".  The mod passes the meta string in during the StartScene call, and AAF sends it back out with the resulting animation events.  Violate uses this string to identify which animations it started, so that it won't react to animations from other mods. 

 

The bug that is happening is simply that the string is getting deleted inside AAF.  I added logging to AAF itself; the string is there when the mod calls StartScene() but it is empty when AAF is about to send out the OnAnimation / OnScene events.  This doesn't just happen to Violate, it happens to every mod that calls animations and uses the meta string.

 

There isn't a simple explanation for this, unfortunately.  AAF has had the meta feature for years, and Violate has used it since April of 2021.  If it was something simple, it would have been discovered long ago.

 

I think it actually is something low level, possibly related to the game's string cache, or something stomping on AAF's Scaleform memory, something like that.  But I'm really just speculating.  And, frustratingly, I haven't been able to reproduce the issue myself.  My load order right now has the latest SS2 with all three chapters, along with big quest mods like Tales from the Commonwealth, Heather Casdin, Milking Human Kindness, Nuka Ride, and every AAF mod I could think of that reacts to animations.  Unfortunately everything works perfectly every time.  I'm going to continue trying but I am forced to admit I'm starting to run out of ideas.

 

 

OH!

 

They should doublecheck the buffout version... I remember the version I was using from  was fine until I updated it in July when a vortex check said there was an update https://www.nexusmods.com/fallout4/mods/47359 with a new version they posted from nexus, Had memory issues after loading game saves in fact, they would load but some would screw up settings after a few minutes of play.

 

image.png.fe39808eea84492b8cf34e922bb496d4.png

 

Then I went and pulled the one on the left from https://www.nexusmods.com/fallout4/mods/64880 to correct it.

 

Trying to think of anything which deals with allocation which recently changed.

 

Edited by eflat01
Link to comment
30 minutes ago, eflat01 said:

They should doublecheck the buffout version... I remember the version I was using from  was fine until I updated it in July when a vortex check said there was an update https://www.nexusmods.com/fallout4/mods/47359 with a new version they posted from nexus, Had memory issues after loading game saves in fact, they would load but some would screw up settings after a few minutes of play.

 

So... 1.28.6 was causing problems, and you switched to the forked 1.31.1 by alandtse and that corrected the problems?

 

I'm still on version 1.23.1, I didn't see anything compelling in the changelogs for later versions so I never updated.

Link to comment
10 minutes ago, EgoBallistic said:

I'm still on version 1.23.1, I didn't see anything compelling in the changelogs for later versions so I never updated.

 

The only reason I upgraded was for the archive limit fix, though I probably wasn't hitting it I figure it's only a matter of time before I do.

Link to comment
1 hour ago, EgoBallistic said:

 

So... 1.28.6 was causing problems, and you switched to the forked 1.31.1 by alandtse and that corrected the problems?

 

I'm still on version 1.23.1, I didn't see anything compelling in the changelogs for later versions so I never updated.

 

I was using  v1.26.2 before that, leaped before looking I removed that version out of vortex and it's dl directory. 

Link to comment
1 hour ago, vaultbait said:

 

The only reason I upgraded was for the archive limit fix, though I probably wasn't hitting it I figure it's only a matter of time before I do.

 

That's what enticed me to click away... :) 

 

Yes I had problems with it and why I switched it out. Can see a post by me on Nexus that day asking them to post the prior version again... rather than wait I just grabbed the NG fork version. 

 

I'm just trying to think of dll's which had changed based on when Robert T and roflmaones said their issues started. Pop-shots in the dark.

Edited by eflat01
Link to comment
4 hours ago, vaultbait said:

Thanks! I did try variations of the linked patch which also told them to stop following, reinitialized packages and disabled AI, but I didn't consider that Violate might be overriding their packages through an alias. I bet that's the problem.

 

I had a look at your patch and at Violate's outcome code and I think I see the problem.  GetPlayerFollowers() only works on NPCs who are currently running a package that makes them follow the player.  But at the time Violate sends the player into BIP, the followers are still in their surrendered package.

 

I'm in the Violate code right now anyway, so I'm going to add a function similar to your patch that will imprison anyone in Violate's Followers alias before calling BIP, and move them back to the player when BIP ends.

Link to comment
8 minutes ago, EgoBallistic said:

I had a look at your patch and at Violate's outcome code and I think I see the problem.  GetPlayerFollowers() only works on NPCs who are currently running a package that makes them follow the player.  But at the time Violate sends the player into BIP, the followers are still in their surrendered package.

 

Hah, I was just coming in here to post that extra debug logging I added showed the followers list was empty. So yes, I agree that's what's going on. They aren't technically considered followers at the time the BiP handoff occurs.

 

8 minutes ago, EgoBallistic said:

I'm in the Violate code right now anyway, so I'm going to add a function similar to your patch that will imprison anyone in Violate's Followers alias before calling BIP, and move them back to the player when BIP ends.

 

Amazing, thanks! That still doesn't address BiP trying to dismiss followers when called in other ways than by Violate, but presumably a similar routine to what I posted in its support topic will cover the rest anyway.

Edited by vaultbait
Link to comment
19 minutes ago, eflat01 said:

 

That's what enticed me to click away... :) 

 

Yes I had problems with it and why I switched it out. Can see a post by me on Nexus that day asking them to post the prior version again... rather than wait I just grabbed the NG fork version. 

 

I'm just trying to think of dll's which had changed based on when Robert T and roflmaones said their issues started. Pop-shots in the dark.

 

For reference, I am using Buffout 4 NG

Link to comment
20 minutes ago, eflat01 said:

That's what enticed me to click away... :) 

 

Yes I had problems with it and why I switched it out. Can see a post by me on Nexus that day asking them to post the prior version again... rather than wait I just grabbed the NG fork version.

 

Note that subsequent versions of Buffout 4 (not NG) mention in the changelog that the regression was fixed and the feature reenabled by default.

Link to comment
3 hours ago, EgoBallistic said:

 

I had a look at your patch and at Violate's outcome code and I think I see the problem.  GetPlayerFollowers() only works on NPCs who are currently running a package that makes them follow the player.  But at the time Violate sends the player into BIP, the followers are still in their surrendered package.

 

I'm in the Violate code right now anyway, so I'm going to add a function similar to your patch that will imprison anyone in Violate's Followers alias before calling BIP, and move them back to the player when BIP ends.

just my two cents, but isn't it better to also lock companions in devices and included then in the punishment (has to be done in BIP) like Violate does or just dismiss them (go home) when BIP starts.
Edit: i think Vaultbait is referring to followers not vanilla companions so nevermind.

Edited by lee3310
Link to comment
33 minutes ago, lee3310 said:

just my two cents, but isn't it better to also lock companions in devices and included then in the punishment (has to be done in BIP) like Violate does or just dismiss them (go home) when BIP starts.

 

Well BIP is player focused, and doing that with companions would basically be rewriting the BIP mod.

 

34 minutes ago, lee3310 said:

Edit: i think Vaultbait is referring to followers not vanilla companions so nevermind.

 

Pretty much yeah.  What Violate considers followers encompasses a lot more than just vanilla companions.  The approach I am taking will handle it - I really just took Vaultbait's idea and implemented it in Violate's BIP interface quest.

Link to comment
57 minutes ago, lee3310 said:

Edit: i think Vaultbait is referring to followers not vanilla companions so nevermind.

 

Yes. More generally, if you have a lot of NPCs follow you to a BiP scenario, they bumble around randomly and get in the way of the other NPCs the mod sends to antagonize you, causing pathing challenges, long delays, and also randomly interject interrupting the mod's dialogue. BiP attempts to dismiss them, but that only works for companions. Also dismissing companions every time you get into a scenario may mean traveling all over the map to re-recruit them after they go home, hence the desire to effectively sequester them until the scenario ends and then teleport them to you afterward.

Link to comment
2 hours ago, EgoBallistic said:

 

Well BIP is player focused, and doing that with companions would basically be rewriting the BIP mod.

 

 

Pretty much yeah.  What Violate considers followers encompasses a lot more than just vanilla companions.  The approach I am taking will handle it - I really just took Vaultbait's idea and implemented it in Violate's BIP interface quest.

 

1 hour ago, vaultbait said:

 

Yes. More generally, if you have a lot of NPCs follow you to a BiP scenario, they bumble around randomly and get in the way of the other NPCs the mod sends to antagonize you, causing pathing challenges, long delays, and also randomly interject interrupting the mod's dialogue. BiP attempts to dismiss them, but that only works for companions. Also dismissing companions every time you get into a scenario may mean traveling all over the map to re-recruit them after they go home, hence the desire to effectively sequester them until the scenario ends and then teleport them to you afterward.

I can totally see how having NPCs with following package can be problematic in this situation.
I'm always looking for the most realistic way to do something even if it's a game but Bip doesn't leave you too much room for handling followers. The only other option i can think of is to hold followers in the same spot where the PC got kidnapped and use real handcuffs to hold them (kneeling pose) until the player gets free and uncuffs them.

Edited by lee3310
Link to comment
3 hours ago, vaultbait said:

 

Yes. More generally, if you have a lot of NPCs follow you to a BiP scenario, they bumble around randomly and get in the way of the other NPCs the mod sends to antagonize you, causing pathing challenges, long delays, and also randomly interject interrupting the mod's dialogue. BiP attempts to dismiss them, but that only works for companions. Also dismissing companions every time you get into a scenario may mean traveling all over the map to re-recruit them after they go home, hence the desire to effectively sequester them until the scenario ends and then teleport them to you afterward.

Yeah, I can see that, would hang up the flow... I try not to carry a crowd along. CC's and others I send off before going near raiders. 

 

BiP once sent the PC to Lexington at an intersection with a lot of ferals around running up and down the streets just stopping before the intersection. When she finally broke free had to run like hell as a dozen plus lay chase.  

 

Hannah had Cait along with her the first time I wanted to look at Violate to BIP. All her companions go to Home Plate so is easy to pick them back up again, Is also a pretty crowded place, quite noisy and they're always fighting for the bed and/or the shower. Whenever Hannah stops by to shower she end's up diving in DC's pond they use for drinking water... 

 

 

Edited by eflat01
Link to comment

There seem to be some issues with AAF Violate handing the player off to Raider Pet. It occured once earlier in the game but any later occurences Violate fails to pass it over in correct areas with bosses. The player can still trigger the quest manually by walking in unarmed so I think it is an issue on Violates end. I did use some console commands to check the status of the raider pet quests and they're logged as stopped with a few stages skipped but that doesn't seem abnormal many quests that I all ready completed show the same in console commands. Not sure why Violate isn't passing it over but suppose can retrigger it manually just pefer not to. For now gonna move it much lower in the load order and try again. I also loaded back to earlier saves and the FIRST Violate and Raider Pet occurence works fine but any 2nd one pet outcome just won't work maybe it is hung up somewhere on a stage in Raider Pet but I killed the boss and received xp and black widow perk so pretty sure the quest properly concluded. If anyone has any advice on fixing it would appreciate it.

Link to comment
57 minutes ago, Spectre5342 said:

There seem to be some issues with AAF Violate handing the player off to Raider Pet. It occured once earlier in the game but any later occurences Violate fails to pass it over in correct areas with bosses. The player can still trigger the quest manually by walking in unarmed so I think it is an issue on Violates end. I did use some console commands to check the status of the raider pet quests and they're logged as stopped with a few stages skipped but that doesn't seem abnormal many quests that I all ready completed show the same in console commands. Not sure why Violate isn't passing it over but suppose can retrigger it manually just pefer not to. For now gonna move it much lower in the load order and try again. I also loaded back to earlier saves and the FIRST Violate and Raider Pet occurence works fine but any 2nd one pet outcome just won't work maybe it is hung up somewhere on a stage in Raider Pet but I killed the boss and received xp and black widow perk so pretty sure the quest properly concluded. If anyone has any advice on fixing it would appreciate it.

Making sure the Boss, or their replacement has actually re-spawned and you're close enough for Violate to detect them. It's been awhile since I played Raider Pet, but it seems like with the replacement Bosses I had to have them actually load before Violate would detect them as a Boss. But it's been awhile.

Link to comment
56 minutes ago, izzyknows said:

Making sure the Boss, or their replacement has actually re-spawned and you're close enough for Violate to detect them. It's been awhile since I played Raider Pet, but it seems like with the replacement Bosses I had to have them actually load before Violate would detect them as a Boss. But it's been awhile.

 

Also no companions. Violate is more picky about that than RP.

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