• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

No but seriously why are DECAY animations so impossible

Status
Not open for further replies.
Level 13
Joined
Jun 9, 2008
Messages
258
Okay yeah the title is mostly just to grab attention.

But anyway, my problem is, even with the tutorials available I haven't figured out to make decay animations: I can make animations that work fine for my purposes in gmax and the model editor, but in-game they are always buggy.

Biggest problem of all: very often the animation doesn't play at all after the unit died, and instead you get just a frozen unit animation ("Stand", etc). Especially if the unit died off-screen, you zoom into a battlefield and there are just a bunch of silent people standing around.

Is there a way to prevent that?

Random simple model with decay and decay flesh animations added as illustration.

Note: I am not using geoset animations on this one, just the base geoset rolling to the ground and lying there, that's enough for my purposes. If it just stayed that way in-game, that would be fine for me, I don't need it to turn into a skeleton. Or is the game unable to properly recognize decay animations unless it is done with geoset animations?

Also, is this something that can be fixed in the model editor or in gmax?
 

Attachments

  • Bugface Brute.mdx
    76.5 KB · Views: 38
Last edited:
The majority of wc3 classic models use geoset animations to make the body disappear and the bones appear.
This transition mostly occurs in Decay Flesh animation where the body is sinking into the ground and the corpse/bones fade or pop in.
The decay bone animation is mostly reserved for the display of the corpse/bones.

In your case, I think the only solution is to use the standard wc3 technique.
 
Level 21
Joined
May 29, 2013
Messages
1,567
Biggest problem of all: very often the animation doesn't play at all after the unit died, and instead you get just a frozen unit animation ("Stand", etc). Especially if the unit died off-screen, you zoom into a battlefield and there are just a bunch of silent people standing around.
I can't seem to replicate this problem, but you should either make the first frame of Decay Bone identical to the last frame of Decay Flesh or rename Decay Bone to Decay Flesh and vice versa.
 
Last edited:
Level 13
Joined
Jun 9, 2008
Messages
258
I can't seem to replicate this problem, but you should either make the first frame of Decay Bone identical to the last frame of Decay Flesh or rename Decay Bone to Decay Flesh and vice versa.
Thanks, and special thanks also to @General Frank . I have played around with several options like these, but anyway, so far only the thing Frank says seems to be working: I only get reliable decay animations if I make a separate geoset for it.

I'm kinda surprised @Hermit says the animation works for them - but then again, it also works for me, if I have a few of the models die, but over the course of a longer game, between 5 or 10 minutes I would say, the described glitch occurs. The sample model is a prime offender.

On the other hand, the new version I made following Frank's advice isn't giving me any trouble.

Maybe it has also something to do with the fact that to be extra sure, I also made the length exacly 60.000 . Very often with my decay animations, I am kinda "Nah, any large number will do" and give it a length of only 20.000, etc., because that makes working in gmax a lot easier. Could it be that the game doesn't properly play decay animations unless they have exactly the right length?

I had a similar problem with birth animations long ago - they never played properly, until I figured out that an animation length of say 1.000 is not enough for a building. I used to think the game would just stretch or speed up any animation as needed, so the original length didn't matter. Once I started using insanely long birth animations, it worked fine.

Here is the reworked example model, btw
 

Attachments

  • Bugface Brute.mdx
    145.1 KB · Views: 36
Level 21
Joined
May 29, 2013
Messages
1,567
You are right; birth and decay animations are usually set up with a sequence length of exactly 60000 frames so they will be scaled faster or slower by the game engine to equal the build time or decay time specified for that unit.

I don't know exactly how it works, but the problem you experienced was probably caused by the inconsistency between the animation length and the Animation Time Scale field in the Gameplay Constants.

By the way, it's kinda impressive how you used only one Draenei texture both for the unit and the hollow corpse.
 
Level 13
Joined
Jun 9, 2008
Messages
258
You are right; birth and decay animations are usually set up with a sequence length of exactly 60000 frames so they will be scaled faster or slower by the game engine to equal the build time or decay time specified for that unit.

I don't know exactly how it works, but the problem you experienced was probably caused by the inconsistency between the animation length and the Animation Time Scale field in the Gameplay Constants.

By the way, it's kinda impressive how you used only one Draenei texture both for the unit and the hollow corpse.
Thanks!!

On that note, does anyone know if it's possible to just add "time" to a model without going back into gmax? There are quite a few models I think I could try and fix by getting the decay timeframe to 60.000, if I could just slap another 50.000 at the end of the timeline

Otherwise it means just going back to gmax and having to go through all the motions again from export to setting up geoset anims in the model editor...

EDIT: actually, nevermind - I just found I already put another one of my models to 60.000 decay and it still does the thing, so I think the only reliable way is adding an extra geoset.

EDIT(2): Also, wow, do NOT add corpse geosets for the decay animation via model editor geoset import. Best case scenario, it won't show up in-game, worse case scenario, it will randomly pop up for a few seconds, 10x as big, on a completely unrelated unit (not even one using the same imported model) that you didn't touch. Holy crap. It's amazing in what creative ways things can go wrong.
 
Last edited:
Level 13
Joined
Jun 9, 2008
Messages
258
Have you accidentally assigned that corpse to a helper and not a bone maybe?
I was just gonna say that :p I retested the thing and remerged the geoset and yeah turns out the first time I attached it to the "origin" reference :p
Haven't tested it in-game yet but in the world editor preview window it already looks good

So yeah, previous false report retracted, importing geosets is, in fact, a thing you can do in this world.
 
Level 21
Joined
May 29, 2013
Messages
1,567
On that note, does anyone know if it's possible to just add "time" to a model without going back into gmax? There are quite a few models I think I could try and fix by getting the decay timeframe to 60.000, if I could just slap another 50.000 at the end of the timeline
You can change animation length with Matrix Eater and Retera's Model Studio.
me-png.251933
 
Status
Not open for further replies.
Top