StarTip
This project is being retired in favor of its successor, StarTip2. This new addon is still in beta, but it already fixes bugs that existed in StarTip the original. http://wow.curseforge.com/addons/startip2/
-
-
StarTip - Tooltips from OuterSpace
Credits:
Huge appreciation goes out to ckknight for a ton of code. If you know CowTip, StarTip is similar. Props to Shefki for LuaTexts.
And many tributes go out to the many library authors whom have written the numerous libraries StarTip's script environment is built upon.
Customization Tips
StarTip provides an environment for your scripts.. This environment provides WoW API functions such as UnitName, UnitLevel, etc... If it's not available, try _G. Also, much of LuaTexts by Shefki is included, but be aware that modifications have been made and elements either removed or added. Also be aware that how you format your return values is incompatible with Pitbull4's implementation. In StarTip you simple return a string that's already formatted.
There are many plugins available. I imagine if you're willing to write an actual Lua script that you won't mind reading code. Go into the Libs folder and click into LibScriptable-1.0. Note all the LibScriptablePlugin* elements. These are what provide StarTip's script environment with functions and other elements.
Check here for a brief tutorial.
StarTip also has LibDogTag support. Just return the dog tag from your script, and click the check mark labeled "Dog Tag" to enable this feature.
Note: If you know of a library that you want to make available in your own scripts. let me know and I'll see about writing a plugin for it.
Bug Reports and Feature Requests
StarTip will take advantage of BugGrabber if it's installed, and will attempt to disable lines that cause errors. Note that the errors are not suppressed.
Report any bugs or feature requests here: StarTip Forum.
Or create a ticket here: StarTip Ticket Tracker
You can also post on the Wowace forum thread.
If you find a bug and you want to revert to a stable version, try the upload on Wowinterface.com
Note: Please write a ticket if you have a back trace: StarTip Ticket Tracker
Note to Translators: You can easily support this project by translating some phrases at either two locations: StarTip and LibScriptable-1.0.
The comments on Curse.com have been disabled. They're too much of a hassle to keep up with and use to communicate with users. There are numerous other options mentioned in this description for filing bug reports, or for simply seeking general help. Try the Wowace.com forums if you're still not sure where to go.
Also, the Gender line will likely be on the last line, unless you cream your save file. You'll have to move the line wherever you want.
Using dominos bar mod
Swatter, v5.9.4933 (WhackyWallaby)
NPCScan, v4.0.0.2
NPCScanOverlay, v4.0.0.2
AckisRecipeList, v2.0.4-1-gaa2a609
ACP, v3.3.8
ArkInventory, v3.02
ArkInventoryRules, v
Atlas, v1.17.1
AtlasBattlegrounds, v1.17.1
AtlasDungeonLocs, v1.17.1
AtlasOutdoorRaids, v1.17.1
AtlasTransportation, v1.17.1
AtlasLoot, vv5.11.05
AtlasLootFu, vv5.11.05
AtlasQuest, v4.5.0 BETA
AucAdvanced, v5.9.4933 (WhackyWallaby)
AucFilterBasic, v5.9.4933 (WhackyWallaby)
AucFilterOutlier, v5.9.4933.2531
AucMatchUndercut, v5.9.4933.2531
AucStatHistogram, v5.9.4933 (WhackyWallaby)
AucStatiLevel, v5.9.4933 (WhackyWallaby)
AucStatPurchased, v5.9.4933 (WhackyWallaby)
AucStatSales, v5.9.4933.2842
AucStatSimple, v5.9.4933 (WhackyWallaby)
AucStatStdDev, v5.9.4933 (WhackyWallaby)
AucStatWOWEcon, v5.9.4933.2530
AucUtilAHWindowControl, v5.9.4933.3311
AucUtilAppraiser, v5.9.4933.2530
AucUtilAskPrice, v5.9.4933.3175
AucUtilAutoMagic, v5.9.4933.3142
AucUtilCompactUI, v5.9.4933.2530
AucUtilEasyBuyout, v5.9.4933.3583
AucUtilGlypher, v5.9.4933.2545
AucUtilItemSuggest, v5.9.4933.3108
AucUtilPriceLevel, v5.9.4933.2545
AucUtilScanButton, v5.9.4933.2530
AucUtilScanFinish, v5.9.4933.2530
AucUtilScanProgress, v5.9.4933.2530
AucUtilScanStart, v5.9.4933.4819
AucUtilSearchUI, v5.9.4933.3655
AucUtilSimpleAuction, v5.9.4933.4546
AucUtilVendMarkup, v5.9.4933.2530
AuctionProfitMaster, v1.0.7
Babylonian, v5.1.DEV.130
BadBoy, v6.100
BadBoyCCleaner, v3.11
Bartender4, v4.4.12
BeanCounter, v5.9.4933 (WhackyWallaby)
Chatter, v1.0
Chinchilla, vv2.2
Configator, v5.1.DEV.268
DBMBurningCrusade, v
DBMCore, v
DebugLib, v5.1.DEV.275
DropTheCheapestThing, vv3.6
ElitistGroup, v
FuBar, v
FuBarBagFu, vv1.1.7
FuBarClockFu, v3.0
FuBarDurabilityFu, v2.14
FuBarLocationFu, v3.0
FuBarMoneyFu, vv1.2.3-1-g88e2e2e
FuBarPerformanceFu, v2.0.0
FubarWintergrasperFu, v1.12.2
GoingPriceWowhead, v3.3.1287068001-beta
HandyNotes, v1.1.6
HealBot, v4.0.1.0
Informant, v5.9.4933 (WhackyWallaby)
LibBetterBlizzOptions10, v1.0
LibRock10, v
LibSharedMedia30, v3.0-60
LibSink20, v
MacroBank, v1.6
Mapster, v1.3.10-1-gbee04db
MarketWatcher, v2.1
MonkeySpeed, vv3.0.2
Mounted, vv2.2.6-1-g6929295
MoveAnything, v11.b3.4
Omen, v3.0.10
Outfitter, v5.0.1
PetLeash, v1.5.9
PitBull4, vv4.0.0-beta12-1-gef7174e
PitBull4Aggro, vv4.0.0-beta12-1-gef7174e
PitBull4Background, vv4.0.0-beta12-1-gef7174e
PitBull4BlankSpace, vv4.0.0-beta12-1-gef7174e
PitBull4CombatFader, vv4.0.0-beta12-1-gef7174e
PitBull4CombatIcon, vv4.0.0-beta12-1-gef7174e
PitBull4ComboPoints, vv4.0.0-beta12-1-gef7174e
PitBull4DogTagTexts, vv4.0.0-beta12-1-gef7174e
PitBull4ExperienceBar, vv4.0.0-beta12-1-gef7174e
PitBull4HappinessIcon, vv4.0.0-beta12-1-gef7174e
PitBull4HealthBar, vv4.0.0-beta12-1-gef7174e
PitBull4HideBlizzard, vv4.0.0-beta12-1-gef7174e
PitBull4Highlight, vv4.0.0-beta12-1-gef7174e
PitBull4HostilityFader, vv4.0.0-beta12-1-gef7174e
PitBull4LeaderIcon, vv4.0.0-beta12-1-gef7174e
PitBull4MasterLooterIcon, vv4.0.0-beta12-1-gef7174e
PitBull4Portrait, vv4.0.0-beta12-1-gef7174e
PitBull4PowerBar, vv4.0.0-beta12-1-gef7174e
PitBull4PvPIcon, vv4.0.0-beta12-1-gef7174e
PitBull4RaidTargetIcon, vv4.0.0-beta12-1-gef7174e
PitBull4RangeFader, vv4.0.0-beta12-1-gef7174e
PitBull4ReadyCheckIcon, vv4.0.0-beta12-1-gef7174e
PitBull4RestIcon, vv4.0.0-beta12-1-gef7174e
PitBull4RoleIcon, vv4.0.0-beta12-1-gef7174e
PitBull4VisualHeal5, vv4.0.0-beta12-1-gef7174e
Postal, v3.4.2
Prospect, vv201009171044
Quartz, v3.0.4
Recount, v
StarTip, v1.0
StarTipAppearance, v1.0
StarTipBars, v1.0
StarTipFade, v1.0
StarTipGestures, v1.0
StarTipHistograms, v1.0
StarTipIcons, v1.0
StarTipNameplates, v1.0
StarTipPortrait, v1.0
StarTipPosition, v1.0
StarTipPvP, v1.0
StarTipRaidIcon, v1.0
StarTipTargeting, v1.0
StarTipTexts, v1.0
StarTipUnitTooltip, v1.0
Stubby, v5.9.4933 (WhackyWallaby)
TidyPlates, v5.13.3 (R39)
TidyPlatesThreatPlates, v4.0
TomTom, vwowi:revision
BlizRuntimeLib_enUS v4.0.1.40000 <eu>
By the way, typing #showtooltip <spell name> seems to be fixing it - it jumps only when #showtooltip trying to get the name of first listed spell in macro. That might be incorrect way to use macros, but the porblem is many macro-generating mods (i.e. Mounted) use it this way. So that's what i see every time i need to mount...
And one more thing: seems like longer macros cause this, not the short ones. Like an example:
#showtooltip
/cast [nomod, btn:1,@player] [nomod, btn:2,@target] [nomod, btn:3,@none] [mod, btn:2,@targettarget] [mod, btn:1, @focus] Misdirection;
Message: Interface\AddOns\StarTip_UnitTooltip\UnitTooltip.lua:519: attempt to index field 'evaluator' (a nil value)
Time: 10/14/10 15:17:15
Count: 16
Stack: Interface\AddOns\StarTip_UnitTooltip\UnitTooltip.lua:519: in function <Interface\AddOns\StarTip_UnitTooltip\UnitTooltip.lua:504>
Interface\AddOns\StarTip_UnitTooltip\UnitTooltip.lua:1087: in function `SetUnit'
Interface\AddOns\StarTip\StarTip.lua:655: in function <Interface\AddOns\StarTip\StarTip.lua:633>
[C]: ?
Locals: self =
1 =
}
2 =
}
3 =
}
4 =
}
5 =
}
6 =
}
7 =
}
8 =
}
9 =
}
10 =
}
11 =
}
12 =
}
13 =
}
14 =
}
15 =
}
16 =
}
17 =
}
18 =
}
19 =
}
20 =
}
21 =
}
}
lineNum = 0
(for generator) = <function> defined =[C]:-1
(for state) =
1 =
}
2 =
}
3 =
}
4 =
}
5 =
}
6 =
}
7 =
}
8 =
}
9 =
}
10 =
}
11 =
}
12 =
}
13 =
}
14 =
}
15 =
}
16 =
}
17 =
}
18 =
}
19 =
}
20 =
}
21 =
}
}
(for control) = 1
i = 1
v =
enabled = true
config =
}
name = "UnitName"
bold = true
left = "local r, g, b
if UnitIsPlayer(unit) then
r, g, b = ClassColor(unit)
else
r, g, b = UnitSelectionColor(unit)
end
return Colorize(Name(unit), r, g, b)
"
}
left = ""
right = ""
c = nil
cc = nil
(*temporary) = nil
(*temporary) = "mouseover"
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = -0
(*temporary) = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:1190
(*temporary) = "attempt to index field 'evaluator' (a nil value)"
debug1 = <function> defined @Interface\AddOns\StarTip_UnitTooltip\UnitTooltip.lua:460
GameTooltip = GameTooltip {
0 = <userdata>
SetQuestLogRewardSpell = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
Outfitter_OrigSetBagItem = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
SetHyperlink = <function> defined @Interface\AddOns\Outfitter\Outfitter.lua:7560
SetUnit = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
hasMoney = 1
Hide = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:100
Outfitter_OrigSetHyperlink = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
SetQuestRewardSpell = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
Show = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:100
SetPetAction = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
SetUnitDebuff = <function> defined =[C]:-1
SetLootItem = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
SetQuestItem = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
FadeOut = <function> defined @Interface\AddOns\Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:100
numMoneyFrames = 1
SetInboxItem = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
SetBuybackItem = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
shoppingTooltips =
}
AddLine = <function> defined =[C]:-1
SetMerchantItem = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
SetQuestLogItem = <function> defined @Interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:273
SetUnitBuff = <function>
Message: ...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:440: attempt to call upvalue 'GetSpellName' (a nil value)
Time: 10/12/10 22:59:55
Count: 432
Stack: ...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:440: in function <...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:437>
...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:468: in function <...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:462>
...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:723: in function `init'
...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:960: in function `initialOnUpdate'
...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:1004: in function <...lay-1.0\Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:998>
Locals: spellName = "Heal"
i = 1
(*temporary) = nil
(*temporary) = 1
(*temporary) = "spell"
(*temporary) = "attempt to call upvalue 'GetSpellName' (a nil value)"
GetSpellName = nil
BOOKTYPE_SPELL = "spell"
Message: ...alents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:173: attempt to compare number with string
Time: 10/05/10 13:22:55
Count: 1
Stack: ...alents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:173: in function `TalentQuery_Ready'
...alents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:196: in function `SendQuery'
...alents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:248: in function <...alents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:239>
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: in function `SetUnit'
Interface\AddOns\XPerl\XPerl.lua:1278: in function `XPerl_PlayerTip'
Interface\AddOns\XPerl\XPerl.lua:3375: in function <Interface\AddOns\XPerl\XPerl.lua:3374>
Locals: self =
OnRoleChange = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:185
ClearSpec = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:226
GetRole = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:232
GetSpec = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:219
SpecText = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:202
TalentQuery_Ready = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:150
SendQuery = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:192
OnUpdate = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:113
__index =
}
New = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:58
}
e = "Warrior"
name = "Grilor"
realm = nil
unitid = "player"
class = "Hunter"
specNames =
}
guid = "0x010000000007A75D"
specNames =
1 = 811
2 = 807
3 = 809
}
highPoints =
1 = "A rugged tracker who favors using animal venom, explosives and traps as deadly weapons."
2 = "A master of the wild who can tame a wide variety of beasts to assist him in combat."
3 = "A master archer or sharpshooter who excels in bringing down enemies from afar."
}
isnotplayer = false
talentGroup = 1
first = 3
second = nil
(*temporary) = "A rugged tracker who favors using animal venom, explosives and traps as deadly weapons."
(*temporary) = 3
(*temporary) =
1 = "A master of the wild who can tame a wide variety of beasts to assist him in combat."
2 = "A master archer or sharpshooter who excels in bringing down enemies from afar."
3 = "A rugged tracker who favors using animal venom, explosives and traps as deadly weapons."
4 = "None"
5 = "player"
guid = "0x010000000007A75D"
}
(*temporary) = "A rugged tracker who favors using animal venom, explosives and traps as deadly weapons."
(*temporary) =
1 = 3
}
(*temporary) = 3
(*temporary) =
1 = 3
}
(*temporary) = 3
(*temporary) = "attempt to compare number with string"
new = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPluginTalents-1.0\LibScriptableDisplayPluginTalents-1.0.lua:36
spec =
-2147483648 =
}
}
UnitIsUnit = <function> defined =[C]:-1
GetNumTalentTabs = <function> defined =[C]:-1
GetTalentTabInfo = <function> defined =[C]:-1
sortfunc = <function> defined @Interface\AddOns\StarTip\Libs\LibScriptableDisplay-1.0\LibScriptableDisplayPlu