WIP Better Battles

Post » Thu Dec 09, 2010 10:15 pm

I have long had a goal to make what I consider to be the "most essential mod" ever made. I know it sounds egotistical, but that idea has only ever been the means to an end for me; the end being the practice of doing my utmost best to perfect every project I work on. But I've also always wanted to make something that would cause "you can't play without MWSE" to be a common phrase on all modding forums.

I sincerely hope that this project, the culmination of years of the greatest scripting minds (such as Cortex, Aerelorn, DinkumThinkum, Horatio, Yacoby, etc) theorizing and trying things out, with a small bit of collaborating and tweaking by myself, will be that "essential mod."


My goal here is to entirely revitalize combat in Morrowind.


Better Battles will be presented in two parts: NPC combat and PC combat.

Better Battles: NPC Combat Behavior

Beginning with Horatio's dream of improving combat AI to the point of realistic and challenging combat that evolves with the current situation, I began to expound upon NPCs Enhanced. There are a number of other mods that improve the behavior of NPCs in various combat situations that I felt could be merged together. Pursuit Enhanced brings an essential combat behavior to the game, entirely changing my fighting methods; I found that I had to better prepare for every possible encounter. Protective Guards brought a touch of reality to the nature of law enforcement, and Fliggerty's Fleeing Fetchers got those annoying bystanders out of the way; I also found that it adds to the atmosphere of cities by making it so that a fight to the death in the streets was actually noticed and caused a commotion. And the Companion Initiative project helped give your friends a brain, they were able to be proactive instead of entirely reactive.

So I set about to combine those five mods into one single optimized project. Then I began to realize what I had embarked upon.

I managed to create a system that will sort and categorize every NPC you encounter based upon their potential for fighting you. They are all flagged as either a companion, an opponent, a bystander, or a guard. And what's more, they can be easily moved from one category to another if the situation changes. Depending upon what category they are placed into, their behavior is then monitored and controlled, implementing the features of the above-mentioned mods.

--Bystanders:
No longer will an idle NPC walk in between you and your opponent, getting hit by an errant swing and giving you a bounty. When battle ensues, all NPCs in a given range will flee to a safe distance; unless they have a relatively high fight setting (but not high enough to make them attack on sight) or even a very low disposition, there is a small chance that they will join in the combat...against you.

