Sil Combat

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • half
    Knight
    • Jan 2009
    • 910

    Sil Combat

    Hi all,

    In reference to the recent thinking about changing the combat system in (v4), I thought I'd explain the combat system in Sil. I am very happy with it, and think that it simultaneously adds interest and adds elegance compared with the V system.


    Each attack you make has two stages:

    1. Roll to see whether you hit your target.
    2. If you hit, then roll to see how much damage you do.

    Weapons and Armour

    Weapons and armour have a few numbers displayed next to their names which explain how they relate to these two phases of an attack. Take an axe for example:

    Battle axe (-3,3d4)

    This battle axe provides a penalty of –3 to accuracy, and if it hits it does 3d4 points of damage. Armour is quite similar:

    Leather armour [-1,1d4]

    This suit of leather armour has a penalty of –1 to evasion, making you slightly easier to strike than if you were unarmoured. However, it also offers some protection, absorbing 1d4 points of damage each time you are struck. These are very simple examples and sometimes it can be more complex. For example:

    Greatsword (-2,3d5) [+1]
    Mail corslet (-1) [-3,2d4]

    This greatsword offers a +1 bonus to evasion, making you slightly harder to strike. This represents your ability to parry with it. On the other hand, the mail corslet is sufficiently cumbersome that it gives a penalty to accuracy as well as a penalty to evasion. You can work out which numbers apply to offense and which apply to defence as follows:

     Offense comes first and is in round brackets.
     Defence comes second and is in square brackets.

    Attacking

    To determine whether an attack hits, the attacker makes an attack roll and the defender makes a evasion roll. If the attack roll is greater, then the attack hits.

    Attack roll: Attacker’s melee score + 1d20
    Evasion roll: Defender’s evasion score + 1d20

    The melee and evasion scores are the associated skills combined with a number of modifiers. Firstly, as noted above, the skills are affected by your weapons and armour. They can also be affected by other things, such as being stunned (which gives –2 to all your skills including both melee and evasion), being overwhelmed, and various special abilities. The penalty for being overwhelmed only affects evasion. The size of the penalty depends upon how many monsters are surrounding you, and on where they are relative to the monster who is currently attacking. You get a –2 penalty for each monster that is in one of the three sides furthest away from the attacking monster, and a –1 penalty for any other adjacent monsters. This is a severe penalty, and even weak monsters can become deadly when they surround you. As there is only one of you, monsters will never suffer this penalty.

    Finally, the melee score is halved if the attacker cannot see the defender and the evasion score is likewise halved if the defender cannot see the attacker. Opponents that are unwary count as not being able to see you for these purposes. If you are unfortunate enough to be fighting from within a pit or a web, both your evasion and melee scores are halved (again). If someone is completely unable to move (i.e. an enemy is asleep or the player is entranced) then their evasion score is set to –5 irrespective of any other relevant modifiers.

    Doing Damage

    To determine how much damage is dealt when an attack hits, the attacker makes a damage roll and the defender makes a protection roll. If the damage roll is smaller or equal, the attack does no damage. If it is greater, it does one point of damage for each point of difference between the rolls.

    In simple cases, the damage roll is just the damage of the weapon, and the protection roll is the sum of the protection rolls for every piece of armour being worn. However, there are often modifiers on the weapon damage. Some of these affect the number of dice that are rolled, while others affect how many sides these dice have.

    For each point of strength the attacker has, a side is added to the dice. For example, if you have strength 3 and are wielding the axe mentioned earlier, you would do 3d7 damage instead of the basic 3d4. This strength bonus is limited by the weight of the weapon. For one-handed weapons it is limited to 1 point of bonus damage for each 1 lb of weapon weight. For two-handed weapons, it is limited to 1 point of bonus for each 1.5 lb of weapon weight. For example, no matter what strength you have, you couldn’t get more than 3 bonus sides with a 3 lb longsword, or more than 4 bonus sides with a 7 lb greatsword (since greatswords are two-handed). High strength characters will want to use heavier weapons (to take advantage of their strength) and weapons with many dice (to take advantage of the extra sides). Note that negative strength subtracts sides of damage up to the same strength limit based on weapon weight.

    Some weapons are ‘hand-and-a-half’ weapons, which can be used one-handed or two-handed. If you are not wearing a shield, you are presumed to be wielding these weapons two-handed and are given a bonus 2 damage sides. To continue the example above, let’s suppose that the battle axe is being used with two hands, giving it a total damage of 3d9.

    Extra damage dice are added in two ways. Some weapons are especially deadly against certain enemies. In such cases, they do an extra die of damage. For example, if the axe above is an axe of orc-slaying and is being used against an orc, it will do 4d9 damage instead of 3d9. Elemental brands (such as fire brand or frost brand) are similar, doing an extra die of damage against enemies that do not resist the element and 2 extra dice against enemies that are explicitly vulnerable to it (such as fire damage against a frost demon).

    It is also possible to get extra dice via critical hits. These are awarded when the attack roll exceeds the evasion roll by a particularly large amount. This amount is determined by the weight of the weapon, with lighter weapons more likely to produce critical hits, due to their easier handling.

    To get a critical hit, you need to beat the evasion roll by a certain amount. This amount is 7 points plus one point per pound of weight of your weapon. You are granted a bonus damage die for every multiple of this amount by which you exceed the required score. For example, if wielding a 3 lb longsword, you would need to beat the evasion score by 10 points to get the first bonus die, by 20 points for the second die, 30 points for the third, and so on. This sounds very difficult, but characters who concentrate on accuracy can get very large critical hits, particularly on sleeping or unwary monsters. Of course, monsters can also get critical hits upon you if you are too poor at evasion. You don’t need to memorize this formula; just bear in mind that high accuracy and light weapons can sometimes do a lot of extra damage.

    In summary, the weapon damage can gain extra sides from strength or from two-handed wielding, and extra dice from ‘slays’ and critical hits.

    Archery

    Archery is very similar to melee, but with a few differences. Firstly, the attack roll uses the archery skill instead of the melee skill. To this is added the attack bonus of the arrow being fired, and a range penalty of –1 for every 5 squares the target is from the archer. In addition, the defender’s evasion score is halved against archery (this can stack with the halvings mentioned above). This makes evasion considerably less useful against archery than against melee.

    Damage is calculated almost identically to melee, incorporating strength, ‘slays’ and critical hits. The strength bonus of bows is again limited to 1 point per 1 lb of weapon weight.

    The range of a bow is equal to 1.5 times the number of sides of damage you do with it. Thus, if you are doing 1d10 with your Longbow, its range will be 15 square.

    Finally, it is very dangerous to use your bow when there are enemies in melee range. Firing your bow in such a circumstance will let your guard down, allowing all adjacent enemies to make a free attack on you.

    Thrown weapons

    Throwing is like melee, but with a few differences. Firstly, many items are not designed to be thrown and they thus give a penalty of –5 to the attack roll when thrown. The items that are designed to be thrown include daggers, throwing axes, spears and tridents. All throwing attacks also suffer a range penalty of –1 for every 5 squares.

    Damage is like melee, except that the limit on the strength bonus is 1 point per 0.5 lbs of weapon weight. The number of damage sides is also halved if the object was not designed for throwing. Thus, even if you can hit with a thrown longsword, it will do a lot less damage than in melee.

    The range is calculated from the weight of the object and your carrying capacity (which in turn depends on your strength).

    Range: carrying capacity / (5 × (weight + 2))

    For example, if you can carry 100 lb and are throwing a spear weighing 4 lb, then your range is 100 / (5 × (4 + 2)) = 3.333 = 3 squares. While the range is tricky to calculate, all throwing weapons display it when examined (the ‘x’ command).
  • LostTemplar
    Knight
    • Aug 2009
    • 670

    #2
    It is good if it is balanced, It is probably impossible to expand such a combat system to wide range of monster / character powers, Angband uses. But for 20 level game it seems nice.

    Comment

    • half
      Knight
      • Jan 2009
      • 910

      #3
      Originally posted by LostTemplar
      It is good if it is balanced, It is probably impossible to expand such a combat system to wide range of monster / character powers, Angband uses. But for 20 level game it seems nice.
      I actually think it is relatively easy to balance, even for a longer game, since if you add +1,000 to your evasion and +1,000 to their melee skill, then almost nothing changes (the exception is when you halve evasion and I'd recommend using a different type of penalty in these cases for longer games).

      Angband uses HP to balance combat (add HP to a monster if it should take longer to kill it, add HP to player if they need to be able to survive longer), whereas Sil doesn't change the player or monster HP much at all during the game. If you start with 28 HP, you will quite likely end with 28 HP, and yet the combat stays balanced.

      Of course it is a lot of work to change the stats of 600 monsters, and all items etc when changing a combat system, but quite a bit of it can be done via spreadsheets (this is what we did) and it can indeed be best to change several systems simultaneously to avoid spreading the pain. I doubt there would be much interest in using Sil combat in V (at least without modification), but thought I'd show how it *can* be done.

      Comment

      • Scatha
        Swordsman
        • Jan 2012
        • 414

        #4
        Originally posted by half
        I actually think it is relatively easy to balance, even for a longer game, since if you add +1,000 to your evasion and +1,000 to their melee skill, then almost nothing changes (the exception is when you halve evasion and I'd recommend using a different type of penalty in these cases for longer games).
        There is some truth in this, but I think it overstates the case slightly, as it requires you to have a good control over the player's melee and evasion scores. If the player has an evasion score of around 20, a range of 20% of this for different characters isn't a big deal; if the evasion score is around 100, a range of 20% could mean the difference between being hit half the time and never being hit (with the opposed d20s).

        In Sil, costs to get a skill to a certain level increase quadratically with that level. It turns out that this isn't a very tight control over the player's skills for the end game, and in early versions we did have some balance problems with this. We've been able to address those without changing the basic structure of the system (the halving melee and evasion in certain circumstances is part of that), but I wouldn't expect these fixes to scale to a 100 level game.

        That said, there are some approaches you could use to adapt such a system while keeping control. If anyone wants to do this, I'd suggest one or more of the following:

        (- First, note that the relevant spread isn't the number of levels, but the difference in monster melee/evasion between monsters at the shallowest and deepest levels. In Sil, we aimed for these two numbers to be the same, but this needn't be the case.)

        - Having the costs to increase skills to certain levels go up exponentially rather than quadratically would give a lot more control in a long game over how high players would get these skills. I'd suggest a relatively small base for the exponential, so you did still have variation between characters. Perhaps something like 1.1 or 1.2. (You would want to similarly have the amount of experience available go up exponentially with levels.) This is ultimately less aesthetically pleasing than the triangular numbers we have in Sil, and we didn't need such a radical tool, but it should be fairly robust. This is the main approach I'd recommend for a long game trying to use the same basic approach.

        - As a 'failsafe', one might replace the d20 rolls by some random number process with a longer tail (but with the most likely values spanning a similar range; perhaps a geometric distribution?). This would stop characters reaching total ineffectualness, or (worse) invulnerability. It would make characters less closely tied to a level of monster that it was sensible for them to fight (without it, there would be monsters which would be completely trivial regardless of numbers and ones which would be impossible even when on 1 health; it may depend on the game as to whether you regard this as a good or a bad thing).

        Comment

        • Narvius
          Knight
          • Dec 2007
          • 589

          #5
          I think this is basically the reason why D&D has autosuccess on natural 20 rolls. Especially with neverchanging HP any character could get overwhelmed by big numbers due to this.
          If you can convincingly pretend you're crazy, you probably are.

          Comment

          • LostTemplar
            Knight
            • Aug 2009
            • 670

            #6
            This
            I actually think it is relatively easy to balance, even for a longer game, since if you add +1,000 to your evasion and +1,000 to their melee skill, then almost nothing changes
            is the problem actually, it will not be +1000 to all rolls, it will be something in the interval 0 -- 1000 to all rolls, since player can fight any monster, he wants to fight, not only the same level. You cannot balance it, sice if values grows, you have to simmetrically increase the dice, otherwise it breaks (e.g. you allways hit against half of monster types and allways miss another half). It is well known that fixed dice combat systems (e.g. D&D system) are degraded at high scales. E.g. in D&D high lvl warrior allways hit any target, since otherwise this target have to be completely invulnerable to anything but warrior, which is unacceptable.

            Your rolls must be changed to something like 1d20 < 10*(evasion / skill) for angband - like scaling capability. However I dont propose any cnage for your game. I write this just in case, somebody will want something like this for Angband variant.

            Comment

            • half
              Knight
              • Jan 2009
              • 910

              #7
              Originally posted by LostTemplar
              since player can fight any monster, he wants to fight, not only the same level.
              This is interesting, but I'm not sure that it is quite right. In Sil, monsters are generated from a mini binomial distribution, where they can be up to 2 levels deeper than normal or 2 levels shallower, so the problem doesn't quite come up. This is different in Angband, but then is it a problem that people could trivially beat a creature native to a shallow level when they are at a deep level? Can't they already?

              The problems that Scatha mentions arise particularly if we want to say that one kind of creature has 75% of the evasion of another. This will eventually lead to trouble, but if you instead say that it has four less evasion it doesn't. The bigger problem (as he alluded to) is controlling the *character's* skills, as melee scores of top characters won't be all within 10 points of each other, and this would be more extreme in a 100 level game without exponential experience.

              That said, in my opinion Angband isn't really a 100 level game anyway, anymore than it would be a 1,000 level game if someone just decided that Morgoth was native to level 1,000. I'm not really sure how to compare the length of game between the two. One could use real time, or could look at the number of times one goes from having a 10% survival chance against monster A to a 90% chance against it and a 10% chance against monster B, then a 90% chance against monster B and a 10% chance against monster C etc (like ELO ratings in chess). Maybe there are other, better, ways.

              Comment

              • half
                Knight
                • Jan 2009
                • 910

                #8
                Originally posted by LostTemplar
                Your rolls must be changed to something like 1d20 < 10*(evasion / skill) for angband - like scaling capability. However I dont propose any cnage for your game. I write this just in case, somebody will want something like this for Angband variant.
                That is indeed an interesting approach, and I like your D&D example. Indeed one problem (at least in earlier versions of D&D) is that high level warriors hit each other all the time, since attack bonuses increase with level and equipment and defence only increases with equipment. I think this was just an oversight in D&D. It is quite easy to allow defence to increase with level (whether you use a single factor defence like AC or a two factor one like in Sil), and to my mind it seems to lead to better gameplay.

                Comment

                • Narvius
                  Knight
                  • Dec 2007
                  • 589

                  #9
                  D&D has increasing HP instead of increasing defence. Which kind of acts similarly.
                  If you can convincingly pretend you're crazy, you probably are.

                  Comment

                  • LostTemplar
                    Knight
                    • Aug 2009
                    • 670

                    #10
                    D&D has increasing HP instead of increasing defence. Which kind of acts similarly.
                    No, it is not the same. Just the fact, that fighters hit each other every time is bad, it means, that all this to-hit rolls are basically useless at high levels. This is not too bad, but definitely a design flaw.

                    Comment

                    • Magnate
                      Angband Devteam member
                      • May 2007
                      • 5110

                      #11
                      Originally posted by half
                      Of course it is a lot of work to change the stats of 600 monsters, and all items etc when changing a combat system, but quite a bit of it can be done via spreadsheets (this is what we did) and it can indeed be best to change several systems simultaneously to avoid spreading the pain. I doubt there would be much interest in using Sil combat in V (at least without modification), but thought I'd show how it *can* be done.
                      Your system is not a million miles from the one Derakon introduced to v4: we use only one die roll in each case, since evasion and absorption are constant, but the concepts are identical. (We have so far only introduced these concepts for attacks by the player - monster melee attacks are as yet unchanged.)

                      Would you be willing to share your spreadsheets? Or, better still, the script you used to create them from monster.txt? I'm assuming you didn't enter all 600 monsters by hand!

                      I think I'm a bit confused by the lack of hp scaling. I had assumed that if we ever did this in v4, the basic figure of 28hp (or wound points, or whatever we'd want to call real physical damage) would be supplemented by a higher figure of fatigue points (or whatever you want to call the quantity which is eroded by physical combat). You don't seem to have introduced a second figure, so does this mean that you've been careful that monsters can't exceed certain damage caps, or that one-hit kills are likely to be more common in Sil? I noticed that you limited OODness to +/- 2 levels, which will help. But even then, a lightly armoured character must surely be in great danger of being one-shotted later on in the game?
                      "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                      Comment

                      • Scatha
                        Swordsman
                        • Jan 2012
                        • 414

                        #12
                        Originally posted by Magnate
                        Would you be willing to share your spreadsheets? Or, better still, the script you used to create them from monster.txt? I'm assuming you didn't enter all 600 monsters by hand!
                        I can certainly share the spreadsheets I have, though they're a little messy. But the key component was a function which takes in attacker's and defender's stats, and outputs average damage/round (we used this to balance different types of base weapon against each other as well as monster attacks). As the combat system in v4 is different, this function would also be different, but presumably not too hard to write.

                        Entering the monster values was semi-automated; half sent me a monster spoiler document (which I think may have been generated by the game?) which was not spreadsheet-readable, but not so far off. Sil has less than a hundred monsters, so this wasn't too bad to do by hand; you could presumably change the output format for the spoiler file slightly to make it easier to put straight into a spreadsheet, though. What we did do by hand was rank monsters by roughly how much of a threat they should represent against different character archetypes, so we had something to aim at when tweaking their stats.

                        I think I'm a bit confused by the lack of hp scaling. I had assumed that if we ever did this in v4, the basic figure of 28hp (or wound points, or whatever we'd want to call real physical damage) would be supplemented by a higher figure of fatigue points (or whatever you want to call the quantity which is eroded by physical combat). You don't seem to have introduced a second figure, so does this mean that you've been careful that monsters can't exceed certain damage caps, or that one-hit kills are likely to be more common in Sil? I noticed that you limited OODness to +/- 2 levels, which will help. But even then, a lightly armoured character must surely be in great danger of being one-shotted later on in the game?
                        As you observe, Sil doesn't have any kind of fatigue points or similar. (I do think this leads to a couple of odd effects which you might try to correct if being more simulationist, such as being able to fight against hordes of foes indefinitely without getting tired, or able to heal what are presumably large physical wounds by resting a little in the dungeon.)

                        I don't think the lack of scaling of some form of health is really a problem, though. Rather, monster damage needn't increase that much with depth, since increasing their melee is already enough. As it happens, we do increase monster damage somewhat with depth, so that early on a hard-hitting enemy might be an orc warrior, doing 3d7 with a battle axe. A great dragon, on the other hand, can claw for 3d13 damage or bite for 2d23. Flavourwise, this is clear: the increase represents not that the dragon is better at fighting (that's covered by melee), but that the dragon is bigger and hits harder. Mechanically, this is a modest increase in damage, which counteracts the fact that players are likely to have better armour later in the game, and also on average perhaps slightly higher Constitution (which will mean increased health, just not by very much). There is a theoretical small risk of one hit kills in the late game, as opposed to very little in the early game where the enemies are smaller (I think the first ones which might viably do this are giants), but in practice I'm not sure we've ever had it happen despite fairly extensive playtesting. So I guess that roughly speaking it is true that monsters don't exceed certain damage caps.

                        Two exceptions in Sil:
                        - Dragon fire from the older dragons is very dangerous, and might well kill players without at least one source of fire resist.
                        - Humans are quite a lot more fragile (lower Constitution) than the other races. So far I don't think we've got any past the mid-game, and it's possible there would be some unfair deaths later on. Still, they are meant to be a challenge race, and Sil is a relatively short game, so I'm not too concerned about this at the moment.

                        Comment

                        • Magnate
                          Angband Devteam member
                          • May 2007
                          • 5110

                          #13
                          Thanks for the detailed response - I had of course forgotten how much you have changed monster stats. I was still thinking in terms of greater titans doing 4x 12d12 damage - but 3d13 and 2d23 are much more sensible numbers.

                          I don't have any problem per se with not scaling hp - I was just very interested to see how you'd made it work.

                          You are right that the monster spoiler can be generated in-game (either via debug mode (ctrl-a) or the death menu), and yes it is fairly easy to automate it. Fizzix has been doing some spreadsheet work on estimated damage outputs for different classes at different clevs, so we're using roughly the same methodology.

                          Time to stop surfing and give it a play ...
                          "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                          Comment

                          • Scatha
                            Swordsman
                            • Jan 2012
                            • 414

                            #14
                            One goal in balancing the combat in Sil was to give interesting choices between the different weapons and armour.

                            For instance, heavier armour gives more protection but penalties to melee/evasion. We used to have it such that you'd normally exchange a skill point for an increase of 1 in the average protection. It wasn't clear which was better, so it wasn't clear whether light or heavy armour was better.

                            However we later realised that as it is often more effective to specialise in a strategy (evasion/protection), most characters would prefer one of the armour types at the extremes. We thought that this was bad: there should be characters whose preferred armour is a mail corslet, etc. So we changed so that you get diminishing returns when upgrading to heavier armour types. Almost everyone now wants to have leather armour rather than a robe, many prefer studded leather, but only protection specialists would prefer a long corslet to a corslet. I'm not sure which is typically the best of the regular types of armour (would be interested to hear opinions).

                            We used the spreadsheets mentioned above to check that we were creating similar kinds of choices with the weapons, and also that the best weapons with increasing strength got appropriately better.

                            Comment

                            • Fendell Orcbane
                              Swordsman
                              • Apr 2010
                              • 460

                              #15
                              Originally posted by Scatha
                              One goal in balancing the combat in Sil was to give interesting choices between the different weapons and armour.

                              For instance, heavier armour gives more protection but penalties to melee/evasion. We used to have it such that you'd normally exchange a skill point for an increase of 1 in the average protection. It wasn't clear which was better, so it wasn't clear whether light or heavy armour was better.

                              However we later realised that as it is often more effective to specialise in a strategy (evasion/protection), most characters would prefer one of the armour types at the extremes. We thought that this was bad: there should be characters whose preferred armour is a mail corslet, etc. So we changed so that you get diminishing returns when upgrading to heavier armour types. Almost everyone now wants to have leather armour rather than a robe, many prefer studded leather, but only protection specialists would prefer a long corslet to a corslet. I'm not sure which is typically the best of the regular types of armour (would be interested to hear opinions).

                              We used the spreadsheets mentioned above to check that we were creating similar kinds of choices with the weapons, and also that the best weapons with increasing strength got appropriately better.
                              In my opinion I think that leather or studded leather is the best, why? Because you can avoid blows by things like giants and you don't have melee penalties so you are more likely to hit. But then again I'm more of the stealth type of player
                              so what works for me might not work for another type of player.

                              Comment

                              Working...
                              😀
                              😂
                              🥰
                              😘
                              🤢
                              😎
                              😞
                              😡
                              👍
                              👎