Jump to content

(BETA) Dealer's Choice - Devious Followers Addon


Recommended Posts

Posted
On 11/12/2023 at 3:18 PM, ponzipyramid said:

 

Are you still encountering issues with this?

 

Had some time to mess around a bit today. Some deals not working while others do seems to be a problem on my end, as I cannot consistently reproduce it. Sometimes it happens, sometimes not. Lately it works more often than not, which is great!

As for the maid dress, I got it working by removing the brackets [] from the .esp name, and changing both the custom.json and defaults.json files to reflect the new name. I have not yet checked if merely one of those changes were enough.

Posted

I had the same issue as @H Bof when after ~3rd workout animations stopped playing. Since I'm too lazy to enable logging stuff and it doesn't seem to help anyway, I went to the script source (SF_DChoice_FitnessWorkoutSce_0A06AD76.psc) and after some playing with it found an infinite loop in ChooseAnimation() function:
 

int reps = 0
while StorageUtil.GetIntValue(none, ChosenPrefix + index, 0) || reps >= anims.Length
	if index >= anims.length
		index = -1
	endIf
	index += 1
	reps += 1
endWhile


So I have only 10 animations in ExerciseAnims and apparently all of them have been played already (dunno if it's supposed to happen), so the first condition in the loop is always "1". I'm not sure I understand the second condition "|| reps >= anims.Length", but I replaced it with "&& reps < anims.Length" which limits the number of loops to array size and it fixed the problem (assuming this was the problem and it wasn't some other part of the script that failed to prevent this situation when there are too few unseen animations left^^).

Posted (edited)
22 minutes ago, Vigor said:

I had the same issue as @H Bof when after ~3rd workout animations stopped playing. Since I'm too lazy to enable logging stuff and it doesn't seem to help anyway, I went to the script source (SF_DChoice_FitnessWorkoutSce_0A06AD76.psc) and after some playing with it found an infinite loop in ChooseAnimation() function:
 

int reps = 0
while StorageUtil.GetIntValue(none, ChosenPrefix + index, 0) || reps >= anims.Length
	if index >= anims.length
		index = -1
	endIf
	index += 1
	reps += 1
endWhile


So I have only 10 animations in ExerciseAnims and apparently all of them have been played already (dunno if it's supposed to happen), so the first condition in the loop is always "1". I'm not sure I understand the second condition "|| reps >= anims.Length", but I replaced it with "&& reps < anims.Length" which limits the number of loops to array size and it fixed the problem (assuming this was the problem and it wasn't some other part of the script that failed to prevent this situation when there are too few unseen animations left^^).

 

Thanks for catching this, that's one issue down. I got reproducible steps for rules failing to activate so hopefully I can address that as well. FYI, I'm away from my primary development machine so fixes will be delayed.

Edited by ponzipyramid
Posted
2 hours ago, ponzipyramid said:

 

Thanks for catching this, that's one issue down. I got reproducible steps for rules failing to activate so hopefully I can address that as well. FYI, I'm away from my primary development machine so fixes will be delayed.

And on second thought, it's not really needed to store seen animations, there are not that many of them... You could just pick 4-5 random different animations whenever the workout starts (or clear storage when the workout is done). One more downside of this loop is you can get repeated animations after 3-4 workouts, because at that point all values in StorageUtil are "1".

Posted
22 minutes ago, Vigor said:

And on second thought, it's not really needed to store seen animations, there are not that many of them... You could just pick 4-5 random different animations whenever the workout starts (or clear storage when the workout is done). One more downside of this loop is you can get repeated animations after 3-4 workouts, because at that point all values in StorageUtil are "1".

 

There's two mistakes, the one you identified and a missing section of code that's intended to clear out the storageutil values if everything is set. Once both fixes are in, you should get solid animation variety where old animations won't be selected until all have been expended.

  • 2 weeks later...
Posted

Found another small bug with the workout event. In the "DChoice_Fitness.psc" script the NumAdded variable is not reset in SetupWorkout() function (unlike NumRemoved = 0), so after a few workouts device removal stopped working (gags & plugs), because NumRemoved went some high number (dunno how papyrus handles this, but "it just doesn't work").

Although at first I thought the follower became extra devious and decided to keep the ring gag on "for fun", so maybe it should be a random event to add extra struggle for PC :)

Posted

the diet deal conflicts with the lactacid deal, since lactacid is seen as food, would love to see that fixed. thanks for this mod and the rewrite! :)

Posted

i have a question ? gspose is to choose the hotkey pose version or the SLAL version. I see in the config settings the pose hotkey version but I don't use it

  • 1 month later...
Posted

Really enjoying the new update, almost all of my previous issues have been resolved. The only thing now is that my follower seems to think I need to wear a maid outfit at all times, so even in the middle of a dungeon they still constantly clock me for more debt for wearing armor. Would anyone have an idea of how to solve this?

Posted
7 hours ago, H Bof said:

Really enjoying the new update, almost all of my previous issues have been resolved. The only thing now is that my follower seems to think I need to wear a maid outfit at all times, so even in the middle of a dungeon they still constantly clock me for more debt for wearing armor. Would anyone have an idea of how to solve this?

 

Can you run GetGlobalValue DChoice_RuleMaid in your console and let me know what it says. That dialogue is conditioned to only occur when the maid rule is active so that might be getting set incorrectly.

Posted
18 hours ago, ponzipyramid said:

 

Can you run GetGlobalValue DChoice_RuleMaid in your console and let me know what it says. That dialogue is conditioned to only occur when the maid rule is active so that might be getting set incorrectly.

I did have the maid deal active and it was only happening after agreeing to it, just equipping anything else even when outside of a town would still cause my follower to add debt no matter where I went. I just used additem f to buy out of the deal and agreed to something else for the time being. Do you still need me to run that command? The issue went away after buying back out of the deal so it's only happening when the deal is active.

  • 5 weeks later...
Posted (edited)

I noticed I got the Idle comment about having failed to deliver food, even though I don't have that deal active. Looking through the esp, I noticed that many of the dialogue conditions have this error in them: image.png.3406c1b024ae7f970c074647126093a7.png

 

This is the first time I noticed anything wrong, so I'm a bit confused... Did a fresh install of the most recent version and the issue persisted

 

 

 

Edit: WAIT, nevermind, this is absolutely a me issue, now everything's as broken as these errors would indicate (I thought it was strange that I'd not noticed anything until now). Not sure what happened to cause it in that case though...

Edited by Aldid
Posted
23 minutes ago, Aldid said:

I noticed I got the Idle comment about having failed to deliver food, even though I don't have that deal active. Looking through the esp, I noticed that many of the dialogue conditions have this error in them: image.png.3406c1b024ae7f970c074647126093a7.png

 

This is the first time I noticed anything wrong, so I'm a bit confused... Did a fresh install of the most recent version and the issue persisted

 

 

 

Edit: WAIT, nevermind, this is absolutely a me issue, now everything's as broken as these errors would indicate (I thought it was strange that I'd not noticed anything until now). Not sure what happened to cause it in that case though...

