Jump to content

SexoutNG NX Variables Lists For Modders


Recommended Posts

Posted

A sound system revamp is on my todo list and has been for a while. There will be a way to tell sexout to override the sounds that does not rely simply on the rape flag as it does now.

 

The flags will let you choose to mute or play the cons/noncons sounds per actor (ignoring rape flag), as well as mute or not the slop sounds.

 

If you want to extend the SexoutStart NX vars to include those flags, just decide on what you want them to be and let me know (send me a PM or use a ticket in the sexout git please!) and you can start using them right away. Sexout will just ignore them until I get around to the revamp, but they could be looked at, along with a trinary cons/noncons/reluct extension to the rape flag.

Posted

I've been out of the lop a bit and not sure where we are up to on some things  and how many people are using these NX's so want to make sure everything in the OP is what we want from this discussion to remain there forever and we just add new things to it.

 

 

SexoutNG managed

 

Ones we need Prideslayer to add into SexoutNG for counting Sex events

 

rActor.NX_SetEVFl "SO:Count:fSexRecOral" ; *** Number of times received Sex Orally

rActor.NX_SetEVFl "SO:Count:fSexRecAnal" ; *** Number of times received Sex Anally

rActor.NX_SetEVFl "SO:Count:fSexRecVaginal" ; *** Number of times received Sex Vaginally

rActor.NX_SetEVFl "SO:Count:fSexRecPenile"  ; *** Number of times received Penile Sex

rActor.NX_SetEVFl "SO:Count:fSexGiveOral" ; *** Number of times gave Sex Orally

rActor.NX_SetEVFl "SO:Count:fSexGiveAnal" ; *** Number of times gave Sex Anally

rActor.NX_SetEVFl "SO:Count:fSexGiveVaginal" ; *** Number of times gave Sex Vaginally

rActor.NX_SetEVFl "SO:Count:fSexGivePenile" ; *** Number of times gave Penile Sex

 

rActor.NX_SetEVFl "SO:Count;fWasRaped" ; *** Number of times raped

rActor.NX_SetEVFl "SO:Count:fRapedAnother" ; *** Number of times raped another Actor

 

rActor.NX_SetEVFl "SO:Count:fXPSex" ; *** 1 point per event, +10 for each partner orgasming?

 

My thinking one point per relevant animation event, mods can always bump it more themselves for special events.

Ok I think if we want Prideslayer to add these into Sexout we change the Prefix from SO to Sexout

 

Without laying too much on Doc, one thought I have is to track Orgasm counts that needs to be updated or done by Spunk (Should they be in Spunk?)

So we would have "SO:Count:fCausedOrgasm" && "SO:Count:fHadOrgasm"

Maybe we are better if all the counters are all handled by Spunk as it has more info about any sex event other than rape/non-consensual

And perhaps "SO:Count:fXPSex" should just be a calculated total of all those above it including "SO:Count:fCausedOrgasm" && "SO:Count:fHadOrgasm"

Should we add counts for Dom, Sub, Prostitution, MasturbationSelf & MasturbationOther and dump all the skills below?

 

 

Possibilities for tracking in SexoutNG

 

rActor.NX_SetEVFl "SO:Count:fSexHuman" ; *** Number of times had sex with Humans

rActor.NX_SetEVFl "SO:Count:fSexCreature" ; *** Number of times had sex with Creatures

rActor.NX_SetEVFl "SO:Count:fSexRobot" ; *** Number of times had sex with Robots

rActor.NX_SetEVFl "SO:Count:fSexToys" ; *** Number of times had sex using toys

 

Any thoughts on these? Do we need to break Creatures down to Dogs etc?

 

 Any thoughts does anyone want them yet? I thinking maybe we dump them from this list till they are really wanted and work on the stuff we want now.

 

 

Actor Statistic variables

 

We just name them in the list, no script management, they are adjusted by anyone using them

 

rActor.NX_SetEVFl "SO:Skill:fGivingOral" ; *** 0-35000 add one point for each event, more points added for successful achievements by plugins

