Aiskhulos Posted March 2, 2012 Share Posted March 2, 2012 I don't really know anything about modding, but you guys said you were looking for a good landing/takeoff animation. May I suggest the animation that the reunited ghost lovers use in the Book of Love quest when they ascend into the air? To me, it seems like a perfect fit. Link to comment Share on other sites More sharing options...
porroone Posted March 2, 2012 Share Posted March 2, 2012 Yes I tried that but that animation locks the player controls and doesnt let you move. Link to comment Share on other sites More sharing options...
Keldis Posted March 2, 2012 Share Posted March 2, 2012 (edited) Yes I tried that but that animation locks the player controls and doesnt let you move. Did you ever try the IsRunning this way?: Create 1 Spell and attach 4 Magic Effects( i.e:WalkForwardEFF,WalkBackwardEFF,WalkRightEFF,WalkLeftEFF)Every Magic Effect containts fragments of your code for the given Direction, and every Magic Effect has the condition IsRunning == X(you can add that condition directly on the spell when adding magic effects) So when you add this Spell on a Perk, the linked effect for that Condition will be true everytime you walk in this direction and false if you make a 5th effect that dispells them all. you could even do it without a Perk like this (attached to a quest): Scriptname PseudoFly extends Quest Import Game Spell Property FlySpell auto Event OnInit() RegisterForUpdate(1) endevent Event OnUpdate() Actor Player = GetPlayer() Bool hSpell = Player.HasSpell(FlySpell) if hSpell == FALSE Player.AddSpell(FlySpell) ; or Player.DoCombatSpellApply(FlySpell, Player) endif endevent So only and idea of mine. Edited March 2, 2012 by DarkenDe Link to comment Share on other sites More sharing options...
porroone Posted March 2, 2012 Share Posted March 2, 2012 That could actually work, I'll give it a shoot see what comes out. Link to comment Share on other sites More sharing options...
Keldis Posted March 2, 2012 Share Posted March 2, 2012 ah i messed up the condition, i meant the GetMovementDirection condition :P Link to comment Share on other sites More sharing options...
porroone Posted March 2, 2012 Share Posted March 2, 2012 (edited) Yea I know what you meant, you could even get jump with that method.Edit: Well I have to say you just showed me a new whole world to mess around, this is going to take time but I belive with this I can do everything I want to do, you can even get globals with this, which means actions or hardcoded states, so the idea is to make a parent script which will handle all the child scripts, the child scripts will have the conditionals and the parent will handle which one runs. Edited March 2, 2012 by porroone Link to comment Share on other sites More sharing options...
Keldis Posted March 2, 2012 Share Posted March 2, 2012 This is what my new script became: Scriptname FlyWalkFW extends activemagiceffect import debug import utility event OnEffectStart(Actor T, Actor P) while(TRUE) float aX = P.GetAngleX() if aX < 0 Setinifloat("fInAirFallingCharGravityMult:Havok",-50) endif if aX > 0 Setinifloat("fInAirFallingCharGravityMult:Havok",0.20) endif endwhile endevent Idle Property JumpStandingStart auto The spells runs in a loop yes, which is not good at all, i need to figure a way arround that, because the stuff i want to call only starts when the effect itself starts, no postproccessing like in the OnUpdate() statement, but you could always do it as a quest i think. In my script i still use the angles, which seems a good way doing it, movement direction are a good way aswell, the problem is or mabye is, that it only triggers if you move, when playing fly anims you controlls are locked, so you cant use them. oh and one site question, i asked that in anohter thread already, i need this for my new Fly script: Is there a way to Set Game Setting from a Scripts (SetGS papyrus counterpart) would be nice to have it for some falldamage settings. and here is the Video for what i did: Link to comment Share on other sites More sharing options...
porroone Posted March 2, 2012 Share Posted March 2, 2012 (edited) I can see there you use jump to increase z position right ? and the movement direction isnt really an issue, you can use global conditionals, like actions, ActionMoveForward, or strafe or jump, I still need to test it but seeing you already using jump to increase height im pretty sure it will work.The beauty of actions if I understand it correctly is that they are called with a key, for example ActionMoveForward is called when you press W, which sets a behavior graph that makes you move forward. Thats the problem I found out when trying to play animations on my rideable dragon, whenever I try to play an action on it, the source, in the case on the character being an input key "W" , and the dragon being a hardcoded AI, completly overtakes any movement you want to apply to the creature. Edited March 2, 2012 by porroone Link to comment Share on other sites More sharing options...
dontkeepscore Posted March 2, 2012 Share Posted March 2, 2012 This is a theory I've been battling back and forth on. The question is are player controlled actions derived from AI Package Procedures or are they separate and hardcoded into the engine. If it's the former, then the problem we're having with animations is simply the fact that the procedure (behavior) they are attached to is a "physical" procedure. "physical" and "mental" procedures are noted in the wiki. An Actor may perform one "physical" procedure at a time while performing any number of "mental" procedures. So if we use the JumpFall animation in a loop, the game thinks we're constantly performing the "physical" procedure associated to falling, since that animation is part of a "physical" procedure in that package. Running is an example of what the game considers a "mental" procedure so we're allowed to interrupt it with an attack or a spell. I don't see a way just yet to disassociate animations from their procedures aside from tricking the game by replacing incorrect animations. The easiest approach would be some kind of interrupt to the JumpFall (or whatever) animation to perform an action, which will most likely look choppy at first but work. But I can't think of a way to do that either. I also wanted to ask how do you know the potential values for GetMovementDirection? Link to comment Share on other sites More sharing options...
xyks Posted March 3, 2012 Share Posted March 3, 2012 (edited) Could this project help with your animation problem? It allows you to add animations to the game: http://skyrim.nexusmods.com/downloads/file.php?id=11811 Since I don't really get your problem the following might be total crap:It seems there is a way to edit the behavior files, I dont know if the locked controls are linked to the behaviors in any way, but if so couldn't you jsut copy the animations modify the behavior files and readd them with this utiliy? Edited March 3, 2012 by xyks Link to comment Share on other sites More sharing options...
Recommended Posts