Keeping this to let the record show that I am the biggest moron there ever was, and this was all caused by me installing the LE version to test something and then forgetting about it

Posted

I have a little problem with the maid outfit deal. When the deal starts, it says that the apachii maid outfit was not found but I have the mod installed. Since there are two versions of apachii‘s maid armor on nexus (main version without and an optional one with the merchant), which have a slightly different name for the esp, I suspect this might be the issue but not sure.
I use the version with the merchant. Is there any way I could fix this and have dealer‘s choice recognize the maid armor correctly? (beside installing the no-merchant version)

Posted
On 2/24/2024 at 2:56 PM, User1598 said:

I have a little problem with the maid outfit deal. When the deal starts, it says that the apachii maid outfit was not found but I have the mod installed. Since there are two versions of apachii‘s maid armor on nexus (main version without and an optional one with the merchant), which have a slightly different name for the esp, I suspect this might be the issue but not sure.
I use the version with the merchant. Is there any way I could fix this and have dealer‘s choice recognize the maid armor correctly? (beside installing the no-merchant version)

The mod contains a config file for selecting your own maid outfits. All you would need to do is go to that file and make sure the Apaachi entry matches the plugin you've got installed (Esp name and formID)

Posted
On 2/25/2024 at 4:48 PM, Aldid said:

The mod contains a config file for selecting your own maid outfits. All you would need to do is go to that file and make sure the Apaachi entry matches the plugin you've got installed (Esp name and formID)

Where can I find the formID? I checked in SSEedit but can only find this "NULL reference" in the file header but that's the same for every mod. The "Next Object ID" looks more like the formIDs from the mods already included in dealer's choice or am I looking in the wrong place alltogether?

