About
Here Be Dragons is a a plugin that lets the curious developer browse the global lua environment (_G) in LotRO with a graphical user interface.
Ultimately, Here Be Dragons is simply an interactive table dump. Developers can use the browser independently of the plugin itself to 'explore' their own data structures at run time, or find out more about those undocumented "args" Turbine's API sends as parameter to events.
Installation
Copy the "Equendil" folder from the zip file to your "My Documents/The Lord of the Rings Online/Plugins" folder. Overwriting files should be safe if you are already using one or several of my other plugins (provided they are up to date).
You will need to execute "/plugins refresh" if you install the plugin for the first time while the game is running.
Usage
On the command line (if launched as a plugin):
"/plugins load HereBeDragons" will launch the plugin and display its window.
"/hbd [show|hide|toggle]" will display, hide, or toggle the plugin's window. "/hbd" without arguments is equivalent to "/hbd toggle".
Graphical User Interface:
Table keys and values are color coded in the following way:
string,
number,
table,
boolean,
function, nil,
thread,
userdata,
metatable
"Refresh All" will reset top level nodes, so that expanding them again will reflect any change made to data in that scope.
As a debugging aid
In order to use the browser in your code, you have to import the following package somewhere in your project:
Code:
import "Equendil.LuaExplorer.DefaultBrowser";
Then you can call Equendil.LuaExplorer.Explore( name, value ), this will create a new top level node called <name>, that will let you inspect <value>, whatever it is (obviously, it should be a table or this would be quite pointless). This will open the browser's window if it was closed.
For instance:
Code:
Equendil.LuaExplorer.Explore( "Turbine's API", Turbine );
would let you inspect the Turbine.* hiearchy.
Code:
myButton.Click = function( sender, args )
Equendil.LuaExplorer.Explore( "Click args", args );
end
would let you inspect the argument sent to a Click event by an instance <myButton> of Turbine.UI.Button.
Top level nodes can be closed clicking the red cross button
IMPORTANT: The plugin does not need to be loaded to do this.
Known Issues & limitations- The icon showing the expandable status of a node ( + / - ) might go out of sync if double clicked
Reporting issues, requests
You can report bugs and other issues or make requests:
- 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
- None at the moment.
Change Log
v1.0 - 2011 July 11
-Initial release.