--Guards:
I always was dismayed by the fact that a guard will help you fight a scrib, but not a smuggler. Any guard, whether vanilla or mod added (within certain limitations, the only way I can tell if an NPC is a guard is by reading the name and ID, so there may be a few that slip between the cracks, although I have taken into account the guard names from mods such as MCA) will help you in your fight when you are attacked. Essentially they will treat any NPC like they do you; if you hit someone unprovoked they will immediately attack or arrest you. So now the will do that to any NPC that hits you (well, except for the arrest part...I've never before given that possibility any thought.)

As with opponents (as I will describe momentarily) the combat behavior of guards is enhanced. They act a bit "smarter," using the appropriate method of attack and weapon type in each situation. They will make better use of spells and potions. Overall, guards will be a valuable asset, or an incredibly formidable opponent.

--Companions:
The primary addition to companions is the ability to act upon a hostile NPC before the player gets hit. When an enemy targets the player, your companions will be able to move to attack first. Their combat will also be enhanced, giving them the same benefits of the guards and opponents. This will work for any NPC in follow or escort AI mode, regardless of what companion script they may have attached (unless it somehow interferes, though the commonly used ones do not.)

--Opponents:
This is where things get really interesting. Each NPC that has been sorted as an opponent will also be further categorized as either a melee, stealth, or magic fighter. Based upon this decision, they may be randomly given weapons, potions, and spells that will help to define their combat method. No longer will every combatant cast spells until all magicka is gone, use every ranged weapon in inventory, then rush in with a melee weapon. A mage may step back and cast a variety of spells, taking restore magicka potions when running low. A stealth fighter might cast chameleon, and try to sneak up on you to hit you with a viper blade, then fall back a ways and start throwing darts. A melee fighter might alternate between hitting you with an axe, and moving back to pepper you with a few arrows.

No longer will they get stuck on obstacles. If a rock is in the way, they just might jump over it, then continue a charge. If their health is faltering, they might flee to a safe distance and drink a few restore health potions then rejoin combat. If you try to duck out of the cave to escape your demise, you just may be followed into the wilderness. Unless you lock it and they don't know how to pick it.



These are all features of existing mods. I have a lot more to add, and as a result of another thread in which we dreamed and brainstormed, I have a lot of stuff to think about adding.

This is still very much in the planning/testing/experimenting stage.

Some things I will definitely add:

--Random potion quaffing: any NPC may randomly drink any potion in their inventory, primarily done in desperation when they have no health potions. Combined with some way to give potions to NPCs, this could be a way to finally use alchemy as an offensive weapon.

--Recognizing and countering the player's spell casting. If the player mainly uses spells, and the NPC knows a silence spell, they will use it. If they know a dispel spell, they may cast it on the player while levitating, shielded, or to get rid of a summons.

--Surrendering. Under certain conditions an NPC may surrender rather than be killed, or even offer a truce. There may be options such as enslaving, capturing them to receive a bounty, mugging, etc. This is an idea that will need to be further developed.

--Casting scripted spells. So far using scripted spell effects has only been the domain of the player. NPCs will be able to cast new and unique spells such as custom summons. Anything that can be scripted can be made into a spell.

--Disarming the player.

--Using a better variety of spells such as blinding or burdening the player.

Then the category of ideas that I want to further explore:

--Making an opponent levitate during combat.

--Sidestepping projectiles.

--Looting corpses during combat.

--Change position during ranged combat if they are not succeeding in hitting the player.

--Alerting other potential enemies when combat has ensued. (A variation on this I've been thinking of is the ability to have guards "call for backup." When a battle is too tough for the guards, other guards may "recall" to the position and join the battle.)

--Helping other NPCs during combat; doing such things as healing each other and working with group dynamics like flanking or mixing combat styles.

--Taking player's elemental resistances into account when choosing which spells to cast.

--Preparing for combat with "buffs" such as shielding and fortifications.


And I am certainly still open to suggestions.


Better Battles: PC Combat

This portion of this project began with a simple idea that I wanted to explore: using MGE's key pressing functions to randomize the type of attack (chop, slash, or thrust) used when you click the mouse button. I was incredibly pleased when I saw how well it worked, and began to gradually expand the idea until it became what it is.

The goal here is to change the focus of combat; rather than only paying attention to which type of attack you should use to do the most damage I want to trust that the weapon will work and pay more attention to things like blocking. So the attack type is now randomly determined for you. I understand that this may cause less damage to be done since it isn't always using the best attack (unless you've got that turned on which defeats the whole purpose here,) but there will be greater advantages offered.

Blocking will be controlled by the player as it is in Blocking Enhanced. Essentially it works by draining the blocking skill to 0, and then immensely fortifying it when a key is pressed. This actually has the effect of making the PC put up the shield on demand when the block key is pressed. It works incredibly well.

The primary feature though is what I am calling "combat momentum." As you fight, when you get into the battle and have made so many successful hits on your enemy, you will have the ability to perform a special attack. This is different from Combat Enhanced since that uses combos; obviously since you won't have control of the attack type combos aren't possible here. But like with CE, the type of special attack you do is based upon your weapon. The likelihood of doing a special attack is based upon many factors such as luck, skill with the weapon, that skill's governing attribute, a race bonus (such as a Nord using an axe,) and a random element. When you are fighting there will be a momentum meter displaying on the HUD. When it is full, if you press the special attack key it will be attempted. If you fail, the meter will empty and you have to build up your momentum again.

Some of the special attacks are:

--Slit wrists: opponent can longer hold a weapon and takes slow health damage. Can be healed with a restore health spell.

--Armor breaker: opponent's equipped cuirass is broken.

--Blade breaker: opponent's equipped weapon is broken (won't work on an axe, hammer, or mace.)

--Disarm: opponent's equipped weapon is pulled from their hands and thrown to the floor. If PC is using hand-to-hand they may be able to take it.

--Knock down: opponent is knocked to ground momentarily.

--Knock out: opponent is knocked to ground and remains for a few moments.


There are also some fatal special attacks that will be more difficult to pull off:

--Behead: opponent's head is fatally cut off.

--Skull crusher: opponent's head is fatally struck, less likely to succeed if they are wearing a helm.