(sorry, might be some dumb questions but I'm not very experienced)

 

Spoiler

FormID.JPG.c6c4cbf5eadec7714844fbad89bf6a1d.JPG

 

Posted
2 hours ago, User1598 said:

Where can I find the formID? I checked in SSEedit but can only find this "NULL reference" in the file header but that's the same for every mod. The "Next Object ID" looks more like the formIDs from the mods already included in dealer's choice or am I looking in the wrong place alltogether?

(sorry, might be some dumb questions but I'm not very experienced)

 

  Hide contents

FormID.JPG.c6c4cbf5eadec7714844fbad89bf6a1d.JPG

 

Ahh, I see the confusion. What you're looking for is the FormID of the specific armor pieces you want to add to the Dealer's Choice configuration file. They can be seen here: image.png.046a864be3c51f64fd7e077c9bc4f54e.png

 

Then you want to go to Dealers\SKSE\Plugins\Dealer's Choice and edit the appropriate Json file so that each armour piece you want to add has the format "[0xFormID] | [Full name of Mod.esp].

 

The first two numbers of the FormID you see in xEdit are specific to your load order, and should therefore be omitted (giving you a six digit long number). It should look something like this:

 

image.png.5ceda29ed1839b00ea6c57487ef82e6e.png

 

As for which of the three files there to edit, I'm not entirely sure as I think I've done some changes here. I assume the custom.json file is for if you want to add multiple of your own outfits, but if you just want to fix the default outfit then you should presumably be changing default.json or defaults.json (not sure which, I've messed them both up)

 

 

Posted

Oh! I just noticed, it seems like the maid deal doesn't check whether or not you're in a city/town when it adds debt! I was walking out of riverwood and was confused about why I kept getting more and more debt

Posted
6 hours ago, Aldid said:

Ahh, I see the confusion. What you're looking for is the FormID of the specific armor pieces you want to add to the Dealer's Choice configuration file. They can be seen here: image.png.046a864be3c51f64fd7e077c9bc4f54e.png

 

Then you want to go to Dealers\SKSE\Plugins\Dealer's Choice and edit the appropriate Json file so that each armour piece you want to add has the format "[0xFormID] | [Full name of Mod.esp].

 

The first two numbers of the FormID you see in xEdit are specific to your load order, and should therefore be omitted (giving you a six digit long number). It should look something like this:

 

image.png.5ceda29ed1839b00ea6c57487ef82e6e.png

 

As for which of the three files there to edit, I'm not entirely sure as I think I've done some changes here. I assume the custom.json file is for if you want to add multiple of your own outfits, but if you just want to fix the default outfit then you should presumably be changing default.json or defaults.json (not sure which, I've messed them both up)

 

 

Thanks, this helps a lot. I thought I just had to „link“ the entire mod with dealers choice to let it read it‘s contents and that would automatically include all the maid armors.
Makes more sense that I have to include each armor myself actually. 
Just so I understand this correctly, if I include all the armor pieces (boots, dresses, gloves, collars etc.) in the json, then dealer‘s choice will, for the quest, pick one of each item by random or does it match the items to complete a set?

Posted
4 hours ago, User1598 said:

Thanks, this helps a lot. I thought I just had to „link“ the entire mod with dealers choice to let it read it‘s contents and that would automatically include all the maid armors.
Makes more sense that I have to include each armor myself actually. 
Just so I understand this correctly, if I include all the armor pieces (boots, dresses, gloves, collars etc.) in the json, then dealer‘s choice will, for the quest, pick one of each item by random or does it match the items to complete a set?

I believe it only gives you one (meant to be the main piece). You'd have to give yourself the rest of the ensemble manually

  • 3 weeks later...
Posted (edited)

I was looking at how the main mod handles the Whore Armor by giving you multiple pieces to choose from. Looking at "whore-armor.default.json" in \Devious Followers Redux\SKSE\Plugins\Devious Followers Redux\Config, it looks like there are likely multiple fields the mod uses the json to pull from to give you different sets.

 

Would it be possible to edit the Dealer's Choice json so that it also has room for multiple items as well? For example, adding fields for "maid-tops", "maid-shoes", "maid-gloves", "maid-choker", "maid-accessory", "maid-headpiece" and so on? These fields could normally be left blank but if someone wanted to edit the json so they are given a full set, it could then be done. I tried poking around with SSEEdit but I'm fairly new and didn't want to break anything. Either way, thank you for your hard work! Neat addition to an already neat mod!

 

EDIT: I think I was misunderstanding the way the jsons work and have done some more tinkering. I'll continue chipping away at it after more closely reading this thread. Thanks!

Edited by niwik
status update
  • 3 months later...
  • 2 months later...
Posted (edited)
On 2/27/2024 at 9:34 AM, User1598 said:

Where can I find the formID? I checked in SSEedit but can only find this "NULL reference" in the file header but that's the same for every mod. The "Next Object ID" looks more like the formIDs from the mods already included in dealer's choice or am I looking in the wrong place alltogether?

(sorry, might be some dumb questions but I'm not very experienced)

 

  Reveal hidden contents

FormID.JPG.c6c4cbf5eadec7714844fbad89bf6a1d.JPG

 

I just added a keyword to the maid armour i always wanted to use and made an esl to tag the keyword on the clothing. It would be good if this was a keyword you could add to stuff like OSLAroused as it would remove many of these issues of esp versions and make the clothing choice very flexible to the player without digging for ID's or a visit out of game. Editing Json's seems simple at first, until you boot up xEdit and realize you could just add the keywords while you are there rather than copy id's to a json.

Edited by DDD69%
  • 4 months later...

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...