9zAZO Posted April 13 Share Posted April 13 I've been working on some custom summon spells through scripting, but I have encountered a pretty bizzarre glitch. Whenever a custom summon is killed, for the reminder of the spell duration, all other characters involved in the battle freezes. They can still attack you if you get close, but they won't move on their own as long as the spell is active or the same creature is summoned again. I used this tutorial to make the spells https://cs.uesp.net/wiki/Scripting_Tutorial:_Summoned_Creatures Is there a way that this inconvenience can be fixed? Everything is perfect save for this. Thanks in advance. Link to comment Share on other sites More sharing options...
RomanR Posted April 14 Share Posted April 14 Propably inserting "Dispel" command would help, if it's really the only problem: if ( timer > 30 ) ;Creature is dead and fade timer passed ;Move our creature back to its holding cell if killed == 0 SUMN.kill endif SUMN.moveto CreatureCageREF 0 0 10 ;Reset our creature if dead SUMN.resurrect ;Set our creature to an unprocessed state SUMN.disable ;If creature was killed by something else, dispel a summon spell if killed != 0 set killed to 0 dispel {Editor ID of this spell} endif endif ;Adjust timer state for early fade/disable upon death if ( SUMN.getdead == 1 ) && ( timer < 28 ) set timer to 28 set killed to 1 ;new short "flag" variable endif Link to comment Share on other sites More sharing options...
9zAZO Posted April 14 Author Share Posted April 14 I've been trying to update the script, but I always receive a "Script Syntax Error. Unkown command 'killed'." Does CS need to be launched with OBSE to have that line be properly read? If so, is there a way to make it work without using OBSE? Link to comment Share on other sites More sharing options...
AndalayBay Posted April 14 Share Posted April 14 Roman introduced a local variable to keep track of the state of the summons, as he says in a comment on the second last line of the script snippet. Link to comment Share on other sites More sharing options...
9zAZO Posted April 14 Author Share Posted April 14 So, I managed to fix that issue, but now another one showed up When the summon dies, it doesn't play the fade nor death animation anymore, but it just poof out of existance instantly. This is the script in question. What am I getting wrong? Spoiler ScriptName AAASummonWolfApprenticeScript float timer float fade short playonce ref SUMN Begin ScriptEffectStart set SUMN to SummonWolf1REF SUMN.disable SUMN.moveto Player 30 30 10 SUMN.enable set fade to 1 set timer to 0 set playonce to 0 End Begin ScriptEffectUpdate set timer to timer + GetSecondsPassed if ( timer > 0.1 ) && ( playonce == 0 ) SUMN.pms effectSummonMythicDawn 1 set playonce to 1 endif if ( SUMN.getdead == 1 ) && ( timer < 34 ) set timer to 35 endif if ( timer > 35 ) && ( playonce == 1 ) if SUMN.GetDead == 0 SUMN.kill endif set playonce to 2 endif if ( playonce == 2 ) set fade to fade - 0.03 SUMN.saa fade endif if ( timer > 35 ) SUMN.moveto CreatureCageREF 0 0 10 SUMN.resurrect SUMN.disable endif if (SUMN.getdead == 1) SUMN.moveto CreatureCageREF 0 0 10 SUMN.resurrect SUMN.disable dispel AAASummonWolfApprenticeSpell endif End Link to comment Share on other sites More sharing options...
RomanR Posted April 15 Share Posted April 15 You're using Dispel command at a wrong time. Timer conditions are mismatched too, making a "fade phase" never to occur. Spoiler ScriptName AAASummonWolfApprenticeScript float timer float fade short playonce short killed ref SUMN Begin ScriptEffectStart set SUMN to SummonWolf1REF SUMN.disable SUMN.moveto Player 30 30 10 SUMN.enable set fade to 1 set timer to 0 set playonce to 0 set killed to 0 End Begin ScriptEffectUpdate set timer to timer + GetSecondsPassed ;first play a summon effect if ( timer > 0.1 ) && ( playonce == 0 ) SUMN.pms effectSummonMythicDawn 1 set playonce to 1 endif ;if creature was killed too early ;move timer ahead and set a flag if ( SUMN.getdead == 1 ) && ( timer < 34 ) set timer to 34 set killed to 1 endif ;begin a "kill phase" if ( timer >= 34 ) && ( playonce == 1 ) ;if creature was not killed already, kill it if killed == 0 SUMN.kill endif set playonce to 2 ;begin "fade phase" endif ;make creature transparent if ( playonce == 2 ) set fade to fade - 0.03 SUMN.saa fade endif ;prepare creature for next summon if ( timer > 35 ) ;give some time to creature become transparent SUMN.moveto CreatureCageREF 0 0 10 SUMN.resurrect SUMN.disable ;if timer was moved forward, dispel this spell if killed != 0 set killed to 0 dispel AAASummomWolfApprenticeSpell endif endif End Link to comment Share on other sites More sharing options...
9zAZO Posted April 15 Author Share Posted April 15 Everything works perfectly now Thank you so much Link to comment Share on other sites More sharing options...
9zAZO Posted April 21 Author Share Posted April 21 (edited) Ok so uh... After extensive testing on all summons I've making, I've discovered another strange glitch, this time is more severe because it can cause the game to crash. Apparently, when I summon specifically a Spriggan, the first time she appears she is immediately killed, then, on re-casting the spell, she appears normally, but doesn't use the summon bear spell all base Spriggans have. Also, sometimes, it can happen that, upon death of said summon, the game crashes. The scripts is the same listed two posts above. What could possibly be causing this other strange issue? Thanks you in advance Edited April 21 by 9zAZO Link to comment Share on other sites More sharing options...
LenaWolfBravil Posted April 21 Share Posted April 21 Make sure that there is no script attached to the spriggan or that you are not using a mod that attaches a script to the spriggan. It is cut content and a lot of mods like to put it back which would completely mess up your spell. Link to comment Share on other sites More sharing options...
9zAZO Posted April 21 Author Share Posted April 21 I've checked every mod for the script in use, but nothing seems to restore it. And again, after testing, I found out another serious bug : ( Apparently, when you move from cells while you have a scripted summon out, the script actually stops working. The creature isn't killed anymore on time out nor gets refreshed properly if it's killed, but you need to recast the spell to make it go away, and if you summon again, the problem persists. and I thought I had the hang of this. Link to comment Share on other sites More sharing options...
Recommended Posts