--Impale: a spear is thrust into the opponent's abdomen.

--Stab: blade is thrust into opponent's chest (if they aren't wearing a cuirass,) the blade is stuck until PC retrieves it from the corpse.

--Head/Heart shot: a one shot kill with a marksman weapon (this uses entirely different mechanics involving concentration rather than momentum.)


There will also be a few other features. I have used MGE shaders to replace the red hit fader with various levels of blur depending on the amount of damage taken. I am also incorporating my Improved Hand-To-Hand so that hand-to-hand combat will do health damage rather than fatigue damage.

It is even possible to somewhat enhance the animations at some future point (assuming that they are ever made.) This is an example of what I mean:
http://www.fliggerty.com/tempfiles/combat.wmv

When recording that, I only pressed the mouse button, nothing else.




These two portions will come together to work together. I believe that the NPC improvements will make the game much more challenging, but the PC portion may balance that a bit depending upon the player. It will really require a more active role in combat than currently exists now.

Every feature in both of these will be able to be turned off. If you don't want NPCs to drink potions, they won't. If you don't want to the MGE hit faders, you can turn them off. I have designed with the objective of complete customization in mind.



So whaddya think? Any suggestions or comments?
User avatar
glot
 
Posts: 3297
Joined: Mon Jul 17, 2006 1:41 pm

Post » Thu Dec 09, 2010 8:44 pm

I like the special attacks, but would like control over them. I like that you aren't using combos, as that is the reason I don't use Combat Enhanced.

Would it be possible to have 3 slots for special attacks, and be able to select which ever one. It would be nice to know you are going to behead someone without it just randomly happening.
User avatar
Siobhan Thompson
 
Posts: 3443
Joined: Sun Nov 12, 2006 10:40 am

Post » Thu Dec 09, 2010 9:25 am

What do I think? I think that's the longest post I've actually ever read.

After that, I think you've pretty much covered it. We all know there won't ever be a "most essential mod" but this one will sure be near the top. The "you can't play without MWSE" part, however, is unavoidable should this come to fruition.

As for suggestions, not much. One thing did come to mind as I was reading though. If you try but fail at a special fatal attack, it could be downgraded to a related "normal" special attack (Skull crusher fails, so it downgrades to Knock out). Whatever rolls would be made to see if the attack succeeds would still be made of course. But other than that, you've done pretty damn well. It takes a while to come up with more stuff considering the majority of what you just mention was perceived to be impossible. :)
User avatar
Elisha KIng
 
Posts: 3285
Joined: Sat Aug 18, 2007 12:18 am

Post » Thu Dec 09, 2010 11:14 pm

:drool: :wub:
User avatar
Quick Draw III
 
Posts: 3372
Joined: Sat Oct 20, 2007 6:27 am

Post » Thu Dec 09, 2010 10:01 pm

Wow. If you ever finish the mod with all of those features included (let alone any more suggested ones)... I gotta hand it to you, that is one hell of an undertaking!

Good luck with this. I will certainly be trying this out when it's done.
User avatar
Alexander Lee
 
Posts: 3481
Joined: Sun Nov 04, 2007 9:30 pm

Post » Fri Dec 10, 2010 12:02 am

I don't like the idea of having to control blocking. I like blocking fine the way it is. I like my combat RPG style (turn based would be fine.) So my recomendation would be to make that particular feature optional.
User avatar
Cathrine Jack
 
Posts: 3329
Joined: Sat Dec 02, 2006 1:29 am

Post » Thu Dec 09, 2010 10:30 pm

As I mentioned, all features will be optional.

Would it be possible to have 3 slots for special attacks, and be able to select which ever one.


Yes, it will all be in your control. Each weapon type has two or three special attacks (I'd like to make that an even number for all of them, but I'm out of ideas for special attacks at the moment) and one fatal attack. I intend to work out some type of key combination to determine which one to use; but I don't want to end up essentially reimplementing the original system that I basically removed. On the other hand, I don't want there to be too large of a number of different keys to press. The method is still something that will have to be determined.
User avatar
Alexandra Ryan
 
Posts: 3438
Joined: Mon Jul 31, 2006 9:01 am

Post » Thu Dec 09, 2010 6:58 pm

As I mentioned, all features will be optional.


