Jump to content

Recommended Posts

8 hours ago, Ambre66 said:

Thanks for your answer. I suppose you do that by editing the scripts of the  other mods you want YPS take control ?

Yes. Whenever changes to the hair are made in the script, check whether YPS is installed, and then use the YPS modevents instead.

A full list is here:

 

Link to comment
On 4/9/2023 at 9:40 AM, Fuzzy_Fox said:

I have noticed since switching to AE and high poly heads that if I turn on the hair options for this mod I get duplicate head parts and in certain places the player character will vanish. This also leaves floating teeth in certain locations as well. 

 

If I turn the hair options off this clears up and stops. 

 

Also I can't get makeup to work with high poly heads, now I may be something wrong here, but I have not found a fix yet. 

 

Good to see you back emily1673

Heyho, the floating Teeth and the invisible bug is a really old story, but i think it is a problem with hdt-smp hair not with yps. In past i made a "light" mod profil to narrow down the issue. I found out, that Vanilla hair and non-psysic hair doesnt have this problem. You may also look into "Faster HDT-SMP" bug section and changelog, because it was a pretty big topic there. I dont have the flying teeth bug anymore, i thought this issue was resolved in 1.49.3: image.png.c267e2a2ca1c93d02ad47261d9448ab9.png

Link to comment

@emily1673 Hey! I found "YPS01InteractBranchTopic "I need my holes filled." [DIAL:0808A40D]" but NPC's answer "[INFO:0808A40E] Sure. What do you want?" have a two mutually exclusive conditions: "Subject.GetIsSex(Male) <> 1.000000 AND" and "Subject.GetIsSex(Male) = 1.000000 AND". So, i'm curious, did you turn it off on purpose or just forgot? Because i'm sure you know the first condition should look like "PlayerRef [PLYR:00000014].GetIsSex(Female) = 1.000000 AND". :) 

Edited by Alis_999
Link to comment

When I use nail polish, the color of my hands become lighter than the body. Is there a preferred body texture to use to better match the colors?  I am currently using "Demoniac 1.12 for CBBE. 

 

 

EDIT:  I removed "Demoniac 1.12" and the color mismatch is gone.  Not exactly an incompatibility, but it looks better now.

Edited by robert.marquis
Link to comment
3 hours ago, Alis_999 said:

@emily1673  but NPC's answer "[INFO:0808A40E] Sure. What do you want?" have a two mutually exclusive conditions: "Subject.GetIsSex(Male) <> 1.000000 AND" and "Subject.GetIsSex(Male) = 1.000000 AND". So, i'm curious, did you turn it off on purpose or just forgot? Because i'm sure you know the first condition should look like "PlayerRef [PLYR:00000014].GetIsSex(Female) = 1.000000 AND". :) 

Working as intended. ?

There are a couple features in this mod that have been disabled on purpose (because they are just there for internal testing, or are still in development).

Link to comment

New version posted.

 

v.6.2.3

- new "sound & texture pack" (optional download), including optional eyeshadows and lipstick by Aegis (the old Sound&TexturePack still works without issues)
- increased max values of AddictionIncreaseSpeed and AddictionDecreaseSpeed in MCM, to increase flexibility
- updated hair configuration data for dint999 HairPacks 1&2, Triss Merigold, MacKom, KS Hairdo (thanks to Balgin)
- included all script tweaks and fixes by Momoman’s Tweak v1.3 (though no update of the forms: no new potions etc.)
- lots of tools for modders (query makeup status/addiction levels/pubic hair stage/piercing stages/worn piercing names, enable or disable armpit/pubic hair growth, set length of armpit/pubic hair, set fashion addiction level, wear/remove/lock nylons)

Thanks to Monoman, Balgin and Aegis for their work.

 

Here a list of the new ressources for modders (full list is 2 posts below from here)

Spoiler

 

;***NEW IN v.6.2.3***
;additions from Monoman’s tweak:

StorageUtil.GetStringValue(None, "yps_LipstickColor") ; no lipstick worn yields “” as result, otherwise the color name as string
StorageUtil.GetStringValue(None, "yps_LipstickSmudged") ; "" = Not smudged, "Smudged" = Smudged
StorageUtil.GetStringValue(None, "yps_EyeShadowColor")
StorageUtil.GetStringValue(None, "yps_EyeShadowSmudged") 
StorageUtil.GetStringValue(None, "yps_FingerNailPolishColor")
StorageUtil.GetStringValue(None, "yps_FingerNailPolishSmudged")
StorageUtil.GetStringValue(None, "yps_ToeNailPolishColor")
StorageUtil.GetStringValue(None, "yps_ToeNailPolishSmudged")
StorageUtil.GetIntValue(None, "yps_AddictionLevel") ; current Fashion Addiction level
StorageUtil.GetIntValue(None, "yps_AddictionBuff"); level of current Fashion Addiction buff
StorageUtil.GetIntValue(None, "yps_PubicHairStage")

