Quantcast
lotrointerface.com
Search Downloads


Go Back   LoTROInterface > LotRO Stand-Alone Plugins > Other

Category: OtherSkillTimer
Interface Information
Download
How do I install this? (FAQ)
Name: SkillTimer   Popular!
Author:
Date: 05-03-2014 04:06 PM
Size: 1.82 Kb
Version: 0.1
Rate File: 5 out of 5 with 1 votes  
Pictures
Click to enlarge 

Views: 0
Size: 16.67 Kb
Dimensions: 349 x 144
SkillTimer output - time has been reset between each test
 
Description
This is the plugin I used to determine the skill timings, as described here.

This plugin reports when any of your skills goes on cooldown. In the Lua interface, cooldowns are represented as a ResetTime (when the skill's cooldown will be ended) and a Cooldown (the skill's total cooldown time). The plugin reports the skill name, ResetTime - Cooldown (when the skill went on cooldown), and Cooldown.

Skills appear to have an activation time (ACT) and a global cooldown time (GCD), as well as a regular cooldown and induction time. When a skill is activated, both the ACT and GCD timers start. Once the ACT timer is finished, the skill goes on cooldown. Once the GCD timer is finished, other skills may be used. By using the plugin to look at when a skill goes on cooldown, we can determine the ACT and GCD of a skill. So far I have come up with three use cases (all examples are a champion with no attack duration modifiers using a two-handed sword):

1. Spamming a skill to determine its ACT. Since a skill does not go on cooldown until its ACT has finished, if we spam a skill, the amount of time between skill uses will be the skill's ACT + the skill's cooldown. Since we know the cooldown, we can then determine the skill's ACT.

For example, if we spam "Wild Attack", we might get:
Code:
Wild Attack: 0 1.7999999523163
Wild Attack: 3.720644980669 1.7999999523163
"Wild Attack" is the skill name, 0 and 3.72 are the times at which the skill went on cooldown, and 1.80 is the cooldown. The sequence of events looks something like:
  • Time = 0.00, Cooldown = 1.80, First Wild Attack finished activating (ACT end), cooldown started
  • Time = 1.80, Cooldown = 0.00, First Wild Attack finished cooling down, Second Wild Attack started activating (ACT start)
  • Time = 3.72, Cooldown = 1.80, Second Wild Attack finished activating (ACT end), cooldown started.
Bolded times indicate times observed using the plugin. "Wild Attack"'s second ACT period started at 1.80 and ended at 3.72, meaning its ACT is (3.72 - 1.80 = 1.92).

Similarly, if we spam "Swift Strike", we might get:
Code:
Swift Strike: 0 3.2000000476837
Swift Strike: 3.5933996737003 3.2000000476837
Again, the sequence of events look like:
  • Time = 0.00, Cooldown = 3.20, First Swift Strike finished activating (ACT end), cooldown started
  • Time = 3.20, Cooldown = 0.00, First Swift Strike finished cooling down, Second Swift Strike started activating (ACT start)
  • Time = 3.59, Cooldown = 3.20, Second Swift Strike finished activating (ACT end), cooldown started.
Giving "Swift Strike" an ACT of (3.59 - 3.20 = 0.39).

2. We can execute two skills whose ACTs we know in succession in order to determine the first skill's GCD. Since the GCD of the first skill will start when its ACT does (which will be when the first skill goes on cooldown minus its ACT) and ends when the second skill's ACT starts (which will be when the second skill goes on cooldown minus its ACT), we can determine the first skill's GCD from the timing information.

For example, "Wild Attack" followed by "Swift Strike" might give us:
Code:
Wild Attack: 0 1.7999999523163
Swift Strike: 1.0002981722355 3.2000000476837
This time, the sequence of events is:
  • Time = -1.92, pre-GCD = 0.00, post-GCD = x, Wild Attack started activating (ACT and GCD start)
  • Time = 0.00, pre-GCD = x - 1.92, post-GCD = x - 1.92, Wild Attack finished activating (ACT end)
  • Time = 0.61, pre-GCD = x - 2.53 = 0, post-GCD = y, Wild Attack's GCD finishes, Swift Strike started activating (ACT and GCD start)
  • Time = 1.00, pre-GCD = y - 0.39, post-GCD = y - 0.39, Swift Strike finished activating (ACT end)
Here, we can see that x = 2.53, which is "Wild Attack"'s GCD. In actual practice, I assume that the GCD of skills is related to their weapon speeds, so I would "round off" 2.53 to 2.50 - the weapon speed of a two handed weapon.

