If you've ever had a conversation like this..
[COLOR="DarkOrange"]"Do you want to join us in dungeon X?"

"Yes, I'm sure one of my 8 chars hasn't done it. Wait a mo while I login to them all..." [/COLOR]


Then you know the motivation for this addon.


Dad's History Addon collects significant information from your adventuring and presents it to a Desktop application called HistOffline.lua. This runs under windows using the IUP toolkit.
[B]The addon has no in-game user interface.[/B]

The game does not have to be running to use histoffline.

Game information is updated when your character logs out.

Histoffline presents information on your Dungeon achievements and leveling stats.
It is ideal for seeing which dungeons you haven't completed.

When installed for the first time, it will load your achievement list, which populates the Dungeon panels.

The Level and Location panels are only populated going forward. The game itself does not store this information.

If more than one account is used on the computer, you have an option to select the account you wish to view.


[SIZE=4]Dungeon Achievements[/SIZE]
[LIST]
[*]All Dungeons uncompleted have pale red text.
[*]Group and Public Dungeons are complete if you have the "Conqueror" Achievement.
[*]An Alliance is Complete (The column heading is Green) if you have the Alliance Conqueror Achievement.
[*]Veteran Dungeons are odd since there are several achievements. This is a number after the Dungeon Name. If you think you should have the achievement but don't, make a comment on the website.
[*]Undaunted pledges. As far as I can see, there is no difference between a Undaunted pledge Dungeon and the Dungeon at other times.
[/LIST]

[SIZE=4]Leveling[/SIZE]
[LIST]

[*]Refer to the Screenshot. One line per level. Play time is Accumulative.
[*]L27 "First Death" is missing, because the addon was still in development at that time.
[/LIST]

[SIZE=4]Locations[/SIZE]
[LIST]
[*]Visits are counted on load screens (Activation). Sometimes maps change without Activation, leaving a city for example. This is not captured at the moment.
[*]"First Visited",  a date. Again mostly blank because the addon was still in development at that time.
[*]"First Level" means level at first visit
[*]"Times Leveled" means number of times you leveled up in that map.
[*]"First Death" your level when you first snuffed it.
[*]"Deaths" How many times you died there.
[*]Known bug. Non english users may see corrupted text as the app is not unicode compatible.
[/LIST]

[SIZE=4]To Do[/SIZE]
[LIST]
[*]Ability to make character data inactive, for deleted chars. It needs to be moved to another file for storage.
[*]Capture group data for deaths and Dungeons.
[/LIST]

[SIZE=4]Installation[/SIZE]
Install the addon in the usual way. Character data is written to history.lua in the savedvariable  folder at character logout.
There is no keybinding or user interface.

[SIZE=4]Installing the Offline viewer[/SIZE]
This is mandatory as there is no other way of reporting on data.
This addon uses the IUP Lua Toolit. It only has to be installed once and doesn't need to be changed when the addon updates.
If you use my Research Timer, you will already have it.

[LIST]
[*]Search the net for IUP for windows, or go here  http://sourceforge.net/projects/iup/
[*]Unzip IUP into a folder. No other installation procedure is required. I.E it's portable.
The only folder required is "Lua52", you can delete everything else, if you wish.
[/LIST]
I will assume you are using the folder path  C:\IUP\Lua52

Log in to the game with a character and log out. That will ensure the savedvariable file exists.

[SIZE=3]First, some testing[/SIZE]
[LIST]
[*]In the Lua52 folder. Run the iuplua52.exe, which will give a little graphical dialog.
[*]Use the load button to navigate to the Histoffline.lua file. (Do not move it from its location or it won't be able to find its datafile.)
[*]Press "execute" to run it. If there is an error, please cut and paste into a message on the webpage so I can debug.
[/LIST]

[SIZE=3]Create Shortcuts[/SIZE]
Now that you know it works, create a shortcut to run it directly from your desktop.


An Example shortcut is in the shortcuts folder. You can copy it to your desktop and edit it. A screenshot of the properties dialog is included.
The [B]Target[/B] is: C:\iup\Lua52\wlua52.exe Histoffline.lua
This does not change for the mega-server or PTS.

The [B]Start in:[/B] is:   "D:\data\John\Documents\Elder Scrolls Online\live\AddOns\History"
This is for user 'John'. This user has had his documents folder redirected, which is why we don't use %USERPROFILE%/Documents   [I]It is not Reliable in cases like this.[/I]
[LIST]
[*]"Start in" varies for each user.
[*]"Start in" varies for each mega-server.
[*][B]Note that path has spaces in it, so the path is enclosed in quotes.[/B] This can be hard to see as the field doesn't show the right side, although pressing the END key will put the cursor there.
[*]If you use more than one server, install the addon to that server and create a shortcut for that server with the correct "Start in:". You don't have to change IUP.
[/LIST]

The easiest way of getting the correct path is to
[LIST]
[*]Delete contents of the Start in: Field on the Shortcut.
[*]Use explorer to Navigate to the history addon folder. See Screenshot.
[*]Click in the address bar to highlight it.
[*]Ctrl-C to copy the path.
[*]Click inside the Start in: Field on the Shortcut.
[*]Ctrl-P to Paste it into the Start in: Field
[*][B]Put the leading and trailing Quotes in.[/B]
[*]Click OK
[/LIST]

You may want to rename the shortcut.

[SIZE=3]Debugging[/SIZE]
(Q)It worked from the iuplua52 test console, but the shortcut doesn't work.
(A)The path is wrong.

Enjoy. Please report bugs to the forum. This is work in progress. None of my characters have been to craglorn or done all the Vet dungeons so some stuff is untested.

[SIZE=4]Licence[/SIZE]
Some code taken from the Luatz project under the MIT Licence.
The dump code function I found on the net. Sorry I don't know who wrote it.
The rest is my code, use it as you wish, coz I don't care, assume MIT licence if you want.