Jump to content

(help) how to design a radiant prostitution like mod ?


Delzaron

Recommended Posts

Hi

 

I met a problem : I need to design a quest like Radiant prostitution, for TID and a brothel management mod project.

 

- so, it should randomly pick a whore, and a client.

- the have a chat (a scene), and they go to bed...

 

Problem is : how to trigger the quest, and set the actors ?

 

Note : I studied also Maria Eden, but the quest have stages, and it far more complex... and it not contains any clue about triggering the scenes or fill the aliases.

Link to comment

You can randomly fill aliases using keywords. You would need to add give each potential client a keyword and each prostitute. Maybe you can reuse exiting vanilla keywords for the clients... depending on what you want to do. It's been a while since I last added a quest to the game but I'm quite sure this should work. 

Once you have the aliases you can add scenes etc. normally.

Link to comment

Radiant Quest System supports a dozen events that can be used to actually start quests.

Check the items (in CK) inside "SM Events" (Story Manager Events)

 

You can add your nodes and quests here.

 

Then many of the events (not all of them) will trigger the associated quest(s) and fill one or two aliases (that have to be defined in the quest.)

 

Link to comment

You can randomly fill aliases using keywords. You would need to add give each potential client a keyword and each prostitute. Maybe you can reuse exiting vanilla keywords for the clients... depending on what you want to do. It's been a while since I last added a quest to the game but I'm quite sure this should work. 

Once you have the aliases you can add scenes etc. normally.

 

So, I need to add keywords to potential whores and clients ?

In Radiant prostitution, the keyword is on the clothes.

 

I chosen to use Factions...

I designed the quest, it almost the same as "damn competition" in radiant prostitution... except I don't see how keywords can fill aliases or trigger something...

 

 

 

 

Radiant Quest System supports a dozen events that can be used to actually start quests.

Check the items (in CK) inside "SM Events" (Story Manager Events)

 

You can add your nodes and quests here.

 

Then many of the events (not all of them) will trigger the associated quest(s) and fill one or two aliases (that have to be defined in the quest.)

 

I don't understand... how it will trigger the aliases filling, and the scene ?

 

 

Another problem :

 

 

Another problem :

 

I wish to adapt a the furniture script from Maria Eden.

For now, I just deleted the parts I don't need (in fact, I just need the milkpump and the cross). It don't work, as expected.

 

Scriptname aTIDPlayerrefScript   

 

Actor Property PlayerRef  Auto  

Actor Property sexVictim = none auto

 

SexLabFramework Property SexLab  Auto

 

 

Armor property ZaZMoMSuctionCups01 Auto

Armor Property zbfBlindHood auto

 

keyword property zbfFurnitureMilkOMatic auto

keyword property zbfFurnitureMilkoMaticII auto

Keyword Property zbfFurniturePillory02  Auto  

Keyword Property zbfFurnitureXCross  Auto  

 

keyword property WeapTypeDagger auto

keyword property WeapTypeSword auto

Keyword Property zbfFurniture  Auto  

Keyword property zbfFurnitureTypeDeadly auto

Keyword property zbfFurnitureTypeWicked auto

Keyword property zbfFurnitureTypePainful auto

 

bool keepDoorsOpen = false

bool consensualAct = false

bool lockedPose = false

 

 

int property slotGag = 0 AutoReadOnly

int property slotCollar = 1 AutoReadOnly

int property slotArmbinder = 2 AutoReadOnly

int property slotAnalPlug = 3 AutoReadOnly

int property slotBelt = 4 AutoReadOnly

int property slotVaginalPiercing = 5 AutoReadOnly

int property slotNipplePiercing = 6 AutoReadOnly

int property slotAnkleCuffs = 7 AutoReadOnly

int property slotBlindfold = 8 AutoReadOnly

int property slotVaginalPlug = 9 AutoReadOnly

int property slotCorset = 10 AutoReadOnly

int property slotWristCuffs = 11 AutoReadOnly

 

 

; #################################################################################################################################

; Furniture

; #################################################################################################################################

state wickedfurniture

    event OnBeginState()

        debug.notification("enter wicked furniture")

        PlayerRef.SetExpressionOverride(10)

        RegisterForSingleUpdate(2)

    endevent

    event OnEndState()

        PlayerRef.ClearExpressionOverride()

        UnregisterForUpdate()

    endevent

    event OnUpdate()

        Game.ShakeController(0.5, 0.5, 1.0)

;        Moan()

        PlayerRef.DamageActorValue("Stamina",20)

        RegisterForSingleUpdate(8)

    endevent

endstate

 

float oldHealthRate

float oldDamageResist

float oldStamniaRate

 

state deadlyfurniture

    event OnBeginState()

        Trace("enter deadly furniture")

        PlayerRef.SetExpressionOverride(9)

        oldHealthRate = PlayerRef.GetActorValue("HealRate")

        oldDamageResist = PlayerRef.GetActorValue("DamageResist")

        oldStamniaRate = PlayerRef.GetActorValue("StaminaRate")

        PlayerRef.ForceActorValue("HealRate",0)

        PlayerRef.ForceActorValue("DamageResist",0)

        PlayerRef.ForceActorValue("StaminaRate",0)

        RegisterForSingleUpdate(5)

    endevent

    event OnEndState()

        PlayerRef.ClearExpressionOverride()

        PlayerRef.ForceActorValue("HealRate",oldHealthRate)

        PlayerRef.ForceActorValue("DamageResist",oldDamageResist)

        PlayerRef.ForceActorValue("StaminaRate",oldStamniaRate)

        UnregisterForUpdate()

    endevent

    event OnUpdate()

        Tantalization()

        PlayerRef.DamageActorValue("Stamina",10)

        if PlayerRef.GetAV("Stamina") < 20

            PlayerRef.DamageActorValue("Health",10)

        endif

        RegisterForSingleUpdate(5)

    endevent

