Home Dota 2

Courier and Motion Extraced

polycounter lvl 9
Offline / Send Message
Baddcog polycounter lvl 9
The workshop courier page
http://www.dota2.com/workshop/requirements/npcs

mentions 'motion extraced' under the run animation info and says to see dev wiki on that subject. But the dev wiki doesn't list.

Basically it's about the forward movement speed. How to animate the run cycle and use forward movement.

Does anyone have info on this? Are you supposed to animate in one spot? Or add a distance for the anim, and if so, what is that distance?

There is more info lower on the workshop page, 300 units per sec. walking and 350 flying (520 bursted). The model is in meters, so is that the 'unit, 1 meter?) (160 meter lift in code for flying)

Replies

  • vertical
    Options
    Offline / Send Message
    vertical polycounter lvl 9
    I didn't touch animation on couriers but I would extract some couriers to examine what has been done.
  • heboltz3
    Options
    Offline / Send Message
    heboltz3 polycounter lvl 9
    So out of all the couriers I've done, I've never worried about that. They are basically saying that 30 FPS is the amount of time it should take your guy to do one cycle to match properly with the courier template. This might be information about how to trouble shoot if you are Digging deeper into the process. Maybe some other animators who are more familiar with the engine could give you a bit more advice.

    Sorry if this is only sorta helpful?


    (As a long shot, this might be dealing with root motion, if you want that to happen, but like I said, not sure.)
  • Baddcog
    Options
    Offline / Send Message
    Baddcog polycounter lvl 9
    edit:... OK

    I reread again and what I am taking from Valve's comments now is that:

    They animate their courier on the forward movement distance (so the feet aren't skating).
    Then they 'motion extract' (ie: delete) the forward movement of the root bone. So the forward movement is all code, just animated for better looking anim.
    =========

    I don't have internet atm (library now). And i don't have Maya to examine the files. However the courier files from workshop page are incomplete. ie: no death anim, though there is a wing_death anim. The stock courier falls over dead, but the flying one zips off into the clouds.

    I am dling Dota update but it's got hours left so...


    I take it we need to compile the courier with a qc file and all the anims, then upload those files?

    I still have a lot of work to do so not too worried about that YET. Just finished rig, so really looking at figuring out all the correct anims i need. The list as i can tell is:

    spawn
    idle
    idle rare
    run (run rare has load slot- broken)
    death
    capture (portrait)
    capture rare
    wing_idle
    wing-idle-rare
    wing-run (run rare has a load slot but appears to be broken)
    wing-run boost
    wing death
    wing- capture
    wing-capture-rare

    About the rig..

    I was just going to have a winged courier (even the runner). Though I realized this could be misleading to players). Easy enough fix (a little rebaking) so I will have wing and non-wing.

    Question is, does it have to be same rig as wing cour and non-wing appear to have completely different anims.
    So the non-wing i can delete the wing bones? (make new ones for backpack)
  • heboltz3
    Options
    Offline / Send Message
    heboltz3 polycounter lvl 9
    Yup, that's how in game animation works. Valves system assumes that you have a 30 frame cycle, and every 30 frames of animations (which is 1 second) they move the courier forward in space X amount. This alleviates the "skating" effect that you were talking about, however it's probably not ""actually"" doing genuine root motion, as there are too many variables for submitted couriers to nail every time. The donkey isn't a perfect example to follow, as it is made by valve they can introduce perfect root motion to have absolutely 0 foot slide (as well as any other number of bells and whistles). Going down the rabbit hole of decompiling the donkey to potentially mimic the root motion, thus eliminating all foot slide could be fun(I say could, because this is all just hypothetical guessing and it could be a huge waste of time), but in the end if it Did work you wont actually notice that much of a difference if you just animate in a 30 frame cycle in place.

    It's also worth noting that in the documentation they only time Valve mention you must animate off the origin is for the Falling Death Animation where the root control must be a certain number of units in the Y direction (i cant remember off the top of my head).

    When you submit a courier, you do not need to compile anything. You can just use FBX and import per usual.

    The list is looking fine, keep in mind that rare runs havent worked ever, but it looks like you have taken note. As for your questions..
    Baddcog wrote: »

    Question is, does it have to be same rig as wing cour and non-wing appear to have completely different anims.
    So the non-wing i can delete the wing bones? (make new ones for backpack)

    It doesn't "have" to be the same rig. It can be a completely different rig, but if you want it to, thats fine. It's also probably best if you have different animations for ground and flying modes, but again your call. There isn't any reason that you technically cant, but you aesthetically should (that's opinion) On all the couriers I've worked on I've used the same exact rig and just built in controls for flying vs ground modes.

    Hope this helps! If you have any questions feel free to shoot me a message on steam or skype :D
  • Baddcog
    Options
    Offline / Send Message
    Baddcog polycounter lvl 9
    Thnx,

    Good info. Ill basically use same rig, just deleting wing bones and use for backpack.
    I think the rare run anims do work.but... donkey seems to just have a wing flsp run and a glide which valve seems tp use akso for boost anims. I couldnt tell diff.

    Im in ofline mode so cant look at my custom courriers. Sad face.


    I should have enough anims to test soon. Glad compile not needed.
  • heboltz3
    Options
    Offline / Send Message
    heboltz3 polycounter lvl 9
    Rare runs dont work.
  • Baddcog
    Options
    Offline / Send Message
    Baddcog polycounter lvl 9
    wasn't trying to argue that... (was on phone too)

    EDIT:: OK, I have read through your courier thread and see that it is an import bug issue....


    I had just noticed that the pony courier does use two anims for flying at least (didn't see a change in running).

    Flapping wings and gliding. At first I thought the glide was a boost, but that was just coincidence. Each time you call him (from an idle) he has a chance to pick either anim. Boost or not. But if you just change his direction (he never stops to idle) he will not change anims.

    Still updating Dota (couple hours on wifi) so I haven't seen if you can upload rare runs or not. and still can't test the couriers I've purchased...


    Textures:

    Can we use alpha/spec/masks? From what I gather alpha doesn't seem to work. Haven't seen anything about masks yet.

    EDIT: OK, dled :)
    looks like masks ARE required just as heros to upload.

    ;
    edit-

    Also, radiant/dire versions...

    Can we upload diff versions? I noticed last night the donkey has a radiant/dire vers.
    Also some workshop couriers have them.

    Guess some of this will be answered soon. Only 20 min or so until update complete...
    Trying to compile all cour info though :D

    For anims? I know workshop info can be out of date. Currently it says compile with QC but heboltz3 said we can just upload fbx.

    For the turn anims? I take it that's not needed now? Or just a one frame pose needed?

    EDIT:
    Looks like there aren't required but if you do a center pose you HAVE to do a left and right...

    So, what do these comprise of? Just the center pose turned to each side? Maybe the head turned in that direction? A little twist to the waist? It says it blends with center but...

    The importer says nothing about bounding boxes, but I think I read in another thread it's automatic on import?
  • Baddcog
    Options
    Offline / Send Message
    Baddcog polycounter lvl 9
    Whoops doubl post
  • Baddcog
    Options
    Offline / Send Message
    Baddcog polycounter lvl 9
    Woot!

    First Courier in game. Not without issues of course.

    Don't know why but I tilted the root bone to angle him n flight, so his head is sticking in the ground atm (using flying run for run anim)

    I exported a few anims by froms from a file, but both are in one. Guess they need broken down before export.

    Have wicked normal seams. I always seem to get that. I baked objspace normal and converted with handplane. Dunno. The meshes verts are wleded, but not the uv verts.

    And don't try to test a courier with a custom courier installed, you gotta exit game, remove and restart. Must just replace the default.

    ----
    also exported with z up, so my guy is looking at the ground all the time :(

    Progress :D
  • Baddcog
    Options
    Offline / Send Message
    Baddcog polycounter lvl 9
    EDIT:

    OK, found the donkey files:

    It is:

    models/props/gameplay/donkey and donkey_wings
  • Baddcog
    Options
    Offline / Send Message
    Baddcog polycounter lvl 9
    Also found that if you are swapping files from one comp to another you will get invis courier.

    The fix is to also copy over the dota beta> CONTENT folder. This must have files related to uploadng/workshop/user id.
  • heboltz3
    Options
    Offline / Send Message
    heboltz3 polycounter lvl 9
    It appears you are having a lot of problems uploading a courier to dota.

    What exactly is the end goal here? Just to submit a courier to the workshop?
Sign In or Register to comment.