; this mod will now also send a ModEvent upon certain fashion changes (details see ypsPiercingTicker.psc )
SendModEvent(eventName = "yps_FashionChange", strArg = ChangeType, numArg = numArg)

;further new additions in v.6.2.3:

; can now query piercing stages like this:
SendModEvent("yps-QueryPiercingStage", "", int PiercingSlot)
Utility.Wait(0.1) ; need to wait a bit until the result is ready
StorageUtil.GetIntValue(None, "yps-QueryPiercingStageResult")
; possible results: -1: slot has never been pierced; 0: currently not pierced; 1: starter piercing, no grace period; 2: only studs, short grace period; 3: all Piercings, longer grace period; 4: permanent

; can now query names of currently worn piercings (don’t use these queries too often, due to considerable papyrus load)
SendModEvent("yps-QueryPiercingWornName", "", int PiercingSlot)
Utility.Wait(0.1)
StorageUtil.GetStrValue(None, "yps-QueryPiercingWornNameResult")

; enable or disable armpit/pubic hair growth (value 0 is off, 1 is on); also can use GetIntValue here
storageutil.SetIntValue(NONE,"ypsPubicHairGrowthEnabled", int value)
storageutil.SetIntValue(NONE,"ypsArmpitHairGrowthEnabled", int value)

; set length of armpit/pubic hair, Length Stages 0-5
SendModEvent("yps-SetPubicHairLengthEvent", "", int HairLengthStage)
SendModEvent("yps-SetArmpitsHairLengthEvent", "", int HairLengthStage)
; calling the event with HairLengthStage = -1 have armpits/pubes hair permanently removed, and will set the above GrowthEnabled variables to false, 

SendModEvent("yps-SetFashionAddictionLevel", "", int newFashionAddictionLevel)

; nylons control
storageutil.SetIntValue(NONE,"ypsNylonsLock", int value) ; 0 = unlocked, 1 = locked, can also get the value with GetIntValue
int storageutil.GetIntValue(NONE,"ypsNylonsCurrentlyWorn")
SendModEvent("yps-WearNylons", string NylonsType, int NylonsColorAndPattern) ; works only if no nylons are worn and no nylons lock
SendModEvent("yps-RemoveNylons", "", 0) ; works only if no nylons lock
; NylonsType can be "Stockings" or "Tights". Send the value (10*ColorValue + Pattern) for NylonsColorAndPattern
; Patterns are: 0 Sheer, 1 Opaque, 2 Striped, 3 Fishnet, 4 Hearts, 5 Floral; ColorValues are: 0 black, 1 white, 2 tan, 3 brown, 4 red, 5 blue, 6 green, 7 pink, 8 hotpink, 9 violet
; don’t overdo it, the mod needs  ~10 seconds to add/remove nylons

 

 

Edited by emily1673
Link to comment
25 minutes ago, emily1673 said:

There are a couple features in this mod that have been disabled on purpose (because they are just there for internal testing, or are still in development).

Ah, ok, but i'm still curious is "for internal testing" or "are still in development"? ? 

12 minutes ago, emily1673 said:

v.6.2.3

SE users still waiting ? 

Link to comment

MODDER RESOURCES FOR YPS FASHION MOD

(moved it here, since the original post is borked; this post will be updated continuously)

 

Most functions of this mod can be called by initiating a ModEvent. Many StorageUtil variables are available as well. See the code examples below. Feel free to contact me if you need further functions.

 

 

Spoiler
;MODDER RESOURCES FOR YPS FASHION MOD


;Several functions of this mod can be called by a initiating a ModEvent. A few StorageUtil variables are available as well. See the code examples below. Feel free to contact me if you need further functions.


; MAKEUP

SendModEvent("yps-LipstickEvent", string ColorName, int ColorRGBCode)  
SendModEvent("yps-EyeshadowEvent", string ColorName, int ColorRGBCode)    
; apply makeup: send name of color as string (e.g. "red", for in-game text messages), and ColorRGBCode as a 0xRRGGBB value.
; see below for color code examples

SendModEvent("yps-FingerNailsEvent", "", int ColorCode)
SendModEvent("yps-ToeNailsEvent",  "", int ColorCode)
; choose a ColorCode between 1 and 58 to apply nail polish, for codes see spoiler below
; send ColorCode 0 to remove nail polish, the string value does not matter but must be there

