Jump to content

Recommended Posts

good morning all can anyone help me, I have sexlife installed and get the MCM menu but nothing is happening, its got to be something extra I need to install. I'm playing with sexlab eager npc but that should not stop it from starting up, is there anything else I need.thanks for your time

Link to comment
9 hours ago, Larrydd said:

good morning all can anyone help me, I have sexlife installed and get the MCM menu but nothing is happening, its got to be something extra I need to install. I'm playing with sexlab eager npc but that should not stop it from starting up, is there anything else I need.thanks for your time

should work, configure mcm so that script runs every 20-30 seconds and set arousal needed for npc down to 0-5. 

Link to comment
15 hours ago, Larrydd said:

good morning all can anyone help me, I have sexlife installed and get the MCM menu but nothing is happening, its got to be something extra I need to install. I'm playing with sexlab eager npc but that should not stop it from starting up, is there anything else I need.thanks for your time

And use tweak from this post https://www.loverslab.com/topic/47307-sexlife/?do=findComment&comment=2854155

Also i recommend to configure script for 120 or more seconds (with fix they will fucks more often).

Link to comment
  • 4 weeks later...
  • 1 month later...
On 5/22/2020 at 9:27 AM, hana120 said:

I don't know why.
But I have a lot of trouble getting this mod to work properly.
I have the SE version.
I made the settings and everything and nothing to do, the npcs do nothing.

an important part of making mod work good is having sl aroused set up so npcs arousal will be high.  What i do too is, if Im inside an INN. I'll pull that dick out and start waving that mother fucker around "hey,look at that dick bitch! "  I think the naked factor helps,is what im saying. maybe set up some slooty outfits on females that male view as naked?

Link to comment
  • 1 month later...

A little help please. For some reason i cannot get this mod to work. Errors like Matrix genderfail, random genderfail,arousal below threshold etc keeps coming up.

Are there any known clashes between this mod and other SL mods?

Other mods like ABMM and Random Sex doesnt sound too tempting for me.

Link to comment
12 hours ago, Eaglehart7 said:

A little help please. For some reason i cannot get this mod to work. Errors like Matrix genderfail, random genderfail,arousal below threshold etc keeps coming up.

Are there any known clashes between this mod and other SL mods?

Other mods like ABMM and Random Sex doesnt sound too tempting for me.

Do you use the tweak that I mentioned earlier?

Link to comment
  • 1 month later...

Does this Mod work in Enderal?

 

I see NPCs appraoch one another then the other NPC rejects the other and nothing happens. 

 

Sometimes on the rare occasion that they do accpet the offer for sex the NPCs jsut stare at each other then walk away.

 

 

Link to comment
On 4/19/2020 at 4:07 PM, viterra said:

Script update, that allow you to save changes NPC settings in game to json files. No need to run exel calculator.

I updated the script, but I don't get any changes in the configuration in MCM, not even with a new game, why? Something is missing?

Link to comment
9 hours ago, Swe-DivX said:

Did you get this?

"rapist always aggressor" , it is never active . The only mod installed that could somehow reactivate the event is SexLab Pheromones.
I don't have any other mod (HH or similar) that acts with
rapist always aggressor 

 

The patch I put it, as well as the script

 

 

"rapist always aggressor" Can it really interfere with the settings in MCM?

I state that the mod works very well, the only exception is the impossibility of having the additional settings

 

Spoiler

Immagine11.jpg.f423791491d5a7225cbc5b3203dfdb10.jpg

 

Link to comment
16 hours ago, Lestat1627 said:

"rapist always aggressor" , it is never active . The only mod installed that could somehow reactivate the event is SexLab Pheromones.
I don't have any other mod (HH or similar) that acts with
rapist always aggressor 

 

The patch I put it, as well as the script

 

 

"rapist always aggressor" Can it really interfere with the settings in MCM?

I state that the mod works very well, the only exception is the impossibility of having the additional settings

 

  Hide contents

Immagine11.jpg.f423791491d5a7225cbc5b3203dfdb10.jpg

 

What date do your adcMCM.psc file have?

 

Hope i understand you. You want to enable "rapist always aggressor" Its under Debug and Development

Totally miss in translation. This is in the code on line(updated version)

adcSexlifeMain.psc
1481
; For non-rape sort female first
    if (Sextype != 1)
		sexActors = Sexlab.SortActors(sexActors)
    else
		if !bRapistAggressor ; female first also for rapes in this case
			sexActors = Sexlab.SortActors(sexActors)
		endIf
    endif

You can have my new version and i will add a debug msg for it. Done in 2h.

The code is missing the FemDom in this case. And i will add new setting so it can be turned off.

Link to comment
11 hours ago, Swe-DivX said:

What date do your adcMCM.psc file have?

14/05/2019 . If it helps, below is my adcMCM.psc

 

Spoiler

Scriptname adcMCM extends SKI_ConfigBase  

; Cannot compile adcSexLife when hdt physics os racemenu mods are selected


; Sexlife 
adcSexlifeMain Property Main Auto
Actor Property ActorRef auto hidden

Actor Property A1 Auto hidden
Actor Property A2 Auto hidden

int oidDebugLog
int oidDebugScreen
int oidObservations
int oidfUpdateSpeed
int oidfArousalThreshold
int oidbModRunning
int oidSizeThreshold
int oidExclusion
int oidInitializeSexuality
int oidA1
int oidA2
int oidA3
int oidA1T
int oidA2T
int oidGP   ; Genderpreference
int oidMA   ; Married
int oidLO   ; Lover
int oidbCheating  
int oidbBeastiality  
int oidbCuckolding 
int oidbIncest 
int oidbNecrophilia 
int oidbRape 
int oidbRapeAlways
int oidRapistAggressor 
int oidbSM 
int oidbProstitution

int FaithfullOID
bool Faithful
int SubmissiveOID
bool Submissive
int DominantOID
bool Dominant
int RapistOID
bool Rapist
int RacistOID
bool Racist
int SizequeenOID
bool Sizequeen
int GolddiggerOID
bool Golddigger
int OIDExcluded
bool Excluded
int OIDVictim
bool Victim
int OIDProstitution
bool Prostitution
int OIDPlaceholderD
bool PlaceholderD
int OIDPlaceholderE
bool PlaceholderE
int OIDPlaceholderF
bool PlaceholderF
int OIDPlaceholderG
bool PlaceholderG


function SetActorRef()
    ActorRef = Main.PlayerRef
    ObjectReference ref = Game.GetCurrentCrosshairRef()
    if ref
        if ref.GetVoiceType() != none
            ActorRef = ref as Actor
        endif   
    endif