Sorry, I guess I got a little excited and didn't finish reading the post. :facepalm:

Great ideas, btw, I especially like the idea that NPCs behave more intelligently and the possibility of improving animations is exciting too. :twirl:

Do you envison improved annimation as part of this mod, or just paving the way for somebody to do that later? I did understand that it would be "a future point."

:foodndrink:

:tops:
User avatar
Cccurly
 
Posts: 3381
Joined: Mon Apr 09, 2007 8:18 pm

Post » Thu Dec 09, 2010 11:21 pm

I don't know, whichever comes first I suppose. I can tell you that there is little hope of me creating the animations, I would have no idea where to begin with that. But if I had the resources to work with, I could place the animations as needed. It's not going to ever be a huge improvement, the engine just won't allow for a lot of change there. But there are some animations that are basically just used multiple times. What I did in that video is used one of RX31's animations as the Long Blade 2-Hand Large attack.
User avatar
Chenae Butler
 
Posts: 3485
Joined: Sat Feb 17, 2007 3:54 pm

Post » Thu Dec 09, 2010 8:33 pm

-clip-
Yes, it will all be in your control. Each weapon type has two or three special attacks (I'd like to make that an even number for all of them, but I'm out of ideas for special attacks at the moment) and one fatal attack. I intend to work out some type of key combination to determine which one to use; but I don't want to end up essentially reimplementing the original system that I basically removed. On the other hand, I don't want there to be too large of a number of different keys to press. The method is still something that will have to be determined.

Some more ideas for specials:
Blades
--Throat Slash: prevents opponent from calling for help, can not cast or drink potions and takes slow health damage. Can be healed with a restore health spell.
--Sever Hamstring/Achilles: slows opponent, can't run.

Unarmed
--Go for the Jugular: same as Throat Slash except no slow health damage.
--Eye Gouge: opponent is blinded, reduces accuracy.
--Stunning Fist: opponent disarmed and knocked down.


Looking forward to this Fliggerty! :toughninja:
User avatar
Nina Mccormick
 
Posts: 3507
Joined: Mon Sep 18, 2006 5:38 pm

Post » Thu Dec 09, 2010 8:28 pm

Flig, if you pull this off you will become the Vivic of the Morrowind modding world in my book.

Looking forward to the release day!
User avatar
Harry Leon
 
Posts: 3381
Joined: Tue Jun 12, 2007 3:53 am

Post » Fri Dec 10, 2010 12:40 am

--Companions:
The primary addition to companions is the ability to act upon a hostile NPC before the player gets hit. When an enemy targets the player, your companions will be able to move to attack first. Their combat will also be enhanced, giving them the same benefits of the guards and opponents. This will work for any NPC in follow or escort AI mode, regardless of what companion script they may have attached (unless it somehow interferes, though the commonly used ones do not.)


Please please make this toggleable - it is frequently NOT desirable behaviour in a companion!
User avatar
Grace Francis
 
Posts: 3431
Joined: Wed Jul 19, 2006 2:51 pm

Post » Thu Dec 09, 2010 9:40 am

It will be...everything will have the option of being turned off. I also intend to allow for you to have specific companions use the initiative and not other ones.
User avatar
Rebecca Dosch
 
Posts: 3453
Joined: Thu Jan 18, 2007 6:39 pm

Post » Thu Dec 09, 2010 10:24 am

Any chance you'll be able to add a way to "call" your companions back to you after they've started combat? That way your companions will follow you as you flee, so your 'enemy' on accident doesn't end up dead.
User avatar
Valerie Marie
 
Posts: 3451
Joined: Wed Aug 15, 2007 10:29 am

Post » Thu Dec 09, 2010 8:03 pm

First of all, I'm really excited for this one. I'm wondering, though:
Blocking will be controlled by the player as it is in Blocking Enhanced. Essentially it works by draining the blocking skill to 0, and then immensely fortifying it when a key is pressed.

How will this interact with GCD? The levelling mod. It computes stats and levels via skills of the player.
User avatar
lucile
 
Posts: 3371
Joined: Thu Mar 22, 2007 4:37 pm

Post » Thu Dec 09, 2010 11:34 pm

This sounds great, but this bit has me seriously concerned

