Jump to content

AAF and Consent


Yazour

Recommended Posts

As fun as it is to play with all these mods, I find myself hitting a wall.  Initially I felt it was Immersion that was lacking, but in realty I am worried that it is something far more insidious.

 

But before I go into details I first want to congratulate and thank some of the amazing authors we have here.  I have played your content and appreciate the time and effort you must have put in to making this game complete.  People like @EgoBallistic , @Flashy (JoeR), @stobor, @Rufgt, @anghelos92, @Leito86, @ignotum_virum, @Halstrom are doing things I only wish I could.

 

Also, take these comments for what they are; an outside opinion.  I am very new to this community.  I don't know many of the people.  I don't know its history.  But I come into it without prejudice.  In my years on this earth one thing I can say for certain is a universal truth is; that communication around sex is obscenely important to get right.  Now I am not about to criticize anyone for they interests.  What gets you hot is your business.  However how we communicate about those things is everyone's business.  I understand that language is a barrier, not everyone speaks English as their first language, but hopefully it's a barrier we can overcome.  I also understand that this is just a game, no one is being harmed by the events that transpire, and that a lack realism is often a fair price to pay to make an experience enjoyable. 

 

That said...

The way some of the mods handle AAF is a little disturbing.  I understand that AAF is not just a sex mod and when some mods assume it is that causes problems.  I also hope I am over reacting.  But in the real world there are distinctions between aggressive/submissive and consensual sex.  Consensual sex can be experienced as aggressive or submissive.  The type of sex animated is irrelevant to consent.  Yet that seems to be all that the various mods watch for; what physically happens.  Is that a limitation of AAF?  When a mod requests AAF to run an animation, is the intention of the animation also sent to AAF?  I have heard mention of tags.  And EgoBallistic told me that "The correct way to handle that would be for mod authors to indicate whether an animation should be considered rape or romantic with keywords in the Meta string that calling mods pass to AAF when starting animations."

So we have the meta string.  It seems like a logical idea... so long as everyone is using it the same way.  Is there a universal language used here?  Given the number of mods that use AAF for sex I can't help but think that would be an important thing to establish.

 

But as I said, I am new to this.  If this is an old issue that has been flogged to death, feel free to ignore me.  I am not hear to pass judgement, simply raising a concern.

Link to comment
23 minutes ago, Yazour said:

When a mod requests AAF to run an animation, is the intention of the animation also sent to AAF?  I have heard mention of tags.  And EgoBallistic told me that "The correct way to handle that would be for mod authors to indicate whether an animation should be considered rape or romantic with keywords in the Meta string that calling mods pass to AAF when starting animations."

So we have the meta string.  It seems like a logical idea... so long as everyone is using it the same way.  Is there a universal language used here?  Given the number of mods that use AAF for sex I can't help but think that would be an important thing to establish.

 

This is a rabbit hole. 

 

Nonetheless, could you clarify what it is you're asking for? I don't want to presume here. But, I mean...you are asking for something here, and you seem concerned with consent vs non consent. So maybe articulate what you're getting at here a bit better if you could. 

 

Link to comment

Sorry, I am honestly not sure myself as I don't know how these mods are made.  But I trying to ask about a mechanics issue, while trying to be sensitive the sexual issue that it could imply.

It seems that mod authors have different perspectives on what AAF is and how to use it.  I was hoping to establish a dialog that would ideally establish a universal standard so that all the mods would be far more compatible, and so that they would be less likely to create unintended situations in game.

Link to comment
38 minutes ago, Yazour said:

Is there a universal language used here? 

No there isn't. Sexual frameworks have this purpose, to set a language everyone speaks. AAF is not a sexual framework, it's an animation framework. This discussion happened already. Until someone of good will take the responsability to make a sexual framework that intermediates between mods and AAF you will not see any of what you want. The closest thing so far to an universal accepted language is THEMES of @Halstrom and his tags. Using the meta is useful only if there is a sexual framework that force the authors to use specific strings, since the meta is a string,  and that interprets that string for the mod authors.

