Page 2 of 3
Re: Unit Attack Speed
Posted: Sat Sep 26, 2009 7:10 pm
by Pyro
Re: Unit Attack Speed
Posted: Sat Sep 26, 2009 8:08 pm
by ThreeTigerSilverWind
THANKS!!!!!!!
Re: Unit Attack Speed
Posted: Fri Apr 30, 2010 4:00 pm
by CRC
Reusing the thread.
I'm looking forward to calculate unit attack speed / maximum speed of ordinary units we use in multiplay games, but can't figure out. Can anyone help me out?
I run Fear and take a look at its maunual (newest one) and now see;
- Recover Time(RT) and Animation Rate(AR) have something to do with attack speed, and
- Attack speeds up by Recover Time Experience Delta(RTED) for every kill (but up to 5 kills?).
So, for instance, Warrior sword swing has RT 0.100, AR 1.000 to 3.000, RTED 0.100. How can I calculate attack rate (attacks per sec) at 0 kill and maximum attack rate/kills? I'm afraid sequence frame also affects for I don't have any way to access collection tags (I'm on Intel mac, but meh have old iBook which haven't booted for years).
Re: Unit Attack Speed
Posted: Sat May 01, 2010 4:22 am
by Graydon
Your example seems accurate, I'm not entirely sure what part you're not understanding, but I'll try to break down the parts I know about a little bit further, and add a few extra bits of information in.
As you've speculated, the base animation rate comes from the collection. If you send a PM to Myrd or Melekor they can likely give you access to a modern tool still in production called Oak. It allows us Intel Mac users, and I suppose more importantly all PC users (at last), to edit collection tags. Within the collection are 'sequences'. In each sequence there's a few fields for values to be entered. 'Ticks per frame' is the number of ticks (1/30th of a second) each frame lasts, and this directly alters how fast the animation plays. If you end up altering the ticks per frame you should also edit the 'Transition Period' which is calculated by simply multiplying the number of frames in the sequence, by the ticks per frame.
On to Fear. Again, as speculated, Recovery Time is how long it takes (in seconds now, not ticks) after the sequence has finished playing, before it will play again. Recovery Time Experience Delta essentially takes the value set in its box, and subtracts it from the current recovery time each time the monster gains a kill. You questioned whether 5 is the maximum, and it isnt, but I'll explain those details afterwards. For this example lets assume we're using the default bungie setting of 5 kills being the maximum vetting number.
Warrior starts with recovery time of 1.0, and has an experience delta of 0.1.
0 Kills = Recovery of 1.0 Seconds
1 Kills = Recovery of 0.9 Seconds
2 Kills = Recovery of 0.8 Seconds
3 Kills = Recovery of 0.7 Seconds
4 Kills = Recovery of 0.6 Seconds
5 Kills = Recovery of 0.5 Seconds
In Fear 1.7 we have the ability to enable "extended flags". In the monster tag, click the Flags button, then on the upper right tick the "Use Extended" box, enabling a second list of options. At the bottom, tick Custom Experience Limit, and under that enter whatever max vetting number you want that unit to have. As you can imagine, in doing so you will likely want to lower the Recovery Time Experience Delta so that the unit doesn't become a powerhouse after just a few kills, but instead has a nice curve of gradual improvement.
Hope that helps.
Re: Unit Attack Speed
Posted: Sat May 01, 2010 6:20 am
by CRC
Thanks reply Graydon, it helps but can I ask some more?
I understand that I need to access Collections, and actual attack speed will be
Transition Period(TP) / 30 + RT - RTED * kills (up to 5) (seconds).
Graydon wrote:Warrior starts with recovery time of 1.0, and has an experience delta of 0.1.
0 Kills = Recovery of 1.0 Seconds
1 Kills = Recovery of 0.9 Seconds
2 Kills = Recovery of 0.8 Seconds
3 Kills = Recovery of 0.7 Seconds
4 Kills = Recovery of 0.6 Seconds
5 Kills = Recovery of 0.5 Seconds
Warrior has 0.1 RT in Fear, but you say it starts 1.0. How can I relate these values? (like multiply by 10?) Also, theres some units like Berserk which has 0.0 RT and has 0.1 RTED. What happens when RT become minus? (attack speed is limited by
Transition Period or not?)
I'm making big Excel sheet which lists all unit attributes that concern gameplay (attack damage, range, walk speed, vitality, resistance etc.). It will be useful for new players if there's any. Veteran players know it mostly by their experience but it will be useful as well for them. For example, if you have warriors and stygians injured with some kills, and a few heal (which is often the case with gimble game), it helps to determine what units are the best to heal.
Thanks.
Re: Unit Attack Speed
Posted: Sat May 01, 2010 6:39 am
by Zeph
I think graydon meant 1s as an example because I'm pretty sure by memory that warriors start with 0.1 ?
What's weird is that recovery time of -1 is faster than 0. So basically, a very well vetted warrior will start to be very good at 3 kills. (-0.1recovery)
Re: Unit Attack Speed
Posted: Sat May 01, 2010 9:16 am
by CRC
So I got back to 1st question. How can I calculate attack speed?
Re: Unit Attack Speed
Posted: Sat May 01, 2010 10:41 am
by vinylrake
might be something of use at The Myth Graveyard (mythgraveyard.mything.org) - type 'unit stat' in the 'title' searchbox in the sidebar.
Re: Unit Attack Speed
Posted: Sat May 01, 2010 3:57 pm
by Graydon
Aye warrior is actually a poor real life example, and as Zeph stated I pulled 1.0 seconds out of a hat for an example, and stupidly used warrior as my example which is also the example you used but with proper values. I think when recovery time hits 0 or -0.1 the collection is literally playing at full speed, back to back, with no 'recovery time' between repetitions. What this basiclaly indicates is a warrior with 1 or 2 kills is going to be as quick as a warrior with 5.
A better example is the bowman. He has a Recovery Time of 2.5 seconds, and an Experience Delta of 0.067. Minimum attack rate is the base recovery time. Max attack rate is (Recovery Time) minus (Experience Delta • Total Kills up to 5).
You apparently mis-understood the one thing I was saying about collection editing. TICKS PER FRAME edits the animation speed. Transition Period has to do with a unit changing sequences, say from walk to flinch, and I suppose the transition time in ticks it takes for that to happen? I've never been entirely clear on what Transition Period is actually doing, I just know from examples that the value in that field should always be (total frame count • ticks per frame).
Re: Unit Attack Speed
Posted: Sat May 01, 2010 7:45 pm
by CRC
Thanks for pointer vinylrake it has useful informations for my original purpose but it seems it does not say anything new or certain about attack speed.
Graydon wrote:I think when recovery time hits 0 or -0.1 the collection is literally playing at full speed, back to back, with no 'recovery time' between repetitions. What this basiclaly indicates is a warrior with 1 or 2 kills is going to be as quick as a warrior with 5.
Hmm, I think warrior with 1 kill is not much different from with 0 kill, while 4 or 5 is significantly improved (this is why I thought your example was correct values). Also some units like Stygian Knight have 0
Recovery Time but improve very well by kills. I think some fixed value, say Default Recovery Time, is added to RT? Anyone have any idea about it?
And about
Transition Period, I understood but just was lazy to write "total frame count * ticks per frame". ;/
Re: Unit Attack Speed
Posted: Sat May 01, 2010 8:32 pm
by Pyro
Transitional Period deals with a Mode in the collection. Mode provides a certain effect. Most (if not all) sequences on most collections are set to None for Mode but the other options are Fade In, Fade Out, Appearing, Disappearing, and Cycle. These give the mapmaker the ability to make a unit look invisible without being invisible. I think this might have been something Bungie was going to used instead of the script method to make units fade in/out or appear ghostly. The smaller the Transitional Period value is the faster the mode cycles from start to finish.
As for the Styg example, yes the RT is set to 0 but that is for recovery time added to the unit. That does not mean the unit doesn't have some sort of pause between attacks. I don't know the formula but surely as stated before ticks per frame and number of frames is part of it. The styg attack has 8 frames and is set to 2 ticks per frame. So we know it at least takes 16 ticks to go through the attack sequence. After that I think it uses the hold for attack which is one frame that takes 4 ticks. The styg has a RT delta of 0.1, so by the 5th kill it has a RT of -0.5. And in myth a second is 30 ticks. So that would mean the styg should be 15 ticks faster after 5 kills.
Open Fear, open the "06 warrior" unit tag and select styg for both monster and collection ref. Open the stygian object and alter its slashing dmg value to zero. Now play Gonen's Bridge. Get one styg and attack the thrall/soulless coming form behind. It seems around 5 (maybe 6?) kills the styg reaches its max speed even if you increase the vet limit to over the default 5 kills to say 255.
Re: Unit Attack Speed
Posted: Sat May 01, 2010 9:50 pm
by ThreeTigerSilverWind
Is a unit's hold for attack sequence a part of its Transitional Period?
I seem to recall that the Heron Guard holds for attack very often. For example, as it approaches an enemy unit, such as a Thrall, the Heron would hold for attack just as it came within attack range, and the Thrall would end up getting in the first swing b/c of the Heron's hold for attack.
I recall thinking, "This should not be! A thrall should not get to draw first blood on a member of the most elite fighting force in Myth history!"
Anyway, if holding for attack is a component of the Transitional Period, would minimizing the value for Transitional Period also minimize or eliminate the hold for attack sequence for Herons?
Re: Unit Attack Speed
Posted: Sat May 01, 2010 9:55 pm
by ThreeTigerSilverWind
Or could we also accomplish this by simply lowering the tick values for the Hold for Attack sequence (if this sequence is indeed separate from the Transitional Period)?
Re: Unit Attack Speed
Posted: Sun May 02, 2010 2:47 am
by Pyro
You misunderstood what I said. Transitional Period has nothing to do with how long a unit takes to play out a sequence or how long it waits between attacks. It is for certain effects you can set with Mode in the collection tag's sequences.
I am likely missing pieces of the overall formula but it seems to be that its the following:
[(Total Frames x Ticks per Frame) + Hold for Attack]/30 + [Recovery Time - (Recovery Time Experience Delta x Number of Total Kills*)]
*Number of Total Kills can only be as high as the maximum experience limit is for the unit. The default max would be 5. Keep in mind if this unit can be affected by morale, morale affecting units could add or subtract the number of total kills.
So for the styg it would be:
[(8 x 2) + 4]/30 + [0-(0.1 x 0**)]
**This example shows a stygian knight with no kills.
The styg seems to take 20 ticks which is 0.666 seconds to attack while one with 5 kills would take 5 ticks which would be 0.166 seconds. Though there is likely a bit more delay where the game decides what to do next, I would think.
Re: Unit Attack Speed
Posted: Sun May 02, 2010 3:37 am
by Graydon
Another variable to throw into this mix is whether or not the monster in question has a 'block' sequence. If it does, that's severely going to handicap how you calculate consistent attack rates. Does anyone know if Recovery Time comes into play after a monster blocks an attack, instead of attacks?