[help] Multiple followers

Post » Mon Jun 18, 2012 12:22 am

I am trying to make a mod that allows someone to have multiple followers.
I already successfully manipulated the dialogue, so potential followers will not refuse to follow when I have someone with me.
But when I ask someone to follow me, my current follower gets replaced by the new follower.
Example: If Farkas is following me, and I ask Aela to follow, Farkas leaves me and resets to his normal AI and Aela turns into my follower.

So my question is: What setting in the game determines the maximum amount of followers?
And how can I change it?

EDIT:

I have created a crude test mod that allows players to recruit up to 5 followers. It can be found here: http://skyrim.nexusmods.com/downloads/file.php?id=8559

Things changed by the Plugin:

* The dialogue that allows you to recruit followers no longer checks if you have another follower.

* I have created the aliases of Follower2, Follower3, Follower4 and Follower5 in the FollowerDialogue quest. These can be abused to have multiple followers. This must be done manually by the console however.

Press the Spoiler button to read its Readme

EDIT the second:

Foobar92 has created a mod that does exactly as I intended to reach with my mod, rendering my file obsolete. Please take a look at his mod here: http://www.gamesas.com/topic/1345602-wiprel-multiple-followers/


Spoiler
WARNING! - This is a test file, not a proper mod. Using it might mess up your game. So either do not use it on a serious save game or use it at your own risk. - WARNING OVER

I am trying to create a mod that allows players to recruit more followers. Regrettably, its a lot harder than I thought, so I could not create a good mod.

So I started the following thread on the official forums to discuss it with other members: http://www.gamesas.com/topic/1344111-help-multiple-followers/ The member IMissLeeches asked me to upload my current attempt, so she could take a look at it. So here it is.

The current file only removes the 'check for existing follower' condition in the recruitment dialogue and adds some extra Aliases in the hope of duplicating the '2nd follower takes Dogs place' trick stated here: [src="http://skyrim.nexusm...ile.php?id=3758"]http://skyrim.nexusm...ile.php?id=3758[url]

If you know anything about this subject, please join the discussion on the official forums.
I have also purposefully disabled comments, ratings and other user input for this file to centralize discussion for this problem to one point.

The file itself

To recruit more followers:

1. recruit your first follower as normally.

2. Go to a another follower and recruit them. Your first follower walks away from you.

3. Now open the console by pressing the ~ key and type 'SSQ 750BA' without quotes
The console should say: ConsoleScopeQuest >> DialogueFollower (750BA)

4. Now click on your first follower and type 'ForceRefIntoAlias Follower2' without quotes. Close the console. If done correctly, this NPC now acts like a real follower.

5. To recruit a third follower repeat steps 2 and 3. But now your second follower walks away.
Open the console, click on them and type 'ForceRefIntoAlias Follower3'. Close the console. You can go up to 5 followers in this way.

Bugs and Issues
Listing whats NOT wrong with this file right now is easier... :tongue:

* Only your last recruited follower will leave you alone when you tell them. The others will turn into permanent stalkers.

* It is not a proper mod right now, requiring too much console codes and user input right now.

User avatar
Brooks Hardison
 
Posts: 3410
Joined: Fri Sep 07, 2007 3:14 am

Post » Sun Jun 17, 2012 8:36 pm

I am trying to make a mod that allows someone to have multiple followers.
I already successfully manipulated the dialogue, so potential followers will not refuse to follow when I have someone with me.
But when I ask someone to follow me, my current follower gets replaced by the new follower.
Example: If Farkas is following me, and I ask Aela to follow, Farkas leaves me and resets to his normal AI and Aela turns into my follower.

So my question is: What setting in the game determines the maximum amount of followers?
And how can I change it?
Oh I've been working on this too!

I did the same thing as you! Yay! ^^

And then got stuck in the same place... ._.

And the worst thing is that the follower stuff is all over the place! In scripts, quests, dialogues, global variables... I've completely lost any idea of what I'm doing by this point... ,_,
User avatar
Alada Vaginah
 
Posts: 3368
Joined: Sun Jun 25, 2006 8:31 pm

