Skyrim

About this mod

EFF is a mod that extends the follower system to allow for flexibility and functionality by adding many new features to followers and allowing user made plugins to be extended.

Requirements
Permissions and credits
Translations
  • Turkish
  • Spanish
  • Portuguese
  • Polish
  • German
  • French
Changelogs
Donations

Game Version 1.3 or higher
This mod contains three plugins, one of which is optional.

Some features require SKSE 1.5.11 or higher

Please read the update description regarding the version you are updating to before updating. If this is your first time installing it is recommended you dismiss any followers you may have before doing so.

Features
-Recruit up to 100 followers at once (set PlayerFollowerMaximum to X where X is anything lower than 100)
-Follower commands are executed via menu rather than dialogue (This means they can be commanded while in combat) (Optional)
-Extra commands can be accessed through dialogue if menu is off
-Followers stats can be displayed and are categorized
-Followers mount horses if they own one and you are riding one
-Followers can "collect" or "harvest" specific item types when told to
-Followers will ride their horse to go "collect" if they own one
-Followers can "relax" or "sandbox" at point of command
-Followers outfit can be "set" from a list of basic outfits, or you can set to none and give them whatever you want
-Followers stats can be "updated" via the "Train" command
-Followers combat style can be changed to "Default", "Archer", "Berserker", "Mage", "Thief", or "Warrior"
-Followers can dual wield
-Followers "Residence" can be set to anywhere the follower is standing
-Followers can be assigned to be "Default", "Protected", or "Essential"
-Any available command can also be applied to the entire group at once
-Outfits will "persist" using SKSE when you dismiss, relax, or wait a follower

Note: As of 3.5.5 Game Setting tweaks are non optional and require SKSE 1.5.11 or higher they will become configurable in the future when the new SkyUI is ready.
Game Setting Tweaks (L - Lower than Vanilla, H - Higher than Vanilla)
fFollowSpaceBetweenFollowers - 64 (L) - Should shorten the single file follower length
fFollowerSpacingAtDoors - 256 (H)
fAIDistanceTeammateDrawWeapon - 0 (L) - Turns off Drawing Weapons when you do
fSandBoxSearchRadius - 8192 (H) - Should allow sandboxing to reach out to objects further away
iFriendHitCombatAllowed - 10 (H) - Allows you to hit your friends up to 10 times before hostile
iNumberActorsAllowedToFollowPlayer - 100 (H) - Not sure if this does anything, used to be 6
iNumberActorsInCombatPlayer - 100 (H) - Not sure if this even does anything, used to be 20
iAllyHitNonCombatAllowed - 30 (H) - Should allow you to smack around your followers 30 times before hostile

Recommended Horse Mod:
Convenient Horses


Menubreakdownasof3.5.6
Instead of speaking to your followers through dialogue, a menu will popup with a number of available features, this menu can be turned off and you can still access the same functions through the dialogue.

To turn off the menu simply open the configuration menu by typing
setstage FollowerMenu 0
In the console

--- Group (FollowerCount > 1)
------- Wait
------- Follow
------- Dismiss
------- Relax
------- More (See Plugins)
------- Back
------- Exit
--- Command
------- Wait
------- Follow
------- Relax
------- Dismiss
------- Trade
------- Stats
----------- General
----------- Combat
----------- Skills
----------- Magic
----------- Back
----------- Exit
------- More (See Plugins)
------- Back
------- Exit

------------------------------Plugins--------------------------------
------- More
----------- Outfit (G/S)
--------------- Default
------------------- None
------------------- Clothing
------------------- Light Armor
------------------- Heavy Armor
------------------- Back
------------------- Exit
--------------- Sleepwear
------------------- None
------------------- Clothing
------------------- Light Armor
------------------- Heavy Armor
------------------- Back
------------------- Exit
--------------- Back
--------------- Exit
----------- Collect (G/S)
--------------- Harvest
--------------- Ammo
--------------- Armor
--------------- Books
--------------- Food
--------------- Ingredients
--------------- Keys
--------------- Misc
--------------- Weapons
----------- Train (G/S)
----------- Combat (G/S)
--------------- Default
--------------- Archer
--------------- Berserker
--------------- Mage
--------------- Thief
--------------- Warrior
----------- Residence
--------------- Set
--------------- Clear
----------- Importance
--------------- Default
--------------- Protected
--------------- Essential
----------- Spells
--------------- Teach
------------------- Left Hand
------------------- Right Hand
--------------- Forget
------------------- Left Hand
------------------- Right Hand
----------- Aggression
------------------- Passive
------------------- Aggressive