rActor.NX_SetEVFl "SO:Skill:fGivingAnal"

rActor.NX_SetEVFl "SO:Skill:fGivingVaginal"

rActor.NX_SetEVFl "SO:Skill:fGivingPenile"

rActor.NX_SetEVFl "SO:Skill:fMasturbation"

rActor.NX_SetEVFl "SO:Skill:fProstitution" ; *** 0-35000, one point per approach, more for successful approaches by plugins (10?),

rActor.NX_SetEVFl "SO:Skill:fDom" ; *** 0-35000 add one point for each event, more points added for successful achievements by plugins

rActor.NX_SetEVFl "SO:Skill:fSub"

 

We probably only need some of these for that aren't covered by XP or should we just settle with those as XP counts too?

One I though of that might be handy for Prostitution is "IncomeFromProstitution" which would be incremented by mods with prostitution for every cap earned.

 

 

Traits

 

rActor.NX_SetEVFl "SO:Trait:fHumans" ; *** -100 to 100, How much the actor likes sex with Humans
rActor.NX_SetEVFl "SO:Trait:fMutants" ; *** -100 to 100, How much the actor likes sex with Mutants (Ghouls, Centaurs, SuperMutants, DeathClaws, Cazadores etc)
rActor.NX_SetEVFl "SO:Trait:fCreatures" ; *** -100 to 100, How much the actor likes sex with Creatures (Dogs, Bighorners) 
rActor.NX_SetEVFl "SO:Trait:fRobots" ; *** -100 to 100, How much the actor likes sex with Robots

rActor.NX_SetEVFl "SO:Trait:fSexWithMales" ; *** -100 to 100, How much the actor likes Sex with Males

rActor.NX_SetEVFl "SO:Trait:fSexWithFemales" ; *** -100 to 100, How much the actor likes sex with Females

rActor.NX_SetEVFl "SO:Trait:fAnal" ; *** -100 to 100, How much the actor likes sex using their ass

rActor.NX_SetEVFl "SO:Trait:fOral" ; *** -100 to 100, How much the actor likes sex using their mouth

rActor.NX_SetEVFl "SO:Trait:fVaginal" ; *** -100 to 100, How much the actor likes sex using their Vagina

rActor.NX_SetEVFl "SO:Trait:fPenile" ; *** -100 to 100, How much the actor likes sex using their Penis

rActor.NX_SetEVFl "SO:Trait:fToys" ; *** -100 to 100, How much the actor likes using toys

rActor.NX_SetEVFl "SO:Trait:fBondage" ; *** -100 to 100, How much the actor likes being bound or collared

rActor.NX_SetEVFl "SO:Trait:fDom" ; *** -100 to 100, How much the actor likes to Dominate

rActor.NX_SetEVFl "SO:Trait:fSub" ; *** -100 to 100, How much the actor likes to be Submissive

rActor.NX_SetEVFl "SO:Trait:fSlutty" ; *** -100 to 100, How Slutty the actor behaves

rActor.NX_SetEVFl "SO:Trait:fPregnancy" ; *** -100 to 100, How much the actor wants to sire or carry a child (used against contraceptive use or desire for sex when fertile)

rActor.NX_SetEVFl "SO:Trait:SexDrive" -100 to 100, the actors drive / addiction / repulsion to sex

 

Opinions

 

rActor.NX_SetEVFl "SO:Opinion:fSlutty" ; *** -100 to 100, How much the Actor likes Slutty actors

rActor.NX_SetEVFl "SO:Opinion:fPregnancy" ; *** -100 to 100, How much the actor likes Pregnant actors

 

As far as I know and see these can stay and are all ok? Is there a reason I didn't put a "f" on "SexDrive"?

 

Posted

As a suggestion, what if you add a 'style' NX for messaging that other mods can optionally set, with values corresponding to things like 'gentle', 'rough', 'imaginative', 'kinky', 'rape' etc. You could treat it as an override to your usual messages style picker. Otherwise I think it will be very hard to guess the context for all situations, other mods as well as my 3 set the rape flag for consensual sex, and many don't set it for non (or barely) consensual.

