[RELz][WIPz] Realistic Combat

Post » Tue May 17, 2011 1:16 am

Awhile ago I released a test proof of concept for a personal project of mine but in light of recent requests, I decided to polish some of the buggy features and try a re-release with the latest scripting and features.


So what is it?
This is my own attempt to distract the player from the stats and give Morrowind combat a more exciting and "realistic" feel that I think better reflects the experience of battle. Having a few years of experience in kenjutsu (a type of fencing), I've always felt that stat-based RPGish combat felt very empty and left much to be desired. While I like to exercise full creative control, I also recognize that I am playing a game in which my character's skills should reflect the outcome. I went to work on Realistic Combat, which allowed a more Oblivion-like combat system while still taking into account the strengths and weaknesses of the individuals invovled and leaving plenty of room for high-level actors to exert their advantageous stats on low-level actors. It simulates the ability to block with your weapon, a character's inertia during a leap or while running (charge!), and many other things.
We all know that Morrowind's animations just simply cannot compensate for the click-click-click dice-roll melee of vanilla MW. I want to push the player into a different mindset during melee, so that strategy and not boring animations occupy the mind while still allowing all your hard earned stats to make a difference. I understand that some people will enjoy the original style of combat better, but I also know that a (perhaps larger) majority of players want to see a change in the outdated click-fest.


So what are the features?

-100% hit chance. You will always hit whatever you're facing and within range to hit, and so will the enemy. This includes hand-to-hand and ranged weapons as well (which essentially makes a "true iron-sight" out of your crosshair).

-Effective attack distance and angle decrease. The angled field of attack has been sharply reduced to ensure that the player and NPCs must aim their strikes well. This also means that you and your enemy can both dodge attacks if timed correctly, which becomes a matter of practice. You must also get closer to land a hit; this can make the range difference between dagger and spear a matter of life or death.

-Running/jumping (for both the player and NPCs) will add an increase in attack damage to simulate inertia.

-Higher stakes combat. Attacks are much more devastating now with increased chance of critical. Some GMSTs have also been altered to increase the impact strength has on attack damage. Currently the forumla for damage in Morrowind is flawed--however, I believe a fix for this is soon to be in order and when that happens, this may make an positive impact on damage per hit. Also adding to the available tactics is that attacking twice in succession will result in massive damage - however, it will be difficult to do this while trying to block unless you take the offensive immediately and keep it.

-You can now block with your weapon, and so can NPCs. To simulate this, I have created two modes of combat with different advantages and disadvantages.
You default to offense mode. In offense mode, you retain 100% hit chance and the one-two combo hit damage increase.
If you sneak in combat, you enter defense mode. In defense mode, your character attempts to block all incoming attacks, but you lose the 100% hit chance and one-two combo hit damage increase.
When blocking, you will usually take no damage from enemy attack, and an accompanying "clang" sound will result instead, along with a slight flicker of light for added effect. However, this does not mean you can get away with blocking through an entire session of combat! If you make an attack and the enemy blocks it, you lose 5 fatigue, so the force of striking metal-to-metal still has a statistical impact on the battle. It costs more fatigue to block, and the amount it costs is dependent on the Block skill, the current Weapon skill, and the Agility stat. There is also a chance you can mess up your defense and take a lot of damage anyway (an accompanying scraping sound coupled with the loss of your health will be the indication). This could happen if the enemy's weapon and strength stats are much higher than your weapon and block stats, but the Sanctuary spell effect decreases the odds of this happening. All of this works in reverse too, because both the player and NPCs can enter defense mode, though there is no indication for an NPC, they block randomly depending on their stats. Also, there is a global counter for the amount of blocks the player has made successfully. When this reaches a certain number (which is scaled depending on your current block skill), you will gain a point in Block. This is to merge the Block skill into the new system.

-The coup de grace: if you force an NPC to the ground through fatigue, the next hit could be quite devastating! Seize the opportunity--arguably the two biggest factors in weapon-to-weapon combat is distance and timing, and I want to provide as many options as possible in working with these. You must be using a long weapon such as a longsword or spear for the killing blow to apply. You can do this with a knife if you sneak (or "defense mode" if you want to think of it that way--anyway you need to crouch down to reach them with a dagger). This works both ways, so if you continue to block until your fatigue dwindles and you collapse, you will be significantly weaker to attacks. This makes fatigue a much bigger part of battle, which is good because it discourages constant defense. The Sanctuary effect nulls this feature entirely, restoring some functionality to the spell.

