Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local version = 10
- -- version history:
- -- 10 initial release, numbered to match LoTRO update 10
- -- Feel free to borrow or fork code, unless you're a jerk.
- -- 02/09/2014: DJPorterNZ
- -- All credit to Polymnie for his framework in XpPredict
- -- WIP: logTarget to chat
- -- Updates: http://codepad.org/users/DJPorterNZ
- -- -- Accessed via modified debug code
- -- o Set debug = true to activate new code
- -- + logTarget info formatted for spreadsheet insert
- -- and table updates.
- -- o leave debug = false to keep old functionality
- -- + clean logTarget info
- -- -- Updated XP, Morale & Power tables to lvl 120
- -- o Estimated using Polymnie's code
- -- o NormalMorale: http://codepad.org/ixRJ5ZSX
- -- o NormalPower: http://codepad.org/cfO6YS6X
- -- -- FIXED: Mob level colours with correct banding
- -- -- mobKind via table lookup cludge
- -- o Table is going to be HUGE!
- -- o Start zones only ATM. May not be complete.
- -- -- mobTier fix via table lookup cludge
- -- o Possible fix via checking morale values against actual
- -- in-game values. Power values seem to be unchanged ATM.
- -- TODO:
- -- -- Grab location info via chat monitoring: You have entered... etc.
- import "Turbine.Gameplay"
- import "Turbine.UI"
- local debug = true
- local WindowLeft = 320
- local WindowTop = 0
- local WindowWidth = 260
- local WindowHeight = 32
- local MyChar = Turbine.Gameplay.LocalPlayer:GetInstance()
- local MyTarget, TargetLevel, TargetMorale, TargetPower
- local tick, tock
- -------------------------------------------------------------------------------
- local MonsterXp = {
- -- 1 2 3 4 5 6 7 8 9 10
- 8, 10, 14, 18, 22, 26, 30, 34, 38, 42, -- 1 to 10
- 46, 50, 54, 59, 63, 67, 71, 75, 79, 84, -- 11 to 20
- 88, 92, 96, 100, 104, 108, 113, 117, 121, 125, -- 21 to 30
- 129, 133, 138, 142, 146, 150, 154, 158, 163, 167, -- 31 to 40
- 171, 175, 179, 183, 188, 192, 196, 200, 204, 208, -- 41 to 50
- 213, 217, 221, 225, 229, 233, 238, 242, 246, 250, -- 51 to 60
- 262, 275, 289, 303, 319, 335, 351, 369, 387, 407, -- 61 to 70
- 427, 448, 471, 494, 519, 545, 573, 601, 631, 663, -- 71 to 80
- 696, 731, 767, 806, 846, 888, 933, 980, nil, nil, -- 81 to 90
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, -- 91 to 100
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, -- 101 to 110
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, -- 111 to 120
- -- FIXME need confirmation on predicted XP for levels 87, 88 - Max Lvl.
- }
- local MonsterMorale = {
- 29.018538, 38.004517, 48.410225, 58.907806, 70.88192, -- 1 to 5
- 104.470901, 121.949013, 138.521255, 156.719467, 176.625534, -- 6 to 10
- 196.87619, 218.845642, 241.180023, 253.239029, 265.90097, -- 11 to 15
- 271.196014, 284.755829, 298.993622, 313.943298, 325, -- 16 to 20
- 352, 381, 412, 445, 480, -- 21 to 25
- 517, 556, 597, 640, 685, -- 26 to 30
- 732, 782, 835, 891, 950, -- 31 to 35
- 1012, 1077, 1145, 1216, 1290, -- 36 to 40
- 1367, 1448, 1533, 1622, 1715, -- 41 to 45
- 1812, 1913, 2018, 2127, 2240, -- 46 to 50
- 2357, 2479, 2606, 2738, 2875, -- 51 to 55
- 3017, 3164, 3316, 3473, 3635, -- 56 to 60
- 3802, 3974, 4151, 4336, 4529, -- 61 to 65
- 4730, 4940, 5159, 5387, 5625, -- 66 to 70
- 5873, 6131, 6400, 6680, 6972, -- 71 to 75
- 7276, 7593, 7923, 8267, 8625, -- 76 to 80
- 9125, 9625, 10125, 10625, 11125, -- 81 to 85
- 11625, 12125, 12625, 13125, 13625, -- 86 to 90
- 14125, 14625, 15125, 15625, 16125, -- 91 to 95
- 16625, 17125, 17625, 18125, 18625, -- 96 to 100
- 19125, 19625, 20125, 20625, 21125, -- 101 to 105
- 21625, 22125, 22625, 23125, 23625, -- 106 to 110
- 24125, 24625, 25125, 25625, 26125, -- 111 to 115
- 26625, 27125, 27625, 28125, 28625, -- 116 to 120
- }
- local MonsterPower = {
- 49.5625, 54.25, 59.0625, 64, 69.0625, -- 1 to 5
- 74.25, 79.5625, 85, 90.5625, 96.25, -- 6 to 10
- 102.0625, 108, 114.0625, 120.25, 126.5625, -- 11 to 15
- 133, 139.5625, 146.25, 153.0625, 160, -- 16 to 20
- 167.0625, 174.25, 181.5625, 189, 196.5625, -- 21 to 25
- 204.25, 212.0625, 220, 228.0625, 236.25, -- 26 to 30
- 244.5625, 253, 261.5625, 270.25, 279.0625, -- 31 to 35
- 288, 297.0625, 306.25, 315.5625, 325, -- 36 to 40
- 334.5625, 344.25, 354.0625, 364, 374.0625, -- 41 to 45
- 384.25, 394.5625, 405, 415.5625, 426.25, -- 46 to 50
- 436.75, 447.3125, 457.875, 468.4375, 479, -- 51 to 55
- 489.5625, 500.125, 510.6875, 521.25, 531.8125, -- 56 to 60
- 542.584778, 553.570923, 564.775146, 576.201599, 587.854614, -- 61 to 65
- 599.738708, 611.858215, 624.217834, 636.822144, 649.675903, -- 66 to 70
- 662.784058, 676.151367, 689.78302, 703.684021, 717.859619, -- 71 to 75
- 732.315125, 747.05603, 762.087769, 777.416016, 793.046509, -- 76 to 80
- 809.046509, 825.046509, 842.046509, 859.046509, 876.046509, -- 81 to 85
- 894.046509, 912.046509, 930.046509, 948.046509, 966.046509, -- 86 to 90
- 984.046509, 1002.046509, 1020.046509, 1038.046509, 1056.046509, -- 91 to 95
- 1074.046509, 1092.046509, 1110.046509, 1128.046509, 1146.046509, -- 96 to 100
- 1164.046509, 1182.046509, 1200.046509, 1218.046509, 1236.046509, -- 101 to 105
- 1254.046509, 1272.046509, 1290.046509, 1308.046509, 1326.046509, -- 106 to 110
- 1344.046509, 1362.046509, 1380.046509, 1398.046509, 1416.046509, -- 111 to 115
- 1434.046509, 1452.046509, 1470.046509, 1488.046509, 1506.046509, -- 116 to 120
- }
- local ResourceTier = {
- ["Shattered Pitcher"] = 1,
- ["Broken Urn"] = 2,
- ["Antique Vase"] = 3,
- ["Forgotten Text"] = 4,
- ["Ancient Vase"] = 5,
- ["Sage's Casket"] = 6,
- ["Sage's Lockbox"] = 6,
- ["Sage's Locker"] = 6,
- ["Banded Coffer"] = 7, ["Heavy Banded Coffer"] = 7,
- ["Ornate Cache"] = 8, ["Heavy Ornate Cache"] = 8,
- ["Adorned Chest"] = 9, ["Heavy Adorned Chest"] = 9,
- ["Rowan Branches"] = 1, ["Heavy Rowan Branches"] = 1,
- ["Ash Branches"] = 2, ["Heavy Ash Branches"] = 2,
- ["Yew Branches"] = 3, ["Heavy Yew Branches"] = 3,
- ["Lebethron Branches"] = 4, ["Heavy Lebethron Branches"] = 4,
- ["Black Ash Branches"] = 5, ["Heavy Black Ash Branches"] = 5,
- ["Ilex Branches"] = 6, ["Pile of Ilex Wood"] = 6,
- ["Heavy Ilex Branches"] = 6, ["Heavy Pile of Ilex Wood"] = 6,
- ["Heavy Mallorn Branches"] = 6, ["Heavy Pile of Mallorn Wood"] = 6,
- ["Birch Branches"] = 7, ["Heavy Birch Branches"] = 7,
- ["Oak Branches"] = 8, ["Heavy Oak Branches"] = 8,
- ["Walnut Branches"] = 9, ["Heavy Walnut Branches"] = 9,
- ["Copper Deposit"] = 1, ["Rich Copper Deposit"] = 1,
- ["Barrow-iron Deposit"] = 2, ["Rich Barrow-iron Deposit"] = 2,
- ["Silver Deposit"] = 2, ["Rich Silver Deposit"] = 2,
- ["Rich Iron Deposit"] = 3, ["Bountiful Iron Deposit"] = 3,
- ["Gold Deposit"] = 3, ["Rich Gold Deposit"] = 3,
- ["Dwarf-iron Deposit"] = 4, ["Rich Dwarf-iron Deposit"] = 4,
- ["Platinum Deposit"] = 4, ["Rich Platinum Deposit"] = 4,
- ["Ancient Iron Deposit"] = 5, ["Rich Ancient Iron Deposit"] = 5,
- ["Ancient Silver Deposit"] = 5, ["Rich Ancient Silver Deposit"] = 5,
- ["Khazâd Skarn Deposit"] = 6, ["Rich Khazâd Skarn Deposit"] = 6,
- ["Skarn Deposit"] = 7, ["Rich Skarn Deposit"] = 7,
- ["Riddermark Deposit"] = 8, ["Rich Riddermark Deposit"] = 8,
- ["Eorlingas Skarn Deposit"] = 9, ["Rich Eorlingas Skarn Deposit"] = 9,
- }
- local targetKind = {
- ["Accursed Fell-spirit"] = "The Dead",
- ["Adolescent Brown-bear"] = "Beast",
- ["Adult Bear"] = "Beast",
- ["Agitated Barkshredder"] = "Beast",
- ["Aglarchen"] = "Elf",
- ["Aldis Oatbearer"] = "Man",
- ["Alert White Hand"] = "Orc-kind",
- ["Amdir"] = "Man",
- ["Ancient Barrow-wight"] = "The Dead",
- ["Ancient Bile-spewer"] = "The Dead",
- ["Ancient Bog-warden"] = "The Dead",
- ["Andraste"] = "Man",
- ["Angered Tarkrîp"] = "Orc-kind",
- ["Angmarim Priest"] = "Man",
- ["Angmarim Scout"] = "Man",
- ["Angmarim Silkspinner"] = "Man",
- ["Angmarim Soldier"] = "Man",
- ["Angmarim Warrior"] = "Man",
- ["Angry Bear"] = "Beast",
- ["Angry Broadtooth"] = "Beast",
- ["Angry Razortooth"] = "Beast",
- ["Angry Splintertusk"] = "Beast",
- ["Angry Tusker"] = "Beast",
- ["Arthedain Guard"] = "The Dead",
- ["Arthedain Soldier"] = "The Dead",
- ["Asht"] = "Beast",
- ["Atli Spider-Bane"] = "Man",
- ["Azuzol"] = "Spiders & Insects",
- ["Badger"] = "Beast",
- ["Baleful Shadow-wing"] = "Beast",
- ["Baleful Willow-root"] = "Creatures of Nature",
- ["Balt-olog Crusher"] = "Troll-kind",
- ["Balt-olog Heaver"] = "Troll-kind",
- ["Barkshredder Cub"] = "Beast",
- ["Barkshredder Mother"] = "Beast",
- ["Barkshredder Sentinel"] = "Beast",
- ["Barkshredder Yearling"] = "Beast",
- ["Barrow-bat"] = "Beast",
- ["Barrow-candle"] = "The Dead",
- ["Barrow-spider"] = "Spiders & Insects",
- ["Barrow-spirit"] = "The Dead",
- ["Barrow-warden"] = "The Dead",
- ["Barrow-wight Archer"] = "The Dead",
- ["Barrow-wight Caller"] = "The Dead",
- ["Barrow-wight Marksman"] = "The Dead",
- ["Barrow-wight Warrior"] = "The Dead",
- ["Barrow-wight"] = "The Dead",
- ["Bear Cub"] = "Beast",
- ["Bear Mother"] = "Beast",
- ["Bear Yearling"] = "Beast",
- ["Bellowing Tomb-wight"] = "The Dead",
- ["Bersi"] = "Dwarf",
- ["Big Black-bear"] = "Beast",
- ["Big Tom"] = "Man",
- ["Bile-spewer Marksman"] = "The Dead",
- ["Bindbole Spinner"] = "Spiders & Insects",
- ["Bindbole Weaver"] = "Spiders & Insects",
- ["Binding Marsh-strider"] = "Creatures of Nature",
- ["Biting Field-rat"] = "Beast",
- ["Biting Gnats"] = "Spiders & Insects",
- ["Biting Neeker-breeker"] = "Spiders & Insects",
- ["Biting Shrew"] = "Beast",
- ["Biting Snow-spinner"] = "Spiders & Insects",
- ["Black Fly"] = "Spiders & Insects",
- ["Black-footed Fox"] = "Beast",
- ["Blackclaw"] = "Beast",
- ["Blackwold Archer"] = "Man",
- ["Blackwold Bowman"] = "Man",
- ["Blackwold Cutthroat"] = "Man",
- ["Blackwold Guard"] = "Man",
- ["Blackwold Hoodlum"] = "Man",
- ["Blackwold Knave"] = "Man",
- ["Blackwold Lackey"] = "Man",
- ["Blackwold Leader"] = "Man",
- ["Blackwold Lieutenant"] = "Man",
- ["Blackwold Lookout"] = "Man",
- ["Blackwold Marksman"] = "Man",
- ["Blackwold Outlaw"] = "Man",
- ["Blackwold Poacher"] = "Man",
- ["Blackwold Raider"] = "Man",
- ["Blackwold Ruffian"] = "Man",
- ["Blackwold Scout"] = "Man",
- ["Blackwold Sergeant"] = "Man",
- ["Blackwold Spy"] = "Man",
- ["Blackwold Striker"] = "Man",
- ["Blackwold Supervisor"] = "Man",
- ["Blackwold Thief"] = "Man",
- ["Blackwold Wolf-keeper"] = "Man",
- ["Blackwold Wolf-Master"] = "Man",
- ["Blackwold"] = "Man",
- ["Blighted Wood-troll"] = "Troll-kind",
- ["Bloated Barrow-crawler"] = "Spiders & Insects",
- ["Bloated Muck-crawler"] = "Spiders & Insects",
- ["Blogkritar"] = "The Dead",
- ["Blogmal Ravager"] = "Orc-kind",
- ["Blogmal Warrior"] = "Orc-kind",
- ["Blood-eye"] = "Beast",
- ["Blue-crag Chief"] = "Orc-kind",
- ["Blue-crag Chieftain"] = "Orc-kind",
- ["Blue-crag Crusher"] = "Orc-kind",
- ["Blue-crag Defender"] = "Orc-kind",
- ["Blue-crag Defiler"] = "Orc-kind",
- ["Blue-crag Demolisher"] = "Orc-kind",
- ["Blue-crag Despoiler"] = "Orc-kind",
- ["Blue-crag Goblin"] = "Orc-kind",
- ["Blue-crag Gouger"] = "Orc-kind",
- ["Blue-crag Hurler"] = "Orc-kind",
- ["Blue-crag Novice"] = "Orc-kind",
- ["Blue-crag Outrider"] = "Orc-kind",
- ["Blue-crag Piercer"] = "Orc-kind",
- ["Blue-crag Sapper"] = "Orc-kind",
- ["Blue-crag Scrapper"] = "Orc-kind",
- ["Blue-crag Sentinel"] = "Orc-kind",
- ["Blue-crag Shielder"] = "Orc-kind",
- ["Blue-crag Skirmisher"] = "Orc-kind",
- ["Blue-crag Slicer"] = "Orc-kind",
- ["Blue-crag Spoiler"] = "Orc-kind",
- ["Blue-crag Stabber"] = "Orc-kind",
- ["Blue-crag Stinger"] = "Orc-kind",
- ["Blue-crag Trapper"] = "Orc-kind",
- ["Blue-crag Warg-keeper"] = "Orc-kind",
- ["Blue-crag Warlord"] = "Orc-kind",
- ["Blághorsha"] = "Orc-kind",
- ["Bog Snake"] = "Beast",
- ["Bog-fly Hatcher"] = "Spiders & Insects",
- ["Bog-fly Hatchling"] = "Spiders & Insects",
- ["Bog-lord"] = "The Dead",
- ["Bog-neeker Burrower"] = "Spiders & Insects",
- ["Bog-prowler Ambusher"] = "Creatures of Nature",
- ["Bog-toad"] = "Beast",
- ["Bog-warden Archer"] = "The Dead",
- ["Bold Dusk-wolf"] = "Beast",
- ["Bold Wolf"] = "Beast",
- ["Bone Man"] = "The Dead",
- ["Bounder Primstone"] = "Hobbit",
- ["Bounder"] = "Hobbit",
- ["Brandy-hills Cub"] = "Beast",
- ["Brandy-hills Matron"] = "Beast",
- ["Brandy-hills Swine"] = "Beast",
- ["Brandy-wood Cub"] = "Beast",
- ["Brandy-wood Matron"] = "Beast",
- ["Brandy-woods Swine"] = "Beast",
- ["Brigand Boss"] = "Man",
- ["Brigand Knave"] = "Man",
- ["Brigand Poacher"] = "Man",
- ["Brigand Robber"] = "Man",
- ["Brigand Waylayer"] = "Man",
- ["Brigand-informer"] = "Man",
- ["Brigand-lieutenant"] = "Man",
- ["Brishzel"] = "Beast",
- ["Bristlehide Piglet"] = "Beast",
- ["Broken Oak-root"] = "Creatures of Nature",
- ["Broken-tusk Bristlehide"] = "Beast",
- ["Broken-tusk Scrubrunner"] = "Beast",
- ["Brood Ambusher"] = "Spiders & Insects",
- ["Brood Hatchling"] = "Spiders & Insects",
- ["Brood Hunter"] = "Spiders & Insects",
- ["Brood Lurker"] = "Spiders & Insects",
- ["Brood Trapper"] = "Spiders & Insects",
- ["Brood Weaver"] = "Spiders & Insects",
- ["Brood Webber"] = "Spiders & Insects",
- ["Brown Fox"] = "Beast",
- ["Brown-bear"] = "Beast",
- ["Brudhraw"] = "The Dead",
- ["Brunmor"] = "Man",
- ["Brush Hunter"] = "Beast",
- ["Burrowing Shrew"] = "Beast",
- ["Buzzing Gnats"] = "Spiders & Insects",
- ["Buzzing Moor-fly"] = "Spiders & Insects",
- ["Calder Cob"] = "Man",
- ["Camouflaged Bog-prowler"] = "Creatures of Nature",
- ["Captain Dogwood"] = "Man",
- ["Cargûl"] = "Unseen",
- ["Cave Hendroval"] = "Beast",
- ["Cave Snow-beast"] = "Beast",
- ["Cave Warg"] = "Beast",
- ["Chetwood Ambusher"] = "Spiders & Insects",
- ["Chetwood Hunter"] = "Spiders & Insects",
- ["Chetwood Spider"] = "Spiders & Insects",
- ["Chetwood Spinner"] = "Spiders & Insects",
- ["Chetwood Stalker"] = "Spiders & Insects",
- ["Chittering Darkclaw"] = "Beast",
- ["Chittering Gloom-wing"] = "Beast",
- ["Chittering Rock-claw"] = "Beast",
- ["Clawing Barghest"] = "Beast",
- ["Clawing Rock-worm"] = "Dragon-kind",
- ["Cliff Hendroval"] = "Beast",
- ["Cold-worm"] = "Dragon-kind",
- ["Coldfells Champion"] = "Dwarf",
- ["Coldfells Guardian"] = "Man",
- ["Coldfells Hunter"] = "Elf",
- ["Coldfells Scout"] = "Elf",
- ["Cole Sickleleaf"] = "Man",
- ["Coney"] = "Beast",
- ["Constable Bolger"] = "Hobbit",
- ["Copper-back Bullfrog"] = "Beast",
- ["Corrupted Blood-maple"] = "Creatures of Nature",
- ["Covell Woodwright"] = "Man",
- ["Craban Scout"] = "Beast",
- ["Craban Spy"] = "Beast",
- ["Craban"] = "Beast",
- ["Crawling Arm"] = "The Dead",
- ["Crazed Broadtooth"] = "Beast",
- ["Crazed Stonehold"] = "Orc-kind",
- ["Creeping Arm"] = "The Dead",
- ["Creeping Barrow-crawler"] = "Spiders & Insects",
- ["Creeping Hand"] = "The Dead",
- ["Creeping Muck-crawler"] = "Spiders & Insects",
- ["Creeping Oak-root"] = "Creatures of Nature",
- ["Creeping Red-root"] = "Creatures of Nature",
- ["Cruel-beak Scout"] = "Beast",
- ["Cruel-beak Sentry"] = "Beast",
- ["Cruel-beak Spy"] = "Beast",
- ["Cruel-beak Watcher"] = "Beast",
- ["Cruel-grip Barghest"] = "Beast",
- ["Créoth Apprentice"] = "Man",
- ["Créoth Chieftain"] = "Man",
- ["Créoth Devout"] = "Man",
- ["Créoth Disciple"] = "Man",
- ["Créoth Elder"] = "Man",
- ["Créoth Faithful"] = "Man",
- ["Créoth Leader"] = "Man",
- ["Créoth Novice"] = "Man",
- ["Créoth Warden"] = "Man",
- ["Curious Bear"] = "Beast",
- ["Curr-olog Heaver"] = "Troll-kind",
- ["Cursed Tomb-wight"] = "The Dead",
- ["Dark-wing Scout"] = "Beast",
- ["Dark-wing Spy"] = "Beast",
- ["Darkheart"] = "Creatures of Nature",
- ["Darting North-hawk"] = "Beast",
- ["Dead-aim Ongbúrz"] = "Orc-kind",
- ["Deadly Bile-spewer"] = "The Dead",
- ["Deadly Field-bear"] = "Beast",
- ["Deadly Shadow-wing"] = "Beast",
- ["Deadly Wight"] = "The Dead",
- ["Decaying Barrow-wight"] = "The Dead",
- ["Defender of Ost Guruth"] = "Man",
- ["Defiant Hoar-mantle"] = "Beast",
- ["Despaired Banner-wight"] = "The Dead",
- ["Devouring Barrow-crawler"] = "Spiders & Insects",
- ["Dire Grass-stalker"] = "Beast",
- ["Dire Warg"] = "Beast",
- ["Diseased Bristlehide"] = "Beast",
- ["Diseased Chill-wind"] = "Beast",
- ["Docile Hoar-mantle"] = "Beast",
- ["Dourhand Armsman"] = "Dwarf",
- ["Dourhand Blaster"] = "Dwarf",
- ["Dourhand Burglar"] = "Dwarf",
- ["Dourhand Chief"] = "Dwarf",
- ["Dourhand Commander"] = "Dwarf",
- ["Dourhand Excavator"] = "Dwarf",
- ["Dourhand Falconer"] = "Dwarf",
- ["Dourhand Foreman"] = "Dwarf",
- ["Dourhand Gem-seeker"] = "Dwarf",
- ["Dourhand Hunter"] = "Dwarf",
- ["Dourhand Mine-overseer"] = "Dwarf",
- ["Dourhand Miner"] = "Dwarf",
- ["Dourhand Night-watch"] = "Dwarf",
- ["Dourhand Overseer"] = "Dwarf",
- ["Dourhand Ruffian"] = "Dwarf",
- ["Dourhand Scout"] = "Dwarf",
- ["Dourhand Tracker"] = "Dwarf",
- ["Dourhand Trapper"] = "Dwarf",
- ["Dourhand Warrior"] = "Dwarf",
- ["Downs Hunter"] = "Beast",
- ["Downs Lynx"] = "Beast",
- ["Downs Wildcat"] = "Beast",
- ["Downs-bear Cub"] = "Beast",
- ["Drake Matron"] = "Dragon-kind",
- ["Drake"] = "Dragon-kind",
- ["Dread Barghest"] = "Beast",
- ["Dreadful Barrow-maple"] = "Creatures of Nature",
- ["Dreadful Field-bear"] = "Beast",
- ["Dreadful Gloom-water"] = "The Dead",
- ["Dreadful Tarkrîp"] = "Orc-kind",
- ["Drukordh"] = "Orc-kind",
- ["Dun Neeker-breeker"] = "Spiders & Insects",
- ["Dunlending Brawler"] = "Man",
- ["Dunlending Guard"] = "Man",
- ["Dunlending Labourer"] = "Man",
- ["Dunlending Scout"] = "Man",
- ["Dunlending Scrapper"] = "Man",
- ["Dunlending Soldier"] = "Man",
- ["Dunlending Tracker"] = "Man",
- ["Durglup"] = "Orc-kind",
- ["Dusk-wolf Leader"] = "Beast",
- ["Dusk-wolf Runt"] = "Beast",
- ["Dusk-wolf Scavenger"] = "Beast",
- ["Dusk-wolf Tracker"] = "Beast",
- ["Dúnlang"] = "Man",
- ["Earth-kin"] = "Giant-kind",
- ["Edric"] = "Man",
- ["Eglain Tale-weaver"] = "Man",
- ["Elder Forest-hunter"] = "Beast",
- ["Elder Moor-stalker"] = "Beast",
- ["Emerald Twospade"] = "Hobbit",
- ["Enraged Razortooth"] = "Beast",
- ["Enraged Splintertusk"] = "Beast",
- ["Esyld"] = "The Dead",
- ["Faegfaer"] = "The Dead",
- ["Faerdamil"] = "The Dead",
- ["Falconer Brúni"] = "Dwarf",
- ["Fanged-stalker"] = "Beast",
- ["Favargair Troll-keeper"] = "Man",
- ["Fearsome Marsh-strider"] = "Creatures of Nature",
- ["Fell Bog-prowler"] = "Creatures of Nature",
- ["Fell Holly-tender"] = "Creatures of Nature",
- ["Fell Oak-root"] = "Creatures of Nature",
- ["Fell Wight"] = "The Dead",
- ["Fell-grip Barghest"] = "Beast",
- ["Fen-creeper Binder"] = "Creatures of Nature",
- ["Feral Brown-bear"] = "Beast",
- ["Feral Dusk-wolf"] = "Beast",
- ["Feral Tusker"] = "Beast",
- ["Fergandir"] = "The Dead",
- ["Field Hare"] = "Beast",
- ["Field-bear"] = "Beast",
- ["Fierce Black-bear"] = "Beast",
- ["First Marshal Fádi"] = "Dwarf",
- ["First Marshal Léodwald"] = "Man",
- ["First Marshal Túllinn"] = "Elf",
- ["Flittering Gloom-wing"] = "Beast",
- ["Flitting Bat"] = "Beast",
- ["Fly-ridden Splintertusk"] = "Beast",
- ["Foraging Bear"] = "Beast",
- ["Foraging Brown-bear"] = "Beast",
- ["Foraging Downs-bear"] = "Beast",
- ["Foraging Shrew"] = "Beast",
- ["Foraging Tusker"] = "Beast",
- ["Foraging Wood-bear"] = "Beast",
- ["Forest Biter"] = "Spiders & Insects",
- ["Forest Shadow-queen"] = "Spiders & Insects",
- ["Forest Tree-spinner"] = "Spiders & Insects",
- ["Forest Tree-stalker"] = "Spiders & Insects",
- ["Forest Web-crawler"] = "Spiders & Insects",
- ["Forest Web-weaver"] = "Spiders & Insects",
- ["Formidable Snowbear"] = "Beast",
- ["Foul Barghest"] = "Beast",
- ["Foul Blue-crag"] = "Orc-kind",
- ["Foul Field-slug"] = "Beast",
- ["Foul Milkeye"] = "Beast",
- ["Foul Thicktusk"] = "Beast",
- ["Foul Wriggler"] = "Spiders & Insects",
- ["Foul-arrow White Hand"] = "Orc-kind",
- ["Frenzied Longtooth"] = "Beast",
- ["Frost Grim"] = "Ancient Evil",
- ["Galrîp"] = "Troll-kind",
- ["Gaunt Blight-caller"] = "Ancient Evil",
- ["Gaunt Plague-bearer"] = "The Dead",
- ["Gaunt Protector"] = "Ancient Evil",
- ["Gaunt War-singer"] = "Ancient Evil",
- ["Gazrîp"] = "Orc-kind",
- ["Gib Hawthorn"] = "Man",
- ["Gloomleaf"] = "Creatures of Nature",
- ["Gore-crow Lookout"] = "Beast",
- ["Gore-crow Sentinel"] = "Beast",
- ["Gore-crow Spotter"] = "Beast",
- ["Gore-crow Watcher"] = "Beast",
- ["Gramsfoot Advancer"] = "Orc-kind",
- ["Gramsfoot Battler"] = "Orc-kind",
- ["Gramsfoot Defiler"] = "Orc-kind",
- ["Gramsfoot Guard"] = "Orc-kind",
- ["Gramsfoot Hurler"] = "Orc-kind",
- ["Gramsfoot Piercer"] = "Orc-kind",
- ["Grasping Holly-tender"] = "Creatures of Nature",
- ["Grass-stalker Tracker"] = "Beast",
- ["Grazing Hoar-mantle"] = "Beast",
- ["Great Barrow-crawler"] = "Spiders & Insects",
- ["Great Brown Bat"] = "Beast",
- ["Great Hill-bear"] = "Beast",
- ["Great Leaf-crawler"] = "Spiders & Insects",
- ["Great Stonehoof"] = "Beast",
- ["Greater Sickle-fly"] = "Spiders & Insects",
- ["Green Neeker-breeker"] = "Spiders & Insects",
- ["Greenfields Biter"] = "Spiders & Insects",
- ["Greenfields Queen"] = "Spiders & Insects",
- ["Greenfields Tree-weaver"] = "Spiders & Insects",
- ["Grey Hill Buck"] = "Beast",
- ["Grey Hill Doe"] = "Beast",
- ["Grey Squirrel"] = "Beast",
- ["Grim Barren-oak"] = "Creatures of Nature",
- ["Grim Créoth"] = "Man",
- ["Grim Ongbúrz"] = "Orc-kind",
- ["Grim Tomb-wight"] = "The Dead",
- ["Grim Wight"] = "The Dead",
- ["Grimclaw Chill-wind"] = "Beast",
- ["Grish"] = "Orc-kind",
- ["Grishskum"] = "Beast",
- ["Growling Dusk-wolf"] = "Beast",
- ["Guard"] = "Man",
- ["Gurzrum"] = "Orc-kind",
- ["Gurzstâz"] = "Orc-kind",
- ["Gwigon"] = "Spiders & Insects",
- ["Half-orc Bandit"] = "Orc-kind",
- ["Half-orc Boss"] = "Orc-kind",
- ["Half-orc Bruiser"] = "Orc-kind",
- ["Half-orc Brute"] = "Orc-kind",
- ["Half-orc Captain"] = "Orc-kind",
- ["Half-orc Fighter"] = "Orc-kind",
- ["Half-orc Guard"] = "Orc-kind",
- ["Half-orc Hunter"] = "Orc-kind",
- ["Half-orc Leader"] = "Orc-kind",
- ["Half-orc Outlaw"] = "Orc-kind",
- ["Half-orc Rider"] = "Orc-kind",
- ["Half-orc Robber"] = "Orc-kind",
- ["Half-orc Ruffian"] = "Orc-kind",
- ["Half-orc Scoundrel"] = "Orc-kind",
- ["Half-orc Scout"] = "Orc-kind",
- ["Half-orc Scrapper"] = "Orc-kind",
- ["Half-orc Sentry"] = "Orc-kind",
- ["Half-orc Skirmisher"] = "Orc-kind",
- ["Half-orc Thug"] = "Orc-kind",
- ["Half-orc Trapper"] = "Orc-kind",
- ["Half-orc Warg-keeper"] = "Orc-kind",
- ["Half-orc Watchman"] = "Orc-kind",
- ["Half-orc Wolf-keeper"] = "Orc-kind",
- ["Half-orc-boss"] = "Orc-kind",
- ["Halros"] = "Man",
- ["Harmon Rushes"] = "Man",
- ["Harvest-fly"] = "Spiders & Insects",
- ["Hateful Ongbúrz"] = "Orc-kind",
- ["Haunted Barren-Oak"] = "Creatures of Nature",
- ["Hendroval Canopy-darter"] = "Beast",
- ["High-moor Badger"] = "Beast",
- ["Highland Hunter"] = "Beast",
- ["Highland Wildcat"] = "Beast",
- ["Hill Tusker"] = "Beast",
- ["Hill-bear Cub"] = "Beast",
- ["Hillmen Defender"] = "Man",
- ["Hoar-mantle Bull"] = "Beast",
- ["Hoar-mantle Calf"] = "Beast",
- ["Hoarhallow Farmer"] = "Hobbit",
- ["Hoarhallow Gardener"] = "Hobbit",
- ["Hollin Lynx"] = "Beast",
- ["Holly-lizard"] = "Beast",
- ["Holly-troll Elder"] = "Troll-kind",
- ["Holly-troll Lobber"] = "Troll-kind",
- ["Holly-troll Warrior"] = "Troll-kind",
- ["Hontimûrz Guard"] = "Orc-kind",
- ["Hontimûrz"] = "Orc-kind",
- ["Horrid Tomb-wight"] = "The Dead",
- ["Hostile Hill-bear"] = "Beast",
- ["Hound"] = "Beast",
- ["Howling Barrow-hound"] = "The Dead",
- ["Howling Dusk-wolf"] = "Beast",
- ["Howling Grey Wolf"] = "Beast",
- ["Howling Yellowfang"] = "Beast",
- ["Hungry Bear"] = "Beast",
- ["Hungry Downs-bear"] = "Beast",
- ["Hunting North-hawk"] = "Beast",
- ["Imbert Took"] = "Hobbit",
- ["Iornaith"] = "Spiders & Insects",
- ["Isembard Took II"] = "Hobbit",
- ["Ivar the Blood-hand"] = "The Dead",
- ["Jagger Jack"] = "Man",
- ["Jarrko"] = "Giant-kind",
- ["Jasper Mudbottom"] = "Man",
- ["Jon Brackenbrook"] = "Man",
- ["Juvenile Bear"] = "Beast",
- ["Juvenile Cave-claw"] = "Beast",
- ["Juvenile Hoar-mantle"] = "Beast",
- ["Kasak"] = "Orc-kind",
- ["Kergrim Barrow-prowler"] = "Beast",
- ["Kingsfell Creeper"] = "Spiders & Insects",
- ["Kingsfell Spider"] = "Spiders & Insects",
- ["Kingsfell Spider-queen"] = "Spiders & Insects",
- ["Kingsfell Spinner"] = "Spiders & Insects",
- ["Lakes Bear"] = "Beast",
- ["Lakes Packleader"] = "Beast",
- ["Lakes Peeper"] = "Beast",
- ["Lakes Swine"] = "Beast",
- ["Lakes Toad"] = "Beast",
- ["Lakes Tusker"] = "Beast",
- ["Lakes Wolf"] = "Beast",
- ["Lakes Yearling"] = "Beast",
- ["Lalia"] = "Hobbit",
- ["Large Barrow-crawler"] = "Spiders & Insects",
- ["Large Forest-hunter"] = "Beast",
- ["Large Hill-bear"] = "Beast",
- ["Latub"] = "Orc-kind",
- ["Laugfût"] = "Beast",
- ["Lebrennil"] = "Spiders & Insects",
- ["Leofwenna"] = "Man",
- ["Lethal Tarkrîp"] = "Orc-kind",
- ["Lone Grey Wolf"] = "Beast",
- ["Lone-lands Fox"] = "Beast",
- ["Long-grass Swine"] = "Beast",
- ["Long-grass Tusker"] = "Beast",
- ["Long-tooth Shrew"] = "Beast",
- ["Long-tusk Scrubrunner"] = "Beast",
- ["Lubach"] = "Orc-kind",
- ["Lugbas"] = "Orc-kind",
- ["Luminous Fire-fly"] = "Spiders & Insects",
- ["Lûz"] = "Orc-kind",
- ["Mad Bristlehide"] = "Beast",
- ["Maddened Dusk-wolf"] = "Beast",
- ["Maddened Field-bear"] = "Beast",
- ["Maddened Mountain-drake"] = "Dragon-kind",
- ["Maddened Razortooth"] = "Beast",
- ["Maddened Shattertusk"] = "Beast",
- ["Malicious Gloom-water"] = "The Dead",
- ["Malin"] = "The Dead",
- ["Marigold Winterdown"] = "Hobbit",
- ["Marrow"] = "Beast",
- ["Marrow"] = "The Dead",
- ["Marsh Brood-watcher"] = "Spiders & Insects",
- ["Marsh Neeker-breeker"] = "Spiders & Insects",
- ["Marsh Queen"] = "Spiders & Insects",
- ["Marsh Snake"] = "Beast",
- ["Marsh Spider"] = "Spiders & Insects",
- ["Marsh-fly"] = "Spiders & Insects",
- ["Marsh-strider Creeper"] = "Creatures of Nature",
- ["Marsh-strider Trapper"] = "Creatures of Nature",
- ["Masked Badger"] = "Beast",
- ["Master of Nan Dhelu"] = "Ancient Evil",
- ["Mature Black-bear"] = "Beast",
- ["Mature Hill-bear"] = "Beast",
- ["Mature Thickjaw"] = "Beast",
- ["Menacing Thickjaw"] = "Beast",
- ["Midge Swarm"] = "Spiders & Insects",
- ["Midgewater Defender"] = "Orc-kind",
- ["Midgewater Frog"] = "Beast",
- ["Midgewater Sapper"] = "Orc-kind",
- ["Midgewater Scout"] = "Orc-kind",
- ["Midgewater Snake"] = "Beast",
- ["Midgewater Warrior"] = "Orc-kind",
- ["Milkeye Burrower"] = "Beast",
- ["Monstrous Dusk-wolf"] = "Beast",
- ["Moor Hunter"] = "Beast",
- ["Moor-web Hunter"] = "Spiders & Insects",
- ["Moor-web Spinner"] = "Spiders & Insects",
- ["Moor-web Weaver"] = "Spiders & Insects",
- ["Moringol"] = "Ancient Evil",
- ["Morley the Fierce"] = "Man",
- ["Mottled Hare"] = "Beast",
- ["Mound-wight Archer"] = "The Dead",
- ["Mound-wight"] = "The Dead",
- ["Muck-glutton"] = "Beast",
- ["Naglangon"] = "Dragon-kind",
- ["Naruhel"] = "Man",
- ["Nasty Tarkrîp"] = "Orc-kind",
- ["Natkam"] = "Orc-kind",
- ["Neeker-breeker Burrower"] = "Spiders & Insects",
- ["Newborn Spider Hatchling"] = "Spiders & Insects",
- ["Nishrûk"] = "Orc-kind",
- ["Northern Plains Buck"] = "Beast",
- ["Northern Plains Doe"] = "Beast",
- ["Northern Squirrel"] = "Beast",
- ["Nos Grimsong"] = "Dwarf",
- ["Noxious Barrow-warden"] = "The Dead",
- ["Noxious Barrow-wight"] = "The Dead",
- ["Noxious Bog-warden"] = "The Dead",
- ["Oath-breaker Archer"] = "The Dead",
- ["Oath-breaker Captain"] = "The Dead",
- ["Oath-breaker Chieftain"] = "The Dead",
- ["Oath-breaker Coward"] = "The Dead",
- ["Oath-breaker Marksman"] = "The Dead",
- ["Olnathron"] = "The Dead",
- ["Ongbúrz Battle-master"] = "Orc-kind",
- ["Ongbúrz Berserker"] = "Orc-kind",
- ["Ongbúrz Bone-smasher"] = "Troll-kind",
- ["Ongbúrz Bone-speaker"] = "Orc-kind",
- ["Ongbúrz Chieftain"] = "Orc-kind",
- ["Ongbúrz Combatant"] = "Orc-kind",
- ["Ongbúrz Defiler"] = "Orc-kind",
- ["Ongbúrz Grunt"] = "Orc-kind",
- ["Ongbúrz Iron-fist"] = "Troll-kind",
- ["Ongbúrz Ravager"] = "Orc-kind",
- ["Ongbúrz Rock-heaver"] = "Troll-kind",
- ["Ongbúrz Scout"] = "Orc-kind",
- ["Ongbúrz Sharp-eye"] = "Orc-kind",
- ["Ongbúrz Skirmisher"] = "Orc-kind",
- ["Ongbúrz Slicer"] = "Orc-kind",
- ["Ongbúrz Spear-tosser"] = "Orc-kind",
- ["Ongbúrz Tracker"] = "Orc-kind",
- ["Ongbúrz Warg-keeper"] = "Orc-kind",
- ["Ongbúrz Warrior"] = "Orc-kind",
- ["Otto the brigand"] = "Man",
- ["Outcast Forest-hunter"] = "Beast",
- ["Pampraush"] = "Orc-kind",
- ["Parzot"] = "Orc-kind",
- ["Peaks Hendroval"] = "Beast",
- ["Pecking Craban"] = "Beast",
- ["Pecking Dark-wing"] = "Beast",
- ["Pengail"] = "Man",
- ["Pile of Bones"] = "The Dead",
- ["Pond Frog"] = "Beast",
- ["Prisoner"] = "Man",
- ["Putrid Bog-slug"] = "Beast",
- ["Putrid Darkwater"] = "The Dead",
- ["Quicksilver Cave-crawler"] = "Spiders & Insects",
- ["Rabid Bristlehide"] = "Beast",
- ["Rabid Scrub-stalker"] = "Beast",
- ["Rabid Splintertusk"] = "Beast",
- ["Raging Tarkrîp"] = "Orc-kind",
- ["Rampaging Bristlehide"] = "Beast",
- ["Rat"] = "Beast",
- ["Raugzdrok"] = "The Dead",
- ["Rauta-lehmä Archer"] = "Giant-kind",
- ["Rauta-lehmä Fighter"] = "Beast",
- ["Rauta-lehmä Hunter"] = "Giant-kind",
- ["Rauta-lehmä Tracker"] = "Giant-kind",
- ["Rauta-lehmä Warden"] = "Giant-kind",
- ["Rauta-lehmä Warrior"] = "Giant-kind",
- ["Re-animated Skeleton"] = "The Dead",
- ["Red Fox"] = "Beast",
- ["Red Reaver"] = "Orc-kind",
- ["Red Squirrel"] = "Beast",
- ["Redhorn Goat"] = "Beast",
- ["Reeking Bog-slug"] = "Beast",
- ["Refuge Guardian"] = "Elf",
- ["Restless Broadtooth"] = "Beast",
- ["Restless Longtooth"] = "Beast",
- ["Restless Thicktusk"] = "Beast",
- ["Revolting Silt-toad"] = "Beast",
- ["Revolting Tarkrîp"] = "Orc-kind",
- ["Reykur"] = "Ancient Evil",
- ["Ribbon Snake"] = "Beast",
- ["Roaming Thicktusk"] = "Beast",
- ["Roaming Warg"] = "Beast",
- ["Robb Thornley"] = "Man",
- ["Rock-troll Brawler"] = "Troll-kind",
- ["Rock-troll Flesheater"] = "Troll-kind",
- ["Rock-troll Hurler"] = "Troll-kind",
- ["Rock-troll Lobber"] = "Troll-kind",
- ["Rock-troll Wildarm"] = "Troll-kind",
- ["Rock-worm"] = "Dragon-kind",
- ["Rotting Barrow-wight"] = "The Dead",
- ["Roving Hoar-mantle"] = "Beast",
- ["Roving Warg"] = "Beast",
- ["Ruin-web Ambusher"] = "Spiders & Insects",
- ["Ruin-Web Hunter"] = "Spiders & Insects",
- ["Ruin-web Mother"] = "Spiders & Insects",
- ["Ruin-web Weaver"] = "Spiders & Insects",
- ["Sara Oakheart"] = "Man",
- ["Scarred Splintertusk"] = "Beast",
- ["Scavenging Cave-claw"] = "Beast",
- ["Scrub Badger"] = "Beast",
- ["Scrub-crawler"] = "Spiders & Insects",
- ["Scrub-land Tusker"] = "Beast",
- ["Scrub-stalker"] = "Beast",
- ["Scurrying Harbour-rat"] = "Beast",
- ["Sentinel"] = "Elf",
- ["Sergeant Applewood"] = "Man",
- ["Sergeant-at-Arms Ascwyn"] = "Man",
- ["Sergeant-at-Arms Hafthor"] = "Dwarf",
- ["Sergeant-at-Arms Hesten"] = "Man",
- ["Sergeant-at-Arms Thurimbent"] = "Elf",
- ["Shadow-warg"] = "Beast",
- ["Shadowfoot"] = "Beast",
- ["Shambling Tomb-wight"] = "The Dead",
- ["Shambling Wight"] = "The Dead",
- ["Sharkey's Lieutenant"] = "Man",
- ["Sharp-eye Lookout"] = "Beast",
- ["Sharp-eye Scout"] = "Beast",
- ["Sheep"] = "Beast",
- ["Shipsmate"] = "The Dead",
- ["Shire White-tail Buck"] = "Beast",
- ["Shire White-tail Doe"] = "Beast",
- ["Shornbeard Chief"] = "Dwarf",
- ["Shornbeard Outlaw"] = "Dwarf",
- ["Shornbeard Render"] = "Dwarf",
- ["Shornbeard Warrior"] = "Dwarf",
- ["Shrieking Chill-wind"] = "Beast",
- ["Shrieking Gloom-wing"] = "Beast",
- ["Sickle-fly Queen"] = "Spiders & Insects",
- ["Sickle-fly"] = "Spiders & Insects",
- ["Sickly Buck"] = "Beast",
- ["Sickly Doe"] = "Beast",
- ["Sickly Fox"] = "Beast",
- ["Sickly Rabbit"] = "Beast",
- ["Silent Yellowfang"] = "Beast",
- ["Silt-toad"] = "Beast",
- ["Silver-neck Buck"] = "Beast",
- ["Silver-neck Doe"] = "Beast",
- ["Skittering Downs-spider"] = "Spiders & Insects",
- ["Skittering Ruin-web"] = "Spiders & Insects",
- ["Skittering Snow-spinner"] = "Spiders & Insects",
- ["Skulkmire"] = "Creatures of Nature",
- ["Skunkwood's Den-mother"] = "Beast",
- ["Skunkwood's Wolfhound"] = "Beast",
- ["Skíthi Blackhand"] = "Dwarf",
- ["Slimy Barrow-crawler"] = "Spiders & Insects",
- ["Slimy Leaf-crawler"] = "Spiders & Insects",
- ["Slimy Muck-crawler"] = "Spiders & Insects",
- ["Slimy River-slug"] = "Beast",
- ["Slippery Marish-slug"] = "Beast",
- ["Small Harvest-fly"] = "Spiders & Insects",
- ["Snapper Turtle"] = "Beast",
- ["Snarling Forest-hunter"] = "Beast",
- ["Snarling Moor-stalker"] = "Beast",
- ["Snarling Wolf"] = "Beast",
- ["Snow-beast Hurler"] = "Beast",
- ["Snow-spinner Ambusher"] = "Spiders & Insects",
- ["Snow-spinner Lurker"] = "Spiders & Insects",
- ["Snow-spinner Mother"] = "Spiders & Insects",
- ["Snow-spinner Trapper"] = "Spiders & Insects",
- ["Snow-troll Ripper"] = "Troll-kind",
- ["Southern Archer"] = "Man",
- ["Southern Attacker"] = "Man",
- ["Southern Blade-bearer"] = "Man",
- ["Southern Bowman"] = "Man",
- ["Southern Brawler"] = "Man",
- ["Southern Captain"] = "Man",
- ["Southern Knave"] = "Man",
- ["Southern Lookout"] = "Man",
- ["Southern Outlaw"] = "Man",
- ["Southern Poacher"] = "Man",
- ["Southern Raider"] = "Man",
- ["Southern Robber"] = "Man",
- ["Southern Ruffian"] = "Man",
- ["Southern Scout"] = "Man",
- ["Southern Skirmisher"] = "Man",
- ["Southern Warrior"] = "Man",
- ["Southern Watch-captain"] = "Man",
- ["Splintertusk Mauler"] = "Beast",
- ["Splintertusk Sow"] = "Beast",
- ["Spotted Field Buck"] = "Beast",
- ["Spotted Field Doe"] = "Beast",
- ["Starkath"] = "Dwarf",
- ["Stinging Gnats"] = "Spiders & Insects",
- ["Stinging Sickle-fly"] = "Spiders & Insects",
- ["Stolen Sheep"] = "Beast",
- ["Stonehold Chief"] = "Orc-kind",
- ["Stonehold Spear-hurler"] = "Orc-kind",
- ["Stout Dourhand"] = "Dwarf",
- ["Stout-grip Barghest"] = "Beast",
- ["Strider"] = "Man",
- ["Strong-grip Barghest"] = "Beast",
- ["Sturdy Dourhand"] = "Dwarf",
- ["Sturdy Long-tusk"] = "Beast",
- ["Sullen Wight"] = "The Dead",
- ["Summoned Wight"] = "The Dead",
- ["Svalfang"] = "Giant-kind",
- ["Swamp-norbog Burrower"] = "Spiders & Insects",
- ["Tainted Field-rat"] = "Beast",
- ["Tarbúrz"] = "Troll-kind",
- ["Tarkríp Archer"] = "Orc-kind",
- ["Tarkríp Blade"] = "Orc-kind",
- ["Tarkríp Bone-smasher"] = "Orc-kind",
- ["Tarkríp Bow-master"] = "Orc-kind",
- ["Tarkríp Brute"] = "Orc-kind",
- ["Tarkríp Reaver"] = "Orc-kind",
- ["Tarkrîp Berserker"] = "Orc-kind",
- ["Tarkrîp Bog-warrior"] = "Orc-kind",
- ["Tarkrîp Brawler"] = "Orc-kind",
- ["Tarkrîp Chieftain"] = "Orc-kind",
- ["Tarkrîp Defiler"] = "Orc-kind",
- ["Tarkrîp Fight-caller"] = "Orc-kind",
- ["Tarkrîp Fight-master"] = "Orc-kind",
- ["Tarkrîp Grunt"] = "Orc-kind",
- ["Tarkrîp Killer"] = "Orc-kind",
- ["Tarkrîp Marksman"] = "Orc-kind",
- ["Tarkrîp Outrider"] = "Orc-kind",
- ["Tarkrîp Picket"] = "Orc-kind",
- ["Tarkrîp Prowler"] = "Orc-kind",
- ["Tarkrîp Raider"] = "Orc-kind",
- ["Tarkrîp Ransacker"] = "Orc-kind",
- ["Tarkrîp Render"] = "Orc-kind",
- ["Tarkrîp Seeker"] = "Orc-kind",
- ["Tarkrîp Servant"] = "Orc-kind",
- ["Tarkrîp Shanker"] = "Orc-kind",
- ["Tarkrîp Sharp-eye"] = "Orc-kind",
- ["Tarkrîp Shooter"] = "Orc-kind",
- ["Tarkrîp Siege-engineer"] = "Orc-kind",
- ["Tarkrîp Skirmisher"] = "Orc-kind",
- ["Tarkrîp Slaughterer"] = "Orc-kind",
- ["Tarkrîp Thrasher"] = "Orc-kind",
- ["Tawny Brown-bear"] = "Beast",
- ["Temair the Devoted"] = "Man",
- ["Thickjaw Cub"] = "Beast",
- ["Thicktusk Sow"] = "Beast",
- ["Thieving Shrew"] = "Beast",
- ["Thorn-talon Scout"] = "Beast",
- ["Thorn-talon Sentry"] = "Beast",
- ["Threatening Hoar-mantle"] = "Beast",
- ["Tomb-wight"] = "The Dead",
- ["Town Guard"] = "Man",
- ["Training-dummy"] = "Object",
- ["Trampletusk"] = "Beast",
- ["Troublesome Vale-fly"] = "Spiders & Insects",
- ["Twisted Arm"] = "The Dead",
- ["Twisted Blood-oak"] = "Creatures of Nature",
- ["Twisted Dead-root"] = "Creatures of Nature",
- ["Twisted Fell-spirit"] = "The Dead",
- ["Twisted Holly"] = "Creatures of Nature",
- ["Twisted Swamp-norbog"] = "Spiders & Insects",
- ["Twisted Wight"] = "The Dead",
- ["Umnen"] = "The Dead",
- ["Umín"] = "Man",
- ["Vale Hendroval"] = "Beast",
- ["Vale Prowler"] = "Beast",
- ["Vale Wildcat"] = "Beast",
- ["Vale-bear Mother"] = "Beast",
- ["Vale-fly Pest"] = "Spiders & Insects",
- ["Vance Waithman"] = "Man",
- ["Vatar"] = "The Dead",
- ["Vicious Bog-neeker"] = "Spiders & Insects",
- ["Vicious Hill-bear"] = "Beast",
- ["Vicious Mountain-bear"] = "Beast",
- ["Vicious Shattertusk"] = "Beast",
- ["Vicious Tarkrîp"] = "Orc-kind",
- ["Vile Barghest"] = "Beast",
- ["Vile Bog-prowler"] = "Creatures of Nature",
- ["Vile Moor-web"] = "Spiders & Insects",
- ["Villainous Oath-breaker"] = "The Dead",
- ["Violent Tarkrîp"] = "Orc-kind",
- ["Violet Underhill"] = "Hobbit",
- ["Vokvras"] = "Orc-kind",
- ["Wailing Wight"] = "The Dead",
- ["Walking-tree"] = "Creatures of Nature",
- ["Wandering Cruel-beak"] = "Beast",
- ["Wandering Dark-wing"] = "Beast",
- ["Wandering Hoar-mantle"] = "Beast",
- ["War-captain Ongbúrz"] = "Orc-kind",
- ["War-master Uzorr"] = "Orc-kind",
- ["Warg Bone-chewer"] = "Beast",
- ["Warg Hunter"] = "Beast",
- ["Warg Man-Flayer"] = "Beast",
- ["Warg Pack-mate"] = "Beast",
- ["Warg Ravager"] = "Beast",
- ["Warg Scavenger"] = "Beast",
- ["Warg Scrub-stalker"] = "Beast",
- ["Warg Stalker"] = "Beast",
- ["Warped Oak"] = "Creatures of Nature",
- ["White Hand Archer"] = "Orc-kind",
- ["White Hand Battler"] = "Orc-kind",
- ["White Hand Blademaster"] = "Orc-kind",
- ["White Hand Crusher"] = "Orc-kind",
- ["White Hand Defender"] = "Orc-kind",
- ["White Hand Fire-thrower"] = "Orc-kind",
- ["White Hand Grunt"] = "Orc-kind",
- ["White Hand Guard"] = "Orc-kind",
- ["White Hand Lobber"] = "Orc-kind",
- ["White Hand Messenger"] = "Orc-kind",
- ["White Hand Orc"] = "Orc-kind",
- ["White Hand Pillager"] = "Orc-kind",
- ["White Hand Ridge-fighter"] = "Orc-kind",
- ["White Hand Sapper"] = "Orc-kind",
- ["White Hand Sniper"] = "Orc-kind",
- ["White Hand Spear-thrower"] = "Orc-kind",
- ["White Hand Spearer"] = "Orc-kind",
- ["White Hand Strong-arm"] = "Orc-kind",
- ["White Hand Thrasher"] = "Orc-kind",
- ["White-footed Fox"] = "Beast",
- ["White-footed Hare"] = "Beast",
- ["White-hand Howler"] = "Beast",
- ["White-hand Prowler"] = "Beast",
- ["White-hand Ravager"] = "Beast",
- ["Wight-lord of Cardolan"] = "The Dead",
- ["Wild Blue-crag"] = "Orc-kind",
- ["Wild Broadtooth"] = "Beast",
- ["Wild Gramsfoot"] = "Orc-kind",
- ["Wild Grey Wolf"] = "Beast",
- ["Wild Hill-toad"] = "Beast",
- ["Wild Razortooth"] = "Beast",
- ["Wild Tusker"] = "Beast",
- ["William Skunkwood"] = "Man",
- ["Winter Fox"] = "Beast",
- ["Winter Squirrel"] = "Beast",
- ["Wolf Hunter"] = "Beast",
- ["Wolf Leader"] = "Beast",
- ["Wolf"] = "Beast",
- ["Wolfhound"] = "Beast",
- ["Wolverine"] = "Beast",
- ["Wood-bear Cub"] = "Beast",
- ["Wood-bear Mother"] = "Beast",
- ["Wrathful Banner-wight"] = "The Dead",
- ["Wretched Barrow-maple"] = "Creatures of Nature",
- ["Wretched Gloom-water"] = "The Dead",
- ["Writhing Barrow-crawler"] = "Spiders & Insects",
- ["Yellowtusk"] = "Beast",
- ["Young Aurochs"] = "Beast",
- ["Young Bear"] = "Beast",
- ["Young Cave-claw"] = "Beast",
- ["Young Downs-bear"] = "Beast",
- ["Young Drake"] = "Dragon-kind",
- ["Young Dusk-wolf"] = "Beast",
- ["Young Field-bear"] = "Beast",
- ["Young Hill-bear"] = "Beast",
- ["Young Hoar-mantle"] = "Beast",
- ["Young Splintertusk"] = "Beast",
- ["Young Vale-bear"] = "Beast",
- ["Young Wood-bear"] = "Beast",
- ["Zanshík"] = "Orc-kind",
- -- New Entries vv
- ["Swift Crag-hawk"] = "Beast",
- ["Wandering Glen-hind"] = "Beast",
- ["Silent Moor-stalker"] = "Beast",
- ["Mountain-bear Protector"] = "Beast",
- ["Mountain-bear Whelp"] = "Beast",
- ["Strong Glen-buck"] = "Beast",
- ["Deadly Blight-worm"] = "Dragon-kind",
- ["Maddened Mountain-bear"] = "Beast",
- ["Stone-troll Blighter"] = "Troll-kind",
- ["Stone-troll Sentinel"] = "Troll-kind",
- ["Vile Corpse-rat"] = "Beast",
- ["Wight Dread-warrior"] = "The Dead",
- ["Stone-crawler Devourer"] = "Spiders & Insects",
- ["Corcur Skirmisher"] = "Man",
- ["Corcur Poisoner"] = "Man",
- ["Malloval"] = "Beast", -- Signature
- ["Corrupt Wood-troll"] = "Troll-kind", -- Signature
- ["Twisted Wood-troll"] = "Troll-kind", -- Signature
- ["Twisted Blood-ash"] = "Creatures of Nature",
- ["Trapdoor-spider"] = "Spiders & Insects", -- Elite
- ["Flesh-gnawer Spider"] = "Spiders & Insects", -- Elite
- ["Trapdoor-spider Lurker"] = "Spiders & Insects", -- Elite
- ["Trapdoor-spider Watcher"] = "Spiders & Insects", -- Elite
- ["Trapdoor-spider Queen"] = "Spiders & Insects", -- Elite
- ["Flesh-gnawer Lurker"] = "Spiders & Insects", -- Elite
- ["Flesh-gnawer Watcher"] = "Spiders & Insects", -- Elite
- ["Stinging Moor-fly"] = "Spiders & Insects",
- ["Hunting Trapdoor"] = "Spiders & Insects", -- Elite
- ["Blight-worm"] = "Dragon-kind",
- ["Burrowing Whiskerback"] = "Beast", -- Elite
- ["Curr-olog Basher"] = "Troll-kind", -- Elite
- ["Woodland Curr-olog"] = "Troll-kind", -- Elite
- ["Curr-olog Ancient"] = "Troll-kind", -- Elite
- ["Curr-olog Hurler"] = "Troll-kind", -- Elite
- ["Curr-olog Mangler"] = "Troll-kind", -- Elite
- ["Whiskerback Digger"] = "Beast",
- ["Whiskerback Scavenger"] = "Beast",
- ["Moor-fly Hatcher"] = "Spiders & Insects",
- ["Trollshaws Goblin-raider"] = "Orc-kind",
- ["Elder Stonehoof"] = "Beast",
- ["Corrupt Darkclaw"] = "Beast", -- Swarm
- ["Glen-hind"] = "Beast",
- ["Moor-stalker Scavenger"] = "Beast",
- ["Glen-buck"] = "Beast",
- ["Young Glen-buck"] = "Beast",
- ["Curr-olog Scourge"] = "Troll-kind", -- Signature
- ["Corcur Blood-sworn"] = "Man",
- ["Corcur Archer"] = "Man",
- ["Cargûl Searcher"] = "Unseen", -- Signature
- ["Vátair Grim-crow"] = "Man", -- Rare Elite
- ["Stone-troll Hurler"] = "Troll-kind",
- ["Mountain-bear"] = "Beast",
- ["Spying Hendroval"] = "Beast",
- ["Writhing Stone-crawler"] = "Spiders & Insects", -- Swarm
- ["Shadow-wolf Elder"] = "Ancient Evil", -- Signature
- ["Karnasht"] = "Beast", -- Rare Signature
- ["Red River-toad"] = "Beast", -- Swarm
- ["Green River-toad"] = "Beast", -- Swarm
- ["Crawling Rock-worm"] = "Dragon-kind",
- ["Root-crawler"] = "Spiders & Insects", -- Swarm
- ["Undergrowth Tangler"] = "Creatures of Nature", -- Swarm
- ["Summoned Root"] = "Creatures of Nature", -- Swarm
- ["Fen-creeper Stalker"] = "Creatures of Nature",
- ["Thicket Coney"] = "Beast",
- ["Silver Squirrel"] = "Beast",
- ["Great Glen-buck"] = "Beast",
- ["Great Glen-hind"] = "Beast",
- ["Sarlug"] = "Dragon-kind", -- Signature
- ["Enraged Mountain-drake"] = "Dragon-kind", -- Elite
- ["Onodrim"] = "Troll-kind", -- Signature
- ["Arifael"] = "Giant-kind", -- Defender
- ["Giant Grey Stonehoof"] = "Beast",
- ["Giant Stone-breaker"] = "Giant-kind", -- Elite
- ["Giant Rock-thrower"] = "Giant-kind", -- Elite
- }
- local mobtypex = {
- -- New Entries ^^
- ["Asht"] = "Rare Elite",
- ["Azuzol"] = "Rare Signature",
- ["Balt-olog Heaver"] = "Signature",
- ["Blackclaw"] = "Rare Signature",
- ["Blogkritar"] = "Rare Elite Master",
- ["Blue-crag Chief"] = "Elite",
- ["Blue-crag Chieftain"] = "Signature",
- ["Blue-crag Demolisher"] = "Elite",
- ["Blue-crag Hurler"] = "Elite",
- ["Blue-crag Slicer"] = "Elite",
- ["Brishzel"] = "Rare Elite Master",
- ["Brudhraw"] = "Signature",
- ["Captain Dombrî"] = "Elite",
- ["Coldfells Hunter"] = "Signature",
- ["Créoth Devout"] = "Elite",
- ["Créoth Elder"] = "Normal",
- ["Créoth Novice"] = "Elite",
- ["Créoth Warden"] = "Elite",
- ["Darkheart"] = "Rare Elite Master",
- ["Defender of Ost Guruth"] = "Defender",
- ["Drake Matron"] = "Signature",
- ["Dreadful Gloom-water"] = "Elite",
- ["Durglup"] = "Signature",
- ["Earth-kin"] = "Defender",
- ["Emerald Twospade"] = "Defender",
- ["Faegfaer"] = "Rare Signature",
- ["Fergandir"] = "Rare Signature",
- ["First Marshal Fádi"] = "Avenger",
- ["First Marshal Léodwald"] = "Avenger",
- ["First Marshal Túllinn"] = "Avenger",
- ["Formidable Snowbear"] = "Elite",
- ["Galrîp"] = "Signature",
- ["Gib Hawthorn"] = "Rare Signature",
- ["Grishskum"] = "Rare Signature",
- ["Gwigon"] = "Rare Signature",
- ["Hontimûrz"] = "Signature",
- ["Jon Brackenbrook"] = "Signature",
- ["Kasak"] = "Rare Signature",
- ["Latub"] = "Rare Signature",
- ["Lebrennil"] = "Signature",
- ["Lûz"] = "Signature",
- ["Marigold Winterdown"] = "Defender",
- ["Moor-web Weaver"] = "Signature",
- ["Naglangon"] = "Rare Elite Master",
- ["Nishrûk"] = "Signature",
- ["Northpaw"] = "Rare Signature",
- ["Oath-breaker Captain"] = "Elite",
- ["Ongbúrz Combatant"] = "Elite",
- ["Raugzdrok"] = "Rare Elite Master",
- ["Sergeant-at-Arms Ascwyn"] = "Defender",
- ["Sergeant-at-Arms Hafthor"] = "Defender",
- ["Sergeant-at-Arms Hesten"] = "Defender",
- ["Sergeant-at-Arms Thurimbent"] = "Defender",
- ["Skíthi Blackhand"] = "Signature",
- ["Snow-beast Hurler"] = "Elite",
- ["Snow-troll Ripper"] = "Elite",
- ["Stolen Sheep"] = "Signature",
- ["Tarkrîp Slaughterer"] = "Signature",
- ["Training-dummy"] = "Master Defender",
- ["Twisted Wight"] = "Elite",
- ["Umnen"] = "Rare Signature",
- ["Vokvras"] = "Rare Signature",
- ["Wailing Wight"] = "Normal",
- ["War-master Uzorr"] = "Signature",
- ["White Hand Fire-thrower"] = "Signature",
- ["Yellowtusk"] = "Rare Signature",
- }
- -------------------------------------------------------------------------------
- XpWindow = Turbine.UI.Window()
- XpWindow:SetMouseVisible(false)
- XpWindow:SetPosition(WindowLeft, WindowTop)
- XpWindow:SetSize(WindowWidth, WindowHeight)
- XpWindow:SetVisible(true)
- local XpLabel = Turbine.UI.Label()
- XpLabel:SetParent(XpWindow)
- XpLabel:SetBackColor(Turbine.UI.Color(0.1, 0, 0, 0))
- XpLabel:SetFont(0x42000018) -- Turbine.UI.Lotro.Font.Verdana16
- XpLabel:SetMarkupEnabled(true)
- XpLabel:SetMouseVisible(false)
- XpLabel:SetSize(WindowWidth, WindowHeight)
- XpWindow.Update = function()
- if tick > 9 then
- tick = 0
- TargetMorale = MyTarget:GetMaxMorale()
- TargetPower = MyTarget:GetMaxPower()
- if TargetPower ~= 0 or tock > 9 then
- XpWindow:SetWantsUpdates(false)
- else
- tock = tock + 1
- end
- UpdateDisplay()
- else
- tick = tick + 1
- end
- end
- -------------------------------------------------------------------------------
- function round(number, zeroes)
- local zeroes = zeroes or 0
- return math.floor(number * (10 ^ zeroes) + .5) / (10 ^ zeroes)
- end
- -------------------------------------------------------------------------------
- -- FIXME need confirmation on multipliers for elite masters, nemeses and arch-nemeses
- -- elite master Caller of the Bog 2, Bughrakh 1.5, Haglob 1.5
- -- nemesis Taushakh 3.5
- -- arch-nemesis Bugud 7
- -- morale power p*1.25 xp xp*1.05
- -- trivial 0.05 0.05 0
- -- swarm 0.5 0.5 0.625 0.5 0.525
- -- normal 1 1 1.25 1 1.05
- -- signature 2 1.5 1.875 1.2 1.26
- -- elite 4.5 3 3.75 1.4 1.47
- -- elite master 10 5 6.25 1.5 1.575
- -- nemesis 20 20 25 3.5 3.675
- -- arch-nemesis 60 40 50 7 7.35
- -- Locked Chests are level 80 and give 82 XP (0.125?)
- function TypeXp(powermult, moralemult)
- -- FIXME improve logic?
- -- defilers have 50% extra power and make things messy
- if powermult == 0.75 and moralemult <= 0.55 then
- return "Swarm", 0.5
- elseif powermult == 1.5 and moralemult <= 1.1 then
- return "Normal", 1
- elseif powermult == 2.25 and moralemult <= 2.2 then
- return "Signature", 1.2
- elseif powermult == 4.5 and moralemult <= 4.95 then
- return "Elite", 1.4
- end
- if powermult < 0.5 then
- return "Normal", 0 -- Trivial mobs now shown in-game as Normal
- elseif powermult < 1 then
- if powermult < 0.625 then
- return "Swarm", 0.5
- else
- return "Swarm", 0.525
- end
- elseif powermult <= 1.5 then
- if powermult < 1.25 then
- return "Normal", 1
- else
- return "Normal", 1.05
- end
- elseif powermult < 4.5 then
- if powermult < 1.875 then
- return "Signature", 1.2
- else
- return "Signature", 1.26
- end
- elseif powermult <= 5 then
- if powermult < 3.75 then
- return "Elite", 1.4
- else
- return "Elite", 1.47
- end
- elseif powermult < 20 then
- if powermult < 6.25 then
- return "Elite Master", 1.5 -- or 2
- else
- return "Elite Master", 1.575 -- or 2.1
- end
- elseif powermult < 40 then
- if powermult < 25 then
- return "Nemesis", 3.5
- else
- return "Nemesis", 3.675
- end
- else
- if powermult < 50 then
- return "Arch-Nemesis", 7
- else
- return "Arch-Nemesis", 7.35
- end
- end
- end
- -------------------------------------------------------------------------------
- function UpdateDisplay()
- if not TargetLevel then
- local tier = ResourceTier[MyTarget:GetName()]
- if tier then
- XpLabel:SetText(string.format("Tier %d Node: %d XP", tier, tier * 5 + 15))
- else
- XpLabel:SetText("No Level")
- end
- return
- elseif TargetLevel == 0 then
- XpLabel:SetText("Level 0")
- return
- elseif not TargetPower then
- XpLabel:SetText("No Power")
- return
- elseif TargetPower == 0 then
- XpLabel:SetText(string.rep(".", tock))
- return
- end
- local MyLevel = MyChar:GetLevel()
- local RelativeLevel = TargetLevel - MyLevel
- local base = MonsterXp[TargetLevel]
- local moralemult = round(TargetMorale / MonsterMorale[TargetLevel], 5)
- local powermult = round(TargetPower / MonsterPower[TargetLevel], 5)
- local mobtype, mobmult = TypeXp(powermult, moralemult)
- mobtype = mobtypex[MyTarget:GetName()] or mobtype -- mobtype override for those fringe cases
- local mobkind = targetKind[MyTarget:GetName()] or "<Undef>"
- local levelmult, colour
- -- -9 or lower
- if RelativeLevel < -8 then
- levelmult = 0
- -- -8, -7, -6
- elseif RelativeLevel < -5 then
- levelmult = 0.2
- -- -5, -4, -3
- elseif RelativeLevel < -2 then
- if MyLevel < 40 then
- levelmult = 0.4
- else
- levelmult = 0.35
- end
- -- -2, -1
- elseif RelativeLevel < 0 then
- if MyLevel < 40 then
- levelmult = 0.9
- else
- levelmult = 0.8
- end
- -- 0
- elseif RelativeLevel < 1 then
- levelmult = 1
- -- +1, +2
- elseif RelativeLevel < 2 then
- levelmult = 1
- -- +3, +4
- elseif RelativeLevel < 5 then
- levelmult = 1
- -- +5, +6, +7
- elseif RelativeLevel < 8 then
- levelmult = 1
- -- +8 or higher
- else
- levelmult = 0
- end
- --- Get Relative Colours
- -- FIXME want exact RGB values for level-difference colours
- -- http://lotro-wiki.com/index.php/Difficulty_indicators
- if MyLevel <7 then -- Lvl 1-6
- if RelativeLevel < -6 then
- colour = "808080" -- grey [-7, -8]
- elseif RelativeLevel < -5 then
- colour = "008000" -- green [-6]
- elseif RelativeLevel < -2 then
- colour = "00ffff" -- cyan [-5, -4, -3]
- elseif RelativeLevel < 0 then
- colour = "0080ff" -- blue [-2, -1]
- elseif RelativeLevel < 3 then
- colour = "ffffff" -- white [0, 1, 2]
- elseif RelativeLevel < 4 then
- colour = "ffff00" -- yellow [3]
- elseif RelativeLevel < 6 then
- colour = "ff8500" -- orange [4, 5]
- elseif RelativeLevel < 9 then
- colour = "ff0000" -- red [6, 7, 8]
- else
- colour = "800080" -- purple [9+]
- end
- elseif MyLevel <40 then -- Lvl 7-39
- if RelativeLevel < -8 then
- colour = "808080" -- grey [-6, -7, -8]
- elseif RelativeLevel < -5 then
- colour = "008000" -- green [-6]
- elseif RelativeLevel < -2 then
- colour = "00ffff" -- cyan [-5, -4, -3]
- elseif RelativeLevel < 0 then
- colour = "0080ff" -- blue [0]
- elseif RelativeLevel < 1 then
- colour = "ffffff" -- white [0, 1, 2]
- elseif RelativeLevel < 3 then
- colour = "ffff00" -- yellow [1, 2]
- elseif RelativeLevel < 5 then
- colour = "ff8500" -- orange [3, 4]
- elseif RelativeLevel < 8 then
- colour = "ff0000" -- red [5, 6, 7]
- else
- colour = "800080" -- purple [8+]
- end
- else -- Lvl 40-100 NEED TO CONFIRM FOR >60
- if RelativeLevel < -8 then
- colour = "808080" -- grey [-6, -7, -8]
- elseif RelativeLevel < -5 then
- colour = "008000" -- green [-6]
- elseif RelativeLevel < -2 then
- colour = "00ffff" -- cyan [-5, -4, -3]
- elseif RelativeLevel < 0 then
- colour = "0080ff" -- blue [0]
- elseif RelativeLevel < 1 then
- colour = "ffffff" -- white [0, 1, 2]
- elseif RelativeLevel < 2 then
- colour = "ffff00" -- yellow [1]
- elseif RelativeLevel < 5 then
- colour = "ff8500" -- orange [2, 3, 4]
- elseif RelativeLevel < 8 then
- colour = "ff0000" -- red [5, 6, 7]
- else
- colour = "800080" -- purple [8+]
- end
- end
- -- correct rounding might be: floor(floor(base * mobmult) * levelmult)
- if base then
- text = string.format("%d * %s * <rgb=#%s>%s</rgb> = %d XP", base, mobmult, colour, levelmult, base * mobmult * levelmult)
- else
- text = string.format("__ * %s * <rgb=#%s>%s</rgb> = __ XP", mobmult, colour, levelmult)
- end
- text = string.format("%s\n%sm %sp", text, moralemult, powermult)
- XpLabel:SetText(text)
- -- Expanded debug section
- -- All the good stuff happens here!
- if debug then
- if mobkind == "<Undef>" then
- debugText = string.format(' ["%s"] = "",', MyTarget:GetName())
- Turbine.Shell.WriteLine(debugText)
- else
- debugText = string.format("<rgb=#%s>%s,%s,%s,%d,%d,%d</rgb>,%s,%s,%s,%s", colour, MyTarget:GetName(), mobtype, mobkind, TargetLevel, round(TargetMorale), round(TargetPower), TargetMorale, TargetPower, moralemult, powermult)
- Turbine.Shell.WriteLine(debugText)
- end
- else
- debugText = string.format("<rgb=#%s>%s %s/%s %d %d %d</rgb>", colour, MyTarget:GetName(), mobtype, mobkind, TargetLevel, round(TargetMorale), round(TargetPower))
- Turbine.Shell.WriteLine(debugText)
- end
- end
- -------------------------------------------------------------------------------
- function ProcessTarget()
- XpWindow:SetWantsUpdates(false)
- MyTarget = MyChar:GetTarget()
- if MyTarget then
- if MyTarget.GetLevel then
- TargetLevel = MyTarget:GetLevel()
- else
- TargetLevel = false
- end
- if MyTarget.GetMaxPower and MyTarget.GetMaxMorale then
- TargetMorale = MyTarget:GetMaxMorale()
- TargetPower = MyTarget:GetMaxPower()
- if TargetPower == 0 then
- tick = 0
- tock = 0
- XpWindow:SetWantsUpdates(true)
- end
- else
- TargetPower = false
- end
- UpdateDisplay()
- end
- end
- -------------------------------------------------------------------------------
- function AddCallback(object, event, callback)
- if (object[event] == nil) then
- object[event] = callback
- elseif (type(object[event]) == "table") then
- table.insert(object[event], callback)
- else
- object[event] = {object[event], callback}
- end
- return callback
- end
- function RemoveCallback(object, event, callback)
- if (object[event] == callback) then
- object[event] = nil
- elseif (type(object[event]) == "table") then
- local size = table.getn(object[event])
- for i = 1, size do
- if (object[event][i] == callback) then
- table.remove(object[event], i)
- break
- end
- end
- end
- end
- AddCallback(MyChar, "TargetChanged", ProcessTarget)
- -------------------------------------------------------------------------------
- local CommandLine = Turbine.ShellCommand()
- CommandLine.Execute = function(sender, cmd, args)
- if debug then
- debug = false
- Turbine.Shell.WriteLine("XpPredict debugging off.")
- else
- debug = true
- Turbine.Shell.WriteLine("XpPredict debugging on.")
- end
- end
- Turbine.Shell.AddCommand("XpPredict", CommandLine)
- -------------------------------------------------------------------------------
- -- create a dummy window, and update until loaded, at which point set loaded=true and set the unload commands.
- local loaded = false
- tmpWindow = Turbine.UI.Window()
- tmpWindow.Update = function()
- if Plugins["XpPredict"] ~= nil and not loaded then
- loaded = true
- Plugins["XpPredict"].Unload = function()
- RemoveCallback(MyChar, "TargetChanged", ProcessTarget)
- Turbine.Shell.RemoveCommand(CommandLine)
- end
- tmpWindow:SetWantsUpdates(false)
- Turbine.Shell.WriteLine("Polymnie's XpPredict (+LogTarget) loaded.")
- end
- end
- tmpWindow:SetWantsUpdates(true)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement