Home   Alb Mobs   Hib Mobs   Mid Mobs   Frontier Mobs   Atlantis Mobs   All Mobs   Site Map


Dipper is a program for measuring lengths of interrupted casts in DAOC. The name stands for "DAOC interrupt parser."

Dipper uses two different methods to measure fractions of a second. Neither method is very precise, but by averaging large numbers of interruptions, the program attempts to produce accurate results.

Instructions for installing program

Copy or save the executable file (dipper.exe) to any directory on your hard disk. You can run it from Start:Run, from a command window, or from a shortcut. It doesn't require an installation program.

Instructions for use

1. Record a chatlog on the caster's computer whle the caster is being hit. Hold down the cast key during the entire time you are recording. The program uses autorepeat spam lines from the cast key for timing purposes, so it's important to cast continuously without pauses.

2. Put the caster on your fastest PC. Eliminate as much load from that PC as possible: Close other programs, turn off spell effects, use the ToA client instead of a newer one, etc. The idea is to allow the client to service key repeats as fast as possible without fluctuations in speed.

3. The more interruptions you record, the more accurate your results will be. 400 interruptions produce extremely accurate results on my computer. (That's about 20-30 minutes of logging.)

4. After you finish recording the chatlog, run Dipper to analyze it. Provide the name of the chatlog to Dipper as a command-line argument. For example, if you run Dipper from the command line, you would type something like:

c:>dipper mychat.log

You can also run Dipper (and provide the name of the chatlog file) from a short cut, from Start:Run, or from a batch file.

Interpreting results

The program presents its main results in a table like this:

A (Pre-int)
B (Post-int)
Qty spam lines
Seconds (spam-res)
Seconds (1-sec-res)

Column A measures the average length of time between casting and getting interrupted.

Column B measures the average length of time between getting interrupted and the next cast.

Total is A + B.

Qty spam lines measures lengths of time by counting the number of spam lines that are placed in the chatlog as a result of holding down the cast key.

Seconds (spam-res) converts the qty-spam-lines measurement into seconds by counting the number of spam lines that occur during blocks of one second.

Seconds (1-sec-res) measures lengths of time with chatlog time stamps, which have a resolution of one second, and averaging them.

The methods used to calculate each of the two Seconds measurements are semi-independent, so if those two numbers are far apart, that's an indication that something is wrong.

Request from the author

Since this program is new, I would appreciate it if you would help test its accuracy by validating it once by hand when you begin to use it. In other words, count the number of spam lines in sections A and B of your chat log for at least one interrupt, and check whether the program comes up with the same numbers.

Legal stuff

This program (both executable and source code) has been placed in the public domain by its author. You can do anything you like with it. You use this program at your own risk. No warranties, express or implied, are made with respect to it.

Revision History

May 12, 2005 (ver. .02): renamed variables to make the program easier to understand; reorganized it slightly to make the internal logic match the A-B nomenclature used on VN to make it easier to read; fixed bug that caused a variable to be treated as an integer instead of floating point.

May 13, 2005 (ver. .03): cleaned up source code a little more to make it easier to read.

May 13, 2005 (ver. .04): added one-second-resolution timings to the results; reformatted results into tabular form.

  Download it
Executable v. 04

Source code v .04
(Written for MSVC++ 6.0)
Please send additions and corrections to robbie @ daoc-trophy-mobs.com.

Copyright 2003-16 DAOC-Trophy-Mobs.com.