-Archery overhaul. Pulling back the bowstring and holding will slowly drain fatigue. A different sound will accompany the shot, depending on how rapidly the bow is shot. Arrows will always hit whatever they come across, and so will thrown weapons, but it's possible to move out of the way if you see it coming.

--There any many new sounds to improve the atmosphere of combat. Randomized sounds occur during a strike against armor, a weapon swish, blocking an attack and failing a block. Bows now play different sounds and weapon draw sounds will change when in sneak mode. Sounds also change depending on what weapon you have equipped.


What is this compatible with?
It shouldn't be incompatible with anything but MWE blocking. Both mods have a different way of dealing with block that conflicts because of the block skill.


Will it unbalance my game?
Hard to tell now. Dice-rolled success and failure in combat has been reallocated from the hit/miss concept to the new system of features, and I've tried to ratio the NPC's level and skills with the outcome battle and so far results seem fairly realistic - a commoner might still present a challenge but isn't necessarily any better than you are. An Imperial guard will take a high level or fair amount of strategy to take down. I suppose statistically the win/lose ratio between different leveled NPCs stays the same, but what was impossible before is now just improbable with the right strategy.


Download
Currently v0.4

Obviously those who prefer original MW combat wont like this, but for those of us who have wanted this forever here it is: http://www.megaupload.com/?d=LSX8FYSX
I find this plays very well with NPC Enhanced. Stay alert, know your "dodge" window, and if you can fall into the parry-cut-cut rhythm, you'll do quite well and have a lot of fun.



Known Issues / Still to come...

-One of the only problems I noticed with this mod is that it basically scraps the "agility" stat - I could factor it into places and fully intend to, but I haven't really done that so much yet as Realistic Combat is still missing some features I want. For the time being it's a sacrifice.

-Sometimes it takes awhile for the combat scripts to "kick in." Combat will always have 100% hit chance, but blocking and the different sounds/modes will not be available until the scripts attach themselves to hostile NPCs. So don't rely entirely on some of these features. This is the main caveat in my decision to make this mod function without 3rd party programs.

-This can only affect up to 5 NPCs at a time. This will change some day, but as long as the mod's in development it's a lot easier for me to work with just the 5 scripts. 5 should be plenty for a melee-fest anyways. As NPCs run away, die, or the cell changes, these scripts cancel or reallocate themselves to the next hostile actor.

-I want to apply penalties to the player for swinging a weapon while moving backwards, because in real fencing this allows the opponent a huge window to take advantage of the "inertia situation." The only problem is that I can't figure out how to detect what direction the player is stepping. I've tried a million times and it always comes out buggy.

-If I were ever able to detect what direction the player is stepping, I could add a whole bunch of "combat move" combos that could add some depth to combat--for instance, running forward with a spear attack should deal loads of damage, while walking backwards while trying to block with a dagger should be asking for a little penalty. Things like that.

-I haven't tested the Block skill raising with successful blocks. It supposedly works but I haven't seen any progress--working on this now.

-Blocking has this quick flicker of light for added effect if the enemy parries your blow--there's supposed to be an opposite darkening of one frame for blocking an attack, but this doesn't work at the moment and I might scrap the idea altogether.
User avatar
Chelsea Head
 
Posts: 3433
Joined: Thu Mar 08, 2007 6:38 am

Post » Tue May 17, 2011 6:10 am

How well will this work with companions? I'm doing some major overhauling of the CM partners scripts (dunno if I'll release it or not yet) and am curious about how companions will be affected.

Since companions are not enemies, and so wont automatically have the script attachted, will companions need to be made compatible?

Edit: I suppose I should also as how npc vs npc combat is? Does it also use the same mechanics or is it more vanilla mechanics with 100% hit chance + gmst tweaks?
User avatar
Isabel Ruiz
 
Posts: 3447
Joined: Sat Nov 04, 2006 4:39 am

Post » Tue May 17, 2011 12:30 am

