Jump to content

nonamed817

Members
  • Posts

    6
  • Joined

  • Last visited

Everything posted by nonamed817

  1. Is it possible to attach a trigger zone to the player? I take it that if I want to prevent player character from doing certain actions when playing certain animation the only thing I need to edit is behaviour file?
  2. Edit: All problems were caused by a wacky behaviour of .esp or game saves i.e. after editing and re-compiling script it would still behave as it did previously, even when loading a save file that was made on a clean game. I managed to get everything working by removing scripts from player alias prior to editing them and by running a clean game before testing edits. Anyway, I now have some other questions: As I understand, player movement speed during the swing is dependant on the weapon attack speed parameter. But in case it's not, what's the parameter responsible for modifying player's speed during weapon swing animation? Is it possible to modify said parameter through scripts?Creation wiki page on animation events mentions preHitFrame event, which isn't recognized by the game, unfortunately. If preHitFrame is what I think it is (a frame which detects collision of a weapon with some object, but doesn't actually apply damage), is there a similar event or action I can trigger to achieve the same result, receive an event when weapon collides with an object but before the damage is applied?I know there are workarounds for the first two without using what I'm asking, but I would like to avoid making an overbloated mess. Is it doable with standard Skyrim + SKSE papyrus functions or is writing SKSE plugin the only way to go?
  3. First of all, I did try filling it manually (despite the fill type being set to forced). It makes no difference. I also tried declaring player as variable, but to no avail. Besides, did you not read the part where I said that the script was working a few days ago? Guess I will just try re-installing again and not using SKSE this time around. If this fail, seems like I will have to try by adding perk with active ability, and use ActiveMagicEffect.
  4. Re-installed the game thrice today. Not even previously working scripts function now. I'm done. Christ, what in the hell is wrong? The simplest damn script won't work. Scriptname aaaCombatTestScript extends ReferenceAlias Actor Property PlayerRef Auto Event OnInit() RegisterForAnimationEvent(PlayerRef, "blockStartOut") EndEvent Event OnAnimationEvent(ObjectReference akSource, String asEventName) if akSource == PlayerRef && asEventName == "blockStartOut" debug.notification("Blocking") endif EndEvent Why is it so freaking random? Why was this working on a fresh installation from a few days ago, but suddenly isn't today? This is *censored*.
  5. Thank you, IsharaMeradin, but what about the second part of the question? Why does debug.SendAnimationEvent produce no effect? All right, this is strange: getting rid of the abHitBlocked condition made NPCs stagger, but only once they had around 25% of their total health removed (does this have something to do with their resistances?). Switching from StaggerStart to BleedOutStart made the script behave normal. Just what exactly is going on here? Update: Stumbled upon another problem: ScriptName ImprovedCombatParry Extends ReferenceAlias Bool DeflectWindowActive Bool ParryWindowActive Actor Property PlayerRef Auto Spell Property Stagger Auto Event OnInit() RegisterForAnimationEvent(PlayerRef, "BlockStartOut") RegisterForAnimationEvent(PlayerRef, "BlockStop") RegisterForActorAction(0) EndEvent Event OnActorAction(int actionType, Actor akActor, Form source, int slot) If akActor == PlayerRef && actionType == 0 UnregisterForUpdate() DeflectWindowActive = 1 Debug.Notification("Deflect window is active") RegisterForSingleUpdate(0.5) EndIf EndEvent Event OnAnimationEvent(ObjectReference akSource, string asEventName) If akSource == PlayerRef ElseIf asEventName == "BlockStartOut" ParryWindowActive = 1 RegisterForSingleUpdate(0.2) ElseIf asEventName == "BlockStop" UnregisterForUpdate() ParryWindowActive = 0 EndIf EndEvent Event OnUpdate() If ParryWindowActive ParryWindowActive = 0 ElseIf DeflectWindowActive DeflectWindowActive = 0 Debug.Notification("Deflect window is inactive") EndIf EndEvent Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked) If (abHitBlocked && ParryWindowActive) || DeflectWindowActive Stagger.Cast(akAggressor) EndIf EndEvent Again, getting no errors when compiling, and animation events work as desired, however, actor action events do not appear to function, and I fail to see why.
  6. ScriptName ImprovedCombatParry Extends ReferenceAlias Import Actor Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked) If abHitBlocked debug.Notification("Attack blocked") akAggressor.SetUnconscious() EndIf EndEvent I get function undefined error for SetUnconscious() when trying to compile. Another problem: debug.SendAnimationEvent(akAggressor, "staggerStart")When using this line instead of SetUnconscious everything compiles and I receive debug messages in-game as desired, however, stagger animation won't play.
×
×
  • Create New...