This is an idea I really like, if an NX was set and reset on actors by mods calling Sex "SO:Style:rSexEvent" during sex animations, and we had an agreed list of possibilities.

Alternatively perhaps the Current SexoutRape flag is changed to 0-10 for the degree of Non-consensuality

Posted

I've been out of the lop a bit and not sure where we are up to on some things and how many people are using these NX's so want to make sure everything in the OP is what we want from this discussion to remain there forever and we just add new things to it.

 

SexoutNG managed

 

Ones we need Prideslayer to add into SexoutNG for counting Sex events

 

rActor.NX_SetEVFl "SO:Count:fSexRecOral" ; *** Number of times received Sex Orally

rActor.NX_SetEVFl "SO:Count:fSexRecAnal" ; *** Number of times received Sex Anally

rActor.NX_SetEVFl "SO:Count:fSexRecVaginal" ; *** Number of times received Sex Vaginally

rActor.NX_SetEVFl "SO:Count:fSexRecPenile" ; *** Number of times received Penile Sex

rActor.NX_SetEVFl "SO:Count:fSexGiveOral" ; *** Number of times gave Sex Orally

rActor.NX_SetEVFl "SO:Count:fSexGiveAnal" ; *** Number of times gave Sex Anally

rActor.NX_SetEVFl "SO:Count:fSexGiveVaginal" ; *** Number of times gave Sex Vaginally

rActor.NX_SetEVFl "SO:Count:fSexGivePenile" ; *** Number of times gave Penile Sex

 

rActor.NX_SetEVFl "SO:Count;fWasRaped" ; *** Number of times raped

rActor.NX_SetEVFl "SO:Count:fRapedAnother" ; *** Number of times raped another Actor

 

rActor.NX_SetEVFl "SO:Count:fXPSex" ; *** 1 point per event, +10 for each partner orgasming?

 

My thinking one point per relevant animation event, mods can always bump it more themselves for special events.

Ok I think if we want Prideslayer to add these into Sexout we change the Prefix from SO to Sexout

 

Right, but:

 

Without laying too much on Doc, one thought I have is to track Orgasm counts that needs to be updated or done by Spunk (Should they be in Spunk?)

So we would have "SO:Count:fCausedOrgasm" && "SO:Count:fHadOrgasm"

Maybe we are better if all the counters are all handled by Spunk as it has more info about any sex event other than rape/non-consensual

If vars aren't NG-proper, but community-wide, they should be "SO", I think. I'd keep "Sexout" vars restricted to the ones that are set to start/influence an act, and to determine information from that act. Orgasm counts... well, spunk is in the orgasm business, it makes sense.

 

I would advocate spunk to handle xp, or at least for xp to be handled the way that spunk will be doing, ie, break the giving/receiving, a/b/c, anal/oral/vaginal distinctions down to roles that should be completely clear to everybody, "SO:XP:Role:Sucker", "SO:XP:Role:Licked" etc. Things like 'give oral', 'receive penile' (?) etc. are open to misinterpretation, and aren't specific enough. (Note the 'role' bit as opposed to what I wrote earlier - I had to add that for easy info retrieval/transposing with NX_GetEVFLAr and sv_replace.)

 

And perhaps "SO:Count:fXPSex" should just be a calculated total of all those above it including "SO:Count:fCausedOrgasm" && "SO:Count:fHadOrgasm"

Well, count & xp are probably different. As I said a few posts above, I'm looking at a little system that gives different xp for just participating than for causing/having orgasms (and conversely, relative xp being a factor in orgasm strength, determining xp gain). If we need another var for plain 'count', number of acts involved in a role, then I can do that too, along the same lines.

 

Should we add counts for Dom, Sub, Prostitution, MasturbationSelf & MasturbationOther and dump all the skills below?