Oh, a combat overhaul. An interesting one at that. I love the concept of Defence/Offense mode. I'm among those who would prefer a nice accuracy bonus in offense mode instead of 100% accuracy, but that's just personal preferences. I'm just curious as how the NPC use the new system. Anyway, I'll be keeping an eye on this mod.
User avatar
bonita mathews
 
Posts: 3405
Joined: Sun Aug 06, 2006 5:04 am

Post » Tue May 17, 2011 6:38 am

This functions perfectly with companions. If a companion goes into battle then the script will still run on them (it's for every npc that draws a weapon) but it's a global script that won't affect companion functionality. I purposefully maintained compatibility because of my NPC Functionality mod, which does companionship on a global scale. They will function the same as other npcs except there's a little bit of added code that prevents the player from blocking the companions weapon swings and vice versa. When I get into the magic side of things then companions will be a ton more functional, like healing the player, etc.
Npc vs npc combat will be more vanilla-ish and doesn't even necessarily have 100% hit chance. Unless I get a good dodge animation and some insane code together, I'm not going to work on the actor vs actor fights much, this is really about the player's experience.

The way npcs use defense mode is by their stats. During combat, blocks of time are divided into one second intervals and at each interval a decision is made based on random chance + the npcs stats to determine whether they will spend that second in offense or defense mode. This is invisible and seamless but makes npcs periodically "block" attacks.
Also keep in mind that 100% hit chance is a little misleading. While you're gonna hit whats under the crosshair, NPCs frequently sidestep my swings (until I got godly at Call of Duty, now it's all over for those lil bastards) and definitely vice versa, which happens more often than before because of the decreased hit angle. This compensates and allows for dodge/miss.
User avatar
Vicki Gunn
 
Posts: 3397
Joined: Thu Nov 23, 2006 9:59 am

Post » Tue May 17, 2011 5:20 am

cool sounds awesome will test now
User avatar
Kat Ives
 
Posts: 3408
Joined: Tue Aug 28, 2007 2:11 pm

Post » Tue May 17, 2011 2:17 am

Sounds like it will work well then. :) After I finally get to testing and undoubtedly debugging some script changes I might give this a try. I'm working on a companion script with GCD-style leveling. So this should go along with it pretty well. ^^
User avatar
Adam Porter
 
Posts: 3532
Joined: Sat Jun 02, 2007 10:47 am

Post » Tue May 17, 2011 11:35 am

Thanks. See if you can report your experience here, the tweaks that will follow will mostly be based off feedback on this thread. :)
User avatar
Marcia Renton
 
Posts: 3563
Joined: Fri Jan 26, 2007 5:15 am

Post » Tue May 17, 2011 5:37 am

a few quick notes

sound script does not always fire off a bit too quite (good sound replacers though)

how do you intend to incorpotate skills ? in the vanilla the effect the chance to hit, will it base damage now or what ? since at this point a charecter with 5 in blunt can go around with a warhammer and slaughter everybody insight.

also what do you plan for agility to do ?
User avatar
Heather M
 
Posts: 3487
Joined: Mon Aug 27, 2007 5:40 am

Post » Tue May 17, 2011 3:07 pm

This sounds promising. Will download and test.
User avatar
Sarah MacLeod
 
Posts: 3422
Joined: Tue Nov 07, 2006 1:39 am

Post » Tue May 17, 2011 12:28 pm

The scripts will always be a little delayed but once they're on the npc it should be good. Weapon skills factor into whether a block will be performed successfully or not. For example, if the player has 20 strength and 20 blunt skill and tries to block an npc with 10 strength and 60 blunt, there is a good chance the npc will plow on through your defense and inflict damage anyway, though the damage delivered would not be as devastating as if the player hits the npc.
In a later release I intend to make your weapon skill affect how much fatigue you lose when blocking. So while it may appear as if a lv 3 can beat a lv 10, it would be really hard to manage without successfully blocking it all (stat diff probably wont allow this) or using some crazy strategy.
User avatar
Ana
 
Posts: 3445
Joined: Sat Jul 01, 2006 4:29 am

Post » Tue May 17, 2011 11:45 am

sounds pretty solid and promising
User avatar
Lizzie
 
Posts: 3476
Joined: Sun Nov 19, 2006 5:51 am

Post » Tue May 17, 2011 2:00 am