Link to comment
6 minutes ago, Yazour said:

It seems that mod authors have different perspectives on what AAF is and how to use it.

Yep. They sure do, and largely....that's been a good thing. 

 

7 minutes ago, Yazour said:

I was hoping to establish a dialog that would ideally establish a universal standard so that all the mods would be far more compatible

Compatible is a broad term in this context. Again, I would ask you to articulate what it is you're looking for in terms of compatibility...

 

8 minutes ago, Yazour said:

so that they would be less likely to create unintended situations in game.

..what types of unintended situations are you looking to avoid? 

 

I'm just trying to ferret out what it is you're looking for....so the more information you have, the more articulated your questions are...the more you'll get in terms of a response. As for sensitive issues...sometimes in order to discuss sensitive issues, talking frankly is required; otherwise you wind up going around and around...like we're doing now. 

 

Link to comment
6 hours ago, WandererZero said:

..what types of unintended situations are you looking to avoid?

Well so far, the unintended situations I have experienced come from consequence mods like RSE, SexAttributes, and MCG.  They attempt, and I think rightly so, to add consequences to sex acts.  Consequences are where sex gets its naughtiness.  Sex wouldn't be the same if there was nothing taboo.  I understand that authors go to some lengths to avoid these edge cases, but they happen so for clarity's sake, I am going to talk about them.

 

Consensual sex misrepresentation
Situation: You are an experienced prostitute walking through the back alleys of Diamond City and you find a client.  They want to be tied up.  You consent.  You have sex.  Some of the different consequences I have seen mods apply to this: 1) Because the animation used is tagged as 'aggressive' you are flagged as being raped.  2) Another mod flags you as being submissive because you were paid.  3) A mod raises your infamy for infidelity.

 

Rape misrepresentation

Situation: You are walking through the streets of Diamond City and get into an argument with a resident.  They think you should be wearing less revealing clothes.  They rape you to make their point.  Some of the different consequences I have seen some mods apply to this: 1) A guard sees this and accosts you for your public display of nudity.  2) Your infamy increases for infidelity.  3) You are considered to be in a romantic encounter.

 

Yes, I understand that if I don't like it I don't have to play it.  Fact is I do enjoy this aspect of gaming or I wouldn't be here.  Yes, I understand that it is asking a lot of any casual programmer to plan for every conceivable event.  That isn't what I am asking for.  What I am asking for is a little more consistency. 

I understand how the uninitiated may get the the wrong idea about what we do here.  I think it is in everyone's interest that we minimize unintended outcomes.

Link to comment
14 minutes ago, Yazour said:

Well so far, the unintended situations I have experienced come from consequence mods like RSE, SexAttributes, and MCG.  They attempt, and I think rightly so, to add consequences to sex acts.  Consequences are where sex gets its naughtiness.  Sex wouldn't be the same if there was nothing taboo.  I understand that authors go to some lengths to avoid these edge cases, but they happen so for clarity's sake, I am going to talk about them.

 

Consensual sex misrepresentation
Situation: You are an experienced prostitute walking through the back alleys of Diamond City and you find a client.  They want to be tied up.  You consent.  You have sex.  Some of the different consequences I have seen mods apply to this: 1) Because the animation used is tagged as 'aggressive' you are flagged as being raped.  2) Another mod flags you as being submissive because you were paid.  3) A mod raises your infamy for infidelity.

 

Rape misrepresentation

Situation: You are walking through the streets of Diamond City and get into an argument with a resident.  They think you should be wearing less revealing clothes.  They rape you to make their point.  Some of the different consequences I have seen some mods apply to this: 1) A guard sees this and accosts you for your public display of nudity.  2) Your infamy increases for infidelity.  3) You are considered to be in a romantic encounter.

 

