Jump to content

Bioware-esque Characters in Skyrim


Rennn

Recommended Posts

This isn't a request, as I'm planning on doing it myself at some point in the future. This is just to discuss the advantages of Skyrim's dialogue system, and how it can be used to create characters with personality depth equivalent to characters from one of Bioware's games (Mass Effect, Dragon Age, etc).

 

As Skyrim is still based around a disposition system, it's easy to make dialogue choices add or subtract disposition (assuming it works at all like Morrowind or Oblivion). This could be used to create a companion that has realistic responses to a character's dialogue, while Skyrim's alignment system can allow characters to react to your actions. In previous ES games, getting companions functioning at any level was a large task that occupied a lot of time. CM Partners is by far the biggest companion mod for previous games, and even that struggled to find a unified following. Only a few characters come to mind that actually reached realistic depth, and all of those used independent companion systems (not CM Partners). Now that Skyrim has followers by default, it should be relatively easy to work on character depth in a way that previous ES games never reached.

 

However, so far nobody has done this. I'll certainly make a character like this once I start college and get rid of my current job, but it's strange that nobody has attempted this. It's a long-running joke that marriagible npcs in Skyrim are only bland sammich-makers, so this is actually really surprising. Thoughts?

Link to comment
Share on other sites

It hasn't been incorporated into large-scale follower mods yet (SMoS being the exception, and even there it's far from complete) because a system like that is by necessity one of the last steps of the project. The reason being that you can't easily balance the positive and negative disposition points until you have a complete script - otherwise you could easily end up with a character who's far too easy to piss off or win over.

 

A rivalry system has been a part of the plan for AD since day one, and most of the complex follower mods that I'm aware of will include something similar. However, it's still very early in the development process for most mods of substance, so you'll probably have to wait for some time before that feature becomes available, let alone reliable.

 

Oh, and, unfortunately, Skyrim's disposition system has been reduced (devs would probably say "streamlined") to a simple value between -4 and 4. I simply plan on creating my own global variable to function as Atvir's disposition. Another way to circumvent this problem would be to use faction ranks in a custom faction to dictate the NPC's attitude towards the player.

Edited by JanusForbeare
Link to comment
Share on other sites

The real issue to my mind is the interface. It seems to me that you would need to modify the interface to provide a truly Bioware type of experience. You can use any number of methods to store relationship status (you don't have to use an actor variable for that). Then, you can use quest variables to store flags about what various actors have been told.

 

Dragon Age was a little ridiculous, though. I got the feeling the designers were trying to make it an everything game (a strategy/combat/roleplaying/dating sim type game). The number of lines each romance-capable character has is staggering. Hundreds and hundreds of lines. The job of recording all that must have been like doing an entire season of a cartoon show. It's a crazy amount of work just for a mod, I think.

Link to comment
Share on other sites

Another way to circumvent this problem would be to use faction ranks in a custom faction to dictate the NPC's attitude towards the player.

 

This would seem to me to be the easiest way to do it. Does anyone have a tutorial on this or anything of that nature? This disposition dilemma is the one thing that's going to hold me back bigtime.

 

It's ridiculous that I have to create a relationship and set it to ally with the player, just to get a follower to work.

Link to comment
Share on other sites

I think Bugthesda are trying to do exactly this. If you have Dawnguard installed, you'll note that Serana has unusually (uniquely?) complex and varied dialogues, although (so far) it doesn't have any significant ramifications in game, I think the they may be implementing/improving/incorporating a "consequence" system for dialogue with future patches/DLC ...

 

She also has the most complex "Idle" AI of any NPC so far, she can't sit still for more than 5 secs. without wandering over to the nearest idle/sandbox location ... Funniest thing, was seeing her kneeling and praying whilst I was talking to the Grey Beards Lol ...

Link to comment
Share on other sites

I think Bugthesda are trying to do exactly this. If you have Dawnguard installed, you'll note that Serana has unusually (uniquely?) complex and varied dialogues, although (so far) it doesn't have any significant ramifications in game, I think the they may be implementing/improving/incorporating a "consequence" system for dialogue with future patches/DLC ...

 

She also has the most complex "Idle" AI of any NPC so far, she can't sit still for more than 5 secs. without wandering over to the nearest idle/sandbox location ... Funniest thing, was seeing her kneeling and praying whilst I was talking to the Grey Beards Lol ...

 

I agree Serana was an unusual character, in that she was remarkably well developed. It's a pity there weren't characters like her in the vanilla game. Thankfully we have talented modders like JanusForbeare, who are quite capable of overcoming Bethesda's shortcomings. *tips hat*

Link to comment
Share on other sites

@Kraeten: Thank you, that's nice of you to say :biggrin: . For the record, I was inspired by Emma, who really raised the bar by showing us what a TES companion could be. Vilja is the ideal all follower modders work towards.

 

@tg08096: I would actually recommend going the Global Variable route, for the simple reason that (as I consider both systems) it would seem to lend itself more naturally to what you're trying to accomplish. Unlike faction ranks, global variables have a theoretically infinite number of values (ie. no disposition cap, and no need to create a rank for every value).

 

All you'd need to do is create the global variable (giving it whatever name you want, ideally something obvious like "MyCompanionDispVariable", and use the script fragment:

 

MyCompanionDispVariable.Mod(1)

 

or

 

MyCompanionDispVariable.Mod(-1)

 

every time the player's actions have an impact on disposition. Then, you'd assign a condition to any disposition-restricted dialogue, preventing it from being said unless your companion's disposition is above or below whatever value you feel is appropriate.

 

That's pretty much it. It's ridiculously simple to implement, but not necessarily easy to balance.

Edited by JanusForbeare
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...