Addon: EkRaidAttend
Author: Dargen
Guild: Eternal Keggers
Server: Norgannon

A raid attendance addon for World of Warcraft.


TABLE OF CONTENTS

General notes

Keys and commands

The MAIN tab

The OPTIONS tab

The LISTS tab

Interfacing with EkWaitList

Interfacing with CT_RaidAssist


GENERAL NOTES

About the addon

EkRaidAttend's job is to record the names of the people in a raid at a given time. It can do this automatically based on a timer or when a boss is killed, or it can be done manually by you at any time. It can also record the main character name of a player if they were playing the game using an alternate character at the time. You can have the addon record only the names of the people in the current zone, and you can choose whether to record the names of players that are offline.

Once an attendance list has been saved by the addon, you can copy it to the addon's notepad. By selecting the text in the notepad and pressing Ctrl-C, you can copy the character names to the Windows clipboard. The contents of the clipboard can then be pasted into an input form on a DKP web page, or pasted into a text editor, etc. There are also buttons that will let you remove duplicate names, remove non-guildmember names, and sort the names. You can also create an intersection of attendance lists that contains only the names of the people that were on each of the selected lists.

If you have the EkWaitList addon installed, then EkRaidAttend can record the names of the people that are on the wait list, either as a separate attendance list, or combined with the names on the main attendance list.

If you have the CT_RaidAssist addon installed, then EkRaidAttend can record the names of the people in the /raresist, /raitem, and /radur windows. This could be used to reward people who meet certain minimum resistances, bring certain quantities of items, etc.

The addon does not track how long a person was in the raid, when they logged out/in, what was looted, how much DKP they have or how it should be assigned, etc. It simply collects lists of names at a given point in time. What you do with the collected data is up to you.

Automatically generated attendance names

Each time attendance is taken, the computer saves the names of the players under a unique attendance name. These automatically generated attendance names are formatted as follows: Zone or boss name, Local date and 24 hour time (Year/Month/Day Hour:Minute:Second), 24 hour server time (Hour:Minute), and some text describing the type of attendance ("Boss", "Instant", "Zone", "Timed", "Timed start", "Timed stop", "Resist", "Item", "Durability").

Wait list attendances that are stored in their own attendance list, will include the text "Wait list" after the text describing the type of attendance. If the wait list names are included with the main attendance, then the text "+ wait list" will appear instead of just "Wait list".

For "Resist" attendances there will also be the name of the resist and the minimum resistance. For "Item" attendances there will also be the name of the item and the minimum quantity. For "Durability" attendances there will also be the minimum durability.

The final text consists of any user supplied comments.

Main/alternate character names

To find out which characters belong to the same player, the addon will look in a character's public or officer guild note for the name of the main character. There is an option in the EkRaidAttend UI that lets you tell the addon whether you are storing the main character names in the public guild note or in the officer guild note.

The main character name can be located anywhere in the guild note, as long as the addon can find it. The addon searches for the main character name by looking for specific text before and/or after the name. There are options available in the EkRaidAttend UI that allow you to specify the text (if any) that precedes the main character name in the guild note, and the text (if any) that follows the main character name in the guild note. Each main character name must be spelled correctly and follow the correct format.

Here are some examples of different ways to specify the main character's name in a guild note. The guild note in the examples below are for an alternate character named Joe, who has a main character named Tom. In this example, "[" and "]" are used around the main character name to identify it as such.

It is not necessary to put the main character's name in their own guild note. If the addon cannot find a name in a character's guild note, then it assumes that they are the main character.

Although the name of the main character can be put anywhere in the guild note, you might find it convenient to put it at the start of the note. This way all of the characters belonging to a player will be grouped together if you sort the guild list by the note column.

Main/alternate character names are used by the addon to take attendances using the name of a player's main character instead of the name of the character they are currently playing.

The addon will work even if you do not put main character names in players guild notes. It will just assume that every character is a main character.


KEYS AND COMMANDS


Key bindings

You can assign a key that will allow you to toggle the current EkRaidAttend window. To assign a key, open the game's main menu, select "key bindings", and scroll down to the "EkRaidAttend" section.


Slash commands

Note: You can use /ekat, /ekattend, or /ekraidattend to begin any of the following slash commands.

Symbols used in the command summary:

Taking attendance

User interface

Miscellaneous


The MAIN tab

This tab allows access to the buttons that will let you take timed or manual attendances.


Reload UI

The reload UI button at the top of the screen will reload your user interface. This is equivalent to typing: /console reloadui. Reloading the UI will force the game to write any unsaved attendances to disk, preventing you from losing the data in case your game or computer crashes. Keep in mind that the game does not save any addon information until you logout or reload your UI.

Attendance comment

The text entered here will appear the end of the computer generated name used to save the attendance data.

Timed attendance

This section of the window includes buttons that will allow you take attendance using a timer.

Manual attendance