;    if (ActorRef == Main.PlayerSpeakerRef) || (ActorRef == Main.PlayerSpeakerFemaleRef)
;      ActorRef = Main.PlayerRef    
;    endif
endfunction

event OnPageReset(string page)
    SetActorRef()

    ; Load logo in png format    
    if (page == "")
        int xOffset = 376 - (256 / 2)
        int yOffset = 223 - (256 / 2)             
        LoadCustomContent("Sexlife.dds", xOffset, yOffset)
        return        
    else
        UnloadCustomContent()
    EndIf

    if (page == "Configuration")
        GetAttributes1(ActorRef) 
        SetCursorFillMode(TOP_TO_BOTTOM)

        SetCursorPosition(0)
            AddHeaderOption("Operational settings")
            oidbModRunning = AddToggleOption("Mod enabled", Main.bModRunning) 
            oidExclusion = AddToggleOption("Initialize actors", Main.bActorsinitialized)  
            oidInitializeSexuality = AddToggleOption("Initialize actors sexuality", Main.bInitializeSexuality)              
            oidObservations = AddToggleOption("Observations on screen", Main.bObservations)
            oidfUpdateSpeed = AddSliderOption("Poll frequency", main.fUpdateSpeed, "Every {0} seconds")                                 
            AddHeaderOption("Threshold settings")            
            oidfArousalThreshold = AddSliderOption("Arousal threshold", Main.fArousalThreshold, "{0}")  
            oidSizeThreshold = AddSliderOption("Sizequeen preference threshold", Main.fSizeThreshold, "Cocksize {0}") 
            AddHeaderOption("Fetish content")            
            oidbBeastiality = AddToggleOption("Beastiality", Main.bBeastiality) 
            oidbCheating = AddToggleOption("Cheating", Main.bCheating) 
            oidbCuckolding = AddToggleOption("Cuckolding", Main.bCuckolding) 
            oidbIncest = AddToggleOption("Incest", Main.bIncest) 
            oidbNecrophilia = AddToggleOption("Necrophilia", Main.bNecrophilia) 
            oidbProstitution = AddToggleOption("Prostitution", Main.bProstitution) 
            oidbRape = AddToggleOption("Rape", Main.bRape) 
            oidRapistAggressor = AddToggleOption("  Rapist always play the role of aggressor", Main.bRapistAggressor)
            oidbSM = AddToggleOption("Sadism & Masochism", Main.bSM) 

        SetCursorPosition(1)
        if (ActorRef != None)

            ; Get Mod name and RefId
            int ID = ActorRef.GetFormID()               ; Full ID
            int MODID = Math.RightShift(ID, 24)         ; Extract MOD ID
            ID = Math.LogicalAnd(ID, 0x00ffffff)        ; Extract ID without load order

            string Nameofmod = Game.GetModName(MODID)   ; Name of mod Actor originates from
            int rank = JsonUtil.GetIntValue("adcSLSL "+NameofMod+".json", ID as string, -3)

            string msg = ""
            string msg2 = ""
            if rank == -3
                msg = ActorRef.GetLeveledActorBase().GetName() + "("+ID+") not predefined in:"
                msg2 = "adcSLSL "+NameofMod+".json"
            else
                msg = ActorRef.GetLeveledActorBase().GetName() + "("+ID+") defined in:"
                msg2 = "adcSLSL "+NameofMod+".json" + " as:" + rank +"."
            endif          

            AddHeaderOption(ActorRef.GetLeveledActorBase().GetName() + " info & attributes")
            AddTextOption(msg, "")            
            AddTextOption(msg2, "")            
            string GenderPreference = GenderPreferenceAsText(ActorRef)
            oidGP = AddTextOption("Gender preference", GenderPreference)
            ;oidGPFrom = AddTextOption("Gender preference SLA", GenderPreference)
            
            oidMA = AddTextOption("Is married", Main.API.ActorIsMarried(ActorRef) as string)
            ;oidLO = AddTextOption("Has lover", Main.API.ActorHasLover(ActorRef) as string)
            FaithfullOID = AddToggleOption("Faithfull", Faithful)
            SubmissiveOID = AddToggleOption("Submissive", Submissive)
            DominantOID = AddToggleOption("Dominant", Dominant)
            RapistOID = AddToggleOption("Rapist", Rapist)
            RacistOID = AddToggleOption("Racist", Racist)
            SizequeenOID = AddToggleOption("Sizequeen", Sizequeen)
            GolddiggerOID = AddToggleOption("Golddigger", Golddigger)
            OIDExcluded = AddToggleOption("Excluded", Excluded)
            OIDVictim = AddToggleOption("Victim", Victim)
            OIDProstitution = AddToggleOption("Prostitution", Prostitution)
            OIDPlaceholderD = AddToggleOption("PlaceholderD", PlaceholderD)
            OIDPlaceholderE = AddToggleOption("PlaceholderE", PlaceholderE)
            OIDPlaceholderF = AddToggleOption("PlaceholderF", PlaceholderF)
            OIDPlaceholderG = AddToggleOption("PlaceholderG", PlaceholderG)        
        endif
    endif

    if (page == "Debug and Development")
        SetCursorFillMode(TOP_TO_BOTTOM)

        SetCursorPosition(0)
            AddHeaderOption("Debug settings")
            oidDebugLog = AddToggleOption("Debug to log", Main.bDebugToLog)
            oidDebugScreen = AddToggleOption("Debug to screen", Main.bDebugToScreen)  
            oidbRapeAlways = AddToggleOption("Rapist always rapes", Main.bRapistAlwaysRapes)

        SetCursorPosition(1)
            string A1Name = "Undefined"
            if A1 != none
                A1Name = A1.GetLeveledActorBase().GetName()
            endif
            string A2Name = "Undefined"
            if A2 != none
                A2Name = A2.GetLeveledActorBase().GetName()
            endif

            AddHeaderOption("Locked actors")
            oidA1T = AddTextOption("Selected A1 (Actor 1) Initiator", A1Name)
            oidA2T = AddTextOption("Selected A2 (Actor 2) Target", A2Name)
            addHeaderOption("Actions")                         
            AddTextOption("Currently selected actor", ActorRef.GetLeveledActorBase().GetName())
            
            oidA1 = AddToggleOption("Lock "+ActorRef.GetLeveledActorBase().GetName()+" as A1", none)
            oidA2 = AddToggleOption("Lock "+ActorRef.GetLeveledActorBase().GetName()+" as A2", none)
            oidA3 = AddToggleOption("Clear both assignments", false)
    endif

    if (page == "Credits")
        SetCursorFillMode(TOP_TO_BOTTOM)
        SetCursorPosition(0)
        AddTextOption("", "Version 1.4")        
        AddHeaderOption("The pack")
        AddTextOption("", "Dooge")
        AddTextOption("", "iacex111")
        AddTextOption("", "luffyboy")
        AddTextOption("", "y_sengaku")
        AddTextOption("", "judgement16")
        AddTextOption("", "Sutha")
        AddTextOption("", "Halleaon")        
        

        SetCursorPosition(3)
        AddTextOption("master dog annals", "")
        AddTextOption("the good", "")
        AddTextOption("the bad", "")
        AddTextOption("the ugly", "")
        AddTextOption("amazing work morals", "")
        AddTextOption("much contribute", "")
        AddTextOption("so beauty", "")        
        AddTextOption("mysterydog of wisdom", "")
    endif
