Jump to content

SexoutNG - Beta (2.10.93b10) release thread


Recommended Posts

There are two ways to use them in the current beta.

 

The first is to setup the animation in the idle window, then create the prop as an AO (Anim Object) and assign it to the animation. It only needs assigned to one of the actors in the animation, so it should be assigned to whichever one the animation can run 'solo' with. Generally for those kinds of things it would be the actor that's on the table (actorB).

 

The second (new) way is to NOT create the AO and instead place the table somewhere in the world as a static, activator, whatever. During the call to sexout, set refSurface to the placed object, and it will "just work." Offsets, if needed, are assigned in a new UDF -- fnSexoutInitSurfaceList.

 

All the existing animations with props do things the first way, since the second way is only in the beta. The second way works much cleaner though, especially if your mod is trying to "simulate" the behavior of the second by disabling a placed object, running the animation (which recreates it as an AO), then enabling the placed object when the animation is over.

 

Sexout can support either way.

 

New mods should prefer the refSurface way -- it is just more immersive to have a placed object get used than to have it appear out of thin air.

Link to comment

I should say that in the future, I may dictate that refSurface is the only acceptable way to use these animations with their props. Mods that wan the "thin air" effect can always just "placeatme" the prop, use it with refSurface, then delete it. I may create helper UDFs to handle that and perhaps ditch even the existing AOs.

Link to comment

Beta 2.8.89b6 in OP

- Anim 601 kf file paths corrected. (Thanks DMan!)

- Actor scaling to 1.0 during sex scenes.

- New CBDialog handler. Thanks for the bugfind, tomm434.

 

NOTICE: Incompatible with SexoutCharacterResize.esp.

 

I don't know WHY, but the resize code is conflicting in an evil way rather than just fighting over it or something. In any case, I think with this change, you won't need it. An MCM flag to enable/disable this scaling, as well as a per-call knob will come along before release.

 

Please test heavily, I've only tested the new CBDialog handler with SexoutSexLite.

 

edit: stealth update to beta6 while beta5 was showing 0 downloads.

Link to comment

Beta 2.8.89b6 in OP

- Anim 601 kf file paths corrected. (Thanks DMan!)

- Actor scaling to 1.0 during sex scenes.

- New CBDialog handler. Thanks for the bugfind, tomm434.

 

NOTICE: Incompatible with SexoutCharacterResize.esp.

 

I don't know WHY, but the resize code is conflicting in an evil way rather than just fighting over it or something. In any case, I think with this change, you won't need it. An MCM flag to enable/disable this scaling, as well as a per-call knob will come along before release.

 

Please test heavily, I've only tested the new CBDialog handler with SexoutSexLite.

 

Some notes about the new CBDialog handler.

 

This works as described in the previous comments in the thread. There's a new quest, SexoutNGConvCBQuest, with an assocaiated script. The quest is set to run every 0.05s and the script has both MenuMode and GameMode blocks. The old MenuMode block that used to handle this, in the SexoutNGCallbackQScript, has been removed.

 

When an act with a CBDialog is completing, the Cleanup script now copies the Actor, Topic, and ActID to a new entry in an array held in the new quest. The quest continually checks the length of this array and alternates between two stages.

 

In stage 1, it the array is empty, and it's just checking it for new entries. When the ar_size > 0, the first item in the array is pulled off, and the stage moves to 1.

 

In stage 1, the menumode block is watching for conversations, just like the old system, and adding any dialog partners it sees to a new array. Meanwhile in stage 2 gamemode block is attempting to issue a startconversation with the given topic. The stage1 delay is now 0.5 seconds rather than 1.0 seconds, though the number of attempts remains at 60. This means sexout will try to initiate a conversation up to 30 times.

 

If the actor or dialog becomes invalid, or the actor dies, while in stage 1 the attempt at the CBDialog aborts with a message.

 

Actors now unlock and unrestrain as quickly as possible, without waiting for the CBDialog to occur.

 

This does mean that while an actor is walking towards the player trying to start a conversation, another act may occur that blocks the conversation from starting or otherwise interferes with it. This aspect needs the most testing.. I am going to add an additional InUse check for the actor and the player, and not increment the attempts counter if either is true, just to be safe. That will be in beta6. Beta6 is up in the OP, beta5 had 0 downloads.

Link to comment
Guest tomm434

Also does your post mean that while walking towards the player to start conversation Actor is free of sexout (inUse is eval to 0)?

 

That might cause problems.

But on the other hand it might save trouble creating gamemode Sexout quests.

Link to comment

Also does your post mean that while walking towards the player to start conversation Actor is free of sexout (inUse is eval to 0)?

Yes. The dialog script is actually watching that itself, now. It won't attempt to start a conversation (will delay instead) if either the player or actor are InUse.

 

That might cause problems.

It might, but it should not cause permanent problems. I cannot come up with another way to handle the situation. I am open to suggestions.
Link to comment
Guest tomm434
It might, but it should not cause permanent problems

