Weapon Balancing Based On Gameplay Situations (Part Two)
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.
Â (This article is a repost from my personal blog at www.rationalgamedesign.com)
Hi and welcome to the second part of â€śWeapon Balancing based on on Gameplay Situationsâ€ť series. If you missed the first part you can find it here. (I also updated the resource list). In the last part I described that weapon balancing can be divided in eight single steps. The first step I took was to define my weapon system. The main questions were the restrictions I want to have in terms of number of weapons the player can carry and the way he will get new weapons and ammunition. The second step I described concerned my balancing goals, focusing on the domination of weapons and their different use for different situations. Letâ€™s continue with the third step.
Third Step: Define your weapons attributes
In this step I will define which properties my weapons should have. I this is one the most important steps, because it will determine the grad of realism and skills needed by the player to handle the weapons. It is also the base for all further balancing because if I donâ€™t know the attributes of my weapons I donâ€™t have any values I can balance.
The following list will describe the attributes I chose, what they mean for the gameplay and why I chose them. It is important to note that this list is based on a personal concept for a shooter which is set in a realistic scenario.
Damage per Projectile
This value defines how much Health points one projectile will subtract from the health of an enemy. This is a fix value. Youâ€™ll properly ask how different body parts will affect the end-damage. My Hit-zone-system is currently divided into different body zones and each body zone will automatically add a percental value of the current enemyâ€™s health to the damage. So if the player makes a heat shot hundred percent of the current health will be added to the damage, so that the enemy is dead. If the player hits the lower leg, only 15 percent of the current health will be added to the damage. So the overall damage is damage/per projectile + percental damage/body zone.
Rate of fire
How many projectiles/per minute. This value affects if the weapon is suitable in situations against larger groups of enemies because you can spread the damage, a weapon with a higher shoot frequency requests lower aiming skills and the less bullets per minute the more time the player will spend defenseless which makes it hard to use in situations where the player will be under attack. It also determines if a weapon is still useful despite a very low base damage.
Affects how many projectiles the weapon can shoot till the player needs to reload. The smaller the magazine capacity the more often the player is defenseless.
How many seconds a weapon needs to reload. This is important because it defines the time the player is defenseless and needs to take cover, start bunny hoping, changing the weapon, hide, run, etc.
This defines the speed of the projectile when it leaves the barrel. The higher the velocity the less skill is needed to successfully hit the enemy, because you donâ€™t need to project the current location of the enemy into the future based on his current movement speed.
Velocity loss per second
This defines if youâ€™re weapon has a ballistic flight path or if the bullet just flies straight. If you want to have an ultra-realistic weapon system you will have a velocity loss per second for every weapon to simulate friction. I personally think this only makes sense if you create games solely for people who have a solid sniper-training. If you want to have a bigger audience for you game only weapons like grenade launchers or throwing weapons in general should have a value above cero. These weapons will have the advantage that players can use them to attack enemies hiding behind cover.
Damage loss per second
This defines how much damage a projectile will lose over time. I know that this sounds like a very realistic approach which simulates that projectiles with less speed also deal less damage but the reason I chose this value is to have another tool at hand to make weapons like pistols stronger in close combat situations by giving them a high base damage but also a high damage-loss/per second but other weapons stronger over long-distance combats.
Area of effect
This determines if a single projectile deals damage over a larger area or not. The larger the area of effect (like explosions) the more effective is a weapon against groups of enemies and the less precise the player needs to aim to hit enemies. But is also makes a weapon inefficient in close combat situations if the player can deal damage to himself. (Bioshock took this feature and used it for weapon upgrades)
Bullets per shoot
This defines how many bullets the weapon will shoot simultaneously with one pull of the trigger. Besides increasing the damage per shoot, this value is important in combination with the spreading. (Shoot gun)
This value determines how strong a bullet will differ from the point the player will aim at. This value highly determines how useful a weapon will be over distance. A large spreading makes precise aiming at enemies nearly impossible but in combination with a large number of bullets per shoot it can be used against close moving enemies because the probability to miss them will be strongly decreased and it also allows to hit more enemies at once. Spreading can also be an exponential value. I also think that the spreading of a weapon should be feedbacked via the size of the aiming cross.
I called this value vigorous effect and what I mean is the physical reaction of the enemy when he is hit by the bullet. A weapon with a low vigorous effect will only cause a slight hurt animation and weapon with a strong effect will cause a large recoil or at least a stronger physical reaction. This value is especially important in large group combats because it allows the player to temporarily immobilize an enemy and focus on the next one.
How strong the aiming cross will move per shoot. This value can either be linear or exponential. It is one the attributes which will determine how much skill the player needs to handle the weapon because he needs to readjust his aiming. Because my concept focuses mainly on a single player game this value shouldnâ€™t be too high for a single weapon. My goal is that the player chooses a weapon because it is the most effective one for the situation and not because it can be easily handled.
I also have some special attributes like the ability to zoom with a weapon, penetrating bullets or the sound intensity.
There are also some values I did not choose for my list.
My weapons have no different weight and do affect the movement speed of the avatar. I know that it would be realistic but I donâ€™t think that movement should be part of the balancing. My aim is that the movement of the avatar feels responsive and has a good pacing and I feel that constant speed is important to keep the player in the flow. I donâ€™t want to use it to balance my weapons. Itâ€™s hard enough to create a good pacing without this additional burden.
My weapons have no ammunition cap so the player can collect as much ammunition for a weapon as he likes. This has two reasons. I think ammunition is an important short-term reward and is provided when the player overcomes a challenge. If you cannot collect the ammunition you have no reward, but rewards are what keeps us going. The second reason is that I donâ€™t want to force the player to use a different weapon because he is out of ammo which maybe is not effective for the current gameplay situation.
I also donâ€™t include responsiveness into my balancing values which means the time between the playerâ€™s input and the shot. The reason for this is the same as the reason I didnâ€™t include weight. If the responsiveness of a weapon is bad, it doesnâ€™t matter how useful it might be on paper in special situations, it will just be no fun to use it. So my aim is that each weapon is responsive and the time between input and reaction should be as low as possible.
As you can see this list only contains very basic values. This is caused by the setting which determines the borders of realism I can move within with my design. If the game would take place in more fictional setting I could add a lot of properties like damage over time, stun or maybe the ability to draw health from enemies. All this would add a variety to the gameplay and the possibility to make the weapons more different so they would be more useful in special situations but I would destroy the suspense of disbelief.
In the next step I will set up a system to classify our gameplay situations but this will be part of the next article.
I would like to hear your opinion on these attributes. Do you think I missed any important values or are some values unnecessary? Do agree with the impact each value has on the gameplay or do you think there are more or less situations where an attribute plays an important role. I would also be interested in your experience. Did you use different attributes in your games? I hope you liked the second part of this series If not feel free to say what you dislike and if you did, I am always happy for some friendly words.