Yes, I understand that if I don't like it I don't have to play it.  Fact is I do enjoy this aspect of gaming or I wouldn't be here.  Yes, I understand that it is asking a lot of any casual programmer to plan for every conceivable event.  That isn't what I am asking for.  What I am asking for is a little more consistency. 

I understand how the uninitiated may get the the wrong idea about what we do here.  I think it is in everyone's interest that we minimize unintended outcomes.

  You will find that this is first and foremost a Adult Modders Website so I do not see how anyone can get "the wrong idea" on what is created or sheared here by these fantastic authors and artists. But putting that aside I do like your Idea and I reckon you should turn it into a mod to tell and show your story of how sex should be done in the fallout world. Plus if you get stuck I'm sure someone here would be happy to help you out. Just do not expect them to write it for you. ?

Link to comment
1 hour ago, Yazour said:

Consensual sex misrepresentation
Situation: You are an experienced prostitute walking through the back alleys of Diamond City and you find a client.  They want to be tied up.  You consent.  You have sex.  Some of the different consequences I have seen mods apply to this: 1) Because the animation used is tagged as 'aggressive' you are flagged as being raped.  2) Another mod flags you as being submissive because you were paid.  3) A mod raises your infamy for infidelity.

Okay. Fair point, not an edge case. 

1 hour ago, Yazour said:

Rape misrepresentation

Situation: You are walking through the streets of Diamond City and get into an argument with a resident.  They think you should be wearing less revealing clothes.  They rape you to make their point.  Some of the different consequences I have seen some mods apply to this: 1) A guard sees this and accosts you for your public display of nudity.  2) Your infamy increases for infidelity.  3) You are considered to be in a romantic encounter.

Another fair point. 

 

There are two issues at play here, not one. While a solution seems like it might be easy, it could be far from the case...

 

The first is, modders gonna mod. While I know having a universal dictionary for what's what is something that has been mentioned, even implemented....(I believe @EgoBallistic commented in another thread about using the meta for this kind of reporting, with string handling on the LLFP) the problem will never completely go away because ... modders gonna mod. Some of this stuff is subjective in a way, and what one person sees in an anim is always going to have the possibility to be perceived as something else entirely by someone else. 

 

The second issue is: deciding on even a loose nomenclature for what is and isn't consensual or non consensual is going to be a bit of a task. People creating mods do have agendas in developing the content they want to bring. 

 

Nomenclature is only as good as the number of people who decide to use it. Esperanto was supposed to be a universal language, and well....we see how that washed up. 

 

Now, with that said: 

 

Sexual Attributes Framework is out there, but it's kind of old...and still shows it's Four Play roots in many ways. It's also got some over broad methods in its application. You can't blame the author for that, as at the time it was how things were done, and it seemed like a good path. SAF was made at the time where things were at the cusp of Four Play's retirement, and AAF being the up and coming solution. @Halstrom is working on a stats plugin, which appears to be geared toward detailed stats for detailed types of mechanics play....but he is also helping the AAF team quite a bit, and has his fingers in many a pie. 

 

EgoBallistic and I have a plan for a low overhead, and small footprint stats framework, but there's some stuff we need to do first. (Ego has a new release of Violate and SEU coming up, and then we're releasing Seedy Stories, a new mod....then  we have to get back to work on Kidnapped, THEN approach Stats) So it could be awhile. I can tell you based on what you're saying here...when Ego and I finalize the stats system on paper ...we'll certainly be incorporating the feedback you've given here; at least insofar as how it will wind up scoring, and how. I'm designing the base system, then Ego and I will edit and revise and then Ego will implement it. I have a pretty good idea of how it will work, I've figured out how the fountain/sink values will work....and we're leaning toward a dual axis methodology. I can say the mods we make (Kidnapped, Seedy Stories) and presumably Ego's mods (SEU and Violate) will use just such a unified system of description for the stats we come up with. It'd be kind of pointless otherwise. ;)

 

