Jump to content

Instant spell cast, or Skyrim-esque casting?


Pumpkinbot

Recommended Posts

One of the problems I have with Oblivion's magic system mostly comes down to offensive spells. I hit the button, and the spell flies off half a second to a second later. I like bows because you can ready the arrow, but the moment you want that arrow to fly, you just release the button and it goes. But magic's not like that at all. You have to press the button, and -then- aim at the intended target.

 

In Skyrim, you could ready a spell in advance, and then release it to fire it. Is there a mod that adds that? I did see Chargeable Spells, but it only adds a few chargeable spells, I don't think it'd play well with L.A.M.E, and it does some crazy stuff with magicka that makes Atronachs hate themselves. I don't want the spells to grow in power as you hold down the button, I just want to be able to hold a spell ready so I can immediately fire it off when I see an enemy.

 

Another option would be to move the animation to the end of the spell. Make the spell fire off nearly instantly, but you have to wait after you fire off the spell before you can throw out another one. I suppose that would fix the problem, but I'd much rather have a charging system.

Link to comment
Share on other sites

Oblivion spell system is much different from the Skyrim one. While in skyrim you can hold spells, place traps or even release a continuous spell, in Oblivion you can just tap the cast button and everything is up to the character who "slowly" cast it, depending on the animation speed.

 

Easy way: You can change the animation, so the spell is casted immediately.

 

Hard way: You can create a whole new spell system (if the engine and the scripts allow you). I don't know if you can force the player wait with the spell in his hands, since you have no control on it. You can simply disable the vanilla cast action (possible), then create a script which manage to cast the spell only when you release the cast key (should be possible as well, with some hard work).

Edited by forli
Link to comment
Share on other sites

Oblivion spell system is much different from the Skyrim one. While in skyrim you can hold spells, place traps or even release a continuous spell, in Oblivion you can just tap the cast button and everything is up to the character who "slowly" cast it, depending on the animation speed.

 

Easy way: You can change the animation, so the spell is casted immediately.

 

Hard way: You can create a whole new spell system (if the engine and the scripts allow you). I don't know if you can force the player wait with the spell in his hands, since you have no control on it. You can simply disable the vanilla cast action (possible), then create a script which manage to cast the spell only when you release the cast key (should be possible as well, with some hard work).

Yeah, I might just look for an animation replacer.

But I don't think it'd be that hard to change the spellcasting system, if the engine allows it. Play X animation on CastButtonPress, play Y animation on CastButtonRelease (and actually fire the spell) IF It's been Z seconds since CastButton was pressed. Then again, I wouldn't even know where to begin with changing that...

Link to comment
Share on other sites

Say, could I, through scripting, turn a spell into a hold-button-down type spell, like shields and concentration spells in Skyrim?

 

I've got a Birthsigns mod I'm working on, and I'm wanting something like that for a new Atronach lesser power. Instead of the Atronach granting a passive maybe-it-will-work spell absorption shield, you get a lesser power that, as long as you're holding the casting button, gives you complete spell absorption, but also heavily drain your fatigue. Maybe something like this?

ScriptName AtronachShieldThingy

Begin ScriptEffectUpdate

If IsCommandPressed == Cast
	Player.AddSpell FullSpellAbsorption
	Player.Addspell FatigueDrainAlso
	ToggleSpecialAnim TouchCastLoopOrSomething
Else
	ToggleSpecialAnim TouchCastLoopOrSomething
EndIf

End 

I dunno, something like this. As you can tell, I'm not a good scripter at all. :tongue: But I'm pretty sure there's some OBSE command that can check if a command is pressed, rather than having to search for the key something is bound to, and check if that specific key is pressed. Not too sure about the others, the CSWiki's a bit hard to search through.

Edited by Pumpkinbot
Link to comment
Share on other sites

  • Recently Browsing   0 members

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