SC2Mapster Forums

Development > Data

Having some trouble changing animation speed

  • 6 posts
    #1 Jan 15, 2013 at 09:13 UTC - 0 likes

    Hello, I've been attempting to use the "animsettimescale" for a few hours now with no success. I have searched online on how to change animation speed but they generally just say "just use animsettimescale" with little instruction on how to use it.

    I am making a game where movement is driven by triggers, and I just play the walk animation as they are moved. The default animation has worked fine until I chose the Thor, his walk animation is far too slow and so I would like to speed it up. However, when I set the time scale of his "Walk" animation it remains unchanged. I am sure I am doing something wrong and my lack of knowledge in the Data editor is the problem, but if someone could give me a hand i'd be grateful.

    Currently i'm using the Unit Birth event to trigger the time scale action. I would use the AnimPlay event, but I can't find a simple "Walk" animation in the huge list it gives me, there is a variety of Thor related animations such as attacking and death, but not walking : \

    Here is a screenshot of the events on my Actor I would like to edit: http://i.imgur.com/Ga6vb.png

    #2 Jan 15, 2013 at 19:04 UTC - 0 likes

    You have to use the AnimPlay event, right click "Add Term" and select the correct term, it is called something like "AnimPlaying" I think.

    The AnimSetTimeScale only works for a specific animation that is already playing, so setting it once at UnitBirth can't work, you have to set it every time you are playing the animation I think. I'm not 100% sure though.


    Check out my project:
    MechCraft

    #3 Jan 15, 2013 at 19:41 UTC - 0 likes

    Thanks a lot for your reply, and I think you're definitely onto something! I set the event to Animplay with the Anim Playing term set to "Walk" (terms are something that have escaped my notice) however the animation still does not want to change at all when using any of the animation events like set time scale, set time, or set duration. I know the event is firing at the right time because using the same animplay and anim playing walk events I had a string send messages, and that would happen at the right time. Here's an updated screenshot, http://i.imgur.com/4rz6F.png

    Thanks again :)

    Last edited Jan 15, 2013 by Drdangers
    #4 Jan 15, 2013 at 19:59 UTC - 0 likes

    Another Solution might be to change the

    Animation: Walk Animation Movement Speed Field in the Actor of the unit
    instead of the events unless it is necessary for it to be there

    By adding a value to the | Animation: Walk Animation Movement Speed |
    it will increase or decrease the speed of the walk animation

    #5 Jan 15, 2013 at 20:06 UTC - 0 likes

    This is true of units being moved with the normal function of right clicking and using the in game movement speed as a measure, however since I am using triggers to drive my unit, their move speed is technically 0 at all times, I appreciate the input though :)

    #6 Jan 15, 2013 at 21:05 UTC - 0 likes

    The first "Walk" term in the AnimPlaying condition refers to the arbitrary name given to each animation object. Make sure this name actually is "Walk" for the forced walk animation (which I assume you cause via trigger).

    If that doesn't help, try something like a Signal event in the actor that plays the animation (Signal*"walknow"->AnimPlay "Walk" (arbitrary name) Walk (sequence name) PlayForever); send the Signal "walknow" via trigger. If this works the actor doesn't recognise the AnimName term from the trigger (probably out of scope)

  • 6 posts

You must login to post a comment. Don't have an account? Register to get one!