In closing, I totally get what you're saying here: you're asking for some consistency, in the hopes of producing some accuracy and sanity when dealing with the mechanics in the game...so as to make things more immersive. (MUH IMMERSIONZ, I NEED EM!) 

 

Your request is perfectly valid, and there are a lot of people thinking about, and working on it. Patience, as always...will be needed to tackle this. Feedback too. So keep it coming. 

 

Cheers mate. :thumbsup:

 

 

Link to comment

Yep I have my fingers in a lot of pies and I'm so close to releasing a merged version of Themes and stats but got a couple of bugs to solve first. I'm hoping that will bring in some standardisation even if Ego or Wanderer want to help or take it over and polish it, I'm just about going insane from working on so many XML's and 6 mods :P 
AAF still needs a few more new features, but we are working on them, hopefully we will have a simple arousal/orgasm/wear/sexperience system in a few weeks that will apply cum overlays on orgasms.

Link to comment

@Yazour, you bring up a very good point that has only recently started getting attention.

 

Tags are used to describe animations in terms of appearance and actions.  A mod can specify that it wants "aggressive" animations for example, but that doesn't give any context.  It does not say anything about whether the animation is actually consensual.

 

AAF does not have an explicit mechanism to provide that kind of information.  But, it includes a "Meta" string which a mod can add to any AAF animation and which will be received by every mod listening for animation start/stop/change events.

 

It would be helpful if we could standardize on a format for the Meta, so that it would indicate which mod called the animation and what the intent was, and whether there is a victim.  Indicating the calling mod is useful so that mods that only want to react to their own animations can filter out animations called by other mods.

 

Fallout 4's Papyrus has very limited string handling, but fortunately the LLFP library included with AAF has a number of them.  Using the StringSplit function

string[] Function StringSplit(string theString, string delimiter = ",") native global

we can add a number of strings, delimited by comma and further refined with other delimiters, and easily parse them when they are received.

 

For example,

Settings.Meta="AAF_Violate.esp,NonConsensual,Receiver="+akVictim.GetFormID()

would tell us that an animation was called by AAF Violate, whether the animation was consensual, and who the victim or receiver was.

Link to comment
21 hours ago, EgoBallistic said:

Settings.Meta="AAF_Violate.esp,NonConsensual,Receiver="+akVictim.GetFormID()

I don't know in Fallout4 but in Skyrim papyrus it's not reliable to use getFormId  (that gives the id in decimal instead of hexa) and then use the id for the getform function as, among other limitations, cannot retrieve form of references created at runtime (0xFF... etc) and is not reliable on big load orders. DId Bethesda updated those functions for Fo4? Because if not it's  not gonna work.

https://www.creationkit.com/index.php?title=GetForm_-_Game 

Fo4 wikia don't mention the limitation that skyrim has, but is that wikia updated and fo4 hasn't the limitation or the wikia just forgot about the limitation?

 

By the way this point have not got attention only recently, we can date it back to the 4-play times when there was a victim parameter in the calling input function and not in the output end event... i have spoken about this situation since the birth of AAF but it seems it's not so important for modders after all...I renew for the nth time my invitation to aaf author to add a new actor parameter in the settings struct for modders use.

Link to comment
7 hours ago, anghelos92 said:

I don't know in Fallout4 but in Skyrim papyrus it's not reliable to use getFormId  (that gives the id in decimal instead of hexa) and then use the id for the getform function as, among other limitations, cannot retrieve form of references created at runtime (0xFF... etc) and is not reliable on big load orders. DId Bethesda updated those functions for Fo4? Because if not it's  not gonna work

The reason getformid() seems to fail on FF refids is that papyrus uses signed integers.  Since 0xFF... has its most significant bit set, papyrus treats it as a negative number.  The returned value is valid, but it will be necessary to convert it from signed base-10 back to unsigned base-16 to use with getform().  This is not difficult to do.

 

My point in all of this is that we have the tools at our disposal to make this all work.  It is more productive to implement a solution than to complain the framework does not do it for us.