Newfeatures
-See 3.5.6 changelog, click the blue version text on this mod.
3.5.6 <- This
Latest
Version

Mod features are configurable via menu
setstage FollowerMenu 0
Will popup a menu for Enabling/Disabling features

Menu Plugin creation tutorial coming soon

Installation
Installation should be fairly straightforward if you have a mod manager, download and install.
If you do not use a mod manager the Non-loose-files version is recommended, place the two ESP'S, BSA, and ESM in your Data directory.

XFLPlugins.esp is an optional plugin that allows for your followers outfit to be changed, this plugin will be updated with more features made by me.

What does it do?
Modifies the Vanilla companion system to allow up to one hundred followers as opposed to the original one follower.

Also removes those nasty follower bow and arrows.

What will it conflict with?
Pretty much any other companion limit modification script. It will conflict with the follower tweak that makes 10 followers possible that is floating around, it does a similar thing but I wrote my own methods that can scale by an array so making 100 possible wasn't far off.

Making it work
Dismiss any companion you may have before or after installing this mod to ensure they get out of the old follower alias and into the new.

You do not need to edit any NPC's or do anything extra for this to work, you just install the plugin and you should be able to talk to any follower and recruit them as normal with the exception you wont be told you already have a follower unless you reach the 100 follower limit. (I highly doubt this happening, Papyrus is more likely implode on itself before then)

Compatibility
Should be compatible with horse follower mods and Better Followers as well assuming XFLDialogue and XFLPlugin are loaded after said mod.

Updating
3.5.5to3.5.6Procedure
Update as normal but upon entry of the game type
"setstage FollowerExtension 500"
This will clear the entire system, dismissing all followers and should be ready for use.

3.4.0to3.5.0Procedure
Straight update should be acceptable, you may need to download the horse optional plugin if you used it previously, dismiss all followers and clean save is recommended but not required.

3.3.Xto3.4.0Procedure
-Dismiss all followers (Critical changes were made) if you did not dismiss your followers type
"setstage FollowerExtension 500" this will forcefully clear all followers from the system.

3.1.0to3.2.0Procedure
See 3.1.0

3.0.2to3.1.0Procedure
See 3.0.2

3.0.1to3.0.2Procedure
See 3.0.1

3.0to3.0.1Procedure
Straight update should be fine, nothing critical was changed if your version is lower than 3.0 when updating, see 3.0 for update details

3.0Procedure
Clean save required;
Dismiss all followers
stopquest DialogueFollowerExtended
Save game
Uninstall
Load game
Save game
Exit game
Install
Play

2.1.1Betato2.1.2Procedure
Dismiss all of your followers before uninstalling/updating, if you do not do this you will never be able to talk to the follower again.

2.1.0to2.1.1BetaProcedure
This should be pretty straight forward, just dismiss all of your followers and update. Straight updating shouldn't cause any huge problems, just the menu will double up with speech until you dismiss your followers.

DO NOT UNINSTALL WITHOUT DISMISSING FOLLOWERS YOU WILL NOT BE ABLE TO TALK TO THEM AGAIN.

2.0.4to2.0.5Procedure
None, you should be able to just straight uninstall and install with the new version, although it is still recommended you dismiss your companions before doing so.
2.0.4Procedure
This version will need a clean-save (This does not mean you have to start a new game)
-Untick/Uninstall previous mod
-Save game
-Exit
-Install 2.0.4

