Page 1 of 1
Idle Animations
Posted: 26 Jun 2005, 04:22
by Neuralize
My units look so dead all the time, and it's not because I'm losing, It would be moderately cool if the units spun their turret, or raised and lowered their barrels, or just looked like they were looking around.
I do realize that this could just create a bunch of uneeded synced data that could lag the game more, but I want to see a little more life in the battlefield.
Posted: 26 Jun 2005, 04:23
by Dragon45
This is a modding thing, not a source thing. And yes, there's already some units that do this.
Posted: 26 Jun 2005, 04:30
by Neuralize
Well, it would be nice if all units idly animated by default, instead of creating a script for each one. Just something simple like random axis placement of the turret.
Posted: 26 Jun 2005, 05:08
by Warlord Zsinj
Heh, it'd be cool if you used the information that the 3D sound loads, and make units rotate their turrets to face the direction of the nearest sound...
Posted: 26 Jun 2005, 06:24
by mongus
animation scripts for single units sound cool too...
how bout a some unit performing a little dance when idle :D
better yet, a generic dance script, (of many) is aplied to a idleing unit, making it do funny moves... and looking different from unit to unit.. even when its the same script.. morphing?
Posted: 26 Jun 2005, 07:25
by smokingwreckage
THis'd have to be done unit-by unit and preferably in such a way as to not need synching. More network traffic is bad.
Posted: 26 Jun 2005, 10:57
by Min3mat
hehe BFME if the hobbits are idle they dance a great lil caper :D Mav's spinning their guns would be pretty cool!

Posted: 26 Jun 2005, 11:36
by Durandal
Mmh ... how about making it a particle thing ? Venting steam, sparks from exposed panels, etc ? The particles need not be net-synched, either, and they're easier to do, aswell.
Posted: 26 Jun 2005, 11:37
by Min3mat
yeah that would be pretty cool but i don't think it would really work for idle units...
Posted: 26 Jun 2005, 11:58
by zwzsg
This is not something to be implemented in the engine. This is something that unit-makers must script in their units. PLEASE DO NOT MAKE THE SPRING ENGINE INVENT IDLE ANIMATION. I already had way too much trouble fighting the smoothing, if I have to fight against random call to AimPrimary I might as well give up modding for Spring. It already breaks enough of my script that Spring re-calls it every instant when TA calls it once.
Posted: 26 Jun 2005, 14:45
by smokingwreckage
Trying to make the engine create an idle animation on-the-fly that will work with every unit and not break anything should only require the engine to be five or six human-level-sophistication ai's with excellent aesthetic sense and a flair for design and animation and no personality clashes who don't want to get paid or rule the world.
Easy. Why isn't it done already?
Posted: 27 Jun 2005, 07:12
by [K.B.] Napalm Cobra
Maybe if they just have exausts defined and let out little puffs of smoke.
Yes yes I know its the future and they probably arn't running on crude oil derived fuels but who cares, it might look cool.

Posted: 27 Jun 2005, 10:00
by AF
Well I'd say that would all be something done on the modding side, aka listen to zwzsg.
Although for damage maybe a flag so that the engine can place damage textures over where a weapon hit and vent smoke and sparks, I find the effect makes hull damage in homeworld a lot more realistic.
Posted: 27 Jun 2005, 12:07
by zwzsg
In good old original TA, there is the function HitByWeapon(var1,var2) that gets called each time the unit receive a shot. No one has ever truely exploited them, but in old TA it already was possible to place damaged texture and smoke on part that were hit. TA:Final Frontier starships lose pieces when damaged, and TLL Titans change their texture to damaged when they are, but so far I haven't seen any TA unit with location specific damage, but the possibility is here, and there's probably some third party units that I don't know of that have it. One problem was that in TA, weapon can already travel quite a bit in one tick, so you can't be very precise. Try the comm laser on the ground for instance, you'll see the point hit jump suddenly when you try to move the target location little by little.
Tradionnally HitByWeapon is only used to make the unit rock a bit when hit
var1 is the z-coordinate of the received shot, and so the amount of wanted rotation around the x-axis.
var2 is the x-coordinate of the received shot, and so the amount of wanted rotation around the z-axis.
Both coordinates exprimed in the local reference, centered and oriented by the unit, it's the axes seen in 3Do Builder, save maybe z whose sign might be inverted
Oh and the HitByWeapon in totala1.hpi and scriptor is very very badly written, use your own script.
If Spring already handle HitByWeapon properly, any units can already have location specific battered look if properly modelled and scripted, without any change to the engine.
However, having to write a complicated script and having to create new pieces for every part that can change look is a bit too complex.
Maybe it would be easier to provide two models, and tell the engine: ok, gradually shift from unit_new_and_shiny.3do to unit_torn_and_battered.3do, and let the engine handle the changes from one to the other according to the unit health and where the weapon hit.
So to sum up:
- Anyone who wants damaged texture where the weapon hit can already do it using HitByWeapon(z,x).
- For way later, it could be nice to have a new FBI tag: BatteredModel=...; and have the engine handle the transition.