endEvent

string function GenderPreferenceAsText(actor akref)
    ; 0 - Male
    ; 1 - Female
    ; 2 - Both    
    ; Otherwise 
    int pref = Main.SLA.GetGenderPreference(akref)
    if pref == 0
      return "Male"
    elseif pref == 1
      return "Female"
    elseif pref == 2
      return "Both sexes"
    endif
endfunction

event OnOptionSliderOpen(int option)
    if (option == oidfUpdateSpeed)
        SetSliderDialogStartValue(Main.fUpdateSpeed)
        SetSliderDialogDefaultValue(60)
        SetSliderDialogRange(5, 600)
        SetSliderDialogInterval(1.0)
    endIf
    if (option == oidfArousalThreshold)
        SetSliderDialogStartValue(Main.fArousalThreshold)
        SetSliderDialogDefaultValue(70)
        SetSliderDialogRange(5, 80)
        SetSliderDialogInterval(1.0)
    endIf  
    if (option == oidSizeThreshold)
        SetSliderDialogStartValue(Main.fSizeThreshold)
        SetSliderDialogDefaultValue(7)
        SetSliderDialogRange(1, 20)
        SetSliderDialogInterval(1.0)
    endIf           
endEvent

event OnOptionSliderAccept(int option, float value)
    if (option == oidfUpdateSpeed)
        Main.fUpdateSpeed = value
        SetSliderOptionValue(oidfUpdateSpeed, value, "Every {0} seconds")
    endIf
    if (option == oidfArousalThreshold)
        Main.fArousalThreshold = value
        SetSliderOptionValue(oidfArousalThreshold, value, "{0}")
    endIf    
    if (option == oidSizeThreshold)
        Main.fSizeThreshold = value
        SetSliderOptionValue(oidSizeThreshold, value, "Cocksize {0}")
    endIf      
endEvent

event OnOptionSelect(int option)
        if (option == oidInitializeSexuality)
            Main.bInitializeSexuality = !Main.bInitializeSexuality
            SetToggleOptionValue(oidInitializeSexuality, Main.bInitializeSexuality)
        endif 

        if (option == oidExclusion)
            Main.bActorsinitialized = !Main.bActorsinitialized
            SetToggleOptionValue(oidExclusion, Main.bActorsinitialized)
        endif 

        if (option == oidbModRunning)
            Main.bModRunning = !Main.bModRunning
            SetToggleOptionValue(oidbModRunning, Main.bModRunning)
        endif  

        if (option == oidDebugLog)
            Main.bDebugToLog = !Main.bDebugToLog
            SetToggleOptionValue(oidDebugLog, Main.bDebugToLog)
        endif   

        if (option == oidDebugScreen)
            Main.bDebugToScreen = !Main.bDebugToScreen
            SetToggleOptionValue(oidDebugScreen, Main.bDebugToScreen)
        endif   

        if (option == oidObservations)
            Main.bObservations = !Main.bObservations
            SetToggleOptionValue(oidObservations, Main.bObservations)
        endif

        ; Content
        if (option == oidbCheating)
            Main.bCheating = !Main.bCheating
            SetToggleOptionValue(oidbCheating, Main.bCheating)
        endif
        if (option == oidbBeastiality)
            Main.bBeastiality = !Main.bBeastiality
            SetToggleOptionValue(oidbBeastiality, Main.bBeastiality)
        endif
        if (option == oidbCuckolding)
            Main.bCuckolding = !Main.bCuckolding
            SetToggleOptionValue(oidbCuckolding, Main.bCuckolding)
        endif
        if (option == oidbIncest)
            Main.bIncest = !Main.bIncest
            SetToggleOptionValue(oidbIncest, Main.bIncest)
        endif
        if (option == oidbNecrophilia)
            Main.bNecrophilia = !Main.bNecrophilia
            SetToggleOptionValue(oidbNecrophilia, Main.bNecrophilia)
        endif
        if (option == oidbRape)
            Main.bRape = !Main.bRape
            SetToggleOptionValue(oidbRape, Main.bRape)
        endif
        if (option == oidbSM)
            Main.bSM = !Main.bSM
            SetToggleOptionValue(oidbSM, Main.bSM)
        endif
        if (option == oidbProstitution)
            Main.bProstitution = !Main.bProstitution
            SetToggleOptionValue(oidbProstitution, Main.bProstitution)
        endIf

        if (option == FaithfullOID)
            Faithful = !Faithful
            SetToggleOptionValue(FaithfullOID, Faithful)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())            
        endif

        if (option == SubmissiveOID)
            Submissive = !Submissive
            SetToggleOptionValue(SubmissiveOID, Submissive)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == DominantOID)
            Dominant = !Dominant
            SetToggleOptionValue(DominantOID, Dominant)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == RapistOID)
            Rapist = !Rapist
            SetToggleOptionValue(RapistOID, Rapist)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == RacistOID)
            Racist = !Racist
            SetToggleOptionValue(RacistOID, Racist)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == SizequeenOID)
            Sizequeen = !Sizequeen
            SetToggleOptionValue(SizequeenOID, Sizequeen)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == GolddiggerOID)
            Golddigger = !Golddigger
            SetToggleOptionValue(GolddiggerOID, Golddigger)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif   

        if (option == OIDExcluded)
            Excluded = !Excluded
            SetToggleOptionValue(OIDExcluded, Excluded)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif         

        if (option == OIDVictim)
            Victim = !Victim
            SetToggleOptionValue(OIDVictim, Victim)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDProstitution)
            Prostitution = !Prostitution
            SetToggleOptionValue(OIDProstitution, Prostitution)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderD)
            PlaceholderD = !PlaceholderD
            SetToggleOptionValue(OIDPlaceholderD, PlaceholderD)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderE)
            PlaceholderE = !PlaceholderE
            SetToggleOptionValue(OIDPlaceholderE, PlaceholderE)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderF)
            PlaceholderF = !PlaceholderF
            SetToggleOptionValue(OIDPlaceholderF, PlaceholderF)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderG)
            PlaceholderG = !PlaceholderG
            SetToggleOptionValue(OIDPlaceholderG, PlaceholderG)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == oidA1)
            A1 = ActorRef
            SetTextOptionValue(oidA1T, A1.GetLeveledActorBase().GetName())
        endif 

        if (option == oidA2)
            A2 = ActorRef
            SetTextOptionValue(oidA2T, A2.GetLeveledActorBase().GetName())
        endif 

        if (option == oidA3)
            A1 = none
            A2 = none
            SetTextOptionValue(oidA1T, "Undefined")            
            SetTextOptionValue(oidA2T, "Undefined")
        endif 

        if (option == oidRapistAggressor)
            Main.bRapistAggressor = !Main.bRapistAggressor
            SetToggleOptionValue(oidRapistAggressor, Main.bRapistAggressor)
        endif 

        if (option == oidbRapeAlways)
            Main.bRapistAlwaysRapes = !Main.bRapistAlwaysRapes
            SetToggleOptionValue(oidbRapeAlways, Main.bRapistAlwaysRapes)
        endif 


        if (ActorRef != None)

            ; Get Mod name and RefId
            int ID = ActorRef.GetFormID()               ; Full ID
            int MODID = Math.RightShift(ID, 24)         ; Extract MOD ID
            ID = Math.LogicalAnd(ID, 0x00ffffff)        ; Extract ID without load order

            string Nameofmod = Game.GetModName(MODID)   ; Name of mod Actor originates from
            ;int rank = JsonUtil.GetIntValue("adcSLSL "+NameofMod+".json", ID as string, -3)
            int rank = MakeAttributes1() + MakeAttributes2() * 128
            ;int io_status = 
            JsonUtil.SetIntValue("adcSLSL "+NameofMod+".json", ID as string, rank)
            JsonUtil.Save("adcSLSL "+NameofMod+".json")
            ;Debug.Notification("check ok "+ io_status + " rank " + rank)
        endif
endEvent

event OnOptionHighlight(int option)
    if (option == oidfUpdateSpeed)
        SetInfoText("How often mod checks for a random pair to qualify for events that may lead to sex.")     
    elseIf (option == oidfArousalThreshold)
        SetInfoText("Treshold arousal for actor to act toward sex.")    
    elseIf (option == oidObservations)
        SetInfoText("Immersive messages about things you observe.")
    elseIf ( (option == oidDebugLog) || (option == oidDebugScreen) )
        SetInfoText("Messages to spot bugs and to help understand how this works. Recommended not to debug to screen.")
    elseif (option == oidSizeThreshold)
        SetInfoText("Sizequeen refuses cocks smaller than this.")
    elseif (option == oidExclusion)
        SetInfoText("Initialize new actors (check) or leave them excluded from all sex (uncheck)")
    elseif (option == oidInitializeSexuality)
        SetInfoText("Overwrite SLA gender preference (check) or leave existing SLA value (uncheck) for all actors")      
    elseif (option == oidA1) || (option == oidA2) || (option == oidA3) || (option == oidA1T) || (option == oidA2) 
        SetInfoText("Lock specific actors permanently as initiator and/or target.")  
    elseif (option == oidGP) 
        SetInfoText("Set gender preference in Sexlab Aroused")
    elseif (option == oidMA) 
        SetInfoText("This actor is married to someone")
    elseif (option == oidLO) 
        SetInfoText("This actor has relationshiprank 4 to someone")  
    elseif (option == oidbRapeAlways) 
        SetInfoText("Rapist normally has low chance to rape, check this to always rape. Good for testing.")  
    elseif (option == FaithfullOID) 
        SetInfoText("Agrees to sex only with lover or spouse. If single, is still reluctant to have sex with anyone. Can get raped.") 
    elseif (option == SubmissiveOID) 
        SetInfoText("Pushover. Less likely to try to have sex with someone. More likely to end up being raped.") 
    elseif (option == DominantOID) 
        SetInfoText("Behaves dominant and aggressive. Tries to get sex more often, doesn't take refusal very well.\nLess likely to get raped. Uses rough animations. Gives snappy comments.")  
    elseif (option == RapistOID) 
        SetInfoText("May rape when refused sex.") 
    elseif (option == RacistOID) 
        SetInfoText("Initiates and agrees only to same-race sex. Makes hurtful comments.") 
    elseif (option == SizequeenOID) 
        SetInfoText("Prefers larger than average dick size on partner.")  
    elseif (option == GolddiggerOID) 
        SetInfoText("Prefers prestige and wealth on partner. Refuses sex with poor and insignificant people.") 
    elseif (option == OIDExcluded) 
        SetInfoText("Can not be even approached for sex. Can not participate in sex. Can not be raped.") 
    elseif (option == OIDVictim) 
        SetInfoText("Unable to resist sex when approached.")  
    elseif (option == OIDProstitution) 
        SetInfoText("May sell or buy sex.") 
    elseif (option == OIDPlaceholderD) || (option == OIDPlaceholderE) || (option == OIDPlaceholderF) || (option == OIDPlaceholderG)
        SetInfoText("This does nothing either way.") 
    endIf
endEvent

Function GetAttributes1(Actor akRef)
    int rank = Main.GetAttributeRank(akRef, 1)

    ; Show actual values if rank 0 - 127
    if (rank > -1)           
        Faithful = Math.LogicalAnd(rank, 1)
        Submissive = Math.LogicalAnd(rank, 2)
        Dominant = Math.LogicalAnd(rank, 4)
        Rapist = Math.LogicalAnd(rank, ?
        Racist = Math.LogicalAnd(rank, 16)
        Sizequeen = Math.LogicalAnd(rank, 32)
        Golddigger = Math.LogicalAnd(rank, 64)

        rank = Main.GetAttributeRank(akRef, 2)
        Excluded = Math.LogicalAnd(rank, 1)
        Victim = Math.LogicalAnd(rank, 2)
        Prostitution = Math.LogicalAnd(rank, 4)
        PlaceholderD = Math.LogicalAnd(rank, ?
        PlaceholderE = Math.LogicalAnd(rank, 16)
        PlaceholderF = Math.LogicalAnd(rank, 32)
        PlaceholderG = Math.LogicalAnd(rank, 64)  
    ; In case attribues were un-initialized, show these fake values  
    else
        Faithful = 0
        Submissive = 0
        Dominant = 0
        Rapist = 0
        Racist = 0
        Sizequeen = 0
        Golddigger = 0
        Excluded = 1
        Victim = 0
        Prostitution = 0
        PlaceholderD = 0
        PlaceholderE = 0
        PlaceholderF = 0
        PlaceholderG = 0
    endif          
endfunction

int Function MakeAttributes1()
    int rank = Faithful as int + Submissive as int *2 + Dominant as int*4 + Rapist as int*8 + Racist as int*16 + Sizequeen as int*32 + Golddigger as int*64
    return rank
endfunction

int Function MakeAttributes2()
    int rank = Excluded as int + Victim as int *2 + Prostitution as int*4 + PlaceholderD as int*8 + PlaceholderE as int*16 + PlaceholderF as int*32 + PlaceholderG as int*64
    return rank
endfunction

 

Link to comment
2 hours ago, Lestat1627 said:

14/05/2019 . If it helps, below is my adcMCM.psc

 

  Hide contents

Scriptname adcMCM extends SKI_ConfigBase  

; Cannot compile adcSexLife when hdt physics os racemenu mods are selected


; Sexlife 
adcSexlifeMain Property Main Auto
Actor Property ActorRef auto hidden

Actor Property A1 Auto hidden
Actor Property A2 Auto hidden

int oidDebugLog
int oidDebugScreen
int oidObservations
int oidfUpdateSpeed
int oidfArousalThreshold
int oidbModRunning
int oidSizeThreshold
int oidExclusion
int oidInitializeSexuality
int oidA1
int oidA2
int oidA3
int oidA1T
int oidA2T
int oidGP   ; Genderpreference
int oidMA   ; Married
int oidLO   ; Lover
int oidbCheating  
int oidbBeastiality  
int oidbCuckolding 
int oidbIncest 
int oidbNecrophilia 
int oidbRape 
int oidbRapeAlways
int oidRapistAggressor 
int oidbSM 
int oidbProstitution

int FaithfullOID
bool Faithful
int SubmissiveOID
bool Submissive
int DominantOID
bool Dominant
int RapistOID
bool Rapist
int RacistOID
bool Racist
int SizequeenOID
bool Sizequeen
int GolddiggerOID
bool Golddigger
int OIDExcluded
bool Excluded
int OIDVictim
bool Victim
int OIDProstitution
bool Prostitution
int OIDPlaceholderD
bool PlaceholderD
int OIDPlaceholderE
bool PlaceholderE
int OIDPlaceholderF
bool PlaceholderF
int OIDPlaceholderG
bool PlaceholderG


function SetActorRef()
    ActorRef = Main.PlayerRef
    ObjectReference ref = Game.GetCurrentCrosshairRef()
    if ref
        if ref.GetVoiceType() != none
            ActorRef = ref as Actor
        endif   
    endif
;    if (ActorRef == Main.PlayerSpeakerRef) || (ActorRef == Main.PlayerSpeakerFemaleRef)
;      ActorRef = Main.PlayerRef    
;    endif
endfunction

event OnPageReset(string page)
    SetActorRef()

    ; Load logo in png format    
    if (page == "")
        int xOffset = 376 - (256 / 2)
        int yOffset = 223 - (256 / 2)             
        LoadCustomContent("Sexlife.dds", xOffset, yOffset)
        return        
    else
        UnloadCustomContent()
    EndIf

    if (page == "Configuration")
        GetAttributes1(ActorRef) 
        SetCursorFillMode(TOP_TO_BOTTOM)

        SetCursorPosition(0)
            AddHeaderOption("Operational settings")
            oidbModRunning = AddToggleOption("Mod enabled", Main.bModRunning) 
            oidExclusion = AddToggleOption("Initialize actors", Main.bActorsinitialized)  
            oidInitializeSexuality = AddToggleOption("Initialize actors sexuality", Main.bInitializeSexuality)              
            oidObservations = AddToggleOption("Observations on screen", Main.bObservations)
            oidfUpdateSpeed = AddSliderOption("Poll frequency", main.fUpdateSpeed, "Every {0} seconds")                                 
            AddHeaderOption("Threshold settings")            
            oidfArousalThreshold = AddSliderOption("Arousal threshold", Main.fArousalThreshold, "{0}")  
            oidSizeThreshold = AddSliderOption("Sizequeen preference threshold", Main.fSizeThreshold, "Cocksize {0}") 
            AddHeaderOption("Fetish content")            
            oidbBeastiality = AddToggleOption("Beastiality", Main.bBeastiality) 
            oidbCheating = AddToggleOption("Cheating", Main.bCheating) 
            oidbCuckolding = AddToggleOption("Cuckolding", Main.bCuckolding) 
            oidbIncest = AddToggleOption("Incest", Main.bIncest) 
            oidbNecrophilia = AddToggleOption("Necrophilia", Main.bNecrophilia) 
            oidbProstitution = AddToggleOption("Prostitution", Main.bProstitution) 
            oidbRape = AddToggleOption("Rape", Main.bRape) 
            oidRapistAggressor = AddToggleOption("  Rapist always play the role of aggressor", Main.bRapistAggressor)
            oidbSM = AddToggleOption("Sadism & Masochism", Main.bSM) 

        SetCursorPosition(1)
        if (ActorRef != None)

            ; Get Mod name and RefId
            int ID = ActorRef.GetFormID()               ; Full ID
            int MODID = Math.RightShift(ID, 24)         ; Extract MOD ID
            ID = Math.LogicalAnd(ID, 0x00ffffff)        ; Extract ID without load order

            string Nameofmod = Game.GetModName(MODID)   ; Name of mod Actor originates from
            int rank = JsonUtil.GetIntValue("adcSLSL "+NameofMod+".json", ID as string, -3)

            string msg = ""
            string msg2 = ""
            if rank == -3
                msg = ActorRef.GetLeveledActorBase().GetName() + "("+ID+") not predefined in:"
                msg2 = "adcSLSL "+NameofMod+".json"
            else
                msg = ActorRef.GetLeveledActorBase().GetName() + "("+ID+") defined in:"
                msg2 = "adcSLSL "+NameofMod+".json" + " as:" + rank +"."
            endif          

            AddHeaderOption(ActorRef.GetLeveledActorBase().GetName() + " info & attributes")
            AddTextOption(msg, "")            
            AddTextOption(msg2, "")            
            string GenderPreference = GenderPreferenceAsText(ActorRef)
            oidGP = AddTextOption("Gender preference", GenderPreference)
            ;oidGPFrom = AddTextOption("Gender preference SLA", GenderPreference)
            
            oidMA = AddTextOption("Is married", Main.API.ActorIsMarried(ActorRef) as string)
            ;oidLO = AddTextOption("Has lover", Main.API.ActorHasLover(ActorRef) as string)
            FaithfullOID = AddToggleOption("Faithfull", Faithful)
            SubmissiveOID = AddToggleOption("Submissive", Submissive)
            DominantOID = AddToggleOption("Dominant", Dominant)
            RapistOID = AddToggleOption("Rapist", Rapist)
            RacistOID = AddToggleOption("Racist", Racist)
            SizequeenOID = AddToggleOption("Sizequeen", Sizequeen)
            GolddiggerOID = AddToggleOption("Golddigger", Golddigger)
            OIDExcluded = AddToggleOption("Excluded", Excluded)
            OIDVictim = AddToggleOption("Victim", Victim)
            OIDProstitution = AddToggleOption("Prostitution", Prostitution)
            OIDPlaceholderD = AddToggleOption("PlaceholderD", PlaceholderD)
            OIDPlaceholderE = AddToggleOption("PlaceholderE", PlaceholderE)
            OIDPlaceholderF = AddToggleOption("PlaceholderF", PlaceholderF)
            OIDPlaceholderG = AddToggleOption("PlaceholderG", PlaceholderG)        
        endif
    endif

    if (page == "Debug and Development")
        SetCursorFillMode(TOP_TO_BOTTOM)

        SetCursorPosition(0)
            AddHeaderOption("Debug settings")
            oidDebugLog = AddToggleOption("Debug to log", Main.bDebugToLog)
            oidDebugScreen = AddToggleOption("Debug to screen", Main.bDebugToScreen)  
            oidbRapeAlways = AddToggleOption("Rapist always rapes", Main.bRapistAlwaysRapes)

        SetCursorPosition(1)
            string A1Name = "Undefined"
            if A1 != none
                A1Name = A1.GetLeveledActorBase().GetName()
            endif
            string A2Name = "Undefined"
            if A2 != none
                A2Name = A2.GetLeveledActorBase().GetName()
            endif

            AddHeaderOption("Locked actors")
            oidA1T = AddTextOption("Selected A1 (Actor 1) Initiator", A1Name)
            oidA2T = AddTextOption("Selected A2 (Actor 2) Target", A2Name)
            addHeaderOption("Actions")                         
            AddTextOption("Currently selected actor", ActorRef.GetLeveledActorBase().GetName())
            
            oidA1 = AddToggleOption("Lock "+ActorRef.GetLeveledActorBase().GetName()+" as A1", none)
            oidA2 = AddToggleOption("Lock "+ActorRef.GetLeveledActorBase().GetName()+" as A2", none)
            oidA3 = AddToggleOption("Clear both assignments", false)
    endif

    if (page == "Credits")
        SetCursorFillMode(TOP_TO_BOTTOM)
        SetCursorPosition(0)
        AddTextOption("", "Version 1.4")        
        AddHeaderOption("The pack")
        AddTextOption("", "Dooge")
        AddTextOption("", "iacex111")
        AddTextOption("", "luffyboy")
        AddTextOption("", "y_sengaku")
        AddTextOption("", "judgement16")
        AddTextOption("", "Sutha")
        AddTextOption("", "Halleaon")        
        

        SetCursorPosition(3)
        AddTextOption("master dog annals", "")
        AddTextOption("the good", "")
        AddTextOption("the bad", "")
        AddTextOption("the ugly", "")
        AddTextOption("amazing work morals", "")
        AddTextOption("much contribute", "")
        AddTextOption("so beauty", "")        
        AddTextOption("mysterydog of wisdom", "")
    endif
endEvent

string function GenderPreferenceAsText(actor akref)
    ; 0 - Male
    ; 1 - Female
    ; 2 - Both    
    ; Otherwise 
    int pref = Main.SLA.GetGenderPreference(akref)
    if pref == 0
      return "Male"
    elseif pref == 1
      return "Female"
    elseif pref == 2
      return "Both sexes"
    endif
endfunction

event OnOptionSliderOpen(int option)
    if (option == oidfUpdateSpeed)
        SetSliderDialogStartValue(Main.fUpdateSpeed)
        SetSliderDialogDefaultValue(60)
        SetSliderDialogRange(5, 600)
        SetSliderDialogInterval(1.0)
    endIf
    if (option == oidfArousalThreshold)
        SetSliderDialogStartValue(Main.fArousalThreshold)
        SetSliderDialogDefaultValue(70)
        SetSliderDialogRange(5, 80)
        SetSliderDialogInterval(1.0)
    endIf  
    if (option == oidSizeThreshold)
        SetSliderDialogStartValue(Main.fSizeThreshold)
        SetSliderDialogDefaultValue(7)
        SetSliderDialogRange(1, 20)
        SetSliderDialogInterval(1.0)
    endIf           
endEvent

event OnOptionSliderAccept(int option, float value)
    if (option == oidfUpdateSpeed)
        Main.fUpdateSpeed = value
        SetSliderOptionValue(oidfUpdateSpeed, value, "Every {0} seconds")
    endIf
    if (option == oidfArousalThreshold)
        Main.fArousalThreshold = value
        SetSliderOptionValue(oidfArousalThreshold, value, "{0}")
    endIf    
    if (option == oidSizeThreshold)
        Main.fSizeThreshold = value
        SetSliderOptionValue(oidSizeThreshold, value, "Cocksize {0}")
    endIf      
endEvent

event OnOptionSelect(int option)
        if (option == oidInitializeSexuality)
            Main.bInitializeSexuality = !Main.bInitializeSexuality
            SetToggleOptionValue(oidInitializeSexuality, Main.bInitializeSexuality)
        endif 

        if (option == oidExclusion)
            Main.bActorsinitialized = !Main.bActorsinitialized
            SetToggleOptionValue(oidExclusion, Main.bActorsinitialized)
        endif 

        if (option == oidbModRunning)
            Main.bModRunning = !Main.bModRunning
            SetToggleOptionValue(oidbModRunning, Main.bModRunning)
        endif  

        if (option == oidDebugLog)
            Main.bDebugToLog = !Main.bDebugToLog
            SetToggleOptionValue(oidDebugLog, Main.bDebugToLog)
        endif   

        if (option == oidDebugScreen)
            Main.bDebugToScreen = !Main.bDebugToScreen
            SetToggleOptionValue(oidDebugScreen, Main.bDebugToScreen)
        endif   

        if (option == oidObservations)
            Main.bObservations = !Main.bObservations
            SetToggleOptionValue(oidObservations, Main.bObservations)
        endif

        ; Content
        if (option == oidbCheating)
            Main.bCheating = !Main.bCheating
            SetToggleOptionValue(oidbCheating, Main.bCheating)
        endif
        if (option == oidbBeastiality)
            Main.bBeastiality = !Main.bBeastiality
            SetToggleOptionValue(oidbBeastiality, Main.bBeastiality)
        endif
        if (option == oidbCuckolding)
            Main.bCuckolding = !Main.bCuckolding
            SetToggleOptionValue(oidbCuckolding, Main.bCuckolding)
        endif
        if (option == oidbIncest)
            Main.bIncest = !Main.bIncest
            SetToggleOptionValue(oidbIncest, Main.bIncest)
        endif
        if (option == oidbNecrophilia)
            Main.bNecrophilia = !Main.bNecrophilia
            SetToggleOptionValue(oidbNecrophilia, Main.bNecrophilia)
        endif
        if (option == oidbRape)
            Main.bRape = !Main.bRape
            SetToggleOptionValue(oidbRape, Main.bRape)
        endif
        if (option == oidbSM)
            Main.bSM = !Main.bSM
            SetToggleOptionValue(oidbSM, Main.bSM)
        endif
        if (option == oidbProstitution)
            Main.bProstitution = !Main.bProstitution
            SetToggleOptionValue(oidbProstitution, Main.bProstitution)
        endIf

        if (option == FaithfullOID)
            Faithful = !Faithful
            SetToggleOptionValue(FaithfullOID, Faithful)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())            
        endif

        if (option == SubmissiveOID)
            Submissive = !Submissive
            SetToggleOptionValue(SubmissiveOID, Submissive)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == DominantOID)
            Dominant = !Dominant
            SetToggleOptionValue(DominantOID, Dominant)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == RapistOID)
            Rapist = !Rapist
            SetToggleOptionValue(RapistOID, Rapist)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == RacistOID)
            Racist = !Racist
            SetToggleOptionValue(RacistOID, Racist)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == SizequeenOID)
            Sizequeen = !Sizequeen
            SetToggleOptionValue(SizequeenOID, Sizequeen)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif

        if (option == GolddiggerOID)
            Golddigger = !Golddigger
            SetToggleOptionValue(GolddiggerOID, Golddigger)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif   

        if (option == OIDExcluded)
            Excluded = !Excluded
            SetToggleOptionValue(OIDExcluded, Excluded)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif         

        if (option == OIDVictim)
            Victim = !Victim
            SetToggleOptionValue(OIDVictim, Victim)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDProstitution)
            Prostitution = !Prostitution
            SetToggleOptionValue(OIDProstitution, Prostitution)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderD)
            PlaceholderD = !PlaceholderD
            SetToggleOptionValue(OIDPlaceholderD, PlaceholderD)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderE)
            PlaceholderE = !PlaceholderE
            SetToggleOptionValue(OIDPlaceholderE, PlaceholderE)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderF)
            PlaceholderF = !PlaceholderF
            SetToggleOptionValue(OIDPlaceholderF, PlaceholderF)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == OIDPlaceholderG)
            PlaceholderG = !PlaceholderG
            SetToggleOptionValue(OIDPlaceholderG, PlaceholderG)
            ActorRef.SetFactionRank(Main.Attributes1, MakeAttributes1())
            ActorRef.SetFactionRank(Main.Attributes2, MakeAttributes2())             
        endif 

        if (option == oidA1)
            A1 = ActorRef
            SetTextOptionValue(oidA1T, A1.GetLeveledActorBase().GetName())
        endif 

        if (option == oidA2)
            A2 = ActorRef
            SetTextOptionValue(oidA2T, A2.GetLeveledActorBase().GetName())
        endif 

        if (option == oidA3)
            A1 = none
            A2 = none
            SetTextOptionValue(oidA1T, "Undefined")            
            SetTextOptionValue(oidA2T, "Undefined")
        endif 

        if (option == oidRapistAggressor)
            Main.bRapistAggressor = !Main.bRapistAggressor
            SetToggleOptionValue(oidRapistAggressor, Main.bRapistAggressor)
        endif 

        if (option == oidbRapeAlways)
            Main.bRapistAlwaysRapes = !Main.bRapistAlwaysRapes
            SetToggleOptionValue(oidbRapeAlways, Main.bRapistAlwaysRapes)
        endif 


        if (ActorRef != None)

            ; Get Mod name and RefId
            int ID = ActorRef.GetFormID()               ; Full ID
            int MODID = Math.RightShift(ID, 24)         ; Extract MOD ID
            ID = Math.LogicalAnd(ID, 0x00ffffff)        ; Extract ID without load order

            string Nameofmod = Game.GetModName(MODID)   ; Name of mod Actor originates from
            ;int rank = JsonUtil.GetIntValue("adcSLSL "+NameofMod+".json", ID as string, -3)
            int rank = MakeAttributes1() + MakeAttributes2() * 128
            ;int io_status = 
            JsonUtil.SetIntValue("adcSLSL "+NameofMod+".json", ID as string, rank)
            JsonUtil.Save("adcSLSL "+NameofMod+".json")
            ;Debug.Notification("check ok "+ io_status + " rank " + rank)
        endif