Prostitution... yeah, but that's a narrative element that should really be set by the mods doing it. I don't think there's anything for functionality mods to do there, it's a content thing, and different pros mods may have different ideas about how to handle that (same as with pros payout a little lower in your post).

Dom - sub: I can probably set some of that if I get around to a list of non-ZAZ anims that 'feel' dom-subbish. It'd be important though to keep this entirely distinct from rape, which is a different thing altogether.

Masturbator is already one of the roles in my system, can be added to xp/count, no sweat. New anims with 'masturbate other' roles, or whatever other stuff people come up with... that'll be a matter of them being added to NG proper first, then the anim being documented in the Sutra thread. I don't have time to test much of anything like that.

 

Possibilities for tracking in SexoutNG

 

rActor.NX_SetEVFl "SO:Count:fSexHuman" ; *** Number of times had sex with Humans

rActor.NX_SetEVFl "SO:Count:fSexCreature" ; *** Number of times had sex with Creatures

rActor.NX_SetEVFl "SO:Count:fSexRobot" ; *** Number of times had sex with Robots

rActor.NX_SetEVFl "SO:Count:fSexToys" ; *** Number of times had sex using toys

 

Any thoughts on these? Do we need to break Creatures down to Dogs etc?

 

Any thoughts does anyone want them yet? I thinking maybe we dump them from this list till they are really wanted and work on the stuff we want now.

If someone wants xp/count per species, I can do that because I obviously keep track of species involved. But if there's no present interest, let's skip it for the time being.

 

Actor Statistic variables

 

We just name them in the list, no script management, they are adjusted by anyone using them

 

rActor.NX_SetEVFl "SO:Skill:fGivingOral" ; *** 0-35000 add one point for each event, more points added for successful achievements by plugins

rActor.NX_SetEVFl "SO:Skill:fGivingAnal"

rActor.NX_SetEVFl "SO:Skill:fGivingVaginal"

rActor.NX_SetEVFl "SO:Skill:fGivingPenile"

rActor.NX_SetEVFl "SO:Skill:fMasturbation"

rActor.NX_SetEVFl "SO:Skill:fProstitution" ; *** 0-35000, one point per approach, more for successful approaches by plugins (10?),

rActor.NX_SetEVFl "SO:Skill:fDom" ; *** 0-35000 add one point for each event, more points added for successful achievements by plugins

rActor.NX_SetEVFl "SO:Skill:fSub"

We probably only need some of these for that aren't covered by XP or should we just settle with those as XP counts too?

Yeah, let's get rid of skill. XP should be enough, it's up to individual mods to figure out what it means to them.

 

Traits and opinions: the problem there is: who does the setting, and based on what? If it's going to be determined based on orgasms, for instance, then how much 'like' does a particular orgasm generate? I dunno if this isn't taking too much away from the players, really. Something similar could be said for something like "Trait:Slutty" - what's slutty to you may just be hang-up-free to me ;) And as long as there are no mods looking for this already, maybe it oughta be skipped. (Let's check with the intimacy project first, maybe.) Sex drive... that's lust, isn't it: "SO:Lust".

 

On the whole, one thing I'd like to point out is that hungarian notation in an nx var string is not only not needed because what it is is already stated in the NX function itself, but now that I've been creating nx vars on the fly with string var functions gathering bits from strings held in arrays etc, it's actually counterproductive. If I gather the role for an actor in an anim based on animrolesA[605] == "Fucker", then I just grab that and add it to the nx var string like "Spunk:Act:Role:" + $animrolesA[605], and off I go. And at the end of the ride, I add xp like NX_GetEVFLAr "Spunk:Act:Role:" --> all roles for the actor, then foreach through the stringmap that it returns, break down the nx key with sv_split, grab the role from thatarray[3], and add it at the end of "SO:XP:Role:". Adding prefixes messes up the easy exchange of strings and bits of string between string, array & nx vars.

 

 

