Quantcast
VGInterface.com
Search Downloads


Go Back   LoTROInterface > LotRO Stand-Alone Plugins > Maps, coordinates & compasses


Post A Reply
Author Comments Comment Options
Unread 05-18-2011, 01:38 PM  
Mephistophles
The Wary

Forum posts: 0
File comments: 2
Uploads: 0
Problem installing

Hello,

I must be doing something wrong. I copied all the files to:

c:\users\<username>\Documents\The Lord of the Rings Online\plugins

and when I bring up the LOTRO client, I don't see the plugin in my list:

/plugins list
Available Plugins:
(None)
Loaded Plugins:
(None)

I also can't load it:

/plugins load MoorMap
Unable to load "MoorMap"

I tried moving it to:

c:\users\<username>\Documents\The Lord of the Rings Online\ui\plugins

and got the same result.

I'm running LOTRO on a Windows 7 64-bit edition platform.

Regards,

Dennis
Mephistophles is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-16-2011, 05:16 PM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
ver 1.06 delay

EDIT: Version 1.06 is now available.
While re-capturing most of Ered Luin's default data I realized that I never entered any of the icons in Staddle, so that little oversight should get fixed in 1.06 as well. I have included a number of other "interior" maps who's resource IDs I already had found, but do not plan to enter default data for most of them until I get the parchment map data done, so don't be surprised if places like the Mirkstone Tunnels have maps but no icons. Other areas like Sarnur will not be added until I find the maps' image resource ids in order to avoid adding JPG maps.

I'm looking for feedback on one of the other future enhancements I've been toying with, user modifiable "overlays" which I think would be really helpful to raid leaders since users could overlay things like paths to follow and warnings about things to avoid, etc. This would require people to actually modify a TGA file but if I allowed them to be uploaded for sharing, I believe this could be useful. The basic idea would be to allow users to save a TGA file in a specific folder and then associate that image with a map as an overlay, then provide a dropdown list of available overlays for the currently displayed map. Since TGA files can be edited in layers, creating the overlays in Paint.net or other software would be pretty easy. Please let me know if there's interest in such a feature.

Last edited by Garan : 05-17-2011 at 08:16 AM.
Garan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-13-2011, 06:22 PM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
Quote:
Originally Posted by Modnar
Garan,

First I would like to say that MoorMaps is a great plugin. Thank you for all of your hard work on this (and your many other!) projects.

I must admit I am mostly writing because I believe I've encountered two potential programming issues:

1) Editing Quick Annotations on Multiple Maps: While using quick annotation to add the tombs along the Way of Kings in Annuminas, I noticed that editing a newly added entry only updated the Annuminas map. Neither the Evendim or Eregion maps were updated with the new information. While not a deal breaker, it is a bit awkward since this means you add one entry (user perspective) but must edit 3 entries in 3 different places.

2) Entry into sub-maps: I had been adding a small addendum to the Description of each tomb since I keep forgetting whether or not it can be entered (example: <name> - [enterable | cannot be entered]) . But Elendil's Tomb created a problem which got me considering your comment about working on adding interior maps. Have you considered tracking how an interior is entered, and what type of interior it is? Because Elendil's Tomb is "enterable Quest Locked Instance" in my database right now. This allows for Quest, Reputation and Level locked areas. As well as accounting for Common and Instanced (raids, skirmishes and instances) versions. I'm not sure you want to account for this in the database, but thought i should bring it up while you're still working on this feature.
Thanks for your comments. I'd actually already given a great deal of thought to both of these issues and arrived at the current functionality as the best (or least annoying) of several options.

