Jump to content

About This File

Adds a new call method for sexout animations.

 

call SexoutEZ Actors:array Description:string

 

That's it. I think this UDF is powerful enough to replace 90% of all sexout calls in all existing mods, and be more reliable. You don't even need Sexout as a master, just buildref the function.

 

Actors: a list of all the actors you want involved

Description: a string describing what kind of act you want. It sort of speaks English.

 

The order of terms in each isn't important. Nor are the terms. Pass it whatever garbage you want and it will sort through it and start the closest act possible matching your request. It error checks everything and will degrade gracefully.

 

Want to start conversation, give a token or cast a spell after sex? just stick them in the actors list and it'll figure it out. If sex isn't possible for some reason, it will still do the token/spell.

 

examples:

>>> call SexoutEZ (Ar_List TheKingREF, SunnyREF, MyToken), "long clothed cunnilingus"

 

The King remains clothed and performs cunnilingus on naked Sunny for twice the default duration. At sexend, MyToken is given to Sunny.

 

- It chooses the King as ActorB, because its cunnilingus. He keeps his clothes on but Sunny doesn't because that makes most sense.

- If one of the actors was invalid, the other would masturbate clothed for double duration, then get the token, while a warning is printed to console

- If both the actors are invalid, no animation plays and an error prints to console, but- the player gets given the (presumably scripted) token, hopefully preserving your plans.

 

>>> call SexoutEZ (Ar_List SunnyREF, TheKingREF), "quick doggy style anal rape"

 

Makes The King rape Sunny Smiles anally using a random doggy style animation, and duration is half the normal.

 

- It chooses the King as Actor A because Sunny is female and its doggystyle, it makes him the raper because thats what makes sense for it.

- If 1 of those actors is invalid for sexout, a warning will print to console, and the other will masturbate for half standard duration; the other parts of description would be ignored because they don't make sense for masturbation anims.

 

>>> call SexoutEZ (Ar_List PlayerREF), "Will you please crucify me, Odessa?"

 

- Crucifies the player if ZAZ is loaded, else masturbates. Technically it just sees 'cruci' and ignores the rest, but you may speak to it in English if it pleases you.

More examples

 

 

Something dubious:

 

>>> call SexoutEZ (Ar_List SunnyREF, 9mmPistol, TheKingREF, GeckoREF, EasyPeteREF, MyToken, MySpell, KlamathBobRef), "I don't know what I'm doing"

 

Starts a threesome animation with A: TheKing, B: SunnyREF, and C: EasyPeteREF (assuming those are valid), at the end MyToken is given to ActorA and MySpell is cast on them. You'll also get a bunch of warnings in the console, but whatever :P.

 

- Sunny, The King and Easy Pete are the first 3 valid actors, the function can't make any sense of the description so it just ignores it, and defaults.

- 9mmPistol is a weapon which is not allowed, so its skipped, GeckoREF would be actorA in a two-some if there was not already 2 actors, creatures threesomes aren't possible, Klamath Bob is valid, but there are already 3 valid actors.

 

>>> let aActors := Ar_List scan and grab every ref in the cell

>>> call SexoutEZ aActors, "2P acrobatic vaginal"

 

- Starts an acrobatic animation with the first 2 valid actors in the cell. Type is vaginal

 

>>> call SexoutEZ (Ar_List PlayerREF, MySpell), "crucify"

 

- starts a ZAZ crucify animaton for the player if ZAZ is loaded, otherwise defaults to masturbate. At sexend (or if player busy) MySpell is cast on them.

 

>>> call SexoutEZ (Ar_List TheKingREF, EasyPeteREF, KlamathBobREF), "rough 2P"

 

- starts rough looking anim with the first 2 valid actors. They are all male so it defaults ActorA to the first valid one, and B (the reciever) to the second.

 

>>> call SexoutEZ (Ar_List PlayerREF), ""

 

- The player masturbates.

 

>>> call SexoutEZ (Ar_List SunnyREF, TheKingREF), "vaginal"

 

- The King and Sunny have vaginal sex, Sunny is B (reciever) since she is female. If Sunny was male, she would be A (penetrator) instead and it would be anal.

 

 

 

Actor Array List:

Actors: You can provide as many as you want, it will choose the first 3 valid ones (or first 2 if one is a creature). ActorA/B/C default to your specified order, if I can't see anything more appropriate for your description.

 

Spells: You can include 1 spell, it is cast on ActorA at sexend (CBSpellA), or cast on the player immediately if no sexout act is valid.

Tokens: You can include 1 Misc item, it is given to ActorA at sexend (CBItemA), or given to the player immediately if no sexout act is valid.

Dialogue: You can include 1 dialogue line, it is spoken to the player by ActorA (or B if A==Player) at sexend (CBDialogA/B). If no sex act with an NPC is valid, then it will not be spoken, but will print an error message.

 

If you provide more than 1 Spell/Token/Dialogue then only the last one is used, and a warning is printed. If you provide anything other than an Actor reference, spell, misc item or dialogue, it will skip it and print a warning.

 

Description

There are a lot of possible terms you can include to describe your animation, the order does not matter. It will always start a 'sane' act, and so terms may be ignored if they don't make sense. The case of strings doesn't matter. Recognized terms:

 

Orifices: 'Anal', 'Oral', 'Vaginal'

 

Durations: 'quick' (50% default), 'long' (200% default)

 

General: 'clothed' : actor leaves clothes on if appropriate, 'rape' (the contextually appropriate actor is the raper, eg the Cowgirl/queener or ActorA.)

 

Limit max number of actors: '1P' (maximum 1 actor), '2P' (maximum 2 actors). Otherwise, it will use 3 if at least 3 are valid.

 

Styles - if none of these are specified, it uses the default sexout random picker, otherwise it uses my specialized random picker to choose an animation, and ensures all other sexout actor settings are appropriate.

'Doggy Style', 'Cow Girl', 'Missionary', '69', 'fellatio', 'irrumatio', 'cunnilingus', 'queen', 'grind' (female rubs on clothed partner), 'rough', 'acrobatic', 'whip', 'post', 'pillory', 'boxed bitch', 'crucify'

 

If you specify a ZAZ anim and ZAZ is not loaded, it will ignore that term. Most style terms are only relevant to 2-person anims.

 

An empty description : "" is valid, it will just use sexout defaults.

 

-----

 

To use SexoutEZ, just copy/paste this script (must be type: object script) into your plugin:

 

scn SexoutEZ; * either calls SexoutEZ or does a fade to black; * argsarray_var aActorsstring_var style; * localint iIndexref rSexoutEZBegin Function { aActors, style }    if eval (IsModLoaded "SexoutEZ.esp") ; * if sexout is loaded, play this animation	    let iIndex := GetModIndex "SexoutEZ.esp"	    let rSexoutEZ := BuildRef iIndex, 2786	    call rSexoutEZ aActors, style    else ; * fade to black.	    imod FadeToBlack4sISFX    endif    ; * side note, you don't need to sv_destruct the string_var style, because its an argumentEnd

Then any time you want sex in your mod you can just write: call SexoutEZ (Ar_List X, Y, Z..), "whatever style" (you call your mod local UDF, which in turn calls the SexoutEZ.esp version). If players have SexoutEZ loaded, they see sexout otherwise they see fade to black. Your mod needs no masters.

 

Or, do your own buildref. Or if you prefer, just copy my actual scripts into your own plugin (although that means you'll need maintain updates yourself), consider all mod assets to be free to use/copy/modify/share/etc for any purpose.

 

Requires Sexout '84 or later.



×
×
  • 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