As a suggestion, what if you add a 'style' NX for messaging that other mods can optionally set, with values corresponding to things like 'gentle', 'rough', 'imaginative', 'kinky', 'rape' etc. You could treat it as an override to your usual messages style picker. Otherwise I think it will be very hard to guess the context for all situations, other mods as well as my 3 set the rape flag for consensual sex, and many don't set it for non (or barely) consensual.

This is an idea I really like, if an NX was set and reset on actors by mods calling Sex "SO:Style:rSexEvent" during sex animations, and we had an agreed list of possibilities.

Alternatively perhaps the Current SexoutRape flag is changed to 0-10 for the degree of Non-consensuality

 

A numeric range feels a little odd to me. Something is rape or it isn't. That the rape flag is set for sound purposes etc instead of signifying actual rape is something that should be addressed by a message/sound overhaul that can take these 'styles' into account (EVSTs maybe, unless you want to account for more than one mood.) - I'm all for them, the same for other varieties like 'coerced', 'blackmail','not really into it', 'consensual but barely'. But rape is boolean/binary. I can't base my rape trauma path in SOFO on something that might've been rape but maybe wasn't, depending on the fancy of the player, or on something that might've just been used to set a 'rough sex' mood, and hence wasn't traumatizing at all.

Posted

A way of using the rape sounds without setting the flag is preferable to a range rather than flag to me. I am setting it for mood regularly as I've mentioned, but I'm guessing this changes orgasm chances and other problems for you.

 

On the opinions/traits like '(likes) slutty', I am not using them yet but I do plan to add them to Soliciting. However, if I am the only person interested in using them, it may be better for me to contain them in my mod, so something like "Sol:Opinion:LikesSlutty", and I'll base it on clothing etc rather than another NX. They can always be converted to "SO:-" ones if someone else wants to share them later.

 