The issue with the multiple annotations on separate maps arises from limitations in the Turbine Lua interface (no map ID and no ability to save/load data in real time) combined with the fact that most maps overlap a bit. Unfortunately, we do not have any way to determine the "correct" map via Lua - the interface doesn't expose this information and the overlaps don't only occur on horizontal or vertical lines making it impossible to do anything other than allow the icons to be added to every map that potentially contains the coordinates. I considered tying the annotations together via a unique identifier, but that got scrapped when I ran into issues with too many custom annotations being carried in a global list. For performance reasons, starting in version 1.06, only the annotations that are for the current map are guaranteed to be in the custom annotations list at any particular time - when leaving a map, the custom annotations specific to a particular map are saved in a separate file and removed from the global custom annotations list, allowing the global list to stay relatively small. Otherwise what happens is that users that have added a couple thousand annotations (one user is already well into the thousands) start having five or six seconds of load time for every map due to the number of custom annotations and that number would significantly increase with additional annotations. That combined with the Turbine 15 second delay on loading/saving live data, means that I can not update annotations on multiple maps without subjecting users to unreasonable delays when loading/switching maps. So, having to manually update annotations on multiple maps if you ever want to change an annotation that is on multiple maps, while mildly annoying, is currently the best compromise. For those who only want one annotation on one map, users can always just open the desired map, right click and add the annotation rather than using the Quick Annotation tool, but for crafters and such, having the nodes show up on multiple maps can be a significant benefit.

You raised an interesting point with the type and amount of data stored for non-parchment map locations. Currently any information that would be specific to a location can be entered into the description text and that is probably how it will remain just due to time constraints (it takes a tremendous amount of time to track down all of these locations and NPCs but it's necessary, especially in the revamped zones). Many of these locations aren't even accessible once you've completed their quests, so I have to go through them on alts, at level, collecting mapping data while fighting mobs, etc - I can tell you, the respawn timers in some of those places are wicked when you have a side task to deal with I'm not looking forward to the higher level instances, imagine "hey, raid leader, can we take another break here so that I can record all of the location information on these mobs?..." hehehe. Anyway, once I've completed gathering and publishing the basic default data for all of the maps I will certainly be extending the interior location information. Whether it is only displayed in the description or gets it's own set of filter/search flags will depend on how much time I am able to allocate when I get to that point. Of course, we may all be level 100 and taking screenies of the Crack of Doom before then, but...

Last edited by Garan : 05-14-2011 at 10:32 AM.
Garan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-13-2011, 06:46 AM  
Modnar
The Unscathed

Forum posts: 16
File comments: 30
Uploads: 0
Garan,

First I would like to say that MoorMaps is a great plugin. Thank you for all of your hard work on this (and your many other!) projects.

I must admit I am mostly writing because I believe I've encountered two potential programming issues:

1) Editing Quick Annotations on Multiple Maps: While using quick annotation to add the tombs along the Way of Kings in Annuminas, I noticed that editing a newly added entry only updated the Annuminas map. Neither the Evendim or Eregion maps were updated with the new information. While not a deal breaker, it is a bit awkward since this means you add one entry (user perspective) but must edit 3 entries in 3 different places.

2) Entry into sub-maps: I had been adding a small addendum to the Description of each tomb since I keep forgetting whether or not it can be entered (example: <name> - [enterable | cannot be entered]) . But Elendil's Tomb created a problem which got me considering your comment about working on adding interior maps. Have you considered tracking how an interior is entered, and what type of interior it is? Because Elendil's Tomb is "enterable Quest Locked Instance" in my database right now. This allows for Quest, Reputation and Level locked areas. As well as accounting for Common and Instanced (raids, skirmishes and instances) versions. I'm not sure you want to account for this in the database, but thought i should bring it up while you're still working on this feature.
Modnar is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-05-2011, 04:23 PM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
The Ered Luin map data and version 1.06 will be delayed a little. I added the code necessary to process Interior Location maps so that I could add the Thorin's Hall (main floor and lower level) location. I have not added any other interior maps yet, but the mechanism is in place. I am also working on a mechanism for storing the custom annotations in separate files per map - I hadn't counted on anyone adding as many annotations as some users have and when working with the data I noticed a significant impact on load times. This should all be included in version 1.06 with the Ered Luin map data in about two weeks (if the custom data changes are not ready in two weeks, I will simply roll back the changes and publish the data update so as not to delay it too long).
Garan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-05-2011, 03:36 AM  
Crackpot370
The Wary
 
