Jump to content

Full SOS, How do you script control Player Size?


Recommended Posts

Sorry,

 

I know this is probably a simple, and already answered question, but in hours of different searches, I cannot find the answer.

 

I am currently working on a SOS & Sexlab mod, and I need to do something which seems really simple, I just want to adjust the size of the Players Schlong, when he makes certain choices of character generation, right at the beginning of the game, while still in Helgen Keep.

 

The player is given the option, in a Script series of questions, to pick how many character generation points he wants to spend on having a large cock.

 

(or get chargen points back, by accepting a small cock)

 

I know I can go into the SOS MCM menu and adjust the size, and doing it that way works, so my system is functioning. It is not racemenu overriding choice and all that...

 

I just don't know the Papyrus script fuctions, variables, and handles needed to adjust the:

 

int property iPlayerSize auto hidden 

 

variable seen in the script for the SOS MCM menu.

 

I guess I thought it would have been attached to the players character form, and not stored in the MCM quest variable, but I don't really care, I just want to tweak it.

 

 

Any info would help, Thanks!

 

 

-

Link to comment

Press N (by default) and in SOS MCM you can set Type and Size for Player.

 

I do thank you for the response.

 

I was beginning to think that somehow my post had been blocked or hidden.

 

I'm terrible about accidentally breaking forum rules.

 

Anyway... Yes, I'm aware of how to do it manually, and that's how I am currently changing it.

 

But I need to do it from inside a Papyrus Script!

 

Because I'm using a complex script to set up a back story for the character, including making choices about what he looks like, how much gold he starts the game with, what intro spells he has....

 

Anyway, one of the choices, is Cock Size.

 

In the modual I'm making, it matters.  Bigger is generally, but not always, better.

 

It helps you bring the women you have sex with to orgasm, and doing that generates manna, which is used to recharge your Magicka. 

 

So, Mage-power comes from lots of female orgasms, which CAN, if you use it right, be easier to get, with a larger cock... assuming your not pursuing smaller women... and you're not a total inconsiderate lover who just jams it in before she's ready... and ...

 

(Hint, skill with your tongue is allot better than a big cock!)

 

In this mod, being a good lover, makes you into a powerful mage.

 

 

 

But, to get bigger, you need to pay, in the form of character generation points, inside the script, which then are deducted from the tally that you can spend on other things... like owning a horse right from the start of the game, or having a follower, or having good repute with some faction.

 

So, I'm looking for the Papyrus code fragments needed to change cock size from inside a CK setup papyrus script?

 

Thanks!

 

-

Link to comment

I am imagining something like a reference alias to a quest which is linked to the script by a include script statement.

 

Then I make a call to some function which sets the variable which controls size.

 

I've found the variable you modify to change size in the MCM script, but I cannot imagine that modifying the MCM script to add a change size function is the right way to do this?

 

Surely some cleaner mechanism was added by the Mod maker for Script changing the Player Size, I just couldn't find it reading through the scripts?

 

A clean OEM script handler function for changing size must be in there somewhere?

 

And I'm afraid to muck around with the MCM script, because it is likely to change often, and then I'll have huge version forward compatibility problems.

 

I imagine this is probably a case of "Can't see the forest for all them trees in the way"...

 

-

Link to comment

maybe this will help you, it's part of a script in slaverun:

 

function SLV_SchlongSize(Actor NPCActor, int size)
if Game.GetModByName("Schlongs of Skyrim.esp")!= 255 && MCMMenu.SOSSlaverSchlong
    SOS_API sos = SOS_API.Get()
    int oldmaxsize = sos.GetMaxSchlongSize()
    sos.SetMaxSchlongSize(20)
    sos.SetSize(NPCActor, size)
    Utility.wait(1.0)
    sos.SetMaxSchlongSize(oldmaxsize)
endif
EndFunction

Link to comment

maybe this will help you, it's part of a script in slaverun:

 

function SLV_SchlongSize(Actor NPCActor, int size)

if Game.GetModByName("Schlongs of Skyrim.esp")!= 255 && MCMMenu.SOSSlaverSchlong

    SOS_API sos = SOS_API.Get()

    int oldmaxsize = sos.GetMaxSchlongSize()

    sos.SetMaxSchlongSize(20)

    sos.SetSize(NPCActor, size)

    Utility.wait(1.0)

    sos.SetMaxSchlongSize(oldmaxsize)

endif

EndFunction

 

Holy Moly Great Gazoli!

 

That is exactly the kind of info I was hoping someone would know!

 

Thank You! Thank You! Thank You!

 

 

And the source mod for the script as well, for thorough reverse engineering!  Fantastic!

 

You've made my day! :)

 

 

-

I'll need a few hours to apply, and then I'll post my script for all others to learn from.

 

Then mark the issue as solved!

 

Thanks Again!

Link to comment

Okay, here is the scoop. The info you provided not only worked, it was almost trivial to implement.

 

It took me several hours to complete the major revamp of a bunch of related scripts, but the actually implementation of the code to change SOS cocksize was about a 10 minute chore!

 

So, I have a number of quest scripts which are used to provide the menus and mechanisms for selecting a back story for the player, and spending chargen (character generation) points to buy various features, at the end, all of the values are writen out to a set of globals, which allow a series of different scripts to all access that data. 

 

I know there are other ways to do it, like J-Containers, but part of this mods concept, was to use only vanilla CK and script editor assets, rather than stuff with a long learning curve, to allow the mod down loading customer to read a modify the code to meet their desires, without a huge learning curve of complex code mechanisms.

 

So, the following code is in a simple Quest script, and the value of float PlayerCockSize has a range from 10-300 as a float, which represents how much physical intercourse simulation the member provides.  SOS cock sizes only have a range from 1-16 for realistic sizes, well okay, a 16 is only something you'd find a demon, but still, above that is just silly stupid...so..

 

...

    If ( PlayerCockSize <= 20.0 ) ;  
        iPlayerCockSize = 1
    elseif( PlayerCockSize <= 30.0 )
        iPlayerCockSize = 2
    elseif( PlayerCockSize <= 40.0 )
        iPlayerCockSize = 3
    elseif( PlayerCockSize <= 50.0 )
        iPlayerCockSize = 4
    elseif( PlayerCockSize <= 50.0 )
        iPlayerCockSize = 5
    elseif( PlayerCockSize <= 70.0 )
        iPlayerCockSize = 6
    elseif( PlayerCockSize <= 80.0 )
        iPlayerCockSize = 7
    elseif( PlayerCockSize <= 90.0 )
        iPlayerCockSize = 8
    elseif( PlayerCockSize <= 100.0 )
        iPlayerCockSize = 9
    elseif( PlayerCockSize <= 120.0 )
        iPlayerCockSize = 10
    elseif( PlayerCockSize <= 140.0 )
        iPlayerCockSize = 11
    elseif( PlayerCockSize <= 160.0 )
        iPlayerCockSize = 12
    elseif( PlayerCockSize <= 180.0 )
        iPlayerCockSize = 13
    elseif( PlayerCockSize <= 200.0 )
        iPlayerCockSize = 14
    elseif( PlayerCockSize <= 250.0 )
        iPlayerCockSize = 15
    else
        iPlayerCockSize = 16
    endif    

    SOS_API sos = SOS_API.Get()
    int oldmaxsize = sos.GetMaxSchlongSize()
    sos.SetMaxSchlongSize(20)
    sos.SetSize(PlayerREF, iPlayerCockSize)
    Utility.wait(1.0)
    sos.SetMaxSchlongSize(oldmaxsize)
...

 

And I tested it, and it works. Simple. Straightforward and no troubles.

 

Thanks again.

 

I hope these notes help others.

 

-

Link to comment

I actually have a similar problem... but I'm completely unable to set my player character's size. All it has is a greyed out "SOSRaceMenu" instead of what NPCs get, which is "size" and then 1-20. In order to set size.. I have to "Restart" SOS every time I load a save. Every time. Because otherwise it does "first time setup" even when I save after it does that, and all penis sizes seem to default to 1. Really damned annoying. How is this able to be fixed?

Link to comment

Archived

This topic is now archived and is 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