EDIT: (Incidentally, this appears to be post #666 from a succubus.. ;))

Posted

A way of using the rape sounds without setting the flag is preferable to a range rather than flag to me. I am setting it for mood regularly as I've mentioned, but I'm guessing this changes orgasm chances and other problems for you.

Yeah, that too. Rape victims don't get the "CanCum" flag in spunk.

 

On the opinions/traits like '(likes) slutty', I am not using them yet but I do plan to add them to Soliciting. However, if I am the only person interested in using them, it may be better for me to contain them in my mod, so something like "Sol:Opinion:LikesSlutty", and I'll base it on clothing etc rather than another NX. They can always be converted to "SO:-" ones if someone else wants to share them later.

Ah. Well maybe I'm pushing the cutting of things too much, but I fear the inevitable proliferation of vars and variations of vars, and things being advertized as 'in the system' that aren't. The traits v opinions system is sound, I'm just a little wary of the practical application, with several mods setting quite possibly contradicting vars on the same actors, especially on player and persistent NPCs, and in some cases making decisions that should really be the player's.

  • 3 weeks later...
Posted

SexoutNG managed

 

Ones we need Prideslayer to add into SexoutNG for counting Sex events

 

rActor.NX_SetEVFl "SO:Count:fSexRecOral" ; *** Number of times received Sex Orally

rActor.NX_SetEVFl "SO:Count:fSexRecAnal" ; *** Number of times received Sex Anally

rActor.NX_SetEVFl "SO:Count:fSexRecVaginal" ; *** Number of times received Sex Vaginally

rActor.NX_SetEVFl "SO:Count:fSexRecPenile"  ; *** Number of times received Penile Sex

rActor.NX_SetEVFl "SO:Count:fSexGiveOral" ; *** Number of times gave Sex Orally

rActor.NX_SetEVFl "SO:Count:fSexGiveAnal" ; *** Number of times gave Sex Anally

rActor.NX_SetEVFl "SO:Count:fSexGiveVaginal" ; *** Number of times gave Sex Vaginally

rActor.NX_SetEVFl "SO:Count:fSexGivePenile" ; *** Number of times gave Penile Sex

 

 

Scratch these from the list as they are better handled by Spunk doing XP and roles like Licker, Sucker etc

 

 

rActor.NX_SetEVFl "SO:Count:WasRaped" ; *** Number of times raped

rActor.NX_SetEVFl "SO:Count:RapedAnother" ; *** Number of times raped another Actor

 

 

Don't know about these 2, probably only need a count

 

rActor.NX_SetEVFl "SO:XP:Sex" ; *** 1 point per event, +10 for each partner orgasming?

rActor.NX_SetEVFl "SO:XP:Masturbation" ; *** 0-35000 add one point for each event, more points added for successful achievements by plugins

rActor.NX_SetEVFl "SO:XP:Prostitution" ; *** 0-35000, one point per approach, more for successful approaches by plugins (10?),

rActor.NX_SetEVFl "SO:XP:Dom" ; *** 0-35000 add one point for each event, more points added for successful achievements by plugins

rActor.NX_SetEVFl "SO:XP:Sub" ; *** 0-35000 add one point for each event, more points added for successful achievements by plugins

 

 

So do these sound more suitable? 

  • 10 years later...
Posted (edited)

  

  

:SO:NotNow: VS :SO:Reserved:

 

Which should we choose when you want to indicate that an actor is "reserved" to ensure compatibility between mods?

If we look at the discussions 10 years ago...

 

 

On 2/24/2014 at 5:21 PM, DoctaSax said:

Dug up these 2 again:

 

EVFL "Sexout:NotNow" ; boolean, actor is reserved by a quest mod for a determined time, can't be used by generic/auto-approach mods

or should we go for "SO:NotNow" to keep it in line with the others here? Is this one already used?

 

EVFL "SO:Reserved" : boolean, actor is permanently reserved

--> I figure this one can replace SCR's SexoutSLActorDataIsReserved formlist now that we can check EVFLs in conditions too. Aside from Lust and SOFO, how many mods have been using this formlist so far? BR? Assault?

 

Then....

On 2/26/2014 at 12:44 AM, DoctaSax said:

Oh, right, "NotNow" isn't really actor-specific, just a "I'm claiming the scene" type thing on the player as a global ref who's always there. That's fine.

 

I'd say we'd restrict claiming an actor to "SO:Reserved" then.

 

We could also add an extra var detailing the mod name that does the reservation, might be handy for troubleshooting. My gut tells me adding to the evfl key ("SO:Reserved:MyModNameString.esp") might be best, that way multiple mods may pile on or back out without the reservation becoming orphaned. You could clear yours and then if ar_size of the stringmap that is returned by NX_GetEVFlAr "SO:Reserved" is only 1, you can clear the original "SO:Reserved" too.

Edit: having the full mod name there (with .esp) would also make it possible for a central mod like say NG to go over reserved actors, checking their reserved nx vars for the mods that set them, checking if those mods are loaded & removing the vars if they're not.

 

 

I've analysed several Sexout mods that commandeer actors and I haven't found a single instance of :SO:Reserved:
On the other hand, there are occurrences of :SO:NotNow:, but this Nx variable is only Set on the player (which is understandable since most of the sexual acts proposed by Sexout mods involve the player, so testing the value of :SO:NotNow: may be sufficient in most cases).

 

I see no point in having :SO:NotNow: for the player and :SO:Reserved for the NPCs. I think using the same NX variable (:SO:NotNow:) for the player and the NPCs is more appropriate. As DoctaSax suggested, I think it's a good idea to indicate the name of the mod that "commandeers" the actor.

I think something like:
 

SunnyREF.NX_SetEVFl "SO:NotNow", 1

SunnyREF.NX_SetEVSt "SO:NotNow:ModName", "SexoutSexAssault.esp"  


; Maybe we could use the same variable name with a different type, since in the .csv file the variable type is specified, if so we could write instead:

; SunnyREF.NX_SetEVSt "SO:NotNow", "SexoutSexAssault.esp"

; I'll have to try it out one day, just out of curiosity...

 


 

;===== Then, In an other mod: =====;

if SunnyREF.NX_GetEVFl "SO:NotNow"

   if SunnyREF.NX_GetEVSt "SO:NotNow:ModName" == "SexoutSexAssault.esp"


   endif

endif

 

 


Unless otherwise stated, I've decided to not use :SO:Reserved: and set :SO:NotNow: on the NPCs to let other mods know that I'm doing stuff with them.

Edited by Machiavelique
Posted
On 6/30/2024 at 6:35 PM, Machiavelique said:

Which should we choose when you want to indicate that an actor is "reserved" to ensure compatibility between mods?

 

This is obviously all quite a long time ago and there's no telling in how far proposed changes were actually implemented in different mods.

 

As far as I can tell, "NotNow" was more about not being interrupted at a specific time and place, whereas "Reserved" was meant to claim an NPC because it would be contrasting with their character or a specific plot for them to suddenly approach you under the influence of mods providing 'generic' sex like Hookups, Lust, and the like. For instance, I didn't want Doc M. to suddenly ask for sex if people had SOFO installed where sex would result from a longer story. I still think it makes sense to make that distinction.

 

Where to place the vars... "Reserved " would no doubt always be on an NPC. "NotNow" would be either PC or NPC, depending on whether you don't want the player interrupted, the NPC interrupted, or both.

 

Posted (edited)

Thanks for your feedback
I started modding FNV late, so it's important for me to get feedback from people who were there before me to get a better understanding of the choices that were made.


My problem is that 2 different variables must suppose 2 different treatments
IF soNotNow THEN I don't use this actor
IF soReserved THEN I don't use this actor

 

I say to myself "If I do the same treatment I don't need 2 different variables."
With your explanations, I can only imagine one case where soReserved could be useful, and that's to prevent the reservation from being orphaned. You suggested stacking Nx keys on the same actor to make sure that releasing the actor by a mod doesn't make this actor "temporarily available". However, I had the feeling that we could do the same thing with only :SO:NotNow: (I think I've now understood why it's not possible)


Let's imagine 2 mods (SOFO & Hookup):

Quote

 

- In SOFO, we want to claim Doc M. so that other mods don't try to do things with him.
- In Hookup, we want any NPC to be able to approach the player.

 

In SOFO you can Get/Set :SO:NotNow: & Set :SO:NotNow:SexoutFleshedOut.esp: on Doc M.
In Hookup you can Get/Set :SO:NotNow: before using an actor.

 

 

Now, let's imagine 3 mods (SOFO & SOFO2 & Hookup):

Quote

 

- In SOFO, we want to claim Doc M. so that other mods don't try to do things with him.

- In SOFO2, we also want to claim Doc M. so that other mods don't try to do things with him.
- In Hookup, we want any NPC to be able to approach the player.

 

In SOFO you can Get/Set :SO:NotNow: & Set :SO:NotNow:SexoutFleshedOut.esp: on Doc M.

In SOFO2 you can Get/Set :SO:NotNow: & Set :SO:NotNow:SexoutFleshedOut2.esp: on Doc M.
In Hookup you can Get/Set :SO:NotNow: before using an actor.

 

The problem is that even if you stack the Nx keys to prevent Doc M. from being "temporarily available", the SOFO & SOFO2 mods may need an exchange variable to eventually share Doc M. between them. If only 1 Nx variable is used, HookUp could claim Doc M. and we want to avoid that. Is that the idea ?

 

If they don't need any exchange variables between them, the two mods just need to Get/Set :SO:NotNow: and count the number of Nx Key :SO:NotNow:ModName.esp: before reseting :SO:NotNow: to '0'.

Here the problem is SOFO & SOFO2 make a set of :SO:Reserved:ModName.esp: (or :SO:NotNow:ModName.esp:) on Doc M. to specify this actor is "Reversed" and should not be used by other mods. So, now the problem is how will these 2 mods manage to share the actor? Since Doc M. is reserved by 2 mods, neither of them can use him without risking conflict with the other Mod.

 

 

 

To solve this, we need either:
1) Use 2 Nx variables ("SO:NotNow", "SO:Reserved")
2) From mods such as SexAssault, Tryout, HookUp, BrutalRapers etc, check that the number of key Nx starting with :SO:NotNow: on an actor is equal to 0 before using this actor. This would also mean that NX_SetEVFl "SO:NotNow", 1 would have to be replaced in every mod by NX_SetEVFl "SO:NotNow:ModName", 1.

 