2.0.3Procedure
This version will need a clean-save, I found a nasty infinite loop while stack profiling causing follower zero to be infinitely dismissed (Ouch) this bug has been corrected, and also quest followers should no longer dismiss all of your companions, quest followers will ONLY fill and clear the standard one slot, while all other followers should fill the new slots. This should also fix all of your companions being dismissed when getting married, it should only dismiss your potential wife as it should (I basically hacked the dismiss function so I didn't need to edit the wedding quest in any way)
-Untick/Uninstall previous mod
-Run game
Console:
"resetquest DialogueFollower"
"stopquest DialogueFollower"
"set PlayerFollowerCount to 0"
"startquest DialogueFollower"
-Save game
-Exit
-Install 2.0.3

2.0.2 Notes:
If you are experiencing glitched companions who immediately leave when you request they follow you, use "setstage DialogueFollowerExtended 0" this will force ALL aliases to be cleared, essentially clearing all followers, it is recommended you do this instead of manually dismissing them as this will be faster and ensure the system is cleared out.
DO NOT USE THE OLD "setstage DialogueFollower 400"

2.0Procedure
-YOU MUST DISMISS ALL FOLLOWERS BEFORE UPDATING
-Although if you do not you can fix the "locked" follower by removing them from the CurrentFollowerFaction (Click them in the console and type RemoveFromFaction 5C84E)
-The next steps may not be necessary
-stopquest DialogueFollower
-startquest DialogueFollower

< 1.8to1.8Procedure
-Dismiss your companions
-type in the console:
stopquest DialogueFollower
startquest DialogueFollower

Uninstallation
Before removing this mod make sure you dismiss all of your companions through this system. After dismissing all of your companions you need to make sure none of this mods scripts are still running, to do that you have to stop the quests controlling the scripts.
stopquest DialogueFollowerExtended (FollowerExtension for versions >= 3.0)
stopquest FollowerMenu
Wait some ingame time for the scripts to run through
Save your game
Uninstall
Load your save
Save your game

Creating custom companions
You still create your custom companions in the same manner, add them to the PotentialFollower faction or PotentialHireling faction and increase your relationship rank. Followers tie in with favor, and favor is actually your relationship rank.

If your companion uses a custom recruit or dismiss dialogue that means you have to edit the dialogue script, and your companion will not work with this mod because the vanilla functions to recruit are no longer used, I may in the future move the quest portion of this mod to an ESM so users can link to those functions instead.

Reducing the limit
Not sure why you would want to reduce the limit, maybe to put a restraint on yourself I guess. The limit is controlled by a global variable now rather than a static one or zero.
Example:
Set PlayerFollowerMaximum to 5

Troubleshooting
(1) If you are having an issue where you tell another follower to follow you but they just stand there and do nothing.
CHECK YOUR GAME VERSION, IT MUST BE 1.3 OR HIGHER. Or check to make sure you do not have another conflicting mod that edits the follower system.

(2) If you are experiencing a problem with a particular follower, for example:
You have all the dialogue options as if they are following you, but aren't really following you, things like "Wait Here, Follow Me, It's time for us to part ways" this means that they are stuck in the follower system.

They can be recovered from this by opening the Console, clicking on them, and typing the following:
removefromfaction 5C84E
removefromfaction 5c84c
removefromfaction bd738
or
addtofaction 5C84E -1
addtofaction 5c84c -1
addtofaction bd738 -1

(3) Why does Cicero or the DBInitiates not work right?
Cicero goes into the vanilla system because I wanted to avoid editing the particular quests that deal with it, it ties in with the main companions script and some other critical scripts. It's safer to just leave a few followers in the vanilla system then to edit those scripts and risk breaking compatibility with other mods.

Cicero and the Initiates don't technically use the vanilla system at all, they have their own method of "Follow" "Wait" and "Dismiss" they only set or unset the vanilla variable to determine if you already have a follower. Also meaning they won't respond to those corresponding menu commands. Cicero uses an alias to acquire his follower-like packages, the initiates actually have their packages directly on the NPC. What I could do is re-route their commands to my system, but I would have to significantly raise the quest priority of FollowerExtension so that my packages will override his. The only way to completely rid them of their bad system would be to "duplicate" the effects of my system on their aliases, or completely rid them of their system and just plain add them to mine, which would mean editing the actual DBInitiate NPC.

If I wanted to rid them of their system I would have to
Edit the Darkbrotherhood quest Alias to not use the DBCicero packages
Edit the "QF_DBEviction_0006F9A5" script to not use their variables and use my system to dismiss
Edit the "companionshousekeeping" (Critical) script to dismiss them appropriately and not use their variables
Edit the DBInitiate NPC's to not use their packages anymore

If I wanted to duplicate my features onto their system
I would basically have to do everything twice, once for my system, and once for the DB followers as they would use different aliases.