--Opponents:
This is where things get really interesting. Each NPC that has been sorted as an opponent will also be further categorized as either a melee, stealth, or magic fighter. Based upon this decision, they may be randomly given weapons, potions, and spells that will help to define their combat method.


So they might be given additional equipment as well as what they already have? Why?

Not only does this give more loot (screwing out the economy even more), many NPCs have been given specific equipment and spells to only use. For example in my Creatures mod the various new 6th house NPCs I've added have unique 6th House spells and 6th house equipment. I wouldn't want them to suddenly use other random weapons/armour and spells.
Potions I can't see being a problem, since I doubt anyone gives NPCs potions.


Here's another idea, since NPCs (would this include creatures too?) behave more intelligently during combat, what about reducing their chance at doing "smart" things based on their intelligence value vs any drain intelligence magic

i.e. Base intelligence value = http://forums.bethsoft.com/index.php?/topic/923895-wip-better-battles/100% smartness (before other variables applied), drained 50%, 50% smartness (before other variables).
So a mage then can target these spells at warriors, and turn them into clumsy gibbering idiots (or just like vanilla NPCs :D ) thus intelligence is no longer restricted to mages. Something similar could be done to the player, a drain intelligence on them could slow down their moves, or make the special move bar slower to increase.


Oh, another idea is NPCs item health, when they die would it be possible to reduce the health of their equipment even more? At the moment it's hardly damaged, even after a long fight. It's okay for the player since they have to survive lots of fights, but I feel NPC gear should be damaged a lot more, forcing the player to have to spend cash to repair the items to get full sale price or full use out of them.
Just think of it as the items taking more damage when the NPC falls to the ground and dropping their weapon. Landing onto stone has got to put a few dents and scratches in armour + weapons.
User avatar
Angela
 
Posts: 3492
Joined: Mon Mar 05, 2007 8:33 am

Post » Thu Dec 09, 2010 2:09 pm

This sounds great. If everything goes as planned, I think you indeed will have created the biggest 'must have' mod ever, as you stated to be your desire.

-DL :chaos:
User avatar
Neil
 
Posts: 3357
Joined: Sat Jul 14, 2007 5:08 am

Post » Thu Dec 09, 2010 10:02 am

First. Good luck. It doesn't seem like a walk in the park this project. :)

But have you thought about what will happen to the skill block? Those who uses the block part of this mod will effectively remove the skill from the game. What will happen if you have it as a major/minor? Or as someone say if you use GCD? That will make some serious clashes between the mods it seems..

Also about the npc following you. Could you make them stop before reaching a city or something? It seems likely that the smugglers in Addamasartus won't take the fighting into Seyda neen with all those guards there. :)

EDIT: Could the companion scripts also be applied to summons? At least some parts of them. I have no idea if that's possible but it seems like something that would make them more useful.

And good to see that you make it modular as I wouldn't want all parts but it would surely be on my must have list. :)
User avatar
Lucie H
 
Posts: 3276
Joined: Tue Mar 13, 2007 11:46 pm

Post » Thu Dec 09, 2010 9:08 pm

In fights involving several npcs , there is a tendency for them to all select the same target and bunch together, it would be great if you can fix it so they each select targets randomly and avoid bunching together.
User avatar
matt white
 
Posts: 3444
Joined: Fri Jul 27, 2007 2:43 pm

Post » Thu Dec 09, 2010 3:39 pm

I think that there are far more problems on the NPC side of the ball than on the PC side, though your prospectus more or less reflects that. I'd say it's more important to bring the NPCs up to the player's level first before worrying too much about PC combat.

Also echoing the bit about Block- if pressing a button gives you 1000 Block or something, then what's the point of the skill? Why not have the base Block skill determine how much damage the shield takes- any dummy can hold something in front of their face, but a skilled Block user can deflect the blow with minimum damage to whatever they're using to block.
User avatar
Ashley Clifft
 
Posts: 3468
Joined: Thu Jul 26, 2007 5:56 am

Post » Thu Dec 09, 2010 8:12 pm

As I suggested before: a system where any hit does damage, but the damage is increased based on skill and luck multipliers.
User avatar
xx_Jess_xx
 
Posts: 3371
Joined: Thu Nov 30, 2006 12:01 pm

Post » Thu Dec 09, 2010 7:39 pm