It might is dialogue callback is setting next quest stage etc. But now I can not think about any alternative except unlocking actor after dialogue.

 

Also what happens if Actor who is initiating dialogue is choosed to have dialogue callback by another Sexout call? Will he execute dialogue callback from the latest secout call?

Link to comment

 

It might, but it should not cause permanent problems

It might is dialogue callback is setting next quest stage etc. But now I can not think about any alternative except unlocking actor after dialogue.

 

I don't see how that could happen. Who cares (codewise) if the dialog doesn't happen for 5 minutes, or 5 hours? If it eventually happens, the quest stage will be set.

 

Also what happens if Actor who is initiating dialogue is choosed to have dialogue callback by another Sexout call? Will he execute dialogue callback from the latest secout call?

They will both be called eventually, or try to be, I tried to explain that with all the modA/modB stuff.

 

1. MyMod starts actA with npcRefA, dialogA.

2. actA finishes, dialogA added to watcher.

3. YourMod starts actB with npcRefA, dialogB.

4. actB finishes, dialogB added to watcher.

5. Sexout continues trying dialogA until it is successful or aborts (timeout, dead npc, etc).

6. Sexout continues trying dialogB until it is successful or aborts.

 

Any amount of time can elapse between these steps, but the steps will all be executed.

 

If something kills npcRefA before step 5, or between 5 & 6, then the remaining attempts at dialog with that NPC will be abandoned. Sexout will log this if it happens.

Link to comment

testing multiple animations at the same time. with the shuffle key it will be easier to test multiple animations since you can keep adding new stuff and don't need to keep adding to console to test 1 animation at a time.shuffle key allows you to see the animation in a row. But i thought sexout had a shuffle spell but don't remember how to use it like once knew. I had to start fully over from scratch so allot is now a complete blur. :D

Link to comment

Heh.. there is no 'shuffle' but there is a spell that can adjust the anim that is currently playing. Not many mods use it because the animations themselves are disorganized when it comes to position, type, etc. That's something that will be fixed in the reorganization I mentioned.

 

There are two you'll want to use.

 

SexoutNGPause -- cast this on one of the actors and it will halt the animation expiration/completion timer until you cast SexoutNGResume or SexoutNGFinishNow. This makes it easier to watch, fly around, and adjust positions without the animation 'finishing'.

 

SexoutSwitchPos -- If you set sexoutNG.Actor[A/B/C] and Sexout.anim, then cast this spell (on anyone), it will change the playing anim on A/B/C to the one you specified.

 

If the animation is already running you can also add/remove the SexoutNGAnimCounter items in the actor inventory, and then call pickidle on the actor. This is what SwitchPos does itself, it just wraps it all up so all you have to do is something like:

 

let Sexout.anim := 603
let SexoutNG.actorA := someRef
let SexoutNG.actorB := someOtherRef
actorA.CIOS SexoutSwitchPos
I know this isn't ideal, and I'll be fixing it all and making it simpler, but for now.. that's what's there.

 

You can put these commands in an esp of your own, in a batch file, whatever.

Link to comment

Which means that the mod that you've wanted to be created still hasn't been created, but additional SO pieces are available for modders to do so, oui?

Not sure which mod you mean... There is a lot of "stuff" (internal and external) waiting on me to get all the animations organized into some kind of system that can provide mods (and sexout itself) more details about each animation, like what the 'next' one is (just adding 1 to the anim will break quite often), which one is previous, next/previous in 'group', etc.

Link to comment

The system doesnt (yet) knows what anims go with what objects -- what it does know is what offsets apply to an anim. For now it's up to the modder making the call to set the proper anim # and the matching refSurface. Later on ZAZ will have a random picker that can pick an animation given just the refSurface, but it doesn't right now -- ZAZ has never had a random picker of any kind though so it's no big deal.

Link to comment

Just wondering if anyone else would have use for a formlist in Sexout that stores all the actors who have engaged in sex, I would use it to pick which actors to add Fertility to in Pregnancy, currently I use the SexoutNotify method which adds it to female actors just after they have sex.

Link to comment

Prideslayer 1 question ?? how do i call a zaz to an animation ??

 

So far i got the zaz working right in game and this animation should also work right with the zaz included in the sexout system it was named:

 

 

The pillory from zaz was called: 01PilloryIdleProp.nif not sure how it is called when zaz itself is calling an idle ?? but i included the nif file and named it 751 but zaz calls it 01PilloryIdleProp

SC:

post-160974-0-72957900-1414146882_thumb.jpgpost-160974-0-69215800-1414146883_thumb.jpgpost-160974-0-53261500-1414146884_thumb.jpg

 

Animation File:

D_ManXX2_New_Animationsv.01.7z

 

 

 

btw if you put all offset to 0 and the npc all are scale of 1 the animation should work perfectly.

Link to comment
Guest
This topic is now closed to further replies.
  • 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