Crackpot370's Avatar

Forum posts: 0
File comments: 33
Uploads: 0
Talking Re: Re: Re: Re: Re: Re: Houston, we have a problem...

Quote:
Originally Posted by Crackpot370
MapData_9.lua 24 kb 4/30/2011 10:43 pm

Also, I don't know if it will help to know this or not, but when I download an update, I've been deleting the GaranStuff folder & everything below it, then moving in the new unzipped stuff. I leave the PluginData stuff alone so it will keep all the node info I've found.
I may have figured out what is going on. You mentioned way back in one of your original posts that you loaded MoorMap with PluginManager but I didn't realize the possible implication. When you configure PluginManager, there are actually four distinct components displayed for MoorMap, but you should only ever load the one labelled "MoorMap". The additional components are launched by the plugin itself as it needs them - loading them via PluginManager will not only prevent the default file from being processed but can also generate a null map ID that in turn causes an error on line 3159.

If you did indeed configure PluginManager to load the other componets the fix is pretty simple, load PluginManager and use "/manager" to open it's configuration window and make sure that the plugins "MoorMapDefaults", "MoorMapLoader" and "MoorMapTerminator" are NOT selected to be loaded by PluginManager - "MoorMap" itself should be the only plugin with a name starting with "MoorMap" that is checked. Apply your changes then unload all plugins using "/plugins unload" and reload PluginManager - MoorMap will now be in a stable state. You will then have to manually reload the defaults by opening the Annotation Maintenance Window (click the second button from the left at the top of the window or edit any existing annotation) and click the "Reload Defaults" button. I will be updating the usage instructions to avoid this in the future.

If this was not the issue, let me know (well, please let me know either way).

P.S. I've been seeing some significant load times on the maps with all those custom annotations. I may have to consider breaking up the custom annotations the same way the default ones are to ease that a bit.

@Matzig - this may also be the underlying problem with your missing default icons. Please let me know if you were using PluginManager (or other plugin loading method) and were loading more than just the "MoorMap" plugin. If so, just follow the steps outlined above to resolve.


This was in fact the issue for me. I thought for moment it wasn't when I brought up Ered Luin, but then I remembered it wasn't on the list of loaded defaults yet. I loaded Bree-land and all kinds of new flags popped up.

Thank you, thank you, thank you!
Crackpot370 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-04-2011, 08:07 PM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
Re: Re: Re: Re: Re: Houston, we have a problem...

Quote:
Originally Posted by Crackpot370
MapData_9.lua 24 kb 4/30/2011 10:43 pm

Also, I don't know if it will help to know this or not, but when I download an update, I've been deleting the GaranStuff folder & everything below it, then moving in the new unzipped stuff. I leave the PluginData stuff alone so it will keep all the node info I've found.
I may have figured out what is going on. You mentioned way back in one of your original posts that you loaded MoorMap with PluginManager but I didn't realize the possible implication. When you configure PluginManager, there are actually four distinct components displayed for MoorMap, but you should only ever load the one labelled "MoorMap". The additional components are launched by the plugin itself as it needs them - loading them via PluginManager will not only prevent the default file from being processed but can also generate a null map ID that in turn causes an error on line 3159.

If you did indeed configure PluginManager to load the other componets the fix is pretty simple, load PluginManager and use "/manager" to open it's configuration window and make sure that the plugins "MoorMapDefaults", "MoorMapLoader" and "MoorMapTerminator" are NOT selected to be loaded by PluginManager - "MoorMap" itself should be the only plugin with a name starting with "MoorMap" that is checked. Apply your changes then unload all plugins using "/plugins unload" and reload PluginManager - MoorMap will now be in a stable state. You will then have to manually reload the defaults by opening the Annotation Maintenance Window (click the second button from the left at the top of the window or edit any existing annotation) and click the "Reload Defaults" button. I will be updating the usage instructions to avoid this in the future.