Well, you could take the block skill value as it stands but when the player intentionally presses the block button, 50 points is added to that skill value. Thus you are asking your character to block, and they may or may not be able to do so.
Plus you have the benefit that if you don't specifically request a block, they might still do so anyway.

Thus you have the best of both worlds, increased chance of player controlled blocking, but still dependant on your characters skill. Seems better then the 0 or 100 approach and keeps it compatable with all levelling systems.

As I suggested before: a system where any hit does damage, but the damage is increased based on skill and luck multipliers.

You'll find that this is fairly unpopular in the MW community since this is the OB approach where you always hit, but damage is a ratio of your skill. MW players prefer the hit or miss approach.

Fliggerty, do you know if the engine calculates if you hit or miss as soon as you press the attack button, or if it does it at the end of the swing? Then, is this somehow detectable?
I'm thinking you could detect a miss can cause the NPC to move backwards a few steps to visually represent them dodging away with maybe perhaps a force jump for even more effect (to get around the lack of animations).
This causes then the NPC to also be out of combat for a second or so (recovering from the dodge) which would balance out the increased difficulty of the new combat system.
User avatar
Jordan Fletcher
 
Posts: 3355
Joined: Tue Oct 16, 2007 5:27 am

Post » Thu Dec 09, 2010 11:54 pm

Well, you could take the block skill value as it stands but when the player intentionally presses the block button, 50 points is added to that skill value. Thus you are asking your character to block, and they may or may not be able to do so.
Plus you have the benefit that if you don't specifically request a block, they might still do so anyway.

Thus you have the best of both worlds, increased chance of player controlled blocking, but still dependant on your characters skill. Seems better then the 0 or 100 approach and keeps it compatable with all levelling systems.


Yes, this could work (I think I'd still leave it off,) but to keep block more balanced, when you block there should be a penalty elsewhere. A chance of missing an attach turn or something like that would work.
User avatar
Kelly Upshall
 
Posts: 3475
Joined: Sat Oct 28, 2006 6:26 pm

Post » Thu Dec 09, 2010 5:49 pm

Sound's amazingly awesome. Four points.
1) I use NPC enhanced, and love it. I am hoping that you are keeping the other potions that the NPCs can quaff, like summons and other less obvious effects. They really add an interesting side to the fight if a golden saint pops up next to you.
B) In regards to the special PC attacks, the reason I don't use CE is because it looks like it could make combat too easy. I've been thinking I'll try your mod out, but to avoid making combat too easy is there going to be a thing that makes it more difficult to perform them on high level characters. It would annoy me to be able to build up momentum, and then one hit kill Umbra, Vivec, Dagoths, etc. It would stand to reason that tougher characters would be better at not getting hit by special attacks.
iii) Mages look to be getting the short end of the stick. Maybe a similar system for successfully casting spells? Maxing out momentum could give you options to do special magikey things like casting unique spells, upping chance of casting difficult spells or scripter things like slowing everyone else down etc. Just an Idea.
Lastly) Curses, I've forgotten my last point. I'll tell you another time.

Good work. M
User avatar
brenden casey
 
Posts: 3400
Joined: Mon Sep 17, 2007 9:58 pm

Post » Thu Dec 09, 2010 11:17 am

Yes, this could work (I think I'd still leave it off,) but to keep block more balanced, when you block there should be a penalty elsewhere. A chance of missing an attach turn or something like that would work.

If it's done as a spell/curse applied to the player, then you could do 2 sec block + 50, and 6 sec -50 to each of your weapon skills to represent some time recovering lifting up a shield and the like.

Allow your character to "decide" when to block, or force him to block beyond his skill but suffer as a result.


Mages are quite powerful anyway being able to do a lot of damage at range + close up and with magicial shields they always gain an advantage over warrior type characters, until they run out of magic or encounter something that does too much damage to them close up.


I'll definately be using this mod, I want to replay MW (haven't even started BM or finished TB!) but have a new experience (I will admit I've been playing that popular MMORPG game and combat is very impressive, especially against other players, my reflexes are too slow! Also being a warrior character, I get easily killed by magic users).
User avatar
Manuela Ribeiro Pereira
 
Posts: 3423
Joined: Fri Nov 17, 2006 10:24 pm

Next

Return to III - Morrowind