Jump to content

looking for a conjuration mod


headrush46n2

Recommended Posts

hi all, im looking for a mod that will allow me to add multiple summons in custom spellmaking, i already have OOO and supreme magicka, and they allow for multiple summons, and i can even buy special spells that will summon little hordes for me, but i wanna create my own horde spell...any help?
Link to comment
Share on other sites

I suspect that Oblivion is not hardcoded correctly for creating this type of spell at the spell-making alter, since it would use custom script effects. So you might have to have something like a menu-box option dialog activated by something like a custom spellmaking alter that only does the custom conjuration spells or else you could change the standard spellmaking alter to ask you a question about which mode you want to go into before using it. Behind all of this would be a ton or prep work and a ton of pre-made creatures for summoning from their various custom holding cells. Lots and lots of repetitive and tedious secretary work. it would probably be more economical to just construct a mod that made the particular multiple summon conjuration spell you want.
Link to comment
Share on other sites

I don't think that it'll take too much repetitive work, just a lot of scripting. You'll need a quest script to store some variables, a configuration script for the "summon spell making altar", a spell script, and a script for the summoned creature(s).

 

Quest script:

 

scn questscript

array_var spells
array_var duration
array_var types
array_var amount
array_var summon

Begin GameMode

if (spells == 0)
	let spells := ar_Construct Array
	let duration := ar_Construct Array
	let types := ar_Construct Array
	let amount := ar_Construct Array
	let summon := ar_Construct Array
	let spells[0] := spell00ID
	let spells[1] := spell01ID
	let spells[2] := spell02ID
;		and so on until you feel that's enough spells
endif

End

 

The spells array is to store the object IDs of all the custom spells. The duration array will store a number that represents the duration of the spell (eg duration[x] represents the duration of spell x). The types array should store a number representing the number of types of creatures you want your summon spell to summon, with type[x] being the number of types you want the spell X to summon . The amount array would be used to store the number of each type of creature to be summoned. So amount[x][n] would be the amount of the nth type of creature that you want spell x to summon. (The nested array should be initialized in the configuration script for the altar.) The summon array is used to store the object IDs of the creature to be summoned. So summon[x][n] would be the object ID of the nth type of creature that you want spell x to summon. (Again, the nested array should be initialized in the configuration script for the altar.)

 

 

Spell script:

 

scn spellscript

ref spellref
ref objectref
ref tempref
ref scriptref
short spell
short tempshort1
short tempshort2

Begin ScriptEffectStart

let spellref := GetPlayerSpell
let spell := ar_Find spellref quest.spells
let scriptref := SummonedCreatureScript
while (tempshort1 < quest.types[spell])
	while (tempshort2 < quest.amount[spell][tempshort1])
		let objectref := quest.summon[spell][tempshort2]
		let tempref := Player.PlaceAtMe objectref
		tempref.SetScript scriptref
		tempref.ModDisposition Player 100
		tempref.AddScriptPackage SummonFollowPlayer
		let tempshort2 += 1
	loop
	let tempshort2 := 0
	let tempshort1 += 1
loop

End

 

The "spellref" variable is going to store the spell ID of the summon spell. The "spell" variable will determine which spell the spell is (so what "x" should be in the previous code). Nested while loops are used to summon the creatures via the PlaceAtMe command.

 

 

Creature script:

 

scn SummonedCreatureScript

ref spellref
short spell
short limit
float timer

Begin GameMode

if (timer == 0)
	let spellref := GetPlayerSpell
	let spell := ar_Find spellref quest.spells
	let limit := quest.duration[spell] 
endif

let timer += GetSecondsPassed

if (GetDisabled || timer >= limit)
	Disable
	DeleteReference
endif

End

Once the creature dies or else the spell reaches its duration, the creature will disable itself. Hopefully the use of the DeleteReference function will prevent save game bloat.

 

 

The hard part will be scripting the configuration menu... I have an idea that it would be huge and I'm too lazy to try it.

Link to comment
Share on other sites

Actually, there might be a simpler way to do this. If you don't mind creating a different spell for every different combination of creatures you want to summon, all this really should require is the ability to add multiple 'summon creature' effects to the same custom spell, just like adding fire, frost, and shock damage effects to a single spell. Unfortunately, I don't usually use conjured creatures, so I couldn't tell you if this is possible in the original game, through Supreme Magicka, or with any other mod.
Link to comment
Share on other sites

OK, even though I said I was too lazy I made this anyway. It works just fine, except I need a good formula to determine how much magicka the spell should cost, how much gold to create it, and what mastery level it should be. Any ideas?

 

Right now I'm thinking about just setting the magicka cost as the sum of the levels of all summoned creatures (using 15 as the level for player offset creatures) with a 0.3 multiplier for seconds of duration, creation cost as double the magicka cost, and mastery level as the magicka cost / 4.

 

EDIT:

 

I don't think it's good enough to upload onto the nexus, so it's on mediafire. You can find the conjuration altar in the arch-mage's quarters of the mages guild.

 

http://www.mediafire.com/?7ayijsvsqct9b82

Edited by fg109
Link to comment
Share on other sites

  • Recently Browsing   0 members

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