If this was not the issue, let me know (well, please let me know either way).

P.S. I've been seeing some significant load times on the maps with all those custom annotations. I may have to consider breaking up the custom annotations the same way the default ones are to ease that a bit.

@Matzig - this may also be the underlying problem with your missing default icons. Please let me know if you were using PluginManager (or other plugin loading method) and were loading more than just the "MoorMap" plugin. If so, just follow the steps outlined above to resolve.

Last edited by Garan : 05-04-2011 at 08:32 PM.
Garan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-03-2011, 05:44 PM  
Crackpot370
The Wary
 
Crackpot370's Avatar

Forum posts: 0
File comments: 33
Uploads: 0
Re: Re: Re: Re: Houston, we have a problem...

Quote:
Originally Posted by Crackpot370
Quote:
Originally Posted by Crackpot370
To test your theories, I ran the program & loaded my plugins with PluginManager. MoorMap came up saying MoorMap 1.04 Garan loaded. Still no default stuff on Breeland.

I then looked at the ReadMe that unpacked from the .zip. It showed 1.04 in the
history list. (I always use the Download button to get the latest version. I only use the archive links if I'm after an older version.)

I guess it will remain a mystery.

I downloaded 1.05a. Problem. When it tried to load I got a TON of
...the Rings Online\Plugins\GaranStuff\MoorMap\Main.lua:3159: attempt to index field '?' (a nil value)

Hope you get 'er fixed soon. I love this plugin.
Before going too much further, I would like to try reproducing your situation. I will PM you information on how to send me your saved data files so that I can try to recreate what is occuring.

OK. It's in the mail to you. Hope it helps.
Thanks for the data. It was quite helpful and part of the mystery is solved. All of your map data files are dated 4/6/2011 which means they were never updated after version 1.03. The data itself is fine and updates correctly when an update is processed on my test box so it's not a bad data issue. The mystery is why has your settings file been updated but the map data did not. One of two things is occuring. Either the source data files in your Plugin folder are not getting updated when you download the new plugin versions or an error is occurring while processing the new data files. The next step is to make sure you actually have the new source data files and they are in the correct location (if you unzipped the update and accidentally didn't preserve the folder paths or declined to overwrite existing files or they are write protected or for what ever reason, you may still have the old source files). Please check the size and date on the "MapData_9.lua" file in your "My Documents\The Lord of the Rings Online\Plugins\GaranStuff\MoorMap\Data" folder. Let me know what the date and file size are (they should be 24KB and 4/23/2011) so that I can determine which direction to look further. We should be pretty close to solving this mystery.

MapData_9.lua 24 kb 4/30/2011 10:43 pm

Also, I don't know if it will help to know this or not, but when I download an update, I've been deleting the GaranStuff folder & everything below it, then moving in the new unzipped stuff. I leave the PluginData stuff alone so it will keep all the node info I've found.

btw, that's an impressive number of nodes you've entered

I have been exploring a bit
Crackpot370 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-03-2011, 08:50 AM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
Re: Re: Re: Houston, we have a problem...

Quote:
Originally Posted by Crackpot370
Quote:
Originally Posted by Crackpot370
To test your theories, I ran the program & loaded my plugins with PluginManager. MoorMap came up saying MoorMap 1.04 Garan loaded. Still no default stuff on Breeland.