Post » Sun Jun 17, 2012 5:32 pm

I've been messing around with it as well, to no avail too.

If it's any help, setting the global variable "PlayerFollowerCount" to a constant of 0 didn't work :tongue:
(But to be honest I was just rummaging in the dark)
User avatar
Angelina Mayo
 
Posts: 3427
Joined: Wed Jan 24, 2007 4:58 am

Post » Sun Jun 17, 2012 11:08 pm

And the worst thing is that the follower stuff is all over the place! In scripts, quests, dialogues, global variables... I've completely lost any idea of what I'm doing by this point... ,_,

Thats also what I found annoying. I was surprised I found the dialogue that asks them to follow, since it was found in a quest called 'DialogueFavorGeneric'.

I've been messing around with it as well, to no avail too.

If it's any help, setting the global variable "PlayerFollowerCount" to a constant of 0 didn't work :tongue:
(But to be honest I was just rummaging in the dark)

Fun to see how two people shared my idea :P

I do believe multiple followers should be possible, seeing as you can have a real follower and a quest-related follower at the same time.
User avatar
Kirsty Collins
 
Posts: 3441
Joined: Tue Sep 19, 2006 11:54 pm

Post » Sun Jun 17, 2012 8:23 pm

It should definitely be possible, I'm just not sure where to look.
User avatar
luis ortiz
 
Posts: 3355
Joined: Sun Oct 07, 2007 8:21 pm

Post » Mon Jun 18, 2012 2:44 am

The only problem with those quest followers is that they don't have the regular followers' capabilities like command mode and inventory.

Anyway so far I've only managed to discover that editing the "" script so it doesn't set to 1 upon recruitment allows to recruit a second follower.

Except that it makes the first one walk away right after that ._.

Do you have any idea where the recruitment ("join me" not "follow me") topics are? I think the key may be there but I just can't find them...
User avatar
Michelle Chau
 
Posts: 3308
Joined: Sat Aug 26, 2006 4:24 am

Post » Sun Jun 17, 2012 11:16 pm

I haven't actually done this, but looking quickly at the Quests:

In the DialogueFavorGeneric quest, Player Dialogue tab, DialogueFavorGenericFollowBranch (looks like some have already found this), there are two sets of response Infos: for when the follower agrees to follow, and when they say you already have someone following you.

To get unlimited followers, you'd want to:

1. Edit all the "lead the way" type responses to remove the condition that the global PlayerFollowerCount == 0. In other words, PlayerFollowerCount is the current number of followers, not the maximum allowed.

2. If you want unlimited followers, then you could next simply delete all the "looks like you've already got someone with you" infos. If what you want to do is increase the limit of the number of followers to an arbitrary number, you could either hard-code that number into both sets of infos, or better, create a new global variable and store the number there, and adjust all the conditions as appopriate.

The other thing you may need to do is adjust the DialogueFollowerScript in the DialogueFollower quest--in the SetFollower function, you'd probably want to increment the PlayerFollowerCount rather than just setting it to 1.

There may be more to it than that, but I think that would be a good start. Apologies if I've said anything incorrect--I'm new at this, too, and these are just likely possibilities I've observed in my own investigations.
User avatar
michael flanigan
 
Posts: 3449
Joined: Thu Jun 14, 2007 2:33 pm

Post » Sun Jun 17, 2012 11:43 pm

Oh! These are the dialogues I was looking for! Thank you!
User avatar
Monika
 
Posts: 3469
Joined: Wed Jan 10, 2007 7:50 pm

Post » Sun Jun 17, 2012 4:27 pm

Guys! I think I've finally figured it out!

When a follower joins your party the dialogue uses the "SetFollower" function (defined in "DialogueFollowerScript") on them. The function acts like sort of a package deal that gives them all the relevant conversation options and AI packages for as long as they have it.

But the problem with it is that the script runs globally not individually.

So that means there can exist only one NPC with the "follower package" at a time, so no matter how we bypass the FollowerCount conditional in dialogues when a new follower is recruited she or he inherits the whole "SetFollower" status and the other one just walks away because suddenly the follower scripts stop governing them!

