aharttsx Posted January 9, 2013 Posted January 9, 2013 I'm trying to create a spell for an NPC Dragon Follower that summons multiple (10 specifically) creatures for certain duration of time, and after that duration have them despawn or whatever like regular summons. The only thing I was able to find with how to get multiple "summons" was to add a magic effect to the desired spell with a script attached to it and add the following lines in the script: ActorBase property myActor autoEvent OnEffectStart(Actor akTarget, Actor akCaster) (akCaster as ObjectReference).PlaceAtMe(myActor, 10) EndEvent I do this, and the "summons" spawn fine, but they don't disappear after the spell ends. I realize that this is due to the script being a .placeatme which would just create several copies of the specified actor rather than making them an actual summon (they don't have the label of a summoned actor, example "Bob's Spectral Wolf" or w/e). I have looked into the Twin Souls perk, duplicated it and added the perk to the actor I want to use this spell, but without that little line of script, the actor only summons 1 creature at a time. Would anyone know how to get multiple summons that actually act as summons and disappear when the spell's duration has run out? Any help is appreciated.
MShoap13 Posted January 9, 2013 Posted January 9, 2013 You'll probably need to duplicate the dragon you're summoning and mess with it's records as well. If you have Dawnguard, take a look at Durnehviir and any scripts associated with him. He's a player summonable dragon and it should be pretty easy to adapt your plugin to function how you want by using Durnehviir's records and scripts as a reference.
aharttsx Posted January 11, 2013 Author Posted January 11, 2013 I've tried several different things, and Durnehviir and his scripts as well as the scripts/magic effects for other summonable creatures were ones that I looked at as a reference for attempting to get this to work... but as far as I know its all for summoning one creature at a time. I've tried to make a script so that when the dragons are summoned from the npc's spell, that when they load they apply a spell to themselves that is Intended to disable and delete them similar to how the banish spell script is, only rather than have it as an Event OnEffectStart function, I have the disable and delete scripted to take place in Event OnEffectFinish and have the duration of the spell effect last as long as the npc's summon spell... but haven't got it working.. my scripting knowledge is a bit limited, and from what i was able to tell with durnehviir's summon script, it mainly dealt with the spell effects associated with summoning him, the rest I'm not quite sure what its doing. The only thing that I see that might help with getting the multiple "summons" to actually register as summons was the InitiateSummon property or something like that.. tried putting that in the script to see what happens if anything noticable changes, but haven't got it to compile yet. Course now that I'm writing all this i think i remember Durnehviir summoning multiple bonemen or w/e when you fight him in the soul cairn. I'll have to take a look at his abilities and the spells/magiceffects/scripts attatched to them, as well as fix the other scripts when I'm not busy with work.
sixpak Posted March 7, 2013 Posted March 7, 2013 In case you're still working on this there's a much simpler way. You'll notice in the twin souls perk any summon with the 'keywords' similiar to SummonFamiliar, SummonShock or whatever. You'll find the keywords in the perk itself, or if you look at a spell like any of the atronach's magic effect you'll see it in the keywords section near the bottom left of the window for the magic effect. Anyway what i would do is make a duplicate of the twin souls perk, rename it to whatever you want. Change the value from 2 to 10. Then in the magic effect portion of whatever spell it is you want to have this perk apply to add in the keyword MagicSummonFamiliar or whatever word you wish to use. After that you just need to find a way to apply the perk to your character. Im lazy so i'd just go in game, hit the console, type help 'perk name you changed twin souls duplicate into' , note the id#, then player.addperk 'found ID#' Now it'll work like any other summon and the duration will be based on whatever you had it on the initial spell. You can also use any unsummon spell that would normally work on your summons to unsummon you're new summons also.
Recommended Posts