Hermestris Posted November 10, 2018 Posted November 10, 2018 Hi! I recently created my first custom follower which I now want to spice up a little. I have very little implementation experience and never made a quest or dialogue but i wanna figure this out now. I will google the basics of how to create quests, dialogue etc. but I was hoping somebody could give me a rough breakdown of the most elegant and suitable way of implementing what i have in mind...like the general steps and commands I should use. Since I only find overly complicated milk mods on LL which don't serve my humble needs I wanted to take things into my own hands. The idea is that my follower can be milked every 24h. it will be initiated by dialogue, followed by a check if 24h have passed and a check for empty bottles in the player inventory. then one empty bottle will basically be filled with milk by the follower. Most dialogue lines will be taken from the vanilla soundfiles and thus be voiced. I wrote a general breakdown of what i would like implement: (Note that the non-voiced lines are just placeholder lines) Quote initiate milking dialogue: "Should i milk you?" check: 24 hours passed? if no: follower response "Can't do that, sorry. (dialoguefollower__00026fe4_1)" follower response "Such a shame. Perhaps another time then. (freeformri_ffriften05dinya_00041ebf_1) --> end of dialogue if yes: follower response "You should. I miss you! (dialogueda__00078f41_1)" follower response "I hadn't asked you because I was afraid you'd say no. I appreciate your help!" (freeformri_ffriften13aless_00043d27_1) follower response "do you have an empty bottle that I can fill up?" check: empty bottles in player inventory? if no: player response "unfortunately I don't. I'll see if i can find some empty bottles." follower response "I'll look forward to it then." dialogueriftenkeepscene07__00046aab_1 --> end of dialogue, dialogue menu closes if yes: 1. follower response "That's it! Wonderful! I knew I could count on you!" bardscolle_bardscollegeflu_000d93d9_1 2. follower comment "well, look what we have here!" c01_c01sharedinfo_000e9532_1 3. unequip follower torso armor piece 4. remove 1 empty bottle from player inventory 5. follower comment "Please, enjoy yourself!" db05__00037b59_1 follower comment "huffs" dialoguegeneric__000604e6_1.fuz follower comment "Good job! I see you know what you're doing!" wicraftitem01__0009be03_1 follower comment "huffs" dialoguegeneric__000604e5_1 follower comment "That's it! Wonderful! I knew I could count on you!" bardscolle_bardscollegeflu_000d93d9_1 follower comment "Thank you! Here, this is for you! dialoguege_dialoguegeneric_000dba2a_1 6. Follower gives milk (matching bottle) to player. (animation plus item added to player inventory) 7. Follower comment "This is part of me. Guard it with your life." bardscolle_bardscollegepoe_000e7750_1 Follower comment "I am feeling much better thanks to your efforts." dialogueri_dialogueriftenh_00042350_1 8. Re-equip follower torso armor piece. --> end of dialogue, dialogue menu closes I am planning to use the empty vanilla bottles and will create a counterpart item filled with milk. But can somebody give me a breakdown of how I would generally go about this? EDIT: I assume that I need to take into consideration that the torso armor might not be equipped in the first place. In that case unequipping and re-equipping would be skipped.
Guest Posted November 10, 2018 Posted November 10, 2018 First of all you need a quest, and because you added dialogues you already have one. Add a script: Scriptname milkablefollowerquestscript extends quest conditional Use the name you prefer, but be sure you put "conditional" at the end. Then add a simple property int property canFollowerBeMilked auto conditional also this one should be conditional. Now, if the property is 0 then the follower cannot be milked, if it is 1 it can be milked. You can condition your dialogues with this conditional properties. Then add a function to "milk" the follower. You can call it from the Script fragment of the dialogue function milkFollower(Actor follower) canFollowerBeMilked = 0 ; We cannot milk it again follower.equipItem(whateverYouNeedToEquip) untility.wait(10.0) ; 10 seconds milk time? follower.unequipItem(whateverYouNeedToEquip) PlayerRef.removeItem(EmptyBottle, 1, true) PlayerRef.addItem(MilkBottle, 1, true) RegisterForSingleUpdateGameTime(24.0) ; Wait 24 hours game time endFunction Event OnUpdate() canFollowerBeMilked = 1 ; Follower milkable again endEvent And a few properties MiscItem Property EmptyBottle Auto MiscItem Property MilkBottle Auto Actor Property PlayerRef Auto
Hermestris Posted November 10, 2018 Author Posted November 10, 2018 thanks for the quick reply! There's still a lot of questions on my part but this gives me a place to start from!
Hermestris Posted November 10, 2018 Author Posted November 10, 2018 I am encountering the first problem...maybe i misunderstood what you wrote...I get this:
Guest Posted November 10, 2018 Posted November 10, 2018 Here is a documentation for Papyrus I wrote a while ago. Maybe you can find it useful:
Guest Posted November 10, 2018 Posted November 10, 2018 Did you unzipped the scripts.rar file? Did you download the 7zip file of SKSE and placed the pex and psc files in the Data folder?
Hermestris Posted November 10, 2018 Author Posted November 10, 2018 thanks, i will check out the documentation. i did load the skse script folder through vortex (from where I am executing CK). Do i need to tweak something in the .ini for them to load? EDIT: okay, just found the scripts.zip contained in the data folder. I am unzipping it and will see if it works... EDIT: after manually pasting both skse scripts and scripts.zip into data folder the problem still exists...
Guest Posted November 11, 2018 Posted November 11, 2018 Damn. OK, I suppose you cannot compile from CK. What is the error right now?
Recommended Posts
Archived
This topic is now archived and is closed to further replies.