Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Axis & Allies 1942 Online is now available in Early Access! Buy it on Steam. The FAQ is available.
New Premium Module: Tyrants of the Moonsea! Read More
Attention, new and old users! Please read the new rules of conduct for the forums, and we hope you enjoy your stay!

Aggro, Tanking, Threat

TvrtkoSvrdlarTvrtkoSvrdlar Member Posts: 353
edited September 2014 in General Modding
Anyone know how to make enemies focus on the tank during fights?

And I mean script-wise, not by using spells like invisibility to cloak your mages.

Is there a way to set up some kind of item or ability that can be used by the tank to draw enemy attention?

I usually play 'tankless' parties where each character uses their own repertoire of spells and abilities to deal with incoming baddies, but this time around I rolled a Dwarven Defender as my main char for a refreshing change of pace, and I gotta say, the poor fellow's been almost useless thus far.

The most egregious examples were boss fights (dragons), and SCS's Siege of Ust Natha. Battles where he should've been shining and where his resilience would've been at its most useful usually unfold with him chasing enemies as they tear into my mages/thieves/rangers.

I was under the illusion that he'd heroically keep foes at bay, and thus decked him out in protective items as well as giving him the Defender of Easthaven (making him pretty much unkillable in physical combat) but that means diddly squat when most enemies simply ignore him and make a beeline for the squishies cowering in the background.

I know the game isn't that hard, and that it can be beaten by splitting up enemies piecemeal and blah blah blah, but I was hoping for a change of pace, and the poor DD just hasn't been living up to his reputation so far. Honestly, I'd kill for some script/spell/ability that'd let him draw enemies to himself, even just for a single round per combat.

I mean, I've seen some crazy stuff done with scripting (the delicious SCS comes to mind).

Is this even doable? Or do engine limitations get in the way somehow?

