Krazyone Posted April 21, 2023 Posted April 21, 2023 2 hours ago, vaultbait said: 8 hours ago, sen4mi said: How should we keyword equipment which prevents skin from being covered? For example, there's some high heels which occupy all of the top/bottom/armor slots. 1 hour ago, vaultbait said: I would just not add any coverage keywords to that at all, since it doesn't cover anything. The fact that it takes up slots and so conflicts with other clothing items which would cover the body is irrelevant. It's about what that item covers, which is basically nothing, not about what slots are used. I just added the High Heels Tag, there is a choice of 2. Krazyones SAKR Skimpy Armor Keyword Resources Addons ... 2. SAKR Tags Noras Secret Shoe Hunt KP
raanferden Posted April 24, 2023 Posted April 24, 2023 I made these for myself, but if anyone wants them, then here you go, overwrite files for AWKCR/SAKR tags covering the base game, and another for DLC's. if you dont like the way i tagged it all, then you are more than welcome to do it yourself. AWKCR - SAKR Vanilla patch.espAWKCR - SAKR DLC patch.esp 7
deathmorph Posted April 28, 2023 Posted April 28, 2023 One request: It would also be great to expand the high heels option with the options of boots, long (to below the knee) and leather. The stockings option doesn't really cover that properly in my opinion and it would be better if that stayed separate. Would it be possible?
vaultbait Posted April 28, 2023 Posted April 28, 2023 13 minutes ago, deathmorph said: and leather For consistency with the stockings, this should probably be "shiny" instead? Currently that tag is described in the MCM as "shiny material like latex or leather."
deathmorph Posted April 28, 2023 Posted April 28, 2023 1 hour ago, vaultbait said: For consistency with the stockings, this should probably be "shiny" instead? Currently that tag is described in the MCM as "shiny material like latex or leather." Yes, that would be ok. It would only have to be differentiated between latex or leather stockings (although I don't know if the latter even exists) and latex and leather boots. When my actress wears long stockings and knee-high leather boots, I don't know if high heels would be the appropriate description. There are also boots without an HH that are not even considered at the moment.
vaultbait Posted April 28, 2023 Posted April 28, 2023 55 minutes ago, deathmorph said: Yes, that would be ok. It would only have to be differentiated between latex or leather stockings (although I don't know if the latter even exists) and latex and leather boots. When my actress wears long stockings and knee-high leather boots, I don't know if high heels would be the appropriate description. There are also boots without an HH that are not even considered at the moment. I guess the usefulness test is whether you expect anyone would set different skimpyness adjustment scores for long vs short boots and leather (vs... non-leather?) boot materials.
sen4mi Posted April 29, 2023 Posted April 29, 2023 (edited) (I am not quite sure where to ask this question, but it's relevant to this mod, so I am trying here...) How does one get an ObjectReference for an equipped item? The f4se getWornItem method returns an Actor:WornItem struct which has an item field which is the base armor, not the objectreference which is actually being worn. And the other fields in that struct also are not the objectreference. (Meanwhile, papyrus supports adding and removing keywords from an objectreference, but not from the base armor.) I want to put together a script that lets me tweak armors in-game. I often select armors in bodyslide from different mods. And it's only there and in game where I can see the armors . So this seems like an important issue to resolve to make skimpy keywords be accurate for my modded game. Edited April 29, 2023 by sen4mi
vaultbait Posted April 29, 2023 Posted April 29, 2023 1 hour ago, sen4mi said: (I am not quite sure where to ask this question, but it's relevant to this mod, so I am trying here...) How does one get an ObjectReference for an equipped item? The f4se getWornItem method returns an Actor:WornItem struct which has an item field which is the base armor, not the objectreference which is actually being worn. And the other fields in that struct also are not the objectreference. (Meanwhile, papyrus supports adding and removing keywords from an objectreference, but not from the base armor.) I want to put together a script that lets me tweak armors in-game. I often select armors in bodyslide from different mods. And it's only there and in game where I can see the armors . So this seems like an important issue to resolve to make skimpy keywords be accurate for my modded game. As far as I understand, items in a container (this includes the player's inventory which is also just a container) have no ObjectReference counterpart. That only exists once you drop the item on the floor. As soon as you pick it and place it in your inventory, the ObjectReference ceases to exist. This is why Papyrus has functions like AttachModToInventoryItem instead of expecting you to operate on an ObjectReference in such situations. See the notes for the OnContainerChanged event for similar evidence of this.
sen4mi Posted April 29, 2023 Posted April 29, 2023 2 hours ago, vaultbait said: As far as I understand, items in a container (this includes the player's inventory which is also just a container) have no ObjectReference counterpart. That only exists once you drop the item on the floor. As soon as you pick it and place it in your inventory, the ObjectReference ceases to exist. This is why Papyrus has functions like AttachModToInventoryItem instead of expecting you to operate on an ObjectReference in such situations. See the notes for the OnContainerChanged event for similar evidence of this. Uh... so we can put keywords on an object reference (or remove them) but as soon as the player picks it up, that object reference (and, thus, the keyword association) vanishes? That's... frustrating. Especially when combined with the absence of any papyrus support for putting keywords on an armor. Am I overlooking some important mechanism? (Why would the game engine only support adding keywords to gear where the keywords would be lost?)
vaultbait Posted April 30, 2023 Posted April 30, 2023 6 minutes ago, sen4mi said: Uh... so we can put keywords on an object reference (or remove them) but as soon as the player picks it up, that object reference (and, thus, the keyword association) vanishes? That's... frustrating. Especially when combined with the absence of any papyrus support for putting keywords on an armor. Am I overlooking some important mechanism? (Why would the game engine only support adding keywords to gear where the keywords would be lost?) Persistent keywords can only be added to forms from a plugin. Keywords can temporarily be added to forms, but not with the native functions that come with Papyrus. The LL_FourPlay library (which you can get here on LL as a separate mod, but also ships as a convenience copy with AAF, Real Handcuffs and some other mods) implements a native function called AddKeywordToForm which is what Rogg's No-Strip Items Manager uses to accomplish a task similar to what you're describing. Because non-plugin-added keywords don't persist, it uses a quest script which registers for the OnPlayerLoadGame event and then re-adds the desired keywords every time you load a save.
sen4mi Posted April 30, 2023 Posted April 30, 2023 (edited) On 4/29/2023 at 8:00 PM, vaultbait said: Persistent keywords can only be added to forms from a plugin. Keywords can temporarily be added to forms, but not with the native functions that come with Papyrus. The LL_FourPlay library (which you can get here on LL as a separate mod, but also ships as a convenience copy with AAF, Real Handcuffs and some other mods) implements a native function called AddKeywordToForm which is what Rogg's No-Strip Items Manager uses to accomplish a task similar to what you're describing. Because non-plugin-added keywords don't persist, it uses a quest script which registers for the OnPlayerLoadGame event and then re-adds the desired keywords every time you load a save. Thank you, I really appreciate your insight. Edit: MCM is misbehaving for me. And I am going to be away for a month. So... I am sort of giving up on this project for now. Edited May 2, 2023 by sen4mi (lack of) progress report
Cookiemonsta234 Posted May 26, 2023 Posted May 26, 2023 How would this work with Classy Chassis Outfits? https://www.nexusmods.com/fallout4/mods/35584 I am not seeing a KDWA section in FO4edit
spicydoritos Posted May 26, 2023 Posted May 26, 2023 44 minutes ago, Cookiemonsta234 said: How would this work with Classy Chassis Outfits? https://www.nexusmods.com/fallout4/mods/35584 I am not seeing a KDWA section in FO4edit If you're using one of the CCO replacer versions (or any similar mod that replaces vanilla clothes, like Lazman's or Ghaan's work), you need to update keywords on the vanilla clothing itself. 1
vaultbait Posted May 26, 2023 Posted May 26, 2023 49 minutes ago, Cookiemonsta234 said: How would this work with Classy Chassis Outfits? https://www.nexusmods.com/fallout4/mods/35584 I am not seeing a KDWA section in FO4edit I've been using one of the vanilla clothing replacer SAKR configs for RobCo Patcher, it's close enough for my purposes. If someone edits that up to be more accurate for the CCO collections then I'll swap it out, but at least most CCO outfits don't register as naked for now. 1
_Rick_ Posted May 29, 2023 Posted May 29, 2023 Hello. Im having an issue where all clothes are being considered as nude for some reason. And yes, i did install the RobCo patcher and Duck's patch. Thanks in advance.
vaultbait Posted May 29, 2023 Posted May 29, 2023 (edited) 6 hours ago, The Gaming Soviet said: Hello. Im having an issue where all clothes are being considered as nude for some reason. And yes, i did install the RobCo patcher and Duck's patch. Thanks in advance. What clothing are you testing with? The best place to start troubleshooting is to make sure your f4se.log says RobCo_Patcher.dll loaded correctly. Then turn on debug level logging by setting iEnablelog=1 in Data\F4SE\Plugins\RobCo_Patcher.ini and start up the game. Check RobCo_Patcher.log (in the same folder as your f4se.log) and it should list every single keyword it added to every item. See if the clothing you're testing with is listed in there. Edited May 29, 2023 by vaultbait
_Rick_ Posted May 29, 2023 Posted May 29, 2023 1 hour ago, vaultbait said: What clothing are you testing with? The best place to start troubleshooting is to make sure your f4se.log says RobCo_Patcher.dll loaded correctly. Then turn on debug level logging by setting iEnablelog=1 in Data\F4SE\Plugins\RobCo_Patcher.ini and start up the game. Check RobCo_Patcher.log (in the same folder as your f4se.log) and it should list every single keyword it added to every item. See if the clothing you're testing with is listed in there. Oh my god. Im retarded, i forgot to install Rubber Duck's SAKR repo because im using Vtaw wardrobe 5...
DTESSurvivor Posted June 3, 2023 Posted June 3, 2023 Loving the mod, MUCH needed with all of the clothing mods. One suggestion is the addition of a dress slit marker for dresses, for dresses that are open on one or more sides.
filan Posted June 10, 2023 Posted June 10, 2023 (edited) On 4/24/2023 at 7:31 AM, raanferden said: I made these for myself, but if anyone wants them, then here you go, overwrite files for AWKCR/SAKR tags covering the base game, and another for DLC's. if you dont like the way i tagged it all, then you are more than welcome to do it yourself. AWKCR - SAKR Vanilla patch.esp 130.97 kB · 40 downloads AWKCR - SAKR DLC patch.esp 51.41 kB · 45 downloads Thanks a ton for this. How do you run these patches? I put them in the data folder but I still seem to be fully exposed while wearing the vault jumpsuit. EDIT: woops, forgot to enable them in the vortex plugin overview. Works like a charm now. Edited June 10, 2023 by filan
rubber_duck Posted June 11, 2023 Posted June 11, 2023 Hey @twistedtrebla, I have a minor suggestion for SAKR* - an 'unrecognized' keyword. Hear me out! Basically, this new keyword would be applied to those clothing/armor items that cover character's face. Either completely, or only a good portion of it so they're not recognizable by other NPCs. This new keyword wouldn't mess with the Skimpy Rating as it'd serve as modification for your other mods such as Sex Attributes and Sex Harassment. I think having a keyword like that would help increase the common sense, especially if one is using Sex Harassment and is experiencing a lot of blackmail approaches. If player's sex reputation is bad, and there is a lot of blackmail material (pictures), wearing an item (mask, for example) with such keyword would somewhat help with blackmail approaches - the chance for triggering such approach would be much, much smaller (up to 90%, ideally) because the NPCs wouldn't be able to recognize the player, if the player's face is covered. Similarly how you did with BiP and head covers! * - The title of this framework is Skimpy Armor Keyword Resource, so I don't know if it'd be better to add the keyword I'm proposing to SAKR itself or to Sex Harassment. It might be better to add it to SH and make it easily applicable in-game (armor bench -> item -> add full cover keyword, for example). It's just an idea that I hope you'll at least consider!
Sandalwood Posted July 8, 2023 Posted July 8, 2023 I wanted to change my install so if I'm not wearing any SAKR keywords, it wouldn't assume I'm naked (without having to make a bunch of RobCo patches). The problem is WornHasKeyword is super slow (as you know). It takes my machine over 650ms to check all keywords. Even with the early exits, calculateSkimpyRating takes about 400ms on average. So I've made a couple of F4SE functions to get all the worn keywords as an array. It looks like this: scriptName SAKRLib native Hidden Keyword[] Function GetWornKeywords(Actor actor, int startIndex = 3, int endIndex = 28, string filter = "") global native Keyword[] Function GetWornKeywordsInList(Actor actor, int startIndex = 3, int endIndex = 28, FormList list = None) global native The first has an optional text filter, so you can set it to "sakr_kwd_" and only get keywords containing that text. The second takes a FormList instead. These return the keywords in less than 2ms, and doing something like KeywordState x = new KeywordState x.armorTopFull = result.Find(sakr_kwd_armorTopFull) >= 0 ... x.shoesKillerHeels = result.Find(sakr_kwd_shoesKillerHeels) >= 0 return x for all keywords takes between 4-11ms depending on the size of the array. You're more than welcome to use this if you want. It's totally fine if not, I just wanted to share. I've (hopefully) attached the CommonLibF4 source and compiled dll. SAKRLib.zip 1
vaultbait Posted July 8, 2023 Posted July 8, 2023 47 minutes ago, Sandalwood said: I wanted to change my install so if I'm not wearing any SAKR keywords, it wouldn't assume I'm naked (without having to make a bunch of RobCo patches). The problem is WornHasKeyword is super slow (as you know). It takes my machine over 650ms to check all keywords. Even with the early exits, calculateSkimpyRating takes about 400ms on average. So I've made a couple of F4SE functions to get all the worn keywords as an array. It looks like this: scriptName SAKRLib native Hidden Keyword[] Function GetWornKeywords(Actor actor, int startIndex = 3, int endIndex = 28, string filter = "") global native Keyword[] Function GetWornKeywordsInList(Actor actor, int startIndex = 3, int endIndex = 28, FormList list = None) global native The first has an optional text filter, so you can set it to "sakr_kwd_" and only get keywords containing that text. The second takes a FormList instead. These return the keywords in less than 2ms, and doing something like KeywordState x = new KeywordState x.armorTopFull = result.Find(sakr_kwd_armorTopFull) >= 0 ... x.shoesKillerHeels = result.Find(sakr_kwd_shoesKillerHeels) >= 0 return x for all keywords takes between 4-11ms depending on the size of the array. You're more than welcome to use this if you want. It's totally fine if not, I just wanted to share. I've (hopefully) attached the CommonLibF4 source and compiled dll. SAKRLib.zip 136.95 kB · 0 downloads This could also make sense to fold into LLFP, since most SAKR users are probably also using other mods that require it (AAF, Real Handcuffs, RMR...).
Sandalwood Posted July 8, 2023 Posted July 8, 2023 51 minutes ago, vaultbait said: This could also make sense to fold into LLFP I'm not sure I know what that is, but I'm totally happy for anyone to use the code.
Sylen Posted July 8, 2023 Posted July 8, 2023 I have to say, the idea for this is fantastic, but the amount of work for the single user is just growing to become so immense that you practically spend more time learning, applying, bug-fixing and getting it to work than you actually do playing the game. You already have people using external programs for item sorting, bodyslide and whatever the hell is going on with PSP textures. Adding another layer of jazz just seems insane to me. The repository linked to also includes something about ESL's, that I honestly think 99% of LL modders also will glance at that and then move on. I dont know what the fix is though. If I were you, I would start up a completely new project, and create a whole new clothing framework with something like this in the center. Simple get permission from the authors that make clothes and pack it all into one download with Fusion Girl for body slides. I would rather sit tight and download something huge that works out of the box, instead of spending 8-16 hours simply getting the game to work.
vaultbait Posted July 8, 2023 Posted July 8, 2023 5 hours ago, Sandalwood said: I'm not sure I know what that is, but I'm totally happy for anyone to use the code. LLFP is a core F4SE library for many of the sexually-oriented framework mods here on LL, but most users don't realize they have it installed because convenience copies of it get shipped with those frameworks so it's rarely downloaded separately (and don't let the name fool you, it was originally developed for the old FourPlay framework but is now used by other newer mods):
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now