Titan Panel
Titan Panel is a customizable in-game info bar that displays real-time data like gold, XP, FPS, latency, and more. It supports plugins to enhance your UI and optimize your gameplay experience.
Installation
Manual Installation Only
- Download this zip: Titan_v2.20.zip
- Unpack the
.zip
and move the folders into yourInterface/AddOns
directory and restart the game.
Basic Usage
Basic Usage & Customization
- Enabling/Disabling Mods: Use the in-game Addons menu to toggle specific Titan plugins.
- Moving Panels: Drag the top or bottom bars to reposition them.
- Changing Bar Layout:
- Toggle between single or double bars.
- Choose top or bottom placement.
- Enable or disable auto-hide.
- Adjust transparency, scale, and font size in the options menu.
- Button Alignment: Switch between left, center, or right alignment for panel buttons.
- Plugin Management: Right-click the panel to access the context menu:
- Add or remove plugins.
- Configure options like auto-hide, tooltips, and display settings.
- Localization: Available in English, French, German, and others—set via game language options.
- Resetting Settings: Use the "Reset" option in the right-click menu to restore defaults.
- Troubleshooting: For issues, use the "Load Error" popup to report problems.
Preview
Titan Panel:
Option:
Key Features
- Real-Time Info Display: Money, Bag space, FPS, Latency, Location, XP, Honor, Time, and more.
- Customizable Bars: One or two bars, with optional double bar configuration.
- Plugin System: Supports a variety of plugins for additional info and controls.
- Auto Gear Management: TitanRider auto equips/unequips riding gear.
- Performance Enhancements: Optimized for minimal lag and smooth operation.
- In-Game Settings Menu: Access options for auto-hide, layout, plugin categories, and localization.
List of Titan Plugins
Name | Version | Last Update | Author | Description |
TitanAmmo | 2.04 | - | TitanMod | show ammo counts |
TitanBag | 2.04 | - | TitanMod | show room left in bags |
TitanClock | 2.04 | - | TitanMod | clock with offsets for your true timezone |
TitanCoords | 2.04 | - | TitanMod | displays location, plus coordinates. Won't work inside instances |
TitanMoney | 2.04 | - | TitanMod | displays money count |
TitanXP | 2.04 | - | TitanMod | displays XP and tooltip with more information |
TitanVolume | 2.04 | - | TitanMod | Volume slider for the main volume |
TitanLootType | 2.04 | - | TitanMod | displays party loot settings |
TitanPerformance | 2.04 | - | TitanMod | Shows the Performance data of WoW. Memory usage by UI, garbage collection time, fps, latency |
TitanUIScale | 2.04 | - | TitanMod | slider for scaling the Titan Panel and the overall UI elements |
HonorPlus | r10.1700 | 9/22/05 | Swiftstab | Shows Honor Information on the Titan Panel |
ItemBonuses | 0.9 | 10/12/05 | CrowleyAJ | Shows the total bonus given by items for each stat |
Regen | 1700 | 9/21/05 | skeetskeet | Show the amount of HP and Mana regenerated per tick |
Repair | 0.2 | 7/18/05 | LumpN | Shows the current/max durability of each item you are currently wearing and the money needed to repair them |
Developer's Guide
Basic Structure of a Titan Panel Button
A Titan panel button generally consists of:
- The button itself: Displays on the Titan panel. Can be text, icons, or complex UI frames.
- Context menu: Right-click options.
- Tooltip: Hover information.
- Control window: Optional window for settings or controls.
Defining a Button in XML<syntaxhighlight lang="lua"> <Frame parent="UIParent">
<Frames> <Button name="TitanPanelExampleButton" inherits="TitanPanelTextTemplate" frameStrata="FULLSCREEN" toplevel="true"> <Scripts> <OnLoad> TitanPanelExampleButton_OnLoad(); TitanPanelButton_OnLoad(); </OnLoad> </Scripts> </Button> </Frames>
</Frame> </syntaxhighlight>
- OnLoad: Sets up plug-in details and registers with Titan Panel.
- Inheritance Templates: Specify the button type (see below).
Template Types for Buttons
Choose the template based on your plug-in's display needs:
Template Name | Description | Notes |
---|---|---|
TitanPanelButtonTemplate | Basic button with right-click menu and default handlers. No display content — add child frames. | Use if adding custom UI elements. |
TitanPanelTextTemplate | Button with a text string. | Ideal if only displaying text. |
TitanPanelIconTemplate | Button with an icon. | Icons appear on the right side; icon texture and iconWidth define appearance.
|
TitanPanelComboTemplate | Icon + text combo. | Shows icon (optional) with text; ShowIcon controls visibility, iconButtonWidth sets space.
|
TitanPanelChildButtonTemplate | Child button within a parent. | For multiple buttons in one panel; hook OnClick for different behaviors.
|
TitanOptionsSliderTemplate | Vertical sliders for control windows. | Used for sliders, not top-level buttons. |
Registering Your Plug-in
Before calling TitanPanelButton_OnLoad()
, set up your plug-in's registry table. This defines appearance and behavior:
Field | Description |
---|---|
id
|
Unique string ID. |
builtIn
|
Set to 1 to appear in built-in menu.
|
menuText
|
Label in the toggle menu. |
buttonTextFunction
|
Function name returning button text. |
tooltipTitle
|
Tooltip header. |
tooltipTextFunction
|
Function returning tooltip text. |
tooltipCustomFunction
|
Function to update the tooltip dynamically. |
icon
|
Icon texture name. |
iconWidth
|
Width (pixels) of icon. Default: 16. |
iconButtonWidth
|
Width (pixels) of icon or combo button. |
savedVariables
|
Table of persistent variables (ShowIcon , ShowLabelText , etc.). Access with TitanGetVar() / TitanSetVar() .
|
frequency
|
Update interval in seconds. |
updateType
|
Which functions to update (tooltip , button , or both).
|
Example Registry Setup<syntaxhighlight lang="lua"> function TitanPanelExamplePlugin_OnLoad()
this.registry = { id = "Example", menuText = "Example Plug-in", tooltipTitle = "Example Plug-in", buttonTextFunction = "TitanPanelExamplePlugin_GetButtonText", };
end
function TitanPanelExamplePlugin_GetButtonText()
return "Example"
end </syntaxhighlight>This creates a simple plug-in displaying "Example" on the panel.
Handling Clicks
- Left Clicks: Hook the
OnClick
event or create a control frame calledTitanPanel(ID)ControlFrame
. - Right Clicks: Ensure
TitanPanelButton_OnClick()
is called to handle context menus.
Creating a Context Menu
Define TitanPanelRightClickMenu_Prepare(ID)
to build your menu:<syntaxhighlight lang="lua">
function TitanPanelRightClickMenu_PrepareExampleMenu()
TitanPanelRightClickMenu_AddTitle(TitanPlugins["Example"].menuText); TitanPanelRightClickMenu_AddToggleIcon("Example"); TitanPanelRightClickMenu_AddToggleLabelText("Example"); TitanPanelRightClickMenu_AddSpacer(); TitanPanelRightClickMenu_AddCommand(TITAN_PANEL_MENU_HIDE, "Example", TITAN_PANEL_MENU_FUNC_HIDE);
end </syntaxhighlight>
Building a Context Menu
Use the following functions to add menu items:
Function | Description |
---|---|
TitanPanelRightClickMenu_AddTitle(text, level?)
|
Adds a menu title. |
TitanPanelRightClickMenu_AddSpacer(level?)
|
Adds space. |
TitanPanelRightClickMenu_AddToggleIcon(id)
|
Toggle icon visibility. |
TitanPanelRightClickMenu_AddToggleLabelText(id)
|
Toggle label text. |
TitanPanelRightClickMenu_AddToggleColoredText(id)
|
Toggle colored text. |
TitanPanelRightClickMenu_AddCommand(text, value, funcname, level?)
|
Add command with callback. |
TitanPanelRightClickMenu_AddToggleVar(text, id, var, toggleTable?)
|
Toggle variable. |
Important Notes
- The example plugin's registry lacks variables and icon — toggles won't work without them.
- The
GetButtonText
method should return display text or labels. - Ensure your registry includes all necessary fields for full functionality.
Updates
Version Updates & Fixes
- 2.19.1: Fixed Weapon Quick Swap dependency.
- 2.19: Updated for Patch 1.11.
- 2.18: Added Titan Zonespeed, fixed casting bar blur, introduced new Titan Repair, and improved performance.
- 2.17.1: Fixed overlap issues, enhanced TitanRepair and BonusScanner performance.
- 2.17: Overall performance boost, fixed lag in TitanRepair, added option to disable inventory damage check, improved equipment changers, fixed French locale typos.
- 2.16.3 - 2.16.1: Various bug fixes including lag, errors, and localization.
- 2.16: Fixed Auto Join bug, Rider display, and improved performance.
- 2.15.5 - 2.15.1: Bug fixes, added profession bags, compatibility with WoW 1.10, and Rider improvements.
- 2.14.2 - 2.14: Removed Titan Naked for clarity, fixed graphics, auto join, and death in battlegrounds.
- 2.13.1 - 2.13: Fixed debug errors, added localization, and improved auto join/release.
- 2.12 - 2.11: Tooltip fixes and Rider compatibility.
- 2.10 - 2.09: Added TitanRider for auto gear equip/unequip, fixed bugs, and localization.
- 2.08 - 2.07: UI scaling fixes, timezone settings, and conflict resolutions.
- 2.06 - 2.05: UI adjustments, clock display fixes, and graphics revamp.
- 2.04 - 2.03: Tooltip flashing fix, new options menu, plugin categorization, and version display.