If you haven't tried Drug Wars, I highly suggest you try it out. I have logged more hours than I care to admit, lol. It is definately a fun/addicting game. If you are not playing yet, you are missing out ;)
One of the bigger challenges to the game is that there is a bit of a learning curve. In my last post, I created a Beginners Game Guide to help players with the process of getting started in the game. If you haven't read that yet and you are still learning the basics of the game, I suggest starting there.
In this post, I will expand on that guide with an intermediate guide on the battle process. Battles are one area that have confused a lot of players, but thanks to some info and tools from the @drugwars team - it is now possible to understand.
Disclaimer: This guide is written to the best of my ability based on my understanding of the source code, but I cannot guarantee it is error free. Also, the game mechanics are subject to change at any time, so there is no guarantee that battles will always continue to work in the way described by this guide.
[EDIT] With all of the changes that have been made to the battle system, there are parts of this guide that are out of date, and there are many parts of the new battle system that are not covered.
The first thing to understand with battles, is that the units attack and defend in a certain order. The order is based on the priority value from the units.json file. The current order (updated as of 3/11/2019) is: rowdy, bouncer, knifer, big_mama, ninja, gunman, sniper, hitman, bazooka, mercenary.
The next thing to understand is that units of a certain type are all grouped together. In other words, if you attack with 5 rowdy units and 6 bouncer units, your 5 rowdy units are in one group, and your 6 bouncer units are in a second group.
The amount of damage that a group does is the attack value for the unit type, times the amount of units in the group. Continuing with the same example, a rowdy does 2 damage, so if you have 5 rowdy units, then that group does 2 * 5 = 10 damage.
Another thing that confuses a lot of people is that when you attack, the units on both sides will deal attacking damage to each other. (The attacker's units deal damage to the defender's units, and the defender's units deal damage to the attacker's units.)
The attacks take place in rounds. In each round, damage is dealt from both sides groups to the other side's groups. If there are surviving units on both sides, then the process repeats with another round. This continues until either:
(This is probably the hardest part of battles to understand.)
In each round, the game pairs the attacking groups with the defending groups to assign damage. The main key to understand here is that all of the units in one group will attack together, and they can only attack one of the opposing team's groups per round.
When pairing the groups, it assigns the pairs in the order above (rowdy units are paired first, mercenary units are paired last). The defending group that the attacking group is paired to is also assigned using the order above (defending rowdy units are picked first, defending mercenary units are picked last).
If the attacking side has more groups than the defending side, then the order starts over at the beginning after it passes the end.
After the attacking groups are assigned to the defending groups to assign damage, then the defending groups are assigned to the attacking groups to assign damage back. Note: A unit group from the defending side may not be paired to deal damage to the same unit group that it is receiving damage from.
I assume most people are confused at this point :) Let's try an example.
rowdy:1, bouncer:5, knifer:1.bouncer:1, sniper:1.Does that make sense? If not, it may be good to play around with the simulator for a bit so you can see how it plays out in a few different scenarios.
After the pairs are assigned, each group deals damage to the opposing group that it is assigned to. The damage is applied to the defense value of the units in the group. If the damage value equals or exceeds the defense value of the units in the group, then all of the units in the group will die. If the damage value is less than the defensevalue of the units in the group, then it will only kill enough units in the group to use up all the damage.
Example: If a group of 10 rowdy units (2 defense each) is receiving 15 damage, then only 7 of the 10 rowdy units will die.
After the round is complete, then it will check to see if all of the units on either side have died.
If the attacker won, then they will loot the defending player. As described in the beginners guide, the attacker can loot any resources above the defending player's "safe" amounts.
Only the units that survive the battle can carry loot home. Each unit will be able to carry X amount of drugs, X amount of alcohol, and X amount of weapons - where X is the carrying capacity of the unit.
A lot of players have struggled to find evenly matched opponents using the "Find Targets" feature in the game. A good way to find additional opponents that are not listed there is to use the "Transfer Search" on https://steemworld.org/ to see who the @drugwars account is transferring tokens to, or look for the same data on https://steemdb.com/@drugwars/transfers.
I hope this helps players who have been confused by the battle process. If it is still confusing to you, I suggest you try a few battles out on the simulator to see what happens under different scenarios.
Good luck, and have fun!
https://drugwars.io