SendModEvent("yps-FingerNailsEvent", "immediate", int ColorCode)
SendModEvent("yps-ToeNailsEvent",  “immediate”, int ColorCode)
; adding the string "immediate" will cause nailpolish to dry immediately

SendModEvent("yps-LockMakeupEvent")
; prevents the player from manually removing/applying makeup
; default = unlocked
SendModEvent("yps-UnlockMakeupEvent")

SendModEvent("yps-PermanentMakeupEvent")
; if permanent, makeup will no longer wear off over time
; default = NoPermanent
SendModEvent("yps-NoPermanentMakeupEvent")

SendModEvent("yps-DisableSmudgingEvent")
SendModEvent("yps-EnableSmudgingEvent")
; enable/disable makeup smudging (nail polish, lipstick, eyeshadow), default = enabled
; disabling it will override the MCM smudge setting (no smudging at all)
; enabling it will not override the MCM setting (will smudge according to MCM)

string StorageUtil.GetStringValue(None, "yps_LipstickColor") ; no lipstick worn yields "" as result, otherwise the color name as string
bool StorageUtil.GetIntValue(None, "yps_LipstickSmudged") ; 1 = smudged
string StorageUtil.GetStringValue(None, "yps_EyeShadowColor")
bool StorageUtil.GetIntValue(None, "yps_EyeShadowSmudged")

string StorageUtil.GetStringValue(None, "yps_FingerNailPolishColor")
int StorageUtil.GetIntValue(None, "yps_FingerNailPolishStage")
string StorageUtil.GetStringValue(None, "yps_ToeNailPolishColor")
int StorageUtil.GetIntValue(None, "yps_ToeNailPolishStage")
; nail polish stages are: 0 = no nail polish, 10 = in process of applying nail polish, 20 = applied and drying, 30 = smudged,
; 40 = dried and ok (will last a week), 50 = manicured (will last a month), 60 = starts chipping off, 70 = some remains left



; PIERCINGS

SendModEvent("yps-LockPiercingsEvent")
; prevents the player from removing any piercings, including 3rd party piercings
; default = unlocked
SendModEvent("yps-UnlockPiercingsEvent")

SendModEvent("yps-PiercingEvent", string ActorName, int PiercingSlot)
; will play a piercing sequence, chose a PiercingSlot between 1 and 11 (see list below)
; standard gold ball studs will be used, if the slot is already pierced there will be no effect
; If negative PiercingSlot is given, there will be no piercing sequence, no piercings will be equipped, the piercings will count immediately as fully healed.
; If negative PiercingSlot is given, the ActorName string can be used to set healing stages:
; ActorString == "1": starter piercing, no grace period (cannot leave piercing slot empty, or it will heal up);
; ActorString == "2": can wear only studs, short grace period;
; ActorString == "3": can wear all Piercings, longer grace period; this is recommended, if 3rd party mods want to forceequip a piercing
; anything other ActorString will count as "4": permanently pierced


; query piercing stages like this:
SendModEvent("yps-QueryPiercingStage", "", int PiercingSlot)
Utility.Wait(0.1) ; need to wait a bit until the result is ready
StorageUtil.GetIntValue(None, "yps-QueryPiercingStageResult")
; possible results: -1: slot has never been pierced; 0: currently not pierced; 1: starter piercing, no grace period; 2: only studs, short grace period; 3: all Piercings, longer grace period; 4: permanent

; query names of currently worn piercings (don’t use these queries too often, due to considerable papyrus load)
SendModEvent("yps-QueryPiercingWornName", "", int PiercingSlot)
Utility.Wait(0.1)
StorageUtil.GetStringValue(None, "yps-QueryPiercingWornNameResult")

