Let's
take a breath and look at the progress of Companions through the history of
Morrowind. Sherman, start the Way Back Machine!
Companion AI has been improved DRAMATICALLY lately through scripting. I think I
have almost every companion mod ever written stashed in a folder on my hard
drive, and when preparing Hippolyta I had gone through all of them in the
editor. Looking at them in order you'll find a fascinating progression of
steadily improving AI.
A Brief History of Companions:
In the beginning was Rukinea's
companion mod featuring a Redguard fighter named Ulfgood Romra. Pretty basic AI,
but again this was the very dawn of companions, and in one way or another all
others are descended from that one. Patsy was another early one.
Along the way came some fascinating sidelines: Lord
Grim, an ancestor ghost
companion tied into the Morrowind main story line. He featured Guild Guide style
travel abilities, meaning your companions (even from other mods) could teleport
with you to 4 pre-determined locations. This helps alot with keeping a party
together, especially considering the primative companion following abilities of
the time. There was also the Construct mod, where you gained an animated suit of
armor as a companion.
There was JB's "Children
of the Night" mod with
Ariela. And of course, Ariela had a personality!
Pack
Guar (and the Beast
of Burden series) appeared,
where you got a big, strong guar to haul your stuff around. It could carry a
lot, but a guar is a damn big brute to navigate through cities and so pathing
was a problem. It used Barter as a workaround for the lack of a share function.
Unfortunately the code (while very ingenious) caused lag and several reports of
problems with transferring high-value items. The latter would be fixed in later
versions, but the former was unavoidable with this system, and was only resolved
with Tribunal (much later). At the time, however, no one else could touch this,
and it was a must-have mod.
UlfGeir's landmark companion Slave
Warrior Jessica set the new
standard for companions in its day (remember, Tribunal still would not exist for
quite a while). You could order her to change clothes and wear individual pieces
of her armor. She repaired her own weapon automatically whenever you talked to
her. She could cast Water Breathe and Water Walk on command. Jessica was by far
the best companion of her day. I loved that lady a lot!
UlfGeir's "sequel", Thief
Apprentice Karenna took the best
facets of Jessica several steps further. Her most significant improvement was to
her following ability. Her Speed and Athletics were maintained via elegant
scripting at a level 100 higher than the player's, EVEN IF the player got the
Boots of Blinding Speed or a similar IMMEDIATE boost. That feature was
retro-fitted into Jessica, and has been (with few exceptions) a standard part of
standalone companion mods to this day. Not neccesarily a feature of forced
companions in quest mods, but it certainly should be. We all owe a tremendous
debt of gratitude to UlfGeir!
Several others came out about this time: Lenne, Lekknat, Nyagetan, MercHall, Of
Human Bondage, and others were all based on UlfGeir's work. Grumblepunk's Uvirith
Unleashed included a companion
you had to KILL before she would join you!
It was at this time that I began creating Hippolyta
at the request of my son, whose only complaint about Jessica was not about her
follwoing AI, but that he couldn't upgrade her gear. Since Tribunal was still in
the future and companion share had not arrived, my only choice was to
individually script support for all armor and weapons in standard Morrowind into
her dialogue. And she can teach spells to (and learn spells from) the PC. [Plug]
She is available on Euro-Morrowind and Emma's Elder Scrolls Site for those of
you without Tribunal or Bloodmoon or who are curious. She was sent to the Summit
at the same time, but has still not appeared! (Help me, Lord Xeen, you're my
only hope!) [/Plug]
While I was working on Hippolyta, the next wave of companions was beginning with
the magnificent work of Emma. The first and second versions of Girlfriend Breton
and Boyfriend Redguard featuring Laura
Craft and Indiana
James (respectively) appeared.
Companions began to be more than just functional cannon-fodder or hulking pack
animals: thanks to Emma they were beginning to have hearts and souls. They were
romantic companions for the PC. Others create automatons; she creates people!
Her Witch Girl Adventure carried on this trend: JB's Ariela had spirit, but Morgana
de Hex has a temper. Tick her
off and she'll CURSE you! Who else does that?!
Emma also implemented the first dynamic "level up" system for
companions. Previous companions levelled in a predetermined and could only go so
far. Emma let the player completely control how the NPC advanced on the fly.
Utterly slick!
And then came Tribunal...
Two major new features alone made this expansion worth the money for companion
creators and companion users everywhere: Share, and a SetPos function capable of
accepting variables.
The former function made inventory access a breeze.
The latter made possible Grumpy's
brilliant Companion (Nancy) with
the first major improvement in following AI since UlfGeir's mods. Those
complaining about companions not following, please read carefully, because this
is where it gets really good. What Grumpy did was to script a
"warping" ability. If your companion gets lost, stuck, or merely falls
way behind, he or she will get the PC's X, Y, and Z coordinates and teleport to
the PC's location! You almost CAN'T lose them. I overencumbered Nancy (as a
test) and ran all the way from Ebonheart to Balmora with her unable to walk. She
followed me all the way by teleporting every few hundred yards! Grumpy also used
this feature to allow companions to effectively follow you vertically while
levitating. Again, this is stellar work!
Emma released updated versions of Laura, Indiana, and Morgana using this new
code. A word here about Emma and her mods: her companions are always state of
the art. When Rhedd and Allerleirauh released their heads, Laura and Indy got
facelifts (and Indy got a race change from Redguard to Imperial, since no
Redguard faces were to be released for a long time to come.) The_Other_Felix
contributed some brilliant scripting to her mods, allowing companions to fight
while levitating. Give them a melee weapon and start combat and they will swoop
to the ground to attack! Let them use missiles or spells and they will strike
from the air!
Dracandros (Dracandros'
Voice), TheLys (Give
Your Orders), and Cortex (Vampire
Embrace) gave us all the
abilities to make companions out of normal, pre-existing,
they've-been-running-around-Morrowind-since-the-game-first-came-out stock NPC's.
Now we can befriend (or enslave) alomst eveyrbody. Thanks to them, the WORLD is
our oyster (er, kollop)!
And Brash's Morrowind4Kids
gives you a whole world of new companions (Not to mention a whole new world)!
Grumpy then solved the problem of companions drowning while warping under water,
by making companion Water Breathing an ability, not a spell.
And Emma again raised the bar with her Laura Craft - Adventure and Romance mod.
Now you must woo your long-lost love all aver again in a series of unobtrusive
mini-quests. Another step closer to humanity.
Dixon added the much-appreciated ability to tell companions to step aside when
they get in your way, and his Hilda
is an excellent modern companion in other respects as well!
And I recently released new versions of Hippolyta
and Decius (2.01) introducing
automatic spellcasting (for following using Levitating and Water Walking without
explicitly ordering your companions to do so).
And now we have the ability to control companions' combat and flee options
efficiently.
In summation:
1) Rukinea gave us Companions
2) UlfGeir, Grumpy, The_Other_Felix, and Dixon gave Companions brains
3) JB and Emma gave companions hearts.
4) I gave Morrowind companions an effective share workaround.
5) Dracandros, TheLys and Cortex gave companions universality.
Take your pick, there are plenty to choose from.
|