endEvent

event OnOptionHighlight(int option)
    if (option == oidfUpdateSpeed)
        SetInfoText("How often mod checks for a random pair to qualify for events that may lead to sex.")     
    elseIf (option == oidfArousalThreshold)
        SetInfoText("Treshold arousal for actor to act toward sex.")    
    elseIf (option == oidObservations)
        SetInfoText("Immersive messages about things you observe.")
    elseIf ( (option == oidDebugLog) || (option == oidDebugScreen) )
        SetInfoText("Messages to spot bugs and to help understand how this works. Recommended not to debug to screen.")
    elseif (option == oidSizeThreshold)
        SetInfoText("Sizequeen refuses cocks smaller than this.")
    elseif (option == oidExclusion)
        SetInfoText("Initialize new actors (check) or leave them excluded from all sex (uncheck)")
    elseif (option == oidInitializeSexuality)
        SetInfoText("Overwrite SLA gender preference (check) or leave existing SLA value (uncheck) for all actors")      
    elseif (option == oidA1) || (option == oidA2) || (option == oidA3) || (option == oidA1T) || (option == oidA2) 
        SetInfoText("Lock specific actors permanently as initiator and/or target.")  
    elseif (option == oidGP) 
        SetInfoText("Set gender preference in Sexlab Aroused")
    elseif (option == oidMA) 
        SetInfoText("This actor is married to someone")
    elseif (option == oidLO) 
        SetInfoText("This actor has relationshiprank 4 to someone")  
    elseif (option == oidbRapeAlways) 
        SetInfoText("Rapist normally has low chance to rape, check this to always rape. Good for testing.")  
    elseif (option == FaithfullOID) 
        SetInfoText("Agrees to sex only with lover or spouse. If single, is still reluctant to have sex with anyone. Can get raped.") 
    elseif (option == SubmissiveOID) 
        SetInfoText("Pushover. Less likely to try to have sex with someone. More likely to end up being raped.") 
    elseif (option == DominantOID) 
        SetInfoText("Behaves dominant and aggressive. Tries to get sex more often, doesn't take refusal very well.\nLess likely to get raped. Uses rough animations. Gives snappy comments.")  
    elseif (option == RapistOID) 
        SetInfoText("May rape when refused sex.") 
    elseif (option == RacistOID) 
        SetInfoText("Initiates and agrees only to same-race sex. Makes hurtful comments.") 
    elseif (option == SizequeenOID) 
        SetInfoText("Prefers larger than average dick size on partner.")  
    elseif (option == GolddiggerOID) 
        SetInfoText("Prefers prestige and wealth on partner. Refuses sex with poor and insignificant people.") 
    elseif (option == OIDExcluded) 
        SetInfoText("Can not be even approached for sex. Can not participate in sex. Can not be raped.") 
    elseif (option == OIDVictim) 
        SetInfoText("Unable to resist sex when approached.")  
    elseif (option == OIDProstitution) 
        SetInfoText("May sell or buy sex.") 
    elseif (option == OIDPlaceholderD) || (option == OIDPlaceholderE) || (option == OIDPlaceholderF) || (option == OIDPlaceholderG)
        SetInfoText("This does nothing either way.") 
    endIf
