|
Category: Outdated LotRO InterfacesChallenge Tracker |
Interface Information |
|
Name: |
Challenge Tracker |
Author: |
|
Date: |
09-20-2012 10:11 PM |
Size: |
9.23 Kb |
Version: |
1.1.2b |
Rate File: |
|
Patch & Add-on List |
File Name |
Version |
Size |
Author |
Date |
Type |
|
1.2.0 |
14.15 Kb |
|
12-19-2012 12:48 PM |
Patch |
|
1.1.2.wb1 |
9.75 Kb |
|
10-24-2012 12:04 PM |
Patch |
Changes in 1.1.1:
-Added a priority system. Challenges can be promoted to display more prominently or demoted and grayed out. The correct aggregations will be shown in the category headings in the instances tab.
Use cases:
I've created a limlight dailies challenge, but I am already kindred with a character. I can demote that challenge for that character to gray it out.
I'm after a certain bracelet that only drops in moria raid skirmishes. I can promote the moria raid skirmishes on the appropriate character to see which challenges are the most important to me.
Unfortunately, this version is incompatible with the previous version, so any entered data will be wiped.
----------------------------------------
This plugin:
1) Allows the player to see what locks/challenges are available to all characters on the account on the server.
2) Automatically marks challenges in skirmish raids and fellowships. Automatic marking in raids is not available at this time.
3) Automatically resets locks on a schedule.
4) Allows the player to set up new challenges with associated locks (that could possibly be marked automatically).
Instructions:
I mix up the terms instance and challenge all the time. To be more clear, there can be multiple challenges within an instance, and challenges can exist outside of instances like limlight dailes or a custom crafted relics task.
Starting Up
To view information for multiple characters on the same account, make this plugin automatically start during loading for each of your characters, and log into each of your characters. This plugin will not have the correct challenges marked until the next reset, so if you wish, you can manually mark what you have already completed.
Instances Tab
On the "instances" tab, a player's name will be displayed at the top. All information in this tab reflects the status of that player. All challenges are categorized into 4 different categories: raids, skirmishes, fellowship, and other. To the right of the category headings, the plugin will left you know how many challenges in that category are still available. If you click on a category, it will expand to show you the set of challenges within that category. Each challenge will have a label displaying "available" if the challenge is not on cooldown, or a time showing the time until the next reset. If you single click a challenge, it will become selected and turn yellow. If you double click a challenge, you will bring up the associated "players" tab for that challenge.
Players Tab
On the "players" tab, an instance name will be displayed at the top, signifying that all information on the tab relates to that instance. Underneath is a list of all the players on the account. As with the "instances" tab, the availability of the corresponding player to complete the instance will be displayed. As before, a single click selects a player, and a double click brings up the "instances" tab for that player.
Marking Challenges
Some challenges cannot be automatically marked when completed such as raid locks or perhaps a custom challenge like daily crafted relic crafting. In these cases, you will need to manually mark challenges as completed, or unmark them if a mistake has been made. To do this, first select an instance in the instances tab or a player in the players tab. Next, hit the "mark" button to toggle the status of the challenge.
Adding Challenges
You can manually add challenges to the list. I'll walk through adding a limlight gorge quest to the list. First, hit the "add instance" button. A new window will pop up which will allow you to configure the challenge. First, you must enter a name, say "Keeping Them at Bay". Next, you can specify a category for the challenge; "other" might be the best category for this. The "Keywords" field accepts a comma-seperated list of phrases, which must all be matched in a "Completed:......." message for the quest to be automatically marked. Be careful about special characters. If no "Completed:......." message will appear, leave this blank. You will need to manually mark these challenges. Let's use the keywords: "Keeping,Them,Bay". Since this quest resets daily, we can check off all the days at the lower left. Next, as the quest resets at 3am, we enter "3" into the time field. Finally, we can hit the "save" button to commit our changes.
Edit Challenges
If you (or I with the pre-seeded challenges) have made a mistake in configuring a challenge, either select the challenge in the instances tab or go to the players tab for that challenge. Next, hit "edit instance". You will receive the same pre-filled screen as for adding challenges.
Remove Challenge
If you wish to remove a challenge, select the challenge or navigate to the players tab for that challenge and hit the remove instance button. Warning: there is no way to undo this operation.
Note: Timers and reset checks occur at startup, after any challenge is added/modified/deleted, or when you switch between "instance" and "player" tabs. Swap back and forth between these tabs to get the most updated information.
Type "/ct" to quickly hide/show the display.
|
Archive List (Old Versions) |
File Name |
Version |
Size |
Author |
Date |
|
1.1.2 |
8.99 Kb |
ramble_onion2 |
09-20-2012 05:43 PM |
File Statistics |
User Rating: |
|
Downloads: |
7058 |
Views: |
43915 |
Favorites: |
6 |
Uploaded By: |
|
Last Modified: |
N/A |
|
| |
|
|
|
09-20-2012, 09:33 AM
|
|
The Undying
Forum posts: 121
File comments: 349
Uploads: 11
|
Does this plugin have dependencies for installation?
|
|
|
09-20-2012, 11:49 AM
|
|
The Wary
Forum posts: 0
File comments: 5
Uploads: 1
|
The only dependencies are the standard Turbine.UI.Lotro, Turbine.UI, and Turbine.
|
|
|
09-20-2012, 02:57 PM
|
|
The Undying
Forum posts: 121
File comments: 349
Uploads: 11
|
Quote:
The only dependencies are the standard Turbine.UI.Lotro, Turbine.UI, and Turbine.
|
So if I download this by itself it will run?
|
|
|
09-20-2012, 05:39 PM
|
|
The Wary
Forum posts: 0
File comments: 5
Uploads: 1
|
Quote:
So if I download this by itself it will run?
|
It should.
By the way, if anyone has been experiencing problems with this plugin, please download version 1.1.2. I've corrected some bugs in the previous versions.
Last edited by ramble_onion2 : 09-20-2012 at 05:42 PM.
|
|
|
09-20-2012, 10:00 PM
|
|
The Undying
Forum posts: 33
File comments: 122
Uploads: 10
|
This is great! I was just looking for something like this, and the two other trackers are for skirmishes only and are a bit outdated, plus either don't update automatically or don't reset automatically. This plugin allows custom trackers, so it's a lot more flexible.
One suggestion, to make your plugin more compatible with other plugins, you need to safely handle the chat received event handler. Right now, if any other plugin is using the chat received handler, and your plugin is loaded afterwards, it will overwrite that plugins handler, causing it not to work.
To do that, simply add this code to your Main.lua (near the beginning to prevent the functions from not being loaded before being called)
Code:
function AddCallback(object, event, callback)
if (object[event] == nil) then
object[event] = callback;
else
if (type(object[event]) == "table") then
table.insert(object[event], callback);
else
object[event] = {object[event], callback};
end
end
return callback;
end
function RemoveCallback(object, event, callback)
if (object[event] == callback) then
object[event] = nil;
else
if (type(object[event]) == "table") then
local size = table.getn(object[event]);
for i = 1, size do
if (object[event][i] == callback) then
table.remove(object[event], i);
break;
end
end
end
end
end
and then change the chat received event to something like this:
Code:
chatHandler = function(f,args)
if(args.ChatType == Turbine.ChatType.Quest) then
local message = args.Message;
if(string.sub(message,1,10) == "Completed:") then
if(CTM.settings:Update(message)) then
CTM.TrackerWindow:refreshCurrentTab();
end
end
end
end
AddCallback(Turbine.Chat, "Received", chatHandler);
It's also a good idea to remove callbacks when your plugin is unloaded. To do this, add the following code at the end of Main.lua
Code:
Plugins["Challenge Tracker"].Unload = function( sender, args )
RemoveCallback(Turbine.Chat, "Received", chatHandler);
end
Can't wait to start using this!
|
|
|
09-20-2012, 10:05 PM
|
|
The Wary
Forum posts: 0
File comments: 5
Uploads: 1
|
Thanks for the info. I'm a novice at LUA stuff, so help is certainly appreciated. I'll make those changes and update the download.
|
|
|
09-20-2012, 11:19 PM
|
|
The Undying
Forum posts: 33
File comments: 122
Uploads: 10
|
Thanks for the info. I'm a novice at LUA stuff, so help is certainly appreciated. I'll make those changes and update the download.
No problem. I'm pretty bad at LUA but I know programming in Java and C++, and when they first made the changes to the local player instance, and every plugin was stepping on other plugins toes for things like being in combat, or accessing health, and stuff like that, I learned how to fix that really quickly because I rely on so many plugins anymore I can't stand one not working, and so many times authors will leave the game or take a break so some plugins will go extended periods of time being "broken." So I try to fix them.
I'd never be able to create a plugin like Challenge Tracker, so don't cut yourself short . I might mess around and see if there's some way for it to catch raid locks and stuff by watching for chatter in other channels, like when Draigoch is defeated and he gives his death speech, and most other bosses will have defeat events in the Defeat channel. And Landroval just went down (missed out on Draigoch loot... ) so I have spare time now!
Last edited by Stever1388 : 09-20-2012 at 11:19 PM.
|
|
|
09-21-2012, 01:53 PM
|
|
The Wary
Forum posts: 0
File comments: 5
Uploads: 1
|
Quote:
I'd never be able to create a plugin like Challenge Tracker, so don't cut yourself short . I might mess around and see if there's some way for it to catch raid locks and stuff by watching for chatter in other channels, like when Draigoch is defeated and he gives his death speech, and most other bosses will have defeat events in the Defeat channel. And Landroval just went down (missed out on Draigoch loot... ) so I have spare time now!
|
I've been thinking about how to capture raid locks as well. My ideas were:
Idea 1)
a) Monitor the "You have entered ... region" messages to determine what instance the player is in.
b) Monitor speeches that bosses make to determine the boss (although this is inaccurate since half the time I miss the boss speeches when doing orthanc). I believe that all the bosses get chatty during the fights (unless acid is downed in 50 seconds), so maybe the boss can the determined via these messages. Alternatively, maybe the fight can be determined via combat logs.
c) Look for "You have acquired [...] seals" messages to denote the completion of the boss.
Cons) It is impossible to customize a process like this in the way that question completion messages can easily be parsed.
Idea 2)
Since plugins cannot run commands such as "/raid locks", every time "/raid locks" is run by the player, the appropriate locks can be filled in. This seems like a more robust method, but the locks will not be automatically checked off if the player doesn't hit "/raid locks".
Cons) Automatic marking is not guaranteed.
I haven't looked at the LUA changes in RoR, so hopefully raid locks will be made available to LUA programs or LUA programs will be able to execute commands like "/raid locks'.
EDIT: What was I thinking? "Your mighty blow has defeated ....." or ".... has been defeated by ....." seems like a far easier method than all the gibberish I wrote above. It won't work for draigoch, but it should work for pretty much every other raid boss in the game. Capturing acquired raid locks might still be a problem though.
Last edited by ramble_onion2 : 09-21-2012 at 02:16 PM.
|
|
|
09-21-2012, 03:37 PM
|
|
The Undying
Forum posts: 33
File comments: 122
Uploads: 10
|
Quote:
Idea 2)
Since plugins cannot run commands such as "/raid locks", every time "/raid locks" is run by the player, the appropriate locks can be filled in. This seems like a more robust method, but the locks will not be automatically checked off if the player doesn't hit "/raid locks".
|
This is a very good idea on how to update raid locks for raids. It's not automatic but it'd be a lot easier than manually clicking on different raids and setting them to be locked.
|
|
|
09-21-2012, 10:35 PM
|
|
The Wary
Forum posts: 0
File comments: 5
Uploads: 1
|
I know combatanalysis has a way to broadcast results in /ra or /f. I'll see if I can implement a similar feature to get the /raid lock results.
|
|
|
09-21-2012, 10:57 PM
|
|
The Undying
Forum posts: 33
File comments: 122
Uploads: 10
|
I know combatanalysis has a way to broadcast results in /ra or /f. I'll see if I can implement a similar feature to get the /raid lock results.
Unfortunately this still requires a mouse click, they just hide a quickslot under a GUI button that the use can click. There's still no way to programmically fire a button.
|
|
|
10-22-2012, 06:10 PM
|
|
The Undying
Forum posts: 48
File comments: 72
Uploads: 2
|
Would you be able to add the war-bands to this?
|
|
|
10-22-2012, 07:32 PM
|
|
The Indomitable
Forum posts: 12
File comments: 4
Uploads: 0
|
Would you be kind nuff to update this with the warband information?
When I start to add this in, the plugin gets all messed up.
Here is the names if you need the info.
The Wold
Warband: Cinder
Warband: Hanrun
Warband: Urush
Warband: Bughrakh
Norcrofts
Warband: Dahámab
Warband: Skútog
Warband: Swertríper
Warband: Haglob
Entwash Vale
Warband: Bensengan
Warband: Mâthum
Warband: Dâl
Warband: Fearrhorn
Warband: Mirz
Warband: Urgai
Sutcrofts
Warband: Gundul
Warband: Kramp
Warband: Bugud
|
|
|
10-26-2012, 03:41 PM
|
|
The Wary
Forum posts: 0
File comments: 7
Uploads: 0
|
I really like this plugin but unfortunately I cannot get it to work.
I receive the following errors everytime I try to load it:
Code:
...e\Plugins\RambleOnion\ChallengeTracker2\Settings.lua:5: attempt to call global 'class' (a nil value)
...gins\RambleOnion\ChallengeTracker2\TrackerWindow.lua:3: Failed to import package "RambleOnion.ChallengeTracker2.Settings".
...nline\Plugins\RambleOnion\ChallengeTracker2\Main.lua:7: Failed to import package "RambleOnion.ChallengeTracker2.TrackerWindow".
...e\Plugins\RambleOnion\ChallengeTracker2\Settings.lua:5: attempt to call global 'class' (a nil value)
...gins\RambleOnion\ChallengeTracker2\TrackerWindow.lua:3: Failed to import package "RambleOnion.ChallengeTracker2.Settings".
...nline\Plugins\RambleOnion\ChallengeTracker2\Main.lua:7: Failed to import package "RambleOnion.ChallengeTracker2.TrackerWindow".
I have tried unloading all other plugins and received the same message.
Any ideas what I can do to get this working?
Thanks, and great job so far!
|
|
|
10-28-2012, 10:33 AM
|
|
The Undying
Forum posts: 48
File comments: 72
Uploads: 2
|
Tandytech, try deleting the plugindata file to see if that fixes it. The bad thing about doing that is if you have an custom entries in the plugin they will be deleted as well.
ChallengeTracker2.plugindata in the directory
<Documents>\The Lord of the Rings Online\PluginData\<Accountname>\<Server>\AllCharac ters\
|
|
|
All times are GMT -5. The time now is 07:54 PM.
|
|