Link to comment
On 4/17/2019 at 5:37 PM, EgoBallistic said:

The reason getformid() seems to fail on FF refids is that papyrus uses signed integers.  Since 0xFF... has its most significant bit set, papyrus treats it as a negative number.  The returned value is valid, but it will be necessary to convert it from signed base-10 back to unsigned base-16 to use with getform().  This is not difficult to do.

 

My point in all of this is that we have the tools at our disposal to make this all work.  It is more productive to implement a solution than to complain the framework does not do it for us.

We will see if you'll make it work, I wish you luck ;) .

I will not use the getformid function I don't feel safe trusting it, can't be helped. But that's not a problem, with the splitstring function the string can be as long as we want so I will use this system:

 

Spoiler

"if you want to add full compatibility with MCG you can add the meta in the AAF settings:

  • "PlayerRapist" if player is to be considered aggressor
  • "PlayerRaped" if the player is to be considered Victim
  • "Consensual" if the sex is consensual
  • The difference from version 2.1 is that now I use the SplitString function from LL_FourPlay.pex so you can put anything you want in that string as long as at least a part is one of those keyword I listed just above, I use the "," comma as separator. I.e. you can put a meta like this "<Your mod name>,<a keyword you need>,<aformIDyourmoduse>,PlayerRaped" and MCG will recognize the useful keyword within the single string."

 

From version 2.3.0 of MCG the system is already in place, in case you all decide to use the system you talked about. Sex from MCG will send these metas:

 

  • "MagnoCumGaudio.esp,NonConsensual,PlayerRapist" for player rapist or aggressor;
  • "MagnoCumGaudio.esp,NonConsensual,PlayerRaped" for player raped or victim;
  • "MagnoCumGaudio.esp,Consensual" for normal or consensual sex;

Should be easy enough for modders to add those keywords and/or add the check in a while struct for mcg keywords.

Link to comment
27 minutes ago, anghelos92 said:

We will see if you'll make it work, I wish you luck ;) .

I will not use the getformid function I don't feel safe trusting it, can't be helped. But that's not a problem, with the splitstring function the string can be as long as we want so I will use this system

  Reveal hidden contents

"if you want to add full compatibility with MCG you can add the meta in the AAF settings:

  • "PlayerRapist" if player is to be considered aggressor
  • "PlayerRaped" if the player is to be considered Victim
  • "Consensual" if the sex is consensual
  • The difference from version 2.1 is that now I use the SplitString function from LL_FourPlay.pex so you can put anything you want in that string as long as at least a part is one of those keyword I listed just above, I use the "," comma as separator. I.e. you can put a meta like this "<Your mod name>,<a keyword you need>,<aformIDyourmoduse>,PlayerRaped" and MCG will recognize the useful keyword within the single string."

 

That should work fine.  I am away from my gaming PC so I can't test the getform stuff until early next week.  The consensual/nonconsensual flag is the more important one in any case, and I will add the playerRaped/playerRapist keywords to my mods also for compatibility with MCG.

Link to comment
6 minutes ago, EgoBallistic said:

That should work fine.  I am away from my gaming PC so I can't test the getform stuff until early next week.  The consensual/nonconsensual flag is the more important one in any case.

If your tests about that function will be positve I will implement it, I just have a refusal for it because of the experience in skyrim, maybe in fo4 things are different. I also will be away from gaming pc, until the end of easter holydays. So we'll update this...council of men and women of good will to the next ime ?

Link to comment

So I tested the getform() / getformID() stuff and it works fine as is, without a need to convert to unsigned or hex.  For example, as a simple test I added this to the "startsex" function in SEU:

        settings.meta = "SEUnorm,receiver:" + a0.getFormID() + ",receiver:" + a1.getFormID()