endEvent

Function GetAttributes1(Actor akRef)
    int rank = Main.GetAttributeRank(akRef, 1)

    ; Show actual values if rank 0 - 127
    if (rank > -1)           
        Faithful = Math.LogicalAnd(rank, 1)
        Submissive = Math.LogicalAnd(rank, 2)
        Dominant = Math.LogicalAnd(rank, 4)
        Rapist = Math.LogicalAnd(rank, ?
        Racist = Math.LogicalAnd(rank, 16)
        Sizequeen = Math.LogicalAnd(rank, 32)
        Golddigger = Math.LogicalAnd(rank, 64)

        rank = Main.GetAttributeRank(akRef, 2)
        Excluded = Math.LogicalAnd(rank, 1)
        Victim = Math.LogicalAnd(rank, 2)
        Prostitution = Math.LogicalAnd(rank, 4)
        PlaceholderD = Math.LogicalAnd(rank, ?
        PlaceholderE = Math.LogicalAnd(rank, 16)
        PlaceholderF = Math.LogicalAnd(rank, 32)
        PlaceholderG = Math.LogicalAnd(rank, 64)  
    ; In case attribues were un-initialized, show these fake values  
    else
        Faithful = 0
        Submissive = 0
        Dominant = 0
        Rapist = 0
        Racist = 0
        Sizequeen = 0
        Golddigger = 0
        Excluded = 1
        Victim = 0
        Prostitution = 0
        PlaceholderD = 0
        PlaceholderE = 0
        PlaceholderF = 0
        PlaceholderG = 0
    endif          
endfunction

int Function MakeAttributes1()
    int rank = Faithful as int + Submissive as int *2 + Dominant as int*4 + Rapist as int*8 + Racist as int*16 + Sizequeen as int*32 + Golddigger as int*64
    return rank
endfunction

int Function MakeAttributes2()
    int rank = Excluded as int + Victim as int *2 + Prostitution as int*4 + PlaceholderD as int*8 + PlaceholderE as int*16 + PlaceholderF as int*32 + PlaceholderG as int*64
    return rank
endfunction

 

Its the correct file

            oidbRape = AddToggleOption("Rape", Main.bRape) 
            oidRapistAggressor = AddToggleOption("  Rapist always play the role of aggressor", Main.bRapistAggressor)
            oidbSM = AddToggleOption("Sadism & Masochism", Main.bSM)  

Try to reinstall it. Clean save.

Link to comment
19 hours ago, Swe-DivX said:

Had some more time on this 1.4.4 animations with 2 to 7 actors.

After browsing 72 pages of the thread, I could not find the update for SLSL 1.4.2 to 1.4.4 . I believe that the primary source of the problem lies right here

 

Spoiler

1529637109_slsldawnload.jpg.60c97e02d62fb5d08ab65352694eab9b.jpg

 

 

10 hours ago, donttouchmethere said:

So far I can say:

this works:

uncheck "rapist always aggressor", which literally does nothing but enable female pegging for aggressive animations by skipping the sexlab actor sort

 

I try this, but nothing change .  The basic configuration looks like this

 

Spoiler

 

87681498_slslconf1.jpg.35905a505c4d5aeab16537e099f5cba6.jpg

 

 

 

 

1491774644_slslconf2.jpg.20fef90e59e887df08cb03ef5b07b0f2.jpg

 

 

 

1352645307_slslconf3.jpg.d05cfdbfbe5ee6d2427e3cb201caaac8.jpg

 

 

 

1874571288_slslconf4.jpg.01bb8690d03766ad113444f15762563d.jpg

 

Link to comment
50 minutes ago, Lestat1627 said:

After browsing 72 pages of the thread, I could not find the update for SLSL 1.4.2 to 1.4.4 . I believe that the primary source of the problem lies right here

 

  Reveal hidden contents

1529637109_slsldawnload.jpg.60c97e02d62fb5d08ab65352694eab9b.jpg

 

 

 

I try this, but nothing change .  The basic configuration looks like this

 

  Hide contents

 

87681498_slslconf1.jpg.35905a505c4d5aeab16537e099f5cba6.jpg

 

 

 

 

1491774644_slslconf2.jpg.20fef90e59e887df08cb03ef5b07b0f2.jpg

 

 

 

1352645307_slslconf3.jpg.d05cfdbfbe5ee6d2427e3cb201caaac8.jpg

 

 

 

1874571288_slslconf4.jpg.01bb8690d03766ad113444f15762563d.jpg

 

I have not uploaded the 1.4.4. One more fix to do.

Have you checked in Overwrite? The menu should not be able to be saved in your save file. The menu you have is not the one shown in the file. Check in esp if Quest is overwritten

I will PM 1.4.4

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