StorageUtil.IntListGet(None, "yps_PiercingsStatus", Slot, bool Equipped as Int) ; true if piercing studs are worn (does not detect other kinds of piercings -- don't use this unless you understand what piercing studs are in this mod)



; HIGH HEELS

SendModEvent("yps-ArchedFeetEvent") ; will give player "arched feet" immediately
SendModEvent("yps-BondageFeetEvent") ; will give player "bondage feet" immediately



; STOCKINGS

; stockings are armor items, use the corresponding GetFormFromFile command to create and equip them

bool storageutil.GetIntValue(NONE,"ypsNylonsLock", int value) ; 0 = unlocked, 1 = locked, can also set the value with setIntValue
bool storageutil.GetIntValue(NONE,"ypsNylonsCurrentlyWorn")
form StorageUtil.GetFormValue(None, "yps_Stockings", Stockings) ; currently worn stockings item, NONE if no stockings worn



; HAIR

SendModEvent("yps-HaircutEvent", string HairstyleID, int HairLengthStage)
; will set a new hair length stage (see elow for a list)
; will only apply styles not longer than current hair
; also will apply the hairstyle <HairstyleID> to the player
; if HairstyleID is an empty string, the default hairstyle of the corresponding length will be applied

SendModEvent("yps-SetHaircutEvent", string HairstyleID, int HairLengthStage)
; same as above, but will set new hairlength, even if it is longer than current
; for a "silent" hair length change (without any player notifications), give a negative number, e.g. HairLengthStage = -5 for silent change to ear length

SendModEvent("yps-ForcePermEvent", string HairStyleID, int HairLengthStage)
SendModEvent("yps-ForceBuzzedNapeEvent", string HairStyleID, int HairLengthStage)
SendModEvent("yps-ForceBroadMohawkEvent", string HairStyleID, int HairLengthStage)
SendModEvent("yps-ForceNarrowMohawkEvent", string HairStyleID, int HairLengthStage)
; same as above, but the new haircut will count as perm, buzzed nape or mohawk (with all consequences)
; HairstyleID may not be empty, and should of course match the hairstyle type

SendModEvent("yps-HairColorBaseEvent", string HairColorName, int HairColorRGBValue)
; will permanently change the natural hair color; for HairColorRGBValue see predefined samples below

SendModEvent("yps-HairColorDyeEvent", string HairColorName, int HairColorRGBValue)
; will dye the players hair to a given color, which will fade or grow out as set in MCM

SendModEvent("yps-DisableHairgrowthEvent")
SendModEvent("yps-EnableHairgrowthEvent") ; default: enabled
SendModEvent("yps-DisableHairmakeoverEvent"); will prevent hair makeovers and the usage of hair styling items
SendModEvent("yps-EnableHairmakeoverEvent") ; default: enabled

int StorageUtil.GetIntValue(none, "YpsCurrentHairLengthStage")

bool StorageUtil.GetIntValue(none, "ypsHairControlEnabled") ; check whether YPS mod is set to actively control hair styles

int StorageUtil.GetIntValue(None, "yps_HairDyeColourInt") ; see list below
string StorageUtil.GetStringValue(None, "yps_HairDyeColourName")

bool StorageUtil.GetIntValue(None, "yps_CanChangeHairColour") ; whether player is allowed to change color according to grace period set in MCM
bool StorageUtil.GetIntValue(None, "yps_CanRedyeHair")
bool StorageUtil.GetIntValue(None, "yps_ShouldRedyeHair")



; FASHION CHANGE MOD EVENT

; called by the mod upon any fashion change
SendFashionChangeEvent(String ChangeType, Float numArg = 0.0)
; ChangeTypes: "Lipstick", "Eyeshadow", "FingerNailPolish", "ToeNailPolish", "Stockings", "Piercings"
; numArg (only for piercings): piercing slot value (see list below)



; PUBIC HAIR

storageutil.SetIntValue(NONE,"ypsPubicHairGrowthEnabled", int value)
storageutil.SetIntValue(NONE,"ypsArmpitHairGrowthEnabled", int value)
; enable or disable armpit/pubic hair growth (value 0 is off, 1 is on); also can use GetIntValue here

SendModEvent("yps-SetPubicHairLengthEvent", "", int HairLengthStage)
SendModEvent("yps-SetArmpitsHairLengthEvent", "", int HairLengthStage)
; sets length of player pubic or armpit hair
; HairLengthStage: 0 = shaved, 5 = full bush (or anything in between)
; calling the event with HairLengthStage = -1 will have armpits/pubes hair permanently removed, and will set the above GrowthEnabled variables to false,


int StorageUtil.GetIntValue(None, "yps_PubicHairStage")
int StorageUtil.GetIntValue(None, "yps_ArmpitHairStage")

int StorageUtil.GetIntValue(none, "ypsPubicHairEnabled") ; will return 1, if the corresponding variabls in MCM are set, otherwise 0
int StorageUtil.GetIntValue(none, "ypsArmpitHairEnabled")



; FASHION ADDICTION

StorageUtil.GetIntValue(None, "yps_AddictionLevel") ; current Fashion Addiction level (0-11)
StorageUtil.GetIntValue(None, "yps_AddictionBuff"); level of current Fashion Addiction buff
SendModEvent("yps-SetFashionAddictionLevel", "", int newFashionAddictionLevel) ; level 0-11 is allowed



; GENDER AND NAME CHANGE

SendModEvent("yps-SetPlayerGenderEvent", string NewGender, int Permanence = 0)
; will set the player gender (and force player to change it when necessary)
; values for NewGender: "male", "female"
; if the value of Permanence != 0, the change will be permanent (and never again be changed by future mod events or potions)

SendModEvent("yps-SetPlayerNameEvent", string NewPlayerName, int RandomName)
; RandomName = 0: will set player name to NewPlayerName
; RandomName = 1: set player name to random male name (ignore NewPlayerName)
; RandomName = 2: set player name to random female name (ignore NewPlayerName)
; (list of random names is stored in ../ypsFashion/ypsNames.json)

SendModEvent("yps-LockPlayerNameEvent", "", int LockName)
; lock name means: YPS will continuously overwrite the player name with the stored "locked" name, thus overriding name changes by other mods or racemenu
; LockName = 0: unlock name; LockName = 1: lock name


; QUERY VERSION

; can query the version as string (e.g. "6.5") and int value of the last version date (e.g. 230608 for 08 June 2023 → easier to compare) with these commands:
JsonUtil.Load("../ypsFashion/ypsData.json")
string ypsVersion = JsonUtil.StringListGet("../ypsFashion/ypsData.json","versionstring",0 )
int ypsVersionDate = JsonUtil.IntListGet("../ypsFashion/ypsData.json","versiondate",0 )



; ADDITIONAL DATA

; Lists of piercing slots:
; [1] = earlobes, [2] = left nostril, [3] = septum, [4] = snake bites, [5] = right labret, [6] = labret, [7] = right eyebrow, [8] = nose bridge, [9] = navel, [10] = nipples, [11] = clitoris


;List of nail polish colors:
;aqua 1; black 2; blue 3; brightred 4; darkred 5; gold 6; green 7; pink 8; purple 9; kaw silver 10; clear 11; grey tips 12; zebra red 13; blood red 14; dark blue 15; dark green 16; clear extension 17; black 18; blue 19; gold 20; green 21; red 22; gold glitter 23; shimmer-aqua 24; shimmer-black 25; shimmer-blackcherry 26; shimmer-blue 27; shimmer-brightcherry 28; shimmer-brightpink 29; shimmer-cherry 30; shimmer-clear 31; shimmer-clear1 32; shimmer-clear2 33; shimmer-darkblue 34; shimmer-darkgreen 35; shimmer-grass 36; shimmer-grey 37; shimmer-ivory 38; shimmer-lemon 39; shimmer-lightgreen 40; shimmer-magenta 41; shimmer-orange 42; shimmer-purple 43; shimmer-rosepink 44; shimmer-silver 45; shimmer-skyblue 46; shimmer-white 47; silver glitter 48; red glitter 49; shimmer-darkcherry 50;himmer-violet 51; glitter-apricot 52; glitter-copper 53; glitter-green 54; glitter-blue 55; smudged-cherry-swirl 56; red-white-dots 57; white-red-dots 58

;Sample RGB color codes for eyeshadow:
;Azure 007fff; Black 000000; Chocolate 7b3f00; Cinnabar e34234; Emerald Green 50c878; Grape 6f2da8; Honey a98307; Jade Green 00a86b; Lilac c8a2c8; Midnight Blue 191970; Pink ffc0cb; Plum dda0dd; Silver c0c0c0; Steel Blue 4682b4

; Sample RGB color codes for lipstick:
; Alizarin Crimson e32636; Amaranth e52b50; Crimson dc143c; American Rose ff033e; Auburn a52a2a; Burgundy 900020; Cardinal c41e3a; Carmine 960018; Carnelian b31b1b; Cerise de3163; Coquelicot ff3800; Red ff0000; Dark Red 8b0000; Electric Crimson ff003f; Fire Brick b22222; Flame e25822; Folly ff004f; French Red c41230; Fuchsia fa00a1; Indian Red cd5c5c; Lava cf1020; Lust e62020; Magenta ff00ff; Maroon 800000; Mahogany c04000; Oxblood 800020; Pink ffc0db; Raspberry e30b5c; Red-violet c71585; Redwood a45a52; Rose ff007f; Rosewood 65000b; Rosso Corsa cc0000; Ruby e0155f; Rust b7410e; Scarlet ff2400; Terra Cotta e2725b; Turkey Red a91101; Tuscan Red 7c3030; Tyrian Purple 66023c; Venetian Red c80815; Vermilion e34234; Wine 722f37

; List of predefined hair color rgb codes:
;[2]="Black", [3]="Off Black", [4]="Dark Gray", [5]="Medium Gray", [6]="Light Gray", [7]="Platinum Blonde", [8]="Bleached Blonde", [9]="White Blonde", [10]="Light Blonde", [11]="Golden Blonde", [12]="Ash Blonde", [13]="Honey Blonde", [14]="Strawberry Blonde", [15]="Light Red", [16]="Dark Red", [17]="Light Auburn (Red)", [18]="Dark Auburn (Red)", [19]="Dark Brown", [20]="Golden Brown", [21]="Medium Brown", [22]="Chestnut Brown", [23]="Brown", [24]="Light Brown", [25]="Ash Brown", [26]="Light Blue", [27]="Light Green", [28]="Pink (Red)", [29]="Magenta (Red)", [30]="Aubergine (Red)", [31]="Medium Blue", [32]="Medium Green", [33]="Dark Blue", [34]="Dark Green", [35]="Light Turquoise (Blue Green)", [36]="Medium Turquoise (Blue Green)", [37]="Dark Turquoise (Blue Green)", [38]="Burgundy Red"
;[2]=0x00040403, [3]=0x00090909, [4]=0x00202326, [5]=0x002A2D31, [6]=0x00515B70, [7]=0x00CABFB1, [8]=0x00DCD0BA, [9]=0x0050585C, [10]=0x00726454, [11]=0x00736754, [12]=0x00DEBC99, [13]=0x005C4B3C, [14]=0x00523523, [15]=0x005A291C, [16]=0x00260A02, [17]=0x00482A1E, [18]=0x00291E19, [19]=0x001D1812, [20]=0x002A241C, [21]=0x0027211F, [22]=0x00282222, [23]=0x00352721, [24]=0x00534235, [25]=0x004B3C30, [26]=0x0000007F, [27]=0x00007F00, [28]=0x007F6065, [29]=0x007F007F, [30]=0x00301340, [31]=0x00000033, [32]=0x00002F00, [33]=0x00000022, [34]=0x00001600, [35]=0x00207067, [36]=0x00103733, [37]=0x000A2422, [38]=0x0020000A

; List of hair length stages:
; [1] = "bald", [2] = "short stubbles", [3] = "long stubbles", [4] = "cropped", [5] = "ear length", [6] = "chin length", [7] = "neck length", [8] = "shoulder length", [9] = "armpit length", [10] = "bra strap length", [11] = "mid back length", [12] = "waist length", [13] = "hip length", [14] = "tailbone length", [15] = "classic length", [16] = "mid-thigh length", [17] = "knee length", [18] = "calf length", [19] = "ankle length", [20] = "floor length", [21] = "rapunzel length".
; Minimum length in cm:
; [1] = 0.0, [2] = 0.3, [3] = 1.0, [4] = 3.0, [5] = 6.0, [6] = 12.0, [7] = 20.0, [8] = 30.0, [9] = 37.0, [10] = 45.0, [11] = 52.0, [12] = 60.0, [13] = 75.0, [14] = 90.0, [15] = 105.0, [16] = 120.0, [17] = 135.0, [18] = 145.0, [19] = 160.0, [20] = 180.0, [21] = 210.0

 

 

Since v. 6.6, there are still about 100 additional StorageUtil variables available. A commented list can be found here.

Edited by emily1673
Link to comment
2 hours ago, emily1673 said:

New version posted.

 

v.6.2.3

- new "sound & texture pack" (optional download), including optional eyeshadows and lipstick by Aegis (the old Sound&TexturePack still works without issues)
- increased max values of AddictionIncreaseSpeed and AddictionDecreaseSpeed in MCM, to increase flexibility
- updated hair configuration data for dint999 HairPacks 1&2, Triss Merigold, MacKom, KS Hairdo (thanks to Balgin)
- included all script tweaks and fixes by Momoman’s Tweak v1.3 (though no update of the forms: no new potions etc.)
- lots of tools for modders (query makeup status/addiction levels/pubic hair stage/piercing stages/worn piercing names, enable or disable armpit/pubic hair growth, set length of armpit/pubic hair, set fashion addiction level, wear/remove/lock nylons)

Thanks to Monoman, Balgin and Aegis for their work.

 

Here a list of the new ressources for modders (full list is 2 posts below from here)

  Reveal hidden contents

 

;***NEW IN v.6.2.3***
;additions from Monoman’s tweak:

StorageUtil.GetStringValue(None, "yps_LipstickColor") ; no lipstick worn yields “” as result, otherwise the color name as string
StorageUtil.GetStringValue(None, "yps_LipstickSmudged") ; "" = Not smudged, "Smudged" = Smudged
StorageUtil.GetStringValue(None, "yps_EyeShadowColor")
StorageUtil.GetStringValue(None, "yps_EyeShadowSmudged") 
StorageUtil.GetStringValue(None, "yps_FingerNailPolishColor")
StorageUtil.GetStringValue(None, "yps_FingerNailPolishSmudged")
StorageUtil.GetStringValue(None, "yps_ToeNailPolishColor")
StorageUtil.GetStringValue(None, "yps_ToeNailPolishSmudged")
StorageUtil.GetIntValue(None, "yps_AddictionLevel") ; current Fashion Addiction level
StorageUtil.GetIntValue(None, "yps_AddictionBuff"); level of current Fashion Addiction buff
StorageUtil.GetIntValue(None, "yps_PubicHairStage")

; this mod will now also send a ModEvent upon certain fashion changes (details see ypsPiercingTicker.psc )
SendModEvent(eventName = "yps_FashionChange", strArg = ChangeType, numArg = numArg)

;further new additions in v.6.2.3:

; can now query piercing stages like this:
SendModEvent("yps-QueryPiercingStage", "", int PiercingSlot)
Utility.Wait(0.1) ; need to wait a bit until the result is ready
StorageUtil.GetIntValue(None, "yps-QueryPiercingStageResult")
; possible results: -1: slot has never been pierced; 0: currently not pierced; 1: starter piercing, no grace period; 2: only studs, short grace period; 3: all Piercings, longer grace period; 4: permanent

; can now query names of currently worn piercings (don’t use these queries too often, due to considerable papyrus load)
SendModEvent("yps-QueryPiercingWornName", "", int PiercingSlot)
Utility.Wait(0.1)
StorageUtil.GetStrValue(None, "yps-QueryPiercingWornNameResult")

; enable or disable armpit/pubic hair growth (value 0 is off, 1 is on); also can use GetIntValue here
storageutil.SetIntValue(NONE,"ypsPubicHairGrowthEnabled", int value)
storageutil.SetIntValue(NONE,"ypsArmpitHairGrowthEnabled", int value)

; set length of armpit/pubic hair, Length Stages 0-5
SendModEvent("yps-SetPubicHairLengthEvent", "", int HairLengthStage)
SendModEvent("yps-SetArmpitsHairLengthEvent", "", int HairLengthStage)
; calling the event with HairLengthStage = -1 have armpits/pubes hair permanently removed, and will set the above GrowthEnabled variables to false, 

SendModEvent("yps-SetFashionAddictionLevel", "", int newFashionAddictionLevel)

; nylons control
storageutil.SetIntValue(NONE,"ypsNylonsLock", int value) ; 0 = unlocked, 1 = locked, can also get the value with GetIntValue
int storageutil.GetIntValue(NONE,"ypsNylonsCurrentlyWorn")
SendModEvent("yps-WearNylons", string NylonsType, int NylonsColorAndPattern) ; works only if no nylons are worn and no nylons lock
SendModEvent("yps-RemoveNylons", "", 0) ; works only if no nylons lock
; NylonsType can be "Stockings" or "Tights". Send the value (10*ColorValue + Pattern) for NylonsColorAndPattern
; Patterns are: 0 Sheer, 1 Opaque, 2 Striped, 3 Fishnet, 4 Hearts, 5 Floral; ColorValues are: 0 black, 1 white, 2 tan, 3 brown, 4 red, 5 blue, 6 green, 7 pink, 8 hotpink, 9 violet
; don’t overdo it, the mod needs  ~10 seconds to add/remove nylons

 

 

Oh, sorry, did I include the Triss hair config file by mistake? Those hairs don't fit on normal shaped heads and I believe I'd set them all to the same length so I could start sorting them into correct lengths and styles later on. If you got the Triss file from me then it was not ready and was only included by accident.

 

They're currently all set to shoulder length, straight, and only fit the Triss race (they won't fit other races well). When I found out how badly they fit I didn't bother updating the file. I forgot to remove it from the archive before uploading.