endstate

 

state painfullfurniture

    event OnBeginState()

        Trace("enter painful furniture")

        PlayerRef.SetExpressionOverride(9)

        RegisterForSingleUpdate(5)

    endevent

    event OnEndState()

        PlayerRef.ClearExpressionOverride()

        UnregisterForUpdate()

    endevent

    event OnUpdate()

        Game.ShakeController(0.5, 0.5, 1.0)

        if PlayerRef.GetActorValue("Health") > 50

            PlayerRef.DamageActorValue("Health",10)

        endif

        PlayerRef.DamageActorValue("Stamina",20)

;        Cry()

        RegisterForSingleUpdate(5)

    endevent

endstate

 

state milkingMachine1

    event OnBeginState()

        PlayerRef.SetExpressionOverride(9)

        PlayerRef.EquipItem(ZaZMoMSuctionCups01,true)

        Debug.SendAnimationEvent(PlayerRef,"ZaZMOMBoundFurn_13")

        RegisterForSingleUpdate(5)

    endevent

    event OnEndState()

        PlayerRef.ClearExpressionOverride()

        PlayerRef.UnEquipItem(ZaZMoMSuctionCups01)

        UnregisterForUpdate()

    endevent

    event OnUpdate()

        Game.ShakeController(0.5, 0.5, 1.0)

        PlayerRef.DamageActorValue("Stamina",20)

;        Cry()

        RegisterForSingleUpdate(5)

    endevent

endstate

 

state milkingMachine2

    event OnBeginState()

        PlayerRef.SetExpressionOverride(9)

        PlayerRef.EquipItem(ZaZMoMSuctionCups01,true)

        Debug.SendAnimationEvent(PlayerRef,"ZaZMOMFreeFurn_11")

        RegisterForSingleUpdate(5)

    endevent

    event OnEndState()

        PlayerRef.ClearExpressionOverride()

        PlayerRef.UnEquipItem(ZaZMoMSuctionCups01)

        UnregisterForUpdate()

    endevent

    event OnUpdate()

        Game.ShakeController(0.5, 0.5, 1.0)

        PlayerRef.DamageActorValue("Stamina",20)

;        Cry()

        RegisterForSingleUpdate(5)

    endevent

endstate

 

And I got that :

Starting 1 compile threads for 1 files...

Compiling "aTIDPlayerrefScript"...

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(50,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(54,2): UnregisterForUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(60,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(56,1): function onupdate cannot be defined in state wickedfurniture without also being defined in the empty state

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(70,2): Trace is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(78,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(85,2): UnregisterForUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(88,2): Tantalization is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(93,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(87,1): function onupdate cannot be defined in state deadlyfurniture without also being defined in the empty state

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(99,2): Trace is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(101,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(105,2): UnregisterForUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(114,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(107,1): function onupdate cannot be defined in state painfullfurniture without also being defined in the empty state

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(123,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(128,2): UnregisterForUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(134,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(130,1): function onupdate cannot be defined in state milkingmachine1 without also being defined in the empty state

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(143,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(148,2): UnregisterForUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(154,2): RegisterForSingleUpdate is not a function or does not exist

C:\Program Files (x86)\Steam\steamapps\common\skyrim\Data\Scripts\Source\temp\aTIDPlayerrefScript.psc(150,1): function onupdate cannot be defined in state milkingmachine2 without also being defined in the empty state

No output generated for aTIDPlayerrefScript, compilation failed.

 

Batch compile of 1 files finished. 0 succeeded, 1 failed.

Failed on aTIDPlayerrefScript

Link to comment

 

You can randomly fill aliases using keywords. You would need to add give each potential client a keyword and each prostitute. Maybe you can reuse exiting vanilla keywords for the clients... depending on what you want to do. It's been a while since I last added a quest to the game but I'm quite sure this should work. 

Once you have the aliases you can add scenes etc. normally.

 

So, I need to add keywords to potential whores and clients ?

In Radiant prostitution, the keyword is on the clothes.

 

I chosen to use Factions...

I designed the quest, it almost the same as "damn competition" in radiant prostitution... except I don't see how keywords can fill aliases or trigger something...

 

 

You can fill your aliases via 'Find Matching Reference' and you specify your conditions below. You can use 'HasKeyword' or 'IsInFaction' or whatever you want, factions work just as well as keywords.

Of course if your quest is not running from the beginning of the game none of this does actually start your quest. You have to do that using the Story Manger Events mentioned above or a script.

Link to comment

 

 

You can randomly fill aliases using keywords. You would need to add give each potential client a keyword and each prostitute. Maybe you can reuse exiting vanilla keywords for the clients... depending on what you want to do. It's been a while since I last added a quest to the game but I'm quite sure this should work. 

Once you have the aliases you can add scenes etc. normally.

 

So, I need to add keywords to potential whores and clients ?

In Radiant prostitution, the keyword is on the clothes.

 

I chosen to use Factions...

I designed the quest, it almost the same as "damn competition" in radiant prostitution... except I don't see how keywords can fill aliases or trigger something...

 

 

You can fill your aliases via 'Find Matching Reference' and you specify your conditions below. You can use 'HasKeyword' or 'IsInFaction' or whatever you want, factions work just as well as keywords.

Of course if your quest is not running from the beginning of the game none of this does actually start your quest. You have to do that using the Story Manger Events mentioned above or a script.

 

 

The quest is set to begin with the game. The scene also. I made the keywords.... I just don't know how to use story event manager...

 

Edit : I finnaly find it, and how it can be filled. I'll try something... i have only one quest to put inside, after all...

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