Then in the onSceneEnd handler I do

        String meta = akArgs[4] as String
        String[] metaElements = LL_FourPlay.StringSplit(theString = meta, delimiter = ",")
            
        int i = 0
        while (i < metaElements.Length)
            String[] metaParts = LL_FourPlay.StringSplit(theString = metaElements[i], delimiter = ":")
            DTrace(metaParts[0] + " " + metaParts[1])
            if (metaParts[0] == "receiver")
                int formID = metaParts[1] as int
                DTrace("receiver is " + (Game.getForm(formID) as Actor).getLeveledActorBase().GetName())
            endif
            i += 1
        endwhile

and when I did a placeAtMe of Preston (so it's an actor with an FFxxxxxx ref ID) and did an SEU animation with him my logs showed:

[04/25/2019 - 03:36:44PM] AAF SEU Debug: SEUnorm
[04/25/2019 - 03:36:44PM] AAF SEU Debug: Receiver 20
[04/25/2019 - 03:36:44PM] AAF SEU Debug: receiver is Carrie
[04/25/2019 - 03:36:44PM] AAF SEU Debug: Receiver -16772406
[04/25/2019 - 03:36:44PM] AAF SEU Debug: receiver is Preston Garvey

I think the warnings about those functions only apply to Skyrim.  Dagoba_king pointed out that he uses getFormID and getForm all over the place in AAF to pass actors around, and it would certainly have been noticed by now if it didn't work.

Link to comment
  • 7 months later...

I didn't read everyone's response.  Instead I decided to clarify and shorten up Yazour's main post.  

Any sex act/animation can be consensual.  So the aggressive tag has no relevance when it comes to consensual sex acts.  What sex acts are considered non consensual are really up to the situation.  "If I hold your hand and refuse to let go is that not non consensual hand holding?"

Link to comment
14 hours ago, GoldenRain said:

I didn't read everyone's response.  Instead I decided to clarify and shorten up Yazour's main post.  

Any sex act/animation can be consensual.  So the aggressive tag has no relevance when it comes to consensual sex acts.  What sex acts are considered non consensual are really up to the situation.  "If I hold your hand and refuse to let go is that not non consensual hand holding?"

 

8 hours ago, sammythesquirrel said:

tldr for the tthread: can we figiure out how to make it so mods can all know if an animation is consenual regardless of if its rough or not? short answer  modders are working on it ?

Necroposting.

Anghelos and Egoballistic already figured this out. Almost any AAF mods use their standard now, including all Egoballistic, raider pet and mcg. Among major mods only Flashy mods still don't use that but he already promised to Anghelos he will implement it next update.

The other minor mods for AAF must simply adapt: you can find all the info about this in the "for modders" section of MCG (anghelos mod).

Link to comment
11 hours ago, sammythesquirrel said:

tldr for the tthread: can we figiure out how to make it so mods can all know if an animation is consenual regardless of if its rough or not? short answer  modders are working on it ?

Yazour's post is saying that there is no real way to tell if something is consensual.  SM, BD SM, 3 way four way, rough, gentile, even a smooch is neither.  Consent is consent and lack of consent is lack of consent is what the original post is about.  Holding a gun to someone and telling them to hug you or else means that a hugging animation can non consensual.  While getting freaky in a rough degrading manor might be consensual if it happens to be consensual

Link to comment
18 minutes ago, sammythesquirrel said:

the previous post was 6 hours before mine how am i necroposting

Bro just scroll up, you will see that the post before the last one before yours is dated 25 April. You answered to a guy who was necroposting, thus you are necroposting too. Besides I quoted you both for necroposting, not just you.

Link to comment
3 minutes ago, Martin56 said:

Bro just scroll up, you will see that the post before the last one before yours is dated 25 April. You answered to a guy who was necroposting, thus you are necroposting too. Besides I quoted you both for necroposting, not just you.

how many people you quoted is irrelvant to the question asked    that being said if this is already  outdated why isnt the thread locked?

Link to comment

Archived

This topic is now archived and is closed to further replies.

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