Edited by Balgin
Link to comment
9 hours ago, Alis_999 said:

Ah, ok, but i'm still curious is "for internal testing" or "are still in development"? ? 

SE users still waiting ? 

Internal testing and development go hand in hand.

And I said above, I am not dealing with SE for the time being. Sorry.

 

8 hours ago, Balgin said:

Oh, sorry, did I include the Triss hair config file by mistake? Those hairs don't fit on normal shaped heads and I believe I'd set them all to the same length so I could start sorting them into correct lengths and styles later on. If you got the Triss file from me then it was not ready and was only included by accident.

 

They're currently all set to shoulder length, straight, and only fit the Triss race (they won't fit other races well). When I found out how badly they fit I didn't bother updating the file. I forgot to remove it from the archive before uploading.

Ah, I was already wondering. But this shouldn't cause any issue to people using this mod, in particular since it is not contained in the file ypsHairDatabase.json . So shall we just keep the Triss hair in? Maybe somebody else finds the time to sort out the hair lengths.

 

3 hours ago, toto85400 said:

Is a no DD version will come again?

Since the latest "non DD" version came out, most new features rely quite much on DD or similar stuff. Therefore, it does not make sense to prepare a new "non DD version" at this time. v.5.4.1 is still good for this target group. You can still use the new sound&texture pack.

 