BUT! we can extend this limit and I think I know how!

The bad news is that it will require modifying a few different scripts and dialogues.

But I'm going to test my theory first! I will change the joining dialogues somewhat so that upon reaching the follower count limit instead of declining the second follower will join... as a dog ^^

Just a quick and dirty proof of concept!

Since you can have both a follower and a pet at the same time this should work! If it does increasing the follower limit should be quite straightforward! Just copy pasting a few scripting blocks and modifying dialogues.

Hopefully! n_n
User avatar
Rhi Edwards
 
Posts: 3453
Joined: Fri Jul 28, 2006 1:42 am

Post » Sun Jun 17, 2012 5:44 pm

So, basically, if we create more follower script packages, we can give them to multiple people?
User avatar
Ilona Neumann
 
Posts: 3308
Joined: Sat Aug 19, 2006 3:30 am

Post » Mon Jun 18, 2012 4:13 am

So, basically, if we create more follower script packages, we can give them to multiple people?
At least that's the theory! I'll be testing it in a moment.

I do hope so though!

Reworking the whole follower system to allow for individual not global follower scripts would be a lot cleaner and less confusing but I think I'll be taking it one step at a time for now ^^
User avatar
Ebou Suso
 
Posts: 3604
Joined: Thu May 03, 2007 5:28 am

Post » Sun Jun 17, 2012 3:22 pm

Uh!

Not working but that's probably because just changing "SetFollower" to "SetAnimal" isn't enough. But in any case it "sort of" worked. Lydia didn't join me as I hoped but the makeshift script I made did register to the rest of the system and at least the "PlayerAnimalCount" global increased as the result. It wasn't directly a feature of the script I wrote so that means the "SetAnimal" function must have activated. It didn't all work as planned but it's good to know it worked at all. If I tracked the chain of reactions and adjusted things with a little more attention along the way it would probably work all right. Even on a non-animal NPC. Dogs can do that so humans shouldn't be worse n_n

But I'm really tired now so I'll leave a better prepared test for another time!

