Jump to content

Modding Help : dialogue condition based on rented room


scarletnymph

Recommended Posts

Posted

First, I'm not sure exactly where I should post this so if its in the wrong spot, I apologize.

 

So, I've been working on a dialogue initiated sex quest using the sexlab framework for a while ... and I've been able to do most of the basic stuff I want do to ... create quests for the dialogue, have different dialogue show based on conditions like relationship, faction, etc ... as well as initiate sex animations ... so I've got a working knowledge of whole quest/script fragment/conditions basics ...

 

What I want to do now, however, is create a quest where the player has different dialogue options if they have rented a room. So essentially, if the player has rented a room they get dialogue like "Want to go back to my room with me?" ... but otherwise, the dialogue option isn't available. This, as I've found out, is far more complicated than the other things I've wanted to do ...

 

I've looked at the rentroom script that innkeepers have and at how several radiant quests work and I think that I'm going to need to use an alias to get this done ... but so far that hasn't been working out for me. My thought was that since innkeepers have variable09 set if you have rented a room from them that what I need to do is get the innkeeper as an alias and then I can use conditions to run a check for variable09 being set on that alias ...

 

However, I can't seem to figure out how to get it to set the innkeeper alias ... despite having read several tutorials on aliases and examining quests ... what I tried was basing my approach on the favor radiant quests which set the questgiver as an alias ... so I created a 'Change Location Event' quest and then set up a 'location' alias that is populated from the new location event data ... and then created a reference alias that uses the 'find matching reference' based on the location alias and being in the JobRentRoomFaction ... but on testing ... the alias never seemed to populate ... in fact, the quest never seemed to run ... even though I 'waited' several ingame days ...

 

So can anyone help? point me in the right direction at least? If someone has a better (or different) way to do this than an alias, I'm all ears ...  if it helps, I saw in the script that the 'bed' becomes 'owned' by the player while the room is rented ... so I thought maybe if there is a way to detect if there is a owned bed in the current cell that might work too ... but I haven't figured out a way to do that either.

 

Thanks,

Scarlet

Posted

I've only done that with specific Inn Keeper NPCs as a forced reference.

 

The actor variable for having rented a room from them is 9.  Your condition to check if the player has rented a room from that NPC would be:

 

post-66546-0-97099400-1473378717_thumb.jpg

 

(I used both Corpulus Vinius and Sorex Vinius as reference aliases to check if the player had rented the bed at the Winking Skeever.  That's why Or is checked in the screenshot.)

 

To have your dialogue available to all RentBed NPCs no matter their location would require a script (that I do not know how to write) to set a reference and get their actor value.  I opted for the easy route.

 

If you want check out how I did it download K2 Working Girls and look in the esp for the quest K2SolitudeFlowerGirlQuest.

 

Wish I was more help, but I figured a somewhat helpful answer was better than no answer at all.

Posted

Thanks. At least I know that my idea of using an alias with the variable09 was valid ... so if I can figure out a way to have an alias that is populated with the innkeeper at the current location ... I can do what I want. Its a start.

 

 

Posted

(BedRenter.GetActorReference().GetAv(9)  != 1)  or something like that and have dialogue script fragments set the speaker as BedRenter.  Still gonna need a script with properties though.  I may be talking out of my ass at this point.   :lol:

 

How I would do it is by location.  The player rents the bed at the Winking Skeever and the "Want to go back to my room at the Winking Skeever with me?" dialogue is only available in Solitude locations.  You would have to do a quest with dialogue for each habitation area that has an inn, BUT the vanilla game handles moving spouses from house to house the same way.  And we both know that works as intended.  Make a quest with no type and only dialogue like a world interaction quest.  It would require a shit load of quest aliases pointing to the all of the innkeepers and beds you want to include but it would probably work.  Other than the mindless data entry it would be easy to do.

Posted

I've considered that. The drawback to it is expansions  ... if I get to the point where I'm happy enough with this mod to release it ... then I have to either require people have the DLCs ... or it just doesn't work there. And then, of course, there are various mods that add new towns/inns ... so I'd just have to say "oh well" on that. I'm not quite to the point where I'm willing to give up on something more general ...

 

One thing I've considered, is adding a line of dialogue to all innkeepers thats something like "Is it okay if I bring people back to my room?" ... and put a script on that which creates a forced reference to that innkeeper and opens up the "come back to my room" dialogue ... its a little clunky ... but it sounds like its going to be one clunky solution or another ... so it may come down to a matter of which one has fewer tradeoffs. 

 

 

Posted

Again a new quest would do the trick.  Add GetInFaction/RentBedJob (or whatever it is) Faction/==/1 as a condition along with GetActorVariable 9 ran on the subject.  Make every inn keeper have the same dialogue and that would remove the need for quest aliases.  An NPC either qualifies for the quest according to the conditions or they don't.

Archived

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

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...