(( @DavidW‌: How did you get the NPCs in SCS to switch targets? ))



  • subtledoctorsubtledoctor Member Posts: 11,379
    Um, don't use SCS :P

    SCS kind of makes every enemy telepathic and omniscient. They know what protection spells you have up, they know how many hp you have, they always target your squishiest character, etc. SCS aims to make the AI act like a powergaming player, behaving 'optimally.'

    My only knock against SCS is that it's unrealistic - lots of people behave non-optimally all the time. Big dumb bruisers should tend to go after your tanks, because they are dumb and prideful and want to show how tough they are by attacking another big bruiser. When an ogre immediately charges my mage in the back lines, taking 5 hits from Minsc's 2-hand sword on the way, it just encouraging kiting and other annoying techniques.

    Still, the scripting in SCS is a marvel, and on balance the game is still much better with it than without. The perfect happy medium is probably impossible to achieve.

  • TvrtkoSvrdlarTvrtkoSvrdlar Member Posts: 353
    Yes, SCS does have a lot of target switching and other nasty surprises, but without it, the game is way too boring (at least its combat part). With no SCS, enemies are way dumber, but they still tend to ignore the party's tank and go for the squishies.

    So, the lack of a dedicated taunt ability means the problem is still there, SCS or no.

  • DavidWDavidW Member Posts: 729
    The bottom line is that 2nd edition D&D just isn't a tank/heal/dps combat system. People have got used to that system because WoW has made it so prevalent, but it's not the only way for a combat system to work. And it's not so surprising that it doesn't work that way, because from a combat PoV D&D is a player-vs-player game, and a player would have to be completely stupid to attack the tank in preference to the DPS or healer. ( it's interesting that I've only come across complaints that SCS can't be tanked in the last few years, as WoW style combat presumptions spread.)

    SCS's targeting algorithm is basically: pick the most vulnerable (but non-incapacitated) target in or near to melee range. If no-one is in range, kill incapacitated enemies. If there aren't any of those, pick the most vulnerable target and charge them. (There's different and simpler AI for genuinely unintelligent opponents.) So you can tank SCS up to a point but not with a melee DPS. (Of course, the idea of tank vs melee DPS doesn't really make sense here anyway for the most part, as BG2 features very few of the sort of attack-vs- defence tradeoffs that define it in WoW-style games.)

  • TvrtkoSvrdlarTvrtkoSvrdlar Member Posts: 353
    edited September 2014
    First of all, thanks for chiming in ;)

    Second, I both love and hate you for giving us SCS (its devilish AI really keeps me on my toes!).

    Third, I agree with you on all points, and as I mentioned in my original post, I usually play a 'tankless' party. I've been playing BG2 for years, and I much prefer it to WoW (which I only play for a month or so after a new xpac comes out).


    My Dwarven Defender, being a living slab of granite, really needs that one single taunting spell. I'm not looking for a full-fledged aggro/tanking system to replicate WoW, rather, I just want 1 ability that the DD can fire off when things get hairy - a sort of "Oh, shit!" button he can rely on if things get out of control (and yeah, I'm looking at you, SCS Siege of Ust Natha!).

    So the question still remains; is it possible to code a simple Taunt ability, and get it to work?

    If so, how would one go about doing that, and what script(s) would be needed?

    It can be as simple as this:

  • DavidWDavidW Member Posts: 729
    I don't think it could be done simply. If I were to code it I'd have a spell that set a certain variable on casting and unset it a round or two later, and then all the combat scripts would have a block telling the creature to attack the taunting creature if the variable were set. But that's pretty complicated to implement given how many scripts you'd have to edit.

    Alternatively, you could do it via some kind of charm effect (I think Demivrgvs at Gibberlings 3 played with something along these lines). But that would effectively force spellcasters into mêlée, block drinking of potions, etc.

    (In a WoW-type game, every creature maintains a threat table of all the PCs and it's easy for a Taunt power to work just by tweaking the threat table entry. But BG2 AI doesn't work anything like that.)

  • CerevantCerevant Member Posts: 2,311
    To expand upon some of the points @DavidW made:

    Each NPC potentially has its own AI. Some of them are shared, but to change the behavior of all NPCs you have to change all the NPC AI scripts, which is a big project. There is no base AI that I'm aware of, beyond some scripts that are shared among groups of NPCs. (For example there's SHOUT.BCS if I'm remembering correctly that is pretty widely used)

    Second, there is one huge difference between WOW and Infinity Engine that makes a huge difference in how you handle combat: obstruction. It is an important part of IE (and D&D) to take advantage of terrain and party formation to prevent thugs and thieves from getting to your squishies. (In WOW enemies pass through your front line as if it weren't there)

    This isn't perfect, and I think this is a good reason to have Attack of Opportunity as implemented in NWN: to discourage target changing in combat. Don't think IE has the guts to implement that option though.

  • TvrtkoSvrdlarTvrtkoSvrdlar Member Posts: 353
    edited September 2014

    Hmmm, editing masses of scripts does sound tricky, and very cumbersome.

    As for the charm effect, what exactly did you have in mind?

    And correct me if I'm wrong, but don't mind-affecting spells (Charm, Fear, Confusion, etc.) temporarily disable character scripting, ie., if an enemy gets hit with Fear, his/her script will stop until the Fear duration runs out, right? I don't know how scripting works, but I assume all character scripts are suspended while the character itself is running around like a headless chicken (Fear) or being controlled by the player (Charm).

    So, would it be possible to piggyback/attach a script snippet to a vanilla Fear/Charm/Confusion/whatever spell, only instead of it smacking the afflicted enemy with the aforementioned effect(s), it would actually order them to physically attack the caster for a couple of seconds? Or maybe none of that's necessary, and this Demivrgvs person you mentioned found a simpler way to get the desired effect (btw, do you know the name of his/her mod?).

    As for interrupting potion drinking and forcing mages into melee, I think that's more a feature than a bug, since the Taunt ability itself would only last for 5 or 6 seconds (and have a very small AoE around the Dwarven Defender). I like to think of it like a localized Fear spell (with a saving throw and all), only instead of scattering nearby hostiles, it tells them to attack the caster.

    Basically, I just need something that lets the DD gather up nearby melee enemies and force them to focus on him for a couple of seconds while the rest of the squishies reposition or cast defensive spells or whatever. The taunt is supposed to work as a short-term panic button, not a long-term disable. In an ideal scenario, the enemies would continue acting in accordance with their scripts the moment the Taunt effect ran out.

    Yeah, I know about WoW's lack of char clippping, I play the game on and off again (well, more off than on).

    The concept of aggro doesn't really mesh with BG2 and its combat system, but I'm just desperately looking for a way to make my Dwarven Defender somewhat useful. As it stands, he spends 80% of his time chasing after enemies who ignore him and make a beeline straight for the party's more vulnerable characters. I mean, the class itself is oriented around defense, and lacks the uber killing potential of sorcerers and barbarians, so when you see enemies completely ignoring the DD it kinda invalidates the entire premise. My favorite part is watching dragons circumventing the hammer-wielding dwarven maniac charging straight at them regardless of the fact that the nearest possible target (a lowly arrow-plinking halfling named Mazzy) is two full screens away.

    Even if you ignore how funny it looks, it's also unrealistic from a tactical perspective.

    SCS alleviates this somewhat, but even its uber AI isn't enough to solve the issue.

    Truth be told, I just wanna see my DD tanking the Siege of Ust Natha.

    It's an epic fight, and it deserves an epic hero at the forefront! :)

    Post edited by TvrtkoSvrdlar on
  • ZanathKariashiZanathKariashi Member Posts: 2,867
    edited October 2014
    It's not unheard of for 2nd edition.

    The Jester's song is actually supposed to make anyone who fails the save attack the jester no matter how tactically unsound it is. (Though enemies below 6 int or higher then 16 automatically make their saves, and if the enemy snaps out of it, it won't work on them twice, but they do have to continue attacking until they make a successful save...or jester dies or otherwise leaves their LOS)

    There's also a combat action anyone can attempt that tries to taunt a target into attacking them. It requires a charisma check (-6) to see if you can make a believable taunt, and then the enemies nearby get an int check to see if they fall for it, but again, enemies too dumb or too smart automatically save against it and it generally won't work twice unless the attempt is different enough from the previous one.

    And there's several spells with similar effects, mostly in illusion or enchantment.

    It's mostly just comes down to if someone is willing to set it up properly (a P&P accurate Jester song is on my to-do list, but it'll be awhile).

  • bob_vengbob_veng Member Posts: 2,266
    being able to force-aggro is like instant crowd control. the game rightly doesn't give you that luxury.

    many spells in the game are dedicated to crowd control, you should first use those to create a favorable strategic situation and only then tank.

    you can use the t-formation and rotate it toward the enemies to keep your front row (3 able defenders, which is generally recommended) able to engage in melee first. if you can avert negative statuses on your party (which you should be able to) there might not be a need to move around the battlefield at all. just let 'em come and rip them to pieces or shoot them with spells and missiles.

    if there are characters that you are unable to protect from ranged attacks, you can just move them away to a safe distance.

    thieves should never be targeted - they should hide, come in for a single blow, move away and repeat. (thieves need to move quickly via haste or be able to quickly go invisible several times in the course of a battle)
    mages are very tanky actually, they usually don't need to be guarded past a certain level (once you get stoneskin for example)
    clerics are pretty tanky too but they need to be able to cast their spells without interruption which is often a problem because of long casting times so they definitely need protecting

    all this makes the game much more interesting than a button for aggro.

  • TvrtkoSvrdlarTvrtkoSvrdlar Member Posts: 353
    edited October 2014

    It's mostly just comes down to if someone is willing to set it up properly (a P&P accurate Jester song is on my to-do list, but it'll be awhile).

    Do you know of a way to set this up so it actually works in BG2EE?

    I mean, theorecrafting is nice and all, but I'm not sure the engine even supports something like this.

    The jester song you're describing is basically a single-target version of the AoE Taunt I'm trying to make.

    From a technical standpoint, I'd love to hear how you're planning on setting everything up.

    I get what you're saying, but you're missing the point of this thread.

    I opened it because I'm looking for a non-scripting way to make an AoE Taunt ability.

    I've played through the BG series countless times, and nothing you've mentioned is new to me.

    Tactics are all fine and dandy, but this thread isn't about them, or party composition.

    It's about putting together what I laid out in the OP.

  • bob_vengbob_veng Member Posts: 2,266
    there were two parts to your post, one was about about scripting and the other was your opinion on the tactics in the game with some value judgements included ("the most egregious examples...")
    so i'm entitled to respond to either point of the opening post as that's where the subject of the thread is laid out. you can't retroactively interpret the OP to restrict modes of discussion that you don't appreciate for some reason.

  • TvrtkoSvrdlarTvrtkoSvrdlar Member Posts: 353
    edited October 2014
    You're entitled to post whatever the hell you want. You can talk about flying goldfish for all I care.

    However, going off on a tangent and rambling about combat tactics in a thread opened for the sole purpose of modding a new ability is, in my not so humble opinion... superfluous (and that's putting it politely). And that's saying nothing of the fact that you're forcefully addressing a minor point of the OP (tactics), which was mentioned only in passing, and in order to illustrate the underlying reason behind opening this thread.

    Add to all that the fact that your tone and 'advice' both hinge on the assumption that I have absolutely no idea what I'm doing when I'm playing the game itself, and one can easily come to the conclusion that your helpful advice is nothing more than cleverly obfuscated claptrap, the likes of which is available in a hundred other threads and on a dozen other boards (the contents of which are freely available to anyone who wishes to immerse themselves in theory-crafting, either by reading the guides or participating in forum dialogue).

    I don't need to learn to play the game, because I've already beaten it into submission long, long ago, and am able to easily run circles around it with closed eyes (honestly, anyone's who's not a drooling imbecile can figure out as much after plaything through the entire saga). Neither do I want/need useless advice about party composition and tactics, *especially* not in a thread whose exclusive purpose is the discussion of *modding* technicalities (about which you've contributed absolutely nothing). None of that, however, invalidates my desire to expand the game by adding a tiny modification to an otherwise uninteresting kit.

    In short, your comments not only failed to constructively add anything of note to the conversation, they also actively detracted from it.

    Ditto for your latest passive-aggressive response which I've no qualms about calling out.

    But carry on if you like; you're amusing enough.

  • subtledoctorsubtledoctor Member Posts: 11,379
    edited October 2014
    What about taking advantage of SCS' own mechanisms to screw it over?

    I know SCS acts intelligently about combat protections and resistances by adding checks for things like unused proficiencies. You'd have to investigate exactly what SCS does, but maybe you can spoof those markers to deceive SCS.

    If the 'taunt' ability makes party members appear to have Absolute Immunity active, or very high physical resistances, without really activating such defenses, and make the taunter appear to be vulnerable without actually making him so, maybe you could get the desired effect. (You'd have to be careful, it might lead to weird things like enemies casting Breach on your archer or thief.)

    Maybe combine that with 1-second invisibility for everyone but the taunter, to cause enemies to lose track of their targets and look for a new one.

  • bob_vengbob_veng Member Posts: 2,266

    Add to all that the fact that your tone and 'advice' both hinge on the assumption that I have absolutely no idea what I'm doing when I'm playing the game itself, ...

    i'll give you this. i got carried away with undue advice-giving. i disagree about the rest, but i'm willing to agree to disagree and bury the meta-discussion.

  • TvrtkoSvrdlarTvrtkoSvrdlar Member Posts: 353
  • vladpenvladpen Member Posts: 88
    In Planescape: Torment, Morte has an ability called "Litany of Curses" whose sole function is to hold aggro. How does it work?

Sign In or Register to comment.