3 hours ago, jib_buttkiss said:


Oh, brilliant! Wow, you work fast!

Thank you! I just felt, it needed to be done soonish, and recently I just happened to have some time to work on this.

Don't expect me to be as fast all the time, especially when doing new content. ?

Edited by emily1673
Link to comment
5 hours ago, emily1673 said:

Ah, I was already wondering. But this shouldn't cause any issue to people using this mod, in particular since it is not contained in the file ypsHairDatabase.json . So shall we just keep the Triss hair in? Maybe somebody else finds the time to sort out the hair lengths.

 They're designed for a taller head with the face further up the front of the head and with ears at a different height as well. They sit slightly above the scalp (a bit like trying to put male hair models on a female head). They'd work for that race but wouldn't fit normal races' head models. It might be best to just leave it out for now. They'd work perfectly for that race but the player would probably want to remove them from the hair database when playing other races so that might just be too clunky.

Edited by Balgin
Link to comment
6 hours ago, Balgin said:

 They're designed for a taller head with the face further up the front of the head and with ears at a different height as well. They sit slightly above the scalp (a bit like trying to put male hair models on a female head). They'd work for that race but wouldn't fit normal races' head models. It might be best to just leave it out for now. They'd work perfectly for that race but the player would probably want to remove them from the hair database when playing other races so that might just be too clunky.