Thanks. Dodging is now technically based on speed instead of agility now, but I think I could make less agile characters have to swing more times to achieve the combo-damage, which gives some incentive to work on the agility.
Other than that I still need to make more uses of the agility stat, but I'll think of something.

It's little things like this that make me label this beta.
User avatar
Eddie Howe
 
Posts: 3448
Joined: Sat Jun 30, 2007 6:06 am

Post » Tue May 17, 2011 1:58 pm

Oooh, now this looks exciting! In my opinion the dice-roll based combat tucked inside of a real-time 3D engine made no sense. I also was frustrated by the fact that combat was pretty much pre-determined unless the player and NPC were on a very similar level, and then it was just a matter of luck. The changes you've made sound excellent. I am a big fan of NPC Functionality, so I'm looking forward to this as a high-quality mod.

I have a suggestion regarding agility - as well as impacting the combo-damage how about having it affect the angle of attack available to a player or NPC. I couldn't agree more with reducing the default angle of attack, but how about working agility into that reduction so that a higher agility score means a relative increase in angle of attack, this could represent agile characters being able to reach and lean more fluidly, giving them more freedom of movement to get a strike to connect. Whereas strength based players will use a strategy of highly damaging but more carefully targeted strikes.

If you need playtesters then count me in, however my playtime is limited. I'm deep in a (kind-of related) scripting project myself - working with Sandman101 to bring a high quality sheathing mod to Morrowind. Right now we are aiming for getting sheathing working on the player, but I know we both want to eventually work out a way of extending that to NPCs.

@Pwin - your project also sounds exciting, I look forward to that too!
User avatar
Penny Wills
 
Posts: 3474
Joined: Wed Sep 27, 2006 6:16 pm

Post » Tue May 17, 2011 3:23 am

A sheathing mod? You guys are awesome, keep it up!
As for the agility and hit window, Its a good idea but the angle of attack is dictated by GMSTs, which unfortunately cannot be changed on the fly with scripts.
User avatar
Nitol Ahmed
 
Posts: 3321
Joined: Thu May 03, 2007 7:35 am

Post » Tue May 17, 2011 12:58 am

As a pen and paper RPGer from years ago , I always considered Agility in terms of the governing attribute of critical hits . The higher the agility score , the greater the chance of scoring a critical hit AND avoiding one . Would that be possible ?
User avatar
JAY
 
Posts: 3433
Joined: Fri Sep 14, 2007 6:17 am

Post » Tue May 17, 2011 12:26 pm

Yes and no... Critical hits, like the window of attack, are governed by GMSTs.
My scripted coup de grace feature basically allows you to 'force-critical' hit an opponent who's fallen down and theoretically in no position to defend. That's the closest to critical hits I can get.
Maybe having a high agility decreases the time in which you are vulnerable after falling?
Heh, that's a good idea, I might try that. :)
User avatar
BrEezy Baby
 
Posts: 3478
Joined: Sun Mar 11, 2007 4:22 am

Post » Tue May 17, 2011 1:53 am

A sheathing mod? You guys are awesome, keep it up!
As for the agility and hit window, Its a good idea but the angle of attack is dictated by GMSTs, which unfortunately cannot be changed on the fly with scripts.

I know about the GMST limitation with TES Script, I should have thought of that. I guess you could compare the agility of the hitter vs. the agility of the one being hit and use the difference to adjust the hit/block chance. That would make a high agility player less dependent on going defensive, edging them toward a movement based strategy, whereas players opting for strenth would concentrating on well timed strikes.

Does Sanctuary still have a benefit with your calculations?

Here's the thread on the mod:
http://www.gamesas.com/index.php?/topic/1158818-wip-evolved-armamentarium/
I too have limited myself to TES Script, rather than using MWSE. I swear it's faster and much more stable, and I can just store the info I need in MW's numeric globals. The 'run once' scripts are verbose, but in the core scripts I do a lot of event checking to only fire a startscript when one is needed.
User avatar
Jesus Duran
 
Posts: 3444
Joined: Wed Aug 15, 2007 12:16 am

Post » Tue May 17, 2011 8:21 am

looks good will have to try it
User avatar
Nadia Nad
 
Posts: 3391
Joined: Thu Aug 31, 2006 3:17 pm

