*Now* I know the true meaning of frustration.
Level 59, 1,604,784 experience. Level 60 requires 1,606,500. However, I have finished my impossible no-loss mage game, so that's something. If someone wants to tell me how to attach screenshots I'm happy to do so. I also have a save from before Baal, but forgot to grab a save from afterwards and am really not too interested in playing that again. The fight wasn't too difficult, but slow and chancy. It took three tries because the first time I accidentally killed off the imps I was saving before I resurrected my griffins, the second time because something died on top of my griffins' corpse so I couldn't resurrect them. I'd never played AP before (although I'd played through TL once, and played a lot of heroes 3), so I didn't even bother trying to do things quickly. It took me 79 days to finish, and my score was a measly 721.
87 quests completed.
1079 crystals

318 battles
516,219 enemy casualties
0 casualties suffered
77% damage by troops
23% damage by spellbook
Most effective troops...
Archmage, 15%
Knights, 14.6%
Tirex, 13.5%
Red Dragon, 12.2%
Inquisitor, 11.6%
Royal Griffin, 7.7%
Paladin, 6.9%
level 39 pet blue dragon
and of course, all medals at level 3 (although I only spent about 21,500 rage).
I kited my way as far as I could go before fighting, getting up to level 21 before my first post-tutorial fight. My game didn't spawn a Tekron map, so I'd gotten basically all goodies from everywhere but Tekron and Monteron at this point. That included enough runes to get to learning 3, 2 hands of the necropolis, the Shark's Tooth, Elenhel as a companion, and 102 chests opened. Then I grabbed one troll and proceeded to clear every enemy before verona (picking up the Memoirs of the Marshal from the Dragon Trap mini-quest), and all non-heroes at Verona. I kited Monteron and Tekron, then decided my single Troll wasn't strong enough to make it too much further and I needed a full army backing him up. It was pretty clear I'd want inquisitors and paladins, and archmages also seemed obvious. I bumped into DGDobrev's write-up about his impossible mage attempt and decided to steal his last two units - Tirex and Gorguanas. The Tirex were awesome, but I never really felt like the gorguanas were pulling their own weight. I should mention that somewhere in here I picked up 2x dress of the magess, which made my archmages into unholy killing machines with 96% critical chance.
That army carried me a ways further, but eventually it got a little stale and the Tirex's devour corpse ability stopped being used frequently (I just wasn't killing stuff that fast), so I switched out the lizard people for red and green dragons. Ultimately the dragons began to be more of a weak point than a strength, when even stoneskin + 20% physical resistance from items + 30% magic resistance from items wasn't keeping them alive for a whole turn at a time. I switched one final time at around level 45, to an army I *highly* recommend - paladins, knights, archmages, inquisitors, and royal griffins. Royal griffins are, hands down, my favorite new unit of the game - the morale boost was great, the high mobility excellent, they do a *ton* of damage (particularly when they have high morale, and I had voice of the dragon 2), and they almost always went first in combat (with a +1 initiative boost from my pet dragon). They're a tad on the fragile side, but you can also run some nasty combos with their always-retaliates ability followed by timeback. Keep some knights in reserve with that unit mix and you can always switch them in for inquisitors to have an all-level 4 army (which makes fear much more useful in some situations).
I didn't really run into any particularly difficult fights after that until end-game. I was a little nervous about Elenhel given all the dire talk about his geyser spell, but for some reason he just spammed call of nature until he was practically out of mana. As I killed the animals faster than he could summon them, that wasn't a big problem. I think he tossed off one geyser all fight, and it was after the real fight had been decided. There was some hero who spammed armageddon against me who was annoying as heck and took three tries for me to figure out the right strategy (answer: kill most of her units faster than she could kill mine. Then fear an imps and resurrect everyone). Otherwise, everything was pretty much smooth sailing. And there was a lot of sailing, because as I think I've mentioned I just kinda wandered from island to island fighting whatever interested me at the time.
The spider boss never actually attacked me. Not sure what was up with that, but it made the fight easy. The frog boss was a pain in the next, but once he was dead the handful of royal snakes floating around made it real easy to take my time and restore my army. The driller caught me off-guard with his rockfall the first time; the second time I kept stoneskin-ed paladins by his left hand with target and he spent all his time beating a brick wall and never bothered the rest of my units. Gremlion slaughtered me the first half-dozen times I tried, but once I got the Inquisitor's Blade (plus advnaced from level 44 to level 52) the fight was a snap.
I stuck paladins by his left hand, knights by his right, royal griffins to the rear, archmages to the left (next to where he placed towers, so they'd do their melee attack against them instead of ranged and thus do more damage), demonologists to the right, and left a gap in the middle for phantom paladins. I took a handful of casualties and had to stall off some ents at the end to resurrect, but could do so just with mana already sitting in my mana pool.
K'Tahu died first-try. I was, admittedly, level 58 at that point. And I used one of every combat-oriented wanderer's scroll first. I had an army of knights, paladins, horsemen, and guardsmen. Incidentally, I strongly recommend leaving that fifth slot open - a fifth unit isn't needed, and becomes just one more unit to be casting stoneskin on. You could be better using those casts on Phantom. Phantom paladins basically kept ahead of the damage, so when K'tahu was dead my paladins and knights were at full strength, my horsemen down 5% or so, and my guardsmen down about 10%; it didn't take long to restore that.
Baal took 3 tries, as mentioned. I went with my standby army (archmages, inquisitors, paladins, knights, royal griffins). I'm torn on whether the royal griffins were the right unit to include, as they kept dying but they also did a ton of damage to the demons Baal kept summoning, boosted the morale and thus damage of my paladins and knights hacking at Baal, and the angelic guard made excellent blockers for convincing Gilbert's units to go elsewhere and not crowd my nice little circle formation.
I probably could have gotten to level 60 if I'd played this before, as I wasted one fight from one ancient knowledge against a low-xp enemy (the tower fight in the temple of sorrows). But that was about 150 fights ago so I'm not about to go do it all again to correct that. Otherwise, I was actually pretty careful - once I sensed I was running out of fights I toured all the islands and counted how many invincible enemies there were left, and it turned out there were exactly 5x as many as I had ancient knowledge scrolls (including the 3 boss fights I had remaining). So I went used up all but one wanderer's scroll killing invincible enemies and Gremlion, then killed off everything not rated invincible, then turned on my last scroll, fought the last 3 heroes, killed K'Tahu, and killed Baal. I drew a grand total of 9 wanderers scrolls this game for what it's worth. I suspect I must have had lower-xp enemies in sum or fewer xp-giving items on the map than possible or something, as UnicornXP managed to get only 14k xp short of where I was despite finding 4 fewer ancient knowledge scrolls.