lotrointerface.com
Search Downloads


Go Back   LoTROInterface > Outdated LotRO Interfaces

Category: Outdated LotRO InterfacesBootstrap - Plugin Manager
Interface Information
Download
How do I install this? (FAQ)
Name: Bootstrap - Plugin Manager   Popular!
Author:
Date: 07-21-2011 11:02 PM
Size: 67.77 Kb
Version: 1.4
Rate File: 5 out of 5 with 10 votes  
Pictures
Click to enlarge 

Views: 0
Size: 100.33 Kb
Dimensions: 811 x 671
Main window & a configured menu
 
Description
One Plugin to rule them all, One Plugin to find them,
One Plugin to bring them all and in the darkness bind them

About

Bootstrap is a plugin manager for LotRO. Its purpose is to ease using other plugins through a graphical user interface and some degree of automation.

Since the plugin system is not officially supported and still in "beta" state, Lotro does not currently provide a graphical user interface or settings to manage plugins. The only user interface provided by Turbine concerning plugins is the 'shell' (chat window), which can get rather cumbersome especially when using multiple plugins.

Bootstrap provides the user a way to automatically load multiple plugins in one click, as well as a configurable popup menu to load individual plugins on demand and execute commands exported by plugins.

Features
  • Automatically load all user selected plugins on startup, in the order specified.
  • Configurable popup menu to load plugins to execute commands they have exported or both.
  • Graphical user interface for settings.

Installation

Copy the "Equendil" folder from the zip file to your "My Documents/The Lord of the Rings Online/Plugins" folder (if you never installed a plugin before, you might have to create that "Plugins" folder).

You will need to execute "/plugins refresh" if you install the plugin for the first time while the game is running.

If you are already using another one of my plugins (currently, that would be LIP), overwriting files should be safe as long as older (by last update) plugins are installed first. Unload plugins if they are are running, by typing "/plugins unload".

Usage

On the command line:

"/plugins load bootstrap" will launch Bootstrap, Bootstrap will then load all plugins set to be loaded automatically. Launching bootstrap will also display its setup window if it cannot find user settings (first time use).

"/boostrap" without parameters will toggle Bootstrap's window
"/bootstrap toggle" will do the same as above
"/bootstrap show" will open Bootstrap's window.
"/bootstrap hide" will hide Bootstrap's window.

"/bootstrap reload" will terminate all loaded plugins and restart bootstrap.

One click launch:

Because the primary objective of Bootstrap is to make running multiple plugins as simple as possible, you will probably want to setup a shortcut so you can launch Bootstrap in one click.

To do so you first need to declare an alias through the command line:
"/alias ;<name> /plugins load bootstrap"

Where <name> is whatever you want your shortcut to display. Keep in mind shortcuts cannot display more than three or four characters, however. The semicolon is mandatory.

You then need to create the shortcut proper through:
"/alias shortcut ;<name> <num>"

Where <name> is whatever alias name you chose previously, and <num> is the number of a quickslot on your bars. The first quickslot of the first bar is numbered 1, then 2, 3 ... 12, the first quickslot of your second bar is numbered 13, then 14, 15 etc. It will overwrite that quickslot.

This might sound a bit complicated, the following example will create a shortcut that launches Bootstrap on the first quickslot of your first bar (make sure it's empty or keep in mind it'll be overwritten):

Code:
/alias ;plug /plugins load bootstrap
/alias shortcut ;plug 1
You can then drag & drop that new shortcut wherever you like.

IMPORTANT: You will need to do that on every character. There is no other way, but you need only do it once per character. It'll make your life easier in the long run.

Once a shortcut is set up, clicking it will load bootstrap and all plugins set to automatically load.

Menu

By default, Bootstrap will place a semi transparent button in the lower left corner of the display. That button opens Bootstrap's configurable menu. By default, the menu only contains one entry: 'Bootstrap', that opens Bootstrap's setup window.

The menu button can be placed where you like by using the standard key bind to position UI elements (CTRL + \ by default on English keyboards). Using the mouse wheel on the button in that mode will change its scale.

The opacity of the menu button can be set in the setup window (set to 0 to hide the button completely).

IMPORTANT: The position of the menu button is stored on a per-character basis.

Setup

Plugins

The top half of the setup window displays installed plugins. Loaded plugins are displayed in green. 'Hidden' plugins (see below) are displaying faded if "show all" is checked.
  • The check box in front of every plugin entry lets you set which plugins you want to be run automatically.
  • The 'up' and 'down' arrows let you change the order in which plugins are displayed and loaded.
  • The 'Launch' button will simply launch the selected plugin.
  • The 'Add to Menu' button will add an item to the menu for that particular plugin.
  • The 'hide' button will hide a plugin from the list unless 'show all' is checked, in that case, hidden plugins will display faded. Hidden plugins can be brought back to normal using the same button (then labelled "show"). By default, plugins not meant by their authors to be loaded directly are set to be hidden.

IMPORTANT: Which plugins are set to load automatically is stored on a per-character basis. This is to allow using different plugins for different characters, however this means you will have to (quickly) set up Bootstrap for each character.


Menu

The bottom half of the setup window displays the list of items in the configurable menu and their settings.
  • The 'up' and 'down' arrows let you change the order in which the menu items are displayed.
  • The 'Remove' button will remove the currently selected item from the menu.
  • The 'Save Menu' button will save the configuration of the menu. That configuration is account wide.
  • The 'Show menu button' checkbox will enable or disable the menu button. Like the position of the button, it's a per-character setting.

Menu items are bound to plugins, to add a menu item, select a plugin in the top half of the setup window and click "Add to Menu". Bootstrap may try to be 'smart' if you attach a menu item to one of the more popular plugins and it will pre-setup that menu item in a manner the author of Bootstrap deemed appropriate. Whether or not it does that, you can change it.

The right panel lets you set up a menu item.
  • The 'Name' field lets you change the name of the item as displayed in the menu
  • The 'Plugin' field displays the name of the plugin to which the menu item is attached. It cannot be changed.
  • The 'Mode' drop down menu lets you chose the mode of execution of the menu item:
    • 'Load then Run'. If the plugin is not loaded, load it, then run the command immediately (if not blank). If the plugin is loaded, just execute the command.
    • 'Load or Run'. If the plugin is not loaded, load it. If it was loaded already, run the command (if not blank).
    • 'Run Only'. Run the command if the plugin is loaded. If the plugin is not loaded, the menu item will not display.

The 'run only' mode is particularly appropriate for plugins you set to load automatically *only* on certain characters. The menu item will not display for characters that do not have that plugin running.

IMPORTANT: Menu items are not saved automatically, use the 'Save Menu' button

Notes:
  • The default "Bootstrap" entry in the menu cannot be moved, changed or removed.
  • The menu will display 'bottom up' if placed in the bottom half of the display (ie, in reverse order). While, to the author, that seemed to be the natural way to go about things, the author acknowledges this might be a consequence of spending way too much time writing code. That particular 'feature' is subject to change depending on the amount of complains received.

Refreshing plugins, reloading Bootstrap

The 'Refresh Plugins' button at the bottom will update the list of installed plugins, and possibly the menu if plugins were removed. You might need to do it if you install a plugin while Bootstrap is already running, where you would execute "/plugins refresh".

The 'Reload Bootstrap' button at the bottom of the window will terminate *all* loaded plugins, and restart bootstrap. Plugins not set to load automatically will not be restarted.

This is roughly equivalent to executing the command "/plugins unload" followed with "/plugins load bootstrap"

Plugin authors: Exposing an icon

Plugin authors can expose an icon that Bootstrap will use in the menu. Failing that, Bootstrap will use a (hopefully) suitable icon for plugins it 'knows', or failing that, a default icon.