Post » Tue May 17, 2011 12:34 pm

I'll use it when it's "done" :)
User avatar
Ice Fire
 
Posts: 3394
Joined: Fri Nov 16, 2007 3:27 am

Post » Tue May 17, 2011 3:37 am

I could add agility to the hit and block chance but there's so many other factors already. I'll think about it. And now that you mention it, this does kinda invalidate the sanctuary effect. That's an easy fix though, I'll just have the scripts check for the effect and null some things. Thanks for pointing that out.
User avatar
Ron
 
Posts: 3408
Joined: Tue Jan 16, 2007 4:34 am

Post » Tue May 17, 2011 12:12 pm

Well, my opinion is that one of the things MW does right in theory is that strength affects the damage dealt per blow, whereas agility affects the chance of getting a hit, or evading one. However, I use GCD, so I'm more used to the rues where a character develops faster their in natural strengths, ie. the stats that were higher to begin with. So that tends to skew my idea of how a character develops over time, rather than the vanilla MW jack of all trades - which would effect how much fun stat based stuff going into the hit chance would be. I just think it would be fun that players who have selected agility over strength have a movement based advantage, and strength focused characters have an advantage when it comes to dealing out damage.

Oh, and please feed Sanctuary back in to the maths when you can, Dunmer are my favourite race and Sanctuary is their racial ability. :)
User avatar
Joe Alvarado
 
Posts: 3467
Joined: Sat Nov 24, 2007 11:13 pm

Post » Tue May 17, 2011 10:43 am

someone should make a youtube video.
User avatar
Markie Mark
 
Posts: 3420
Joined: Tue Dec 04, 2007 7:24 am

Post » Tue May 17, 2011 1:15 pm

Okay I updated this release.
http://www.megaupload.com/?d=LSX8FYSX

Please try, I need test results! Here's what I did:

-Reallocated some processing from the NPC scripts to the player's script, which should result in less strain on the CPU.

-The penalty for "falling down" (0 fatigue, usually from blocking too much) no longer applies when the Sanctuary effect is on the Player or NPC.

-The Sanctuary effect halves the percent difference in strength between player and NPC. This affects the formula for succeeding or failing a block. A character with sanctuary will block correctly against a stronger opponent a little more often than without the effect.

-Agility, Strength, Weapon and Block skills now all average together (based on Morrowind's 0-100 stat range) to determine how much fatigue it costs to block. Previously this was fixed at 30. Now there are 4 brackets: 0-25 range it costs 35 fatigue, 25-50 range it costs 25 fatigue, 50-75 range costs 15 fatigue, and anything above that costs 7 fatigue. Now a character with really high agility and low strength and weapon skills can theoretically fight longer as it costs less to defend, but they'd dish out less damage over time.

-Overall decrease of block failure chance and damage received for failed block.


I think I'm going to keep the one-two hit combo damage thing where it is. Adding agility to the blocking formula can potentially give agile characters a huge edge if they train the skill.
User avatar
biiibi
 
Posts: 3384
Joined: Sun Apr 08, 2007 4:39 am

Post » Tue May 17, 2011 8:51 am

Okay I updated this release.
http://www.megaupload.com/?d=LSX8FYSX

Please try, I need test results! Here's what I did:



I think I'm going to keep the one-two hit combo damage thing where it is. Adding agility to the blocking formula can potentially give agile characters a huge edge if they train the skill.



I think I'm going to keep the one-two hit combo damage thing where it is. Adding agility to the blocking formula can potentially give agile characters a huge edge if they train the skill.


makes sense being as they're agile characters.
User avatar
Ally Chimienti
 
Posts: 3409
Joined: Fri Jan 19, 2007 6:53 am

Post » Tue May 17, 2011 11:34 am

This looks really great! I've been looking for this kind of mod, I just started out with Morrowind again after a break of a couple of years...

But I'm sorry if I didn't understand your description of the 100% hit chanse correctly: will it be like Oblivion (where your skill stats determine how much damage you will deal)?

I'll be downloading this when it's out of beta. Until then, keep up the good work!
User avatar
Blackdrak
 
Posts: 3451
Joined: Thu May 17, 2007 11:40 pm

Next

Return to III - Morrowind