In other words, the second solution is simply inconceivable...

 

 

Now, let's imagine 3 mods (SOFO & SOFO2 & Hookup) + 2 Nx variable:

Quote

 

- In SOFO, we want to claim Doc M. so that other mods don't try to do things with him.

- In SOFO2, we also want to claim Doc M. so that other mods don't try to do things with him.
- In Hookup, we want any NPC to be able to approach the player.

 

In SOFO you just need Get/Set :SO:NotNow: & Get/Set :SO:Reserved: & Set :SO:Reserved:SexoutFleshedOut.esp: on Doc M.

In SOFO2 you just need Get/Set :SO:NotNow: & Get/Set :SO:Reserved: & Set :SO:Reserved:SexoutFleshedOut2.esp: on Doc M.
In Hookup you check :SO:NotNow: before using an actor. (What's more, this variable is already checked in mods such as HookUp, SexAssault, BR, Another Kick in the Head etc)

 

The idea is that :SO:NotNow: will remain at 1 for as long as SOFO & SOFO2 claim Doc M. and :SO:Reserved: may eventually be reset to '0' so that SOFO and SOFO2 can share Doc M. If SOFO doesn't want SOFO2 to use Doc M., SOFO simply keep :SO:Reserved: at '1'.

But I'm not sure there's any real point to it. Mods like SOFO that have "Reserved" Doc M. have every interest in keeping him "Reserved". That's why I think mods as SOFO, SOFO2, HookUP, SexAssault should only use SO:NotNow (In SOFO, SO:NotNow could stay to '1' during all the quest). The Nx variables SO:Reserved + SO:Reserved:ModName.esp must be for very specific cases where I can't find an example (the problem is that if 2 mods reserve the same actor, we have to arbitrate the sharing of this actor or forbid it)

 

(As well as the variable names confusing things, here I'd find it more logical for mods like HookUp to control the state of :SO:Reserved: and for SOFO & SOFO2 to Get/Set :SO:NotNow: to share Doc M. but it's clearily not possible to change that in every mods)

 

 


After all that, I'm still wondering if I've understood the problem and all the ideas behind :SO:NotNow: and :SO:Reserved:

Edited by Machiavelique
  • 3 weeks later...
Posted

@Machiavelique

Sorry for not following up. You're probably right about there being little point in having the both flags - the idea about 'NotNow' was probably more about not disrupting eg a quest where perhaps a package is being used or you're being timed to do something, so no disruptions of any kind by any NPC would be welcome, while 'Reserved' was more about the NPC not being eligible for generic sex approaches in general, ie your SOFO example. Not sure how it all got implemented eventually anyway.

Posted (edited)
2 hours ago, DoctaSax said:

the idea about 'NotNow' was probably more about not disrupting eg a quest where perhaps a package is being used or you're being timed to do something, so no disruptions of any kind by any NPC would be welcome, while 'Reserved' was more about the NPC not being eligible for generic sex approaches in general.

 

 

Thanks! I think I get the idea now
To sum up, SO:NotNow is very restrictive, whereas SO:Reserved offers more flexibility. But this gain of flexibility comes at the price of a much higher risk of conflict.

 

To manage this conflict, each mod also adds SO:Reserved:Modname.esp on the actor.
In this way, depending on the mod(s) that have reserved this actor, you can find out what you are authorised to do with him (for example, add an AI package and what kind of package, starting an animation as Weapon Out / Cannibal (but not sex animation), play sound...)

 

As far as my needs are concerned, it's clearer: I need to use SO:NotNow because I'm using AI Pakages and I absolutely don't want them to be interrupted.

Edited by Machiavelique

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