Understood. Removing them was a quick task -> v. 6.2.3.0

Edited by emily1673
Link to comment

Any more installation tips? Directions are: with the package installer, choose the Base00 files. What package installer?? It does not come with one.

There is no fomod installer, and mod managers like Vortex don't support this without fomod.

 

Maybe a few words on how to repackage the mod so current mod managers can handle it.

 

Thanks all!

 

Link to comment

A little heads up for modders ( in particular to @jib_buttkiss ) concerning the recently posted version (6.2.3):

 

When I tried to work in the script changes from Monoman's YPS tweak, I was only looking at his tweak version 1.3, and didn't notice that he had already posted a version 2.4 somewhere else.

So please note that the new mod events and storageutil variables in YPS 6.2.3 are only taking tweak version 1.3 into account.

I just did a comparison between tweak 1.3 and tweak 2.4, and there are some minor changes, in particular:

StorageUtil.GetStringValue(None, "yps_LipstickSmudged") has been changed to GetIntValue()

Plus, there are some additional events and variables, like SendHairDyeEvent, StorageUtil.GetIntValue(None, "yps_CurrentHairColour"), StorageUtil.SetIntValue(None, "yps_HairDyeColourInt") ... etc.

I will try to include them in the next update, but this won't be very soon.

This shouldn't cause many problems, though, most are just additional features (only exception I see right now is that "smudged" becomes an int value, so better avoid using it for the time being).

Edited by emily1673
Link to comment

Sorry if this post doesn't belong here, but I've posted in the monoman tweak thread a few times to no response :/. I'm playing on SE with monoman tweak v1.3 and for a very long time and multiple load order setups the makeup overlays and applications just don't work for me anymore. The game says they're applied via the notifications in the top left while playing and getting different yps buffs/debuffs, but the overlays never actually appear. I have the textures and everything because I can still equip them manually through slavetats and they show up then, but obviously not the right color and they don't fade on their own. I know SE development is on hold for the time being but any insights would be appreciated, thanks!

 

I also don't know if this helps at all but I'll mention that I use alternate start and before I leave that starting room the overlays will apply normally, but as soon as I pick a start and leave into the main game it stops working again.

Edited by H Bof
Link to comment
8 hours ago, Kingslayer101 said:

I got this while I was trying to install the mod in MO2. Is there someone else that got this?

 

I am not familiar with the newer mod installers (still using Wrye Bash ?).

Does this problem persist after deleting the file "wizard.txt" from the archive?

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