3. If we know the GCD and ACT of a skill, we can determine the ACT of a second skill, by using the known skill followed by the unknown skill. Since we know when the GCD of the known skill started, we can find out when the GCD of the known skill ended - which is when the unknown skill must have activated. Then the unknown skill's ACT is just when the time between when it was activated and when it went on cooldown.

For example, "Wild Attack" followed by "Feral Strikes":
Code:
Wild Attack: 0 1.7999999523163
Feral Strikes: 2.4202138781548 4.1999998092651
Here, the sequence of events is:
  • Time = -1.92, pre-GCD = 0.00, post-GCD = 2.50, Wild Attack started activating (ACT and GCD start)
  • Time = 0.00, pre-GCD = 0.58, post-GCD = 0.58, Wild Attack finished activating (ACT end)
  • Time = 0.58, pre-GCD = 0.00, post-GCD = z, Wild Attack's GCD finishes, Feral Strikes started activating (ACT and GCD start)
  • Time = 2.42, pre-GCD = z - 1.84, post-GCD = z - 1.84, Feral Strikes finished activating (ACT end)
So "Feral Strikes"'s ACT covered from time 0.58 to time 2.42, making it (2.42 - 0.58 = 1.84).

A couple notes:
This plugin is very rough - it will not determine if your skills have changed (i.e., due to leveling up, trait switching, etc.) You will need to unload and reload the plugin in order for it to be able to accurately report cooldown information for the skills. (It resides in the apartment "SkillTimer", so you can just "/plugins unload SkillTimer" "/plugins load SkillTimer" to reload it.)

You can reset the time (so the next skill used will be the new "time 0") by using the command "/st". There is no feedback when "/st" is used.

The timings appear to vary (mostly just a little bit - +/-0.02 or 0.03 seconds, but sometimes by as much as 0.10 seconds or more). I would advise anyone using this to take multiple measurements of whatever skill timing you are attempting to measure. There will be some outliers, which I would advise you to discard, and a bunch of points that are roughly in the same band - I tend to assume ACTs will be shared by multiple skills (1.38, 1.67, 1.52, 1.83 show up as the ACTs of a number of champion skills), and GCDs which are based on weapon speeds (most GCDs are based on 0.25, 0.50, 0.55, 0.65, and 1.00 of the speeds of the weapons being used). Whatever is going on, it does not appear to be fully consistent.

Also, I have no idea why all the cooldown times are never nice round numbers like 1.8 vs 1.7999999523163 - it may be a C floating point thing - as far as I am aware, Lua is perfectly capable of representing 1.8 as 1.8. Unfortunately, this means I do not know which is the "true" cooldown - this plugin assumes that the non-rounded cooldown is correct, for the purposes of determining when a skill went on cooldown.
File Statistics
User Rating:
5 out of 5 with 1 votes
Downloads: 3446
Views: 16464
Favorites: 3
Uploaded By:
 
Last Modified: 05-03-2014 06:20 PM by moebius92    

View Pictures. Download Now! Post A Comment


Post A Reply
Author Comments Comment Options
Unread 10-01-2019, 03:31 PM  
Thurallor
The Undying
 
Thurallor's Avatar
Interface Author - Click to view interfaces

Forum posts: 182
File comments: 318
Uploads: 19
It should work if you install this. Place the Turbine folder into your Plugins folder.
Thurallor is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 10-01-2019, 02:37 PM  
vedaire69
The Wary

Forum posts: 1
File comments: 2
Uploads: 0
Re: SkillTimer

Does anyone have an updated version of this plugin or one similiar to it im trying to work some stuff out and I am not a coder by any means would love to see this working again as I keep getting an error at MAin.lu: 31 says attempt to call global 'class' a nil value

surely someone can fix the code in this so its works
vedaire69 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 09-29-2019, 05:07 AM  
vedaire69
The Wary

Forum posts: 1
File comments: 2
Uploads: 0
SkillTimer

Does anyone have an updated version of this plugin or one similiar to it im trying to work some stuff out and I am not a coder by any means would love to see this working again as I keep getting an error at MAin.lu: 31 says attempt to call global 'class' a nil value
vedaire69 is offline Report comment to moderator   Reply With Quote Reply With Quote
Post A Reply

 
Category Jump:
Search this Category:
 

All times are GMT -5. The time now is 10:06 PM.


Our Network
EQInterface | EQ2Interface | Minion | WoWInterface | ESOUI | LoTROInterface | MMOUI | Swtorui