All in all though I was kinda right! I believe that by first figuring out how all the functions are connected in this mess and plagiarising.the "SetFollower" function with all its environment we can enable multiple followers! (I can't believe something that should have always been in game to begin with is so much bother to implement!)

Anyways I'd love if someone would try to do that! Perhaps you guys will have better luck?

If not I'll give it another try but first I'll let my exhausted and hurting brain rest a little ^^
User avatar
Kate Murrell
 
Posts: 3537
Joined: Mon Oct 16, 2006 4:02 am

Post » Sun Jun 17, 2012 2:46 pm

I found this on Nexus: http://skyrim.nexusmods.com/downloads/file.php?id=3758
Its basically a pre-CK way of letting a follower taking the place of the dog, using the codes:

Set PlayerFollowerCount,
SSQ 750BA,
ForceRefIntoAlias Animal.

I tested this and it works. But i have no idea what the 2nd and 3rd codes exactly do. But it does mean our idea should be possible.
User avatar
dell
 
Posts: 3452
Joined: Sat Mar 24, 2007 2:58 am

Post » Mon Jun 18, 2012 5:10 am

I did another test that was slightly successful. Based on my discovery of my previous post, i created several aliases and forced them on multiple potential followers. This resulted in me getting a party consisting of me, (a modded) Sylgja and the Jorrvaskr Wolf Brothers (Farkas, Vilkas).
The only 2 problems were that i still had to use the console and that one of the Wolf brothers wouldn't leave his follower status, despite me asking him many times.
User avatar
Sierra Ritsuka
 
Posts: 3506
Joined: Mon Dec 11, 2006 7:56 am

Post » Sun Jun 17, 2012 6:15 pm

Oh this is interesting! Please keep us updated!

By the way maybe I could have a looky at your plugin and scripts? I'd love to help.
User avatar
Kevin S
 
Posts: 3457
Joined: Sat Aug 11, 2007 12:50 pm

Post » Sun Jun 17, 2012 2:37 pm

I uploaded the file to Nexus. http://skyrim.nexusmods.com/downloads/file.php?id=8559

please refer to the link or first post for more info.
User avatar
Britta Gronkowski
 
Posts: 3475
Joined: Mon Apr 09, 2007 3:14 pm

Post » Sun Jun 17, 2012 6:23 pm

SWEET! I'm sure a few scripts will allow multiple followers without the console. Multiple marriages and divorces would also be a cool mod.
User avatar
Penny Wills
 
Posts: 3474
Joined: Wed Sep 27, 2006 6:16 pm

Post » Mon Jun 18, 2012 1:39 am

I also need a way to prevent the other followers from turning into stalkers.
User avatar
Tikarma Vodicka-McPherson
 
Posts: 3426
Joined: Fri Feb 02, 2007 9:15 am

Post » Mon Jun 18, 2012 4:08 am

I tried fooling around with this and my head nearly popped off. Please keep us updated as I'd love to have a multiple follower mod in my skyrim. I figured and rightly so, that something like this was going to be well over my abilities atm. Your work will be very appreciated by those that want multiple companions.
User avatar
Jason Rice
 
Posts: 3445
Joined: Thu Aug 16, 2007 3:42 pm

Post » Sun Jun 17, 2012 2:46 pm

Mine didn't seem to work when I used the command "ForceRefIntoAlias Follower2", but "ForceRefIntoAlias Follower3" did work. I'm only using 2 followers. This is what happens with "ForceRefIntoAlias Follower2" command: http://i.imgur.com/7xTlt.jpg
User avatar
mike
 
Posts: 3432
Joined: Fri Jul 27, 2007 6:51 pm

Post » Mon Jun 18, 2012 12:58 am

Bat files do not seem to work with me either but manually typing the codes does work for me.
User avatar
Ron
 
Posts: 3408
Joined: Tue Jan 16, 2007 4:34 am

Post » Mon Jun 18, 2012 5:59 am

Is there a way to remove a follower using a command? Mine seems to have glitched and now It won't let me dismiss my first follower even with the mod removed.
User avatar
Cagla Cali
 
Posts: 3431
Joined: Tue Apr 10, 2007 8:36 am

Post » Sun Jun 17, 2012 10:34 pm

I'm almost done with a mod to allow up to 10 companions.

I think that the basic principle is that the DialogueFollower quest needs to have additional quest aliases, one for each follower. The quest script needs to keep track of which alias is referring to which follower (in terms of their Actor object). The SetFollower, FollowerWait, FollowerFollow and DismissFollower functions in the quest script need to be modified to accept an ObjectReference parameter which is used to find which alias belongs to the follower being operated on and use it, instead of the original pFollowerAlias. I do this by storing the Actors in an array in the script.

Of course, all the scripts that utilise a call to these functions have to be modified to pass the additional ObjectReference argument, but that isn't too difficult (merely tedious).

After that, it's merely a matter of fixing all the dialogue conditions.
User avatar
Naazhe Perezz
 
Posts: 3393
Joined: Sat Aug 19, 2006 6:14 am

Post » Mon Jun 18, 2012 5:06 am

Um, completly new at this, and trying to follow along as best as I can. As far as i can see/gather, the code that governs a follower is global and can only be passed to one actor at a time (Function SetFollower). Same with dogs/animals (Function SetAnimal). So, instead of trying to figure out a way to get the one global function cover two people, why dont we write another global function for additional followers (Function SetFollowerTwo) that basically functions as the first?

Edit: Ack, while I was thinking on this, the fellow above me posted. Well, glad someone else thought of it too :)
User avatar
Emily Martell
 
Posts: 3469
Joined: Sun Dec 03, 2006 7:41 am

Post » Mon Jun 18, 2012 1:39 am

Great to see this is being worked on. I found this [WIP] at the workshop and maybe it will help you guys: http://steamcommunity.com/sharedfiles/filedetails/?id=8469
User avatar
Amy Smith
 
Posts: 3339
Joined: Mon Feb 05, 2007 10:04 pm

Next

Return to V - Skyrim