I then looked at the ReadMe that unpacked from the .zip. It showed 1.04 in the
history list. (I always use the Download button to get the latest version. I only use the archive links if I'm after an older version.)

I guess it will remain a mystery.

I downloaded 1.05a. Problem. When it tried to load I got a TON of
...the Rings Online\Plugins\GaranStuff\MoorMap\Main.lua:3159: attempt to index field '?' (a nil value)

Hope you get 'er fixed soon. I love this plugin.
Before going too much further, I would like to try reproducing your situation. I will PM you information on how to send me your saved data files so that I can try to recreate what is occuring.

OK. It's in the mail to you. Hope it helps.
Thanks for the data. It was quite helpful and part of the mystery is solved. All of your map data files are dated 4/6/2011 which means they were never updated after version 1.03. The data itself is fine and updates correctly when an update is processed on my test box so it's not a bad data issue. The mystery is why has your settings file been updated but the map data did not. One of two things is occuring. Either the source data files in your Plugin folder are not getting updated when you download the new plugin versions or an error is occurring while processing the new data files. The next step is to make sure you actually have the new source data files and they are in the correct location (if you unzipped the update and accidentally didn't preserve the folder paths or declined to overwrite existing files or they are write protected or for what ever reason, you may still have the old source files). Please check the size and date on the "MapData_9.lua" file in your "My Documents\The Lord of the Rings Online\Plugins\GaranStuff\MoorMap\Data" folder. Let me know what the date and file size are (they should be 24KB and 4/23/2011) so that I can determine which direction to look further. We should be pretty close to solving this mystery.

btw, that's an impressive number of nodes you've entered

Last edited by Garan : 05-03-2011 at 08:54 AM.
Garan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 05-03-2011, 12:16 AM  
Crackpot370
The Wary
 
Crackpot370's Avatar

Forum posts: 0
File comments: 33
Uploads: 0
Re: Re: Houston, we have a problem...

Quote:
Originally Posted by Crackpot370
To test your theories, I ran the program & loaded my plugins with PluginManager. MoorMap came up saying MoorMap 1.04 Garan loaded. Still no default stuff on Breeland.

