Skip to content

Set Spells/Round to 2 - how?

I'm trying to create an effect to cast 2 spells per round, one very 3 seconds instead of the default 6 seconds.

I'm working with DLTCEP. There is the "Increase Spellcasting Speed" effect, which says "Set the Spells/Round parameter to the number of spells to be able to cast in a single round."

Unfortunately, any value for the Spells/Round parameter, including 0, works like Improved Alacrity: cast the next spell as soon as you're done casting. I want to create this 3 second delay between casts. Is it possible?

Thank you.

Comments

  • [Deleted User][Deleted User] Posts: 0
    edited September 2014
    The user and all related content has been deleted.
  • SvengaliSvengali Member Posts: 9
    edited September 2014
    Interesting suggestion, unfortunately the work required is overwhelming.

    How about an instant spell that casts the 'aura clense' opcode when it's cast, then at 3 seconds, then every 6 seconds (0s, 3s, 9s, 15s...) ? Unless I'm missing something it should do what I need with a hell of a lot less work, assuming the opcode exists and I can find it :) [Edit: it would have to be cast every 3 seconds, not every 6 as I calculated.]

    Edit: Hmm if not maybe I could use Daer'Ragh's Aura Cleansing (the effect behind Improved Alacrity) with as short a duration as possible.
    Post edited by Svengali on
  • SvengaliSvengali Member Posts: 9
    edited September 2014
    deleted
  • GrammarsaladGrammarsalad Member Posts: 2,582
    Svengali said:

    Interesting suggestion, unfortunately the work required is overwhelming.

    How about an instant spell that casts the 'aura clense' opcode when it's cast, then at 3 seconds, then every 6 seconds (0s, 3s, 9s, 15s...) ? Unless I'm missing something it should do what I need with a hell of a lot less work, assuming the opcode exists and I can find it :)

    Edit: Hmm if not maybe I could use Daer'Ragh's Aura Cleansing (the effect behind Improved Alacrity) with as short a duration as possible.

    There is a "repeating effect"opcode that might do this (you see it ingame with spells like the cleric detect traps and (i think) druid insect summoning spells. I have never used it though. I wonder how the timing would work. You may need the spell to be an instant cast, but it all depends on how the aura cleanse timer works
  • CrevsDaakCrevsDaak Member Posts: 7,155
    You could try doing it with WeiDU before tearing down yourself like a masochist by doing it with a GUI program and clicking more than in Diablo II. An LPF ADD_SPELL_EFFECT variables_defining_stuff END should work here pretty well, check out this for further documentation on that topic.

    BTW, the opcode subtledoctor mentioned and the one you are mentioning are the same--there's just one opcode to remove the waiting time between casting spells.
  • GrammarsaladGrammarsalad Member Posts: 2,582
    CrevsDaak said:

    You could try doing it with WeiDU before tearing down yourself like a masochist by doing it with a GUI program and clicking more than in Diablo II. An LPF ADD_SPELL_EFFECT variables_defining_stuff END should work here pretty well, check out this for further documentation on that topic.

    BTW, the opcode subtledoctor mentioned and the one you are mentioning are the same--there's just one opcode to remove the waiting time between casting spells.

    This is the way to go. I'm fairly certain repeating eff won't work the way you want.
  • SvengaliSvengali Member Posts: 9
    The Find Traps spell actually is coded to cast a find traps effect every 6 seconds, which is why I had to put that in 100 times for a 10 turn find traps spell :/

    I've not worked with WeiDU before, I'd better get to work installing and learning it. Thank you for the lead!
  • SvengaliSvengali Member Posts: 9
    WeiDU requires too big of a commitment to learn so I'm back to DLTCEP. I worked out how to get an effect to cast periodically: create spell A, then spell B to cast spell A 10 times every 3 seconds, then spell C to cast spell B 10 times every 30 seconds, etc.

    Two problems I've run into:

    1. Getting the alacrity effect to run as an instant. I can make it a 1 second effect, but if I set it's duration to 0 it doesn't work, and the duration variable requires an integer. This is a problem as it will allow me to cast endless '0 cast time' spells during that second. Hmmm, maybe placing the effect on an item and somehow getting it to automatically switch every 3 seconds...?

    2. Even when the effect triggers, the game does not register it as it does the end of a round. If I have a spell queued it will not start casting it until round is over (6 seconds), even though it could be cast mid way through (at 3 seconds). If I manually give the cast command after the alacrity effect has taken place (and before the end of the round) it will work, but otherwise the game waits for the round to be over. I expect this to be impossible to solve, I could potentially work around it by having a color change/sound trigger with the effect so I know when I'm free to cast the next spell, but this is not what I envisioned.
  • SvengaliSvengali Member Posts: 9
    That's what it has come down to: Improved Alacrity for 1 second every 3 seconds, the only indicator is the alacrity symbol on the character portrait. When I see it, it means I can cast. Not the most elegant solution, but it works, kindof. There is some inconsistency as sometimes I have enough time to cast more than one spell (when the first spell has a cast time of 1).

    I also used the method described earlier to create a 24 hour Find Traps spell, that checks for traps every 2 seconds. The problem is that I have to deactivate the "Actions" feedback, or it will notify me of every single Find Traps action (every 2 seconds I get a line of text telling me Rincewind searched for traps). But if I disable action messages I won't be notified what spells my opponents have cast :/
  • kjeronkjeron Member Posts: 2,367
    Set the Spell Name of the sub spell cast every 2 seconds to "-1". It won't be listed in the text window.
  • The user and all related content has been deleted.
  • SvengaliSvengali Member Posts: 9
    kjeron said:

    Set the Spell Name of the sub spell cast every 2 seconds to "-1". It won't be listed in the text window.

    The problem is not the spell I created but the effect, the same effect used every 6 seconds in the priest "Find Traps" spell is hardcoded to display the "find traps" text line when action feedback text is on. But thanks for the tip, may come in handy at some point.

    Svengali said:

    But if I disable action messages I won't be notified what spells my opponents have cast :/

    Once I got used to it I far preferred playing this way. I mean is Charname some kind of telepath that he always knows precisely what spells are cast by every other caster? A human being already has so many advantages over the AI, I found giving up that particular advantage actually improved the game for me.
    I see your point and I considered it while playing, especially since you don't see the name of the spell until it is actually cast, so there's not much you can do abut it anyway. Still, I prefer to be informed. I would imagine a mage would recognize spells as they are being cast, and in neverwinter nights you could actually see what spell was being cast (as soon as the casting started) after a spellcraft check IIRC.

    An update, while playing I felt that a spell every 3 seconds is a little too much (it was not so different from persistent alacrity) so I changed the spell to cast 1 second of alacrity every 4 seconds. But before I activated it, I played a little without at and found out 1 spell every 6 seconds is just right. The irony.

    Also, the method I used for casting spells periodically is flawed (create spell A, then spell B to cast spell A 10 times every 3 seconds, then spell C to cast spell B 10 times every 30 seconds, etc.). After leaving Irenicus' dungeon I got about 6 find traps messages at once (every 2 seconds), meaning the spell somehow got scrambled and it was no longer working as intended. I had to remove about a thousand active effects with EEKeeper to get rid of it (not willing to rest a couple times until it expires). Same thing happened with the intermittent alacrity, effects kept piling up.
Sign In or Register to comment.