This section of the window includes buttons to take an immediate attendance (ie. you don't have to wait for a timer).


The OPTIONS tab

This tab contains the various windows that will let you configure the options for the addon. The options are described here in the same sequence they appear in the option windows.


Make this window movable

The EkRaidAttend window can operate like a standard UI window such as the social window (friends, guild, etc) or you can turn on this option to move it anywhere on the screen.

Show addon information at login time

After logging into a character, this option will make the addon display some text in the chat window showing the addon's name, version number, and slash command used to access the addon.

Show timed attendance status at login time

After logging into a character, this option will make the addon display the current timed attendance status in the chat window (enabled/disabled, timed interval, next attendance time).

Remind me if there are unsaved attendances

This will display a reminder in the chat window if there are any unsaved attendance lists. You can specify how often the reminder will appear by enter a value in the reminder interval area.

Remind me to start the timed attendance

This option will display a reminder in the chat window if you are in a raid and have not started the time attendance. You can specify how often the reminder appears by entering a value in the reminder interval area.

Play sound for timed attendance

Enable this option in order to make the addon play a sound whenever a timed attendance is taken.

Take a screenshot when attendance is taken

This option will make the addon take a screenshot whenever an attendance is taken. This screenshot can act as a backup copy of the attendance data in case your game/computer crashes before the data can be saved to disk. Unlike addon data, screenshots are immediately written to disk by the game.

If you enable this option you should periodically delete old screenshots, otherwise you disk will keep filling up as more screenshots are taken.

Prompt to reload the UI when attendance is taken

When this option is enabled, the addon will prompt you to reload your user interface whenever an attendance is taken. Reloading the UI will force all unsaved attendances in memory to be written to disk. Other than reloading your UI, the only other way to save unsaved attendances is to logout of your current character.

The prompt window that will appear, includes one button to reload the UI, and one to close the window. It also includes a checkbox that will let you temporarily disable any further prompts while you are in the raid. A second checkbox will let you permanently disable the prompt. If you permanently disable the prompt, you can re-enable it later by clicking on the "Prompt to reload the UI when attendance is taken" option in the options window.

Record offline players

This will let you record the names of offline players in the attendance data when an instant, zone, boss, or timed attendance is taken.

Record wait list when attendance is taken

If this option is selected, then the names on the EkWaitList wait list will be recorded in an attendance list whenever attendance is taken. If you don't have EkWaitList installed, then this option will be ignored.

Show online names in the chat window

This will let you display the names of the online raid members in the chat window when an instant, zone, boss, or timed attendance is taken.

Show offline names in the chat window

This will let you display the names of the offline raid members in the chat window when an instant, zone, boss, or timed attendance is taken.

Search guild notes for main character names

If you select this option, then the addon will search through a player's public or officer guild note to try and find the name of their main character. This main character name is used to identify which characters belong to the same player. This information can be used when taking attendance.

This is an example of a guild note that contains a main character name, and uses the "[" and "]" characters to start and end the name: abc [Joe] def. If a character does not have a main name included in their guild note, then the addon will automatically use the character's name as their main name.

Take attendance when bosses are defeated

The addon contains a list of certain boss names and can detect when those bosses are defeated. However, you must be within a certain distance of the boss when it dies, or the game will not notify you about its death. This option will make the game take an automatic attendance whenever one of these bosses is defeated. You can enable/disabled detection for each included boss in the "Bosses" section of the options.

Bosses

This window will let you enable/disable individual bosses. If a boss is enabled, then the addon will watch for their death, and when detected will take an automatic attendance. It is important that you be within a certain distance of the boss, otherwise the server will not notify your computer when the boss dies, and as a result the addon will be unable to take an attendance.

The list of bosses is organized by instance, with a separate section for bosses that are not located in an instance. You can expand or collapse each section by clicking on the +/- button to the left of the section name. An "Expand all"/"Collapse all" button located near the top of the window will instantly expand/collapse all of the sections.

Within each section is a list of bosses. Click on the checkbox to the left of the boss name in order to enable/disable the boss. When enabled, the addon will detect when that boss dies and take an attendance. There are also two buttons labeled "Enable all" and "Disable all" that will let you quickly enable/disable all of the bosses with a single click.

Certain bosses have special handling built into the EkRaidAttend code in order to prevent taking attendances at the wrong time, since some bosses can die multiple times depending on the situation.


The LISTS tab

This tab provides access to the attendance lists window, the players in an attendance list window, and the notepad window.


Attendance lists window

This window lets you browse through the attendance lists. The zone/boss name is shown in the first column, the local date and time of the attendance is shown in the second column, and the type of attendance list/comments are shown in the third column. The columns can be sorted in ascending or descending order by clicking on the column heading. Note that sorting the data with the addon does not affect how the data will appear if you view the data with an external parsing program. A tooltip will display more information about each attendance list than can fit in the window.

You can select one attendance by clicking on it once. If you control click on an item, you will add it to the current selection (or remove it from the current selection if it is already selected). If you shift click on an item, you will select all items between the item you click on and another already selected item. The "Select all" button will let you quickly select all of the lists.

The "Delete" button will delete the currently selected lists.

If you double click an item (or select an item and then click on the "Players" button) you can view, add to, or remove players in that attendance list.

The "Copy" and "Append" buttons are used to put player names into the new notepad. Once there they can be copied to the Windows clipboard. The "Copy" button will clear the contents of the notepad and then add the names in the selected lists to the notepad. The "Append" button will add the names to the end of the notepad without clearing the contents of the notepad. The "Notepad" button will take you to the notepad window.

The "Intersection" button is used to copy to the notepad only those player names that are found in ALL of the selected attendance lists. Wait lists (if selected) will be combined with main attendance lists (if selected) before any names are compared. One use for this button is to determine who was present for the entire raid. Select the attendances that were taken during the raid, and then click this button to determine who was there for the full raid.


Players in an attendance list window

This window will let you view the names in an attendance list. You can sort them by clicking on the column headings. You can add a name to a list using the "Add" button, edit a name using the "Edit" button, and remove selected names using the "Remove" button.

As with the attendance lists window, you can select one or more items by using click, control click, shift click, or the "Select all" button. You can also copy or append selected player names to the notepad.

The "recorded as" column shows the name that was recorded for attendance purposes. The "played as" column shows the name of the character that was actually playing when attendance was taken. The two may be different if you have enabled the "record using main character names" option. In this case the "recorded as" name will be the name of the player's main character, and it will be shown using a different colour.

The "recorded as" name is the one that will be copied to the notepad, or extracted via an external parser program. It is the name that you intend to use for attendance/dkp tracking purposes.

The "status" column can indicate various things, such as whether the player was online or offline when attendance was taken, if the player was on the wait list, or if the player was manually added to the list.

The "Back" button will return you to the attendance lists window.


Notepad window

The notepad can be reached from either the attendance lists window, or the window that shows the players in an attendance list. Both of those windows will let you copy or append player names to the notepad. Copying names will first clear the notepad, while appending names will not.

When there are names are in the notepad, you can select them using the mouse, the "Select all" button, or by pressing Ctrl A. You can then copy them to the Windows clipboard using the keyboard (Ctrl C). Once you have names in the clipboard you can Alt-Tab to the dkp page and paste (Ctrl V) the names into the web form.

The "Delete all" button will delete all of the text currently in the notepad. Use the "Back" button (or the Esc key) to return to the previous window (ie. the attendance lists or player lists).

The "Merge" button will remove duplicate lines of text from the notepad. This is useful if you have appended multiple lists into the notepad and want to end up with a single list of unique names (ie. no duplicates).

The "Sort" button will sort the lines of text in ascending sequence.

The "Guild only" button will remove names that are not in your guild. This button assumes that the only thing on each line of the notepad is a character name.

The "Main names" button will convert alternate character names in the notepad to main character names. For the addon to do this you need to have specified the player's main character name in their guild note using the [main] character name format. If a character does not have a main character name in their guild note, then they are assumed to be the main character. This button assumes that the only thing on each line of the notepad is a character name.

You can also use the notepad to keep general notes, however the contents of the notepad are not saved so anything you put in it will be lost when you logout.


Interfacing with EkWaitList

EkWaitList is a wait list addon that will let you maintain a list of people that want to join the raid. You can update the list manually, or have people send special whisper commands to the person running the wait list. These special whisper commands allow people to add and remove themself to the wait list, and see who is on the wait list. EkWaitList can also make use of the main character names stored in guild notes to allow people to whisper from either their main or alternate characters.

If you have the EkWaitList addon installed, then EkRaidAttend can record the names of the people on the EkWaitList wait list when an attendance is taken. You can have EkRaidAttend store those names in a separate attendance list, or combine them with the names in the main attendance list.

When a wait list attendance is taken, it is given the same basic name as the main raid attendance plus the words "Wait list". If the wait list attendance is combined with the main raid attendance, then the attendance name includes the words "+ wait list" instead.


Interfacing with CT_RaidAssist

If you have CT_RaidAssist installed, a special "EkRaidAttend" button will appear at the bottom of CT_RaidAssist's /raresist, /raitem, and /radur windows.

For the /raresist window, the "EkRaidAttend" button will open a window where you can select one or more types of resistance, and specify a minimum quantity for each. Clicking on the 'Record names' button will create a separate attendance list for each resistance that you have selected. The lists will include the names of the players who had the minimum resistance or better.

For the /raitem window, the "EkRaidAttend" button will open a window where you can specify a minimum quantity. Clicking on the 'Record names' button will create an attendance list containing the names of those people who had at least the minimum quantity of the item.

For the /radur window, the "EkRaidAttend" button will open a window where you can specify a minimum durability. Clicking on the 'Record names' button will create an attendance list containing the names of those people who had at least the minimum equipment durability.

The name of the attendance list will indicate what type of check was done, (Resist, Item, or Durability), the resist or item name if applicable, and the minimum value. Each player's actual value will be recorded in the attendance list, and can be seen later by viewing the players in the attendance list.

The addon will remember the minimum quantities that were used for each resistance, item, and durability so that you won't need to re-enter them the next time.