I then looked at the ReadMe that unpacked from the .zip. It showed 1.04 in the
history list. (I always use the Download button to get the latest version. I only use the archive links if I'm after an older version.)

I guess it will remain a mystery.

I downloaded 1.05a. Problem. When it tried to load I got a TON of
...the Rings Online\Plugins\GaranStuff\MoorMap\Main.lua:3159: attempt to index field '?' (a nil value)

Hope you get 'er fixed soon. I love this plugin.
Before going too much further, I would like to try reproducing your situation. I will PM you information on how to send me your saved data files so that I can try to recreate what is occuring.

OK. It's in the mail to you. Hope it helps.
Crackpot370 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 04-30-2011, 10:56 PM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
Re: Houston, we have a problem...

Quote:
Originally Posted by Crackpot370
To test your theories, I ran the program & loaded my plugins with PluginManager. MoorMap came up saying MoorMap 1.04 Garan loaded. Still no default stuff on Breeland.

I then looked at the ReadMe that unpacked from the .zip. It showed 1.04 in the
history list. (I always use the Download button to get the latest version. I only use the archive links if I'm after an older version.)

I guess it will remain a mystery.

I downloaded 1.05a. Problem. When it tried to load I got a TON of
...the Rings Online\Plugins\GaranStuff\MoorMap\Main.lua:3159: attempt to index field '?' (a nil value)

Hope you get 'er fixed soon. I love this plugin.
Before going too much further, I would like to try reproducing your situation. I will PM you information on how to send me your saved data files so that I can try to recreate what is occuring.

Last edited by Garan : 04-30-2011 at 11:06 PM.
Garan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 04-30-2011, 08:12 PM  
Crackpot370
The Wary
 
Crackpot370's Avatar

Forum posts: 0
File comments: 33
Uploads: 0
Houston, we have a problem...

To test your theories, I ran the program & loaded my plugins with PluginManager. MoorMap came up saying MoorMap 1.04 Garan loaded. Still no default stuff on Breeland.

I then looked at the ReadMe that unpacked from the .zip. It showed 1.04 in the
history list. (I always use the Download button to get the latest version. I only use the archive links if I'm after an older version.)

I guess it will remain a mystery.

I downloaded 1.05a. Problem. When it tried to load I got a TON of
...the Rings Online\Plugins\GaranStuff\MoorMap\Main.lua:3159: attempt to index field '?' (a nil value)

Hope you get 'er fixed soon. I love this plugin.
Crackpot370 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 04-30-2011, 03:10 PM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
Quote:
Originally Posted by matzig
I keep getting this error message:
...the Rings Online\Plugins\GaranStuff\MoorMap\Main.lua:3635: attempt to index field 'LocationQuickSlot' (a nil value)
Thanks for posting this. This error occurs when saving options changes. I have reproduced the error and will get a fix for it ASAP, probably later today.
The bug was introduced while working on adding a manual location update. I have fixed the bug and once I am done testing the changes I will post a hotfix, "version 1.05a".
EDIT: 1.05a is now available

Last edited by Garan : 04-30-2011 at 06:17 PM.
Garan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 04-30-2011, 12:11 PM  
matziq
The Unscathed

Forum posts: 15
File comments: 66
Uploads: 0
I keep getting this error message:
...the Rings Online\Plugins\GaranStuff\MoorMap\Main.lua:3635: attempt to index field 'LocationQuickSlot' (a nil value)
matziq is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 04-29-2011, 09:19 AM  
Garan
The Undying
 
Garan's Avatar
Interface Author - Click to view interfaces

Forum posts: 243
File comments: 721
Uploads: 19
Re: default flags problem

Quote:
Originally Posted by Crackpot370
Didn't look at his name, but I agree with the person that said Outstanding Plugin!!!


That said, I'm having the same problem Matziq described with 1.04.

I'm not having it show any default flags anywhere. Including in Breeland, Bree, Old Forest, Barrow Downs (N or S) except the POI, prospecting & wood flags I manually set while exploring.
I can think of two likely scenarios that could cause this and in both cases, when you load MoorMap the text will say "MoorMap 1.03 by Garan loaded" instead of 1.04. In the first case, if you had an older version of a plugin running and copied over the files without leaving the game or executing "/plugins refresh" then the game still has the old version info so the plugin won't see the data as being new - this is self correcting the next time you start the game client. The second case is that an archive version of 1.03 got renamed as "1.04" in the archive list on LoTROInterface, so if you downloaded from the archive list instead of the "Download" button (or clicked the Download button while the update was still pending approval) then you actually downloaded 1.03 - I deleted the erroneously named archive file (there's no way to change the name/version of an archive file).

If, when you load MoorMap, the message in the chat window is "MoorMap 1.04 by Garan loaded" then you are indeed running version 1.04 and neither of the prior situations applies. In that case, could you try loading the plugin and switching maps to Breeland and checking the chat window to see if any error messages are output? While I have tried to eliminate any upgrade issues by testing the file on a clean client as well as applying it as an upgrade over prior versions, it is possible that something occurred on your system that I had not anticipated.

If there are no error messages output and your client displays the 1.04 version message when loading, then you can try manually reapplying the default data by opening the Annotation Maintenance Window and clicking the "Reload Defaults" button. You open the maintenance window by clicking the second button from the left on MoorMap, or by adding an annotation or editing any existing custom annotation. This should display a small dialog which rapidly lists all of the map names as it processes the default data for each map and then refreshes MoorMap with that new default data. This mechanism should only be needed if somehow MoorMap incorrectly saved it's data version or you were sent a pre-release copy of MoorMap (and since I don't recognize your username as one of the authors who receive pre-release versions I don't believe that to be the case).

Please let me know if any of the above resolved the problem or if I need to dig further. Also, if none of the above resolved the issue, could you verify whether you have default data showing for Angmar or Archet (that data was in earlier versions of MoorMap and might help track down any discrepancies). Thanks.

Last edited by Garan : 04-30-2011 at 11:56 AM.
Garan 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 12:05 PM.


Our Network
EQInterface | EQ2Interface | Minion | WoWInterface | VGInterface | LoTROInterface | MMOInterface | Swtorui