To get an author's defined icon, Bootstrap will look for a Favicon.lua file in the same folder as the plugin's 'package' (as defined in the .plugin declaration file and exported by Turbine.PluginManager). Favicon.lua should at least contain a table called Favicon, with a subtable called "Regular" (leaving room for other icon states such as highlighted etc), with the following fields:
  • Resource: either an ID of an in game image resource, or the path of a JPEG or targa image relative to plugins/
  • Width: the width of the image
  • Height: the height of the image

Eg: if a plugin hiearchy looks like this :

Code:
Plugins/
	Author/
		PluginName.plugin (with <Package>Author.PluginName.Main</Package>
		PluginName/
			Resources/
				icon.tga (32x32 icon)
			Main.lua
			Favicon.lua
Favicon.lua would contain:
Code:
Favicon = {
	Regular = { Resource = "Author/PluginName/Resources/icon.tga", Width = 32, Height = 32 }
}
Note: Bootstrap will resize icons to 26x26 dimension, and mask them to keep them round, the original icon does not need to be that size or be round.

Known Issues & limitations
  • Bootstrap does not actually check to which plugins commands belong to. As a result, it is perfectly possible to add a menu item for plugin A and make it execute a command on plugin B (or a default Lotro command). The author likes to think of it as a 'feature'.
  • Bootstrap cannot unload individual plugins.

Reporting issues
You can report bugs and other issues:
  • On this thread
  • In private messages through this site
  • By contacting me on the Snowbourn server. Send a mail to "Equanor" (my main), or send a message directly if you prefer and I happen to be logged on.

Plans for the Future
- Done for now.

Change Log

v1.4 - 2011 July 21
- Any command can be run through the menu.
- Added default menu command templates for all 'known' plugins where relevant.
- Added icons to the menu. Icons can be set by plugin authors in their plugins, failing that, Bootstrap will display an icon thought appropriate for 'known' plugins, or failing that a 'ring' icon by default.
- Fixed an issue where the scrollbar for plugins could go out of reach when toggling off 'show all'.
v1.3b - 2001 July 13
- Fixed error introduced in v1.3 when saved data is not found...
v1.3 - 2011 July 12 - Various improvements and requested features
- The /bootstrap command can now take "hide" or "toggle" as arguments in addition to "show".
- "/bootstrap" without arguments now has the same behaviour as "/bootstrap toggle"
- The default command for Bootstrap in the menu toggles the window instead of always making it visible
- the 'drag bar' for moving the menu button was replaced with a drag 'box' that allows positioning at the top of the screen.
- Bootstrap will output a single message on startup for all plugins that are auto-loaded rather than for each one
- Bootstrap's window can be resized by the user.
- Fixed an issue with scrollbars malfunctioning on lists with only a few more elements than visible.
- Plugins can be set to be 'hidden'. 'Known' utility plugins not meant by their authors to be loaded directly by users are 'hidden' by default. 'Hidden' Plugins cannot be set to load automatically on Bootstrap's launch.
- Added a checkbox to the setup window to show all plugins. 'Hidden' plugins will display faded in that case.
- Menu button can be rescaled (mouse wheel in repositioning mode).
- The "Show Menu Button" checkbox is gone ... The opacity of the menu button can be set instead. Setting its opacity to 0 will have the same effect as unchecking the checkbox did previously.
v1.2 - 2011 June 22
- Work-around for the 'locale bug' on French and German clients preventing data to be saved correctly.
- Forcing a refresh of the list of plugins on initialization to prevent a situation where Bootstrap might attempt to automatically load a plugin that was removed from under the game (which seems to lead to a corruption of the lua runtime and a client crash, no less ...).
- Lists scroll when using the mouse wheel as they should
v1.1 - 2011 June 16
- Added a "reload" feature
- Known 'utility' plugins not meant by their authors to be loaded directly by users are now displaying faded and cannot be set to load automatically
- Window position & visibility status are now stored
- Fixed a bug where setting plugins to load automatically would be ignored if the order of plugins was never changed in any way.
v1.0 - 2011 June 14
-Initial release.
Archive List (Old Versions)
File Name
Version
Size
Author
Date
1.3b
63.22 Kb
Equendil
07-13-2011 09:58 AM
1.2
53.20 Kb
Equendil
06-22-2011 10:58 PM
1.1
51.58 Kb
Equendil
06-16-2011 09:49 PM
1.0
49.17 Kb
Equendil
06-15-2011 08:47 PM
File Statistics
User Rating:
5 out of 5 with 10 votes
Downloads: 51073
Views: 125759
Favorites: 70
Uploaded By:
 
Last Modified: 07-22-2011 10:59 AM by Equendil    

View Pictures. Download Now! Post A Comment


Post A Reply
Author Comments Comment Options
Unread 08-24-2021, 11:25 AM  
b414213562
The Undefeated
 
b414213562's Avatar
Interface Author - Click to view interfaces

Forum posts: 5
File comments: 103
Uploads: 13
Bug fix

You can find a fix for the reload button not working here: Bootstrap - Plugin Manager v1.4 reload button fix
b414213562 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 01-14-2020, 03:43 PM  
vecny.samotar
The Undying
 
vecny.samotar's Avatar

Forum posts: 20
File comments: 146
Uploads: 0
I do not know whether this concept is abandoned, but the last time it reports me these errors after relogupostavy or when the game shutdown

Quote:
...he Rings Online\Plugins\Equendil\PluginMng\Shell.lua:28: table index is nil
...he Rings Online\Plugins\Equendil\PluginMng\Shell.lua:28: table index is nil
vecny.samotar is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 01-13-2013, 04:22 PM  
Vald
The Undying
 
Vald's Avatar

Forum posts: 22
File comments: 54
Uploads: 0
I just misspelled it here. In my folder, it's spelled correctly - favicon.lua. I even tried copying the file from another plugin directory where favicon.lua seemed to be working properly, then just edited the directory and icon name. Still no success.
Vald is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 01-13-2013, 05:36 AM  
Equendil
The Undying
Interface Author - Click to view interfaces

Forum posts: 52
File comments: 125
Uploads: 5
Quote:
Having trouble getting an icon to show for Vinny's Daily Tasks Reference. I created favicon.lue and places it in the Plugins/Vinny/DailyTasks folder. Here's the code inside:

Favicon = {
Regular = { Resource = "Vinny/DailyTasks/task.tga", Width = 32, Height = 32 }
}

I've tried reloading LotRo, refreshing the plugins, etc. but no icon is showing on the menu entry for Daily Tasks. Any idea why?
Hey and sorry for the late reply. The file should be called "Favicon.lua" (not '.lue'), so that would be my first guess (unless you only misspelled it here).

That being said, the next version of Bootstrap will mimic Turbine's plugin manager and grab the icon from the .plugin file. I'm pretty busy with life at the moment though, so it might be a while until I get to it.
Equendil is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 01-02-2013, 07:23 PM  
Vald
The Undying
 
Vald's Avatar

Forum posts: 22
File comments: 54
Uploads: 0
Having trouble getting an icon to show for Vinny's Daily Tasks Reference. I created favicon.lue and places it in the Plugins/Vinny/DailyTasks folder. Here's the code inside:

Favicon = {
Regular = { Resource = "Vinny/DailyTasks/task.tga", Width = 32, Height = 32 }
}

I've tried reloading LotRo, refreshing the plugins, etc. but no icon is showing on the menu entry for Daily Tasks. Any idea why?
Vald is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 12-03-2012, 08:11 PM  
Equendil
The Undying
Interface Author - Click to view interfaces

Forum posts: 52
File comments: 125
Uploads: 5
Thanks Amethadan!

It might be a while until I update this plugin as it's in need of other alterations, but I'll make sure it'll be localized when I do so
Equendil is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 12-02-2012, 11:01 AM  
Amethadan
The Undefeated
 
Amethadan's Avatar
Interface Author - Click to view interfaces

Forum posts: 8
File comments: 88
Uploads: 18
German translation

I translated the Text found in Bootstrap

Launch --> Starten
Show --> Zeige
Add to Menu --> Zum Menü hinzufügen
Show all --> Zeige alle
Remove --> Entfernen
Save Menu --> Menü speichern
Button Opacity --> Button Sichtbarkeit
Refresh Plugins --> Plugins neu laden
Reload Bootstrap --> Bootstrap neu laden
Command --> Befehl
Mode --> Modus
load or run --> laden oder aufrufen
run only --> aufrufen
laden dann starten --> laden und aufrufen
Name doesn't need to be translated its the same
Amethadan is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-22-2011, 07:38 PM  
Galuhad
The Undying
 
Galuhad's Avatar
Interface Author - Click to view interfaces

Forum posts: 24
File comments: 170
Uploads: 20
Quote:
I love the features of BootStrap but have found a bug. It causes problems if I load it prior to loading RaidAssistant, a great new raid helper program.

I'm not sure why but RaidAssistant works fine by itself or if I load it before BootStrap. If I load BootStrap first or use BootStrap to load RaidAssistant, that plugin can't find the names of the people in my group.

Manager, the other popular loader, doesn't cause this problem, so it seems that the issue is with BootStrap, not RaidAssistant. I'm not sure why a loader like BootStrap would cause trouble with any programs it has loaded but it seems to.

Could you look into this?
I've moved RaidAssistant into its own apartment so it shouldn't clash anymore with other plugins (BootStrap included). The problem seemed to be with the two plugins constantly over-writing each other. By moving RaidAssistant to its own apartment it no longer shares resources. From the small testing I've done this last couple of hours it seems to be Ok now. RaidAssistant v1.01 has just been uploaded. Please let me know if you have any further problems loading it through BootStrap
Galuhad is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-22-2011, 07:31 PM  
Equendil
The Undying
Interface Author - Click to view interfaces

Forum posts: 52
File comments: 125
Uploads: 5
Yep I'll look into it.

Btw, I haven't been able to reproduce any of the crashes mentioned here
Equendil is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-22-2011, 02:13 PM  
Vald
The Undying
 
Vald's Avatar

Forum posts: 22
File comments: 54
Uploads: 0
I love the features of BootStrap but have found a bug. It causes problems if I load it prior to loading RaidAssistant, a great new raid helper program.

I'm not sure why but RaidAssistant works fine by itself or if I load it before BootStrap. If I load BootStrap first or use BootStrap to load RaidAssistant, that plugin can't find the names of the people in my group.

Manager, the other popular loader, doesn't cause this problem, so it seems that the issue is with BootStrap, not RaidAssistant. I'm not sure why a loader like BootStrap would cause trouble with any programs it has loaded but it seems to.

Could you look into this?
Vald is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-06-2011, 10:01 AM  
abj9562
The Wary

Forum posts: 0
File comments: 36
Uploads: 0
I have used this plugin for a while now and want to say you did an awesome job! I have had no issues with Bootstrap at all.

I just wish we could have child menus. Some addons have lots of commands and it would be nice to bury these in child menus. Is that even possible?
abj9562 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-03-2011, 02:51 PM  
Equendil
The Undying
Interface Author - Click to view interfaces

Forum posts: 52
File comments: 125
Uploads: 5
Thanks for taking the time to test this Tairom, and for your report funnyday.

Please everyone, note that no plugin author's coding is, strictly speaking, at fault, plugins run in a protected environment within the game client, they cannot directly access the memory or any part of the operating system, any crash can only be the result of some bug or another in Turbine's lua runtime.

This of course, doesn't make crashes any less annoying, but I'd just like to emphasize that they are not due to someone's "bad" code, whether mine or anyone else's.

Still, given that lua plugins are not officially supported in any way, it's down to plugin authors to track such bugs, implement work-arounds to prevent them from occurring (or disable features if not possible), and report them to Turbine for (hopefully) a fix.

This one bug seems pretty tricky, I'll investigate further starting with the new information given here. I should have a little more time now, I'm mostly done with updating LIP for RoI (another plugin of mine, I'll upload later tonight).

Last edited by Equendil : 11-03-2011 at 02:52 PM.
Equendil is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-03-2011, 06:56 AM  
funnyday01
The Wary

Forum posts: 0
File comments: 25
Uploads: 0
Angry A Second Plugin which crash

Unhappy the New Plugin Ministrelbuff crash with boottrap too and this only when you load with boottrap wiwhitout it works
funnyday01 is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-03-2011, 05:22 AM  
Tairom
The Wary

Forum posts: 1
File comments: 4
Uploads: 0
Complete Testing Done

Ok, using your requested method for testing a clean bootstrap, I took it a step further and tested it for all of the plugins that I use. The results are good news for you, as it may help relieve some of the frustration that players are venting on your board. Your plugin seems to be getting the blame because it is the one executing code that is causing other plugins to trigger the crashing.

Testing method:
1. Clean load of the lotro client
2. Load a single plugin manually with /plugins load "plugin name"
3. Refresh plugins manually using /plugins refresh
4. Execute a mount command
5. If client does not crash, execute the /plugins unload command and return to step 2 and repeat for next plugin
The results of the above method located one plugin I use that replicates the error people are reporting here. I will list plugins I use and results at the bottom of this post. It may be that whatever code the author used for his/her plugin, other authors are using as well. The plugin that caused the crash for me may not be being used by others reporting problems, but it is assured that at least one plugin they are using is causing it.

I completed one final test using bootstrap to load all of my plugins, minus the one detected to throw the error. This test completed and passed without a problem. No client crash.

The problem seems to be with the fact that you allow bootstrap to "single button" execute the /plugins refresh command, and thus triggering the error that sets up the client to crash on mounting. Not your fault, but other authors coding.

All plugins I tested were utilizing their most recent releases.

Plugins tested:
1. Bootstrap (Clean) - No Crash
2. Palantir - No Crash
3. Hugebag Wrapper - No Crash
4. Moormap - No Crash
5. Compendium - No Crash
6. LotRO Alerts - Crash!!!
7. Daily Tasks - No Crash
8. Wallet - No Crash
9. Travel Window - No Crash
10. Predict In Game Time - No crash
11. Bootstrap - (Full Plugin load minus LotRO Alerts) - NO CRASH!!!
I hope this helps both you Equindil and the users of your great plugin manager.

Last edited by Tairom : 11-03-2011 at 12:43 PM.
Tairom is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 11-01-2011, 09:03 PM  
Equendil
The Undying
Interface Author - Click to view interfaces

Forum posts: 52
File comments: 125
Uploads: 5
Alright, I've spent a lengthy session trying to make my game client crash and so far I've been entirely unsuccessful. Tried with or without Huge Bags as well as a number of other plugins, tried summoning mounts every possible way after reloading plugins, tried messing about with HugeBag's own reloader, nothing did the trick.

Can anyone confirm that the following occurs on their client:
- /plugins unload
- /plugins load bootstrap (without any other plugins being loaded by bootstrap)
- Use the Reload Bootstrap button
- Summon a mount
- Client crashes

Or is that not as straight forward ?

Last edited by Equendil : 11-01-2011 at 09:09 PM.
Equendil 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 09:51 PM.


Our Network
EQInterface | EQ2Interface | Minion | WoWInterface | ESOUI | LoTROInterface | MMOUI | Swtorui