Thread: Strange archery
View Single Post
  #16  
Old 11-25-2011, 10:41 AM
Goblin Wizard Goblin Wizard is offline
Approved Member
 
Join Date: Oct 2008
Posts: 508
Default

Some facts about arrow script:
(..\data\aix\weapon\inf.g1.archer.arrow.static\inf .g1.archer.arrow.static.aix)

Each soldier has 24 HP.

Types of arrow damage:
Code:
[*] = ;const DeadDamage = 24;
[*] = ;const HardDamage = 12;
[*] = ;const LiteDamage = 4;
An example of damage probability with western bow against unarmored target:
Code:
[*] = ;                  if Distance < 5 then
[*] = ;                  begin
[*] = ;                     if CubeRes <= 9 then HPDec := DeadDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 11 then HPDec := HardDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 12 then HPDec := LiteDamage;
[*] = ;                  end
Code:
[*] = ;                  if Distance < 45 then
[*] = ;                  begin
[*] = ;                     if CubeRes <= 3 then HPDec := DeadDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 6 then HPDec := HardDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 8 then HPDec := LiteDamage;
[*] = ;                  end
Code:
[*] = ;                  if Distance < 95 then
[*] = ;                  begin
[*] = ;                     if CubeRes <= 2 then HPDec := HardDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 4 then HPDec := LiteDamage;
[*] = ;                  end
Code:
[*] = ;                  if Distance < 100 then
[*] = ;                  begin
[*] = ;                     if CubeRes <= 2 then HPDec := LiteDamage;
[*] = ;                  end
As you noticed there is no chance to kill a soldier in one shot (no possibility of dealing DeadDamage) at long range. If distance is greater that 94 meters you need 6 successful hits to kill a soldier! Even at medium range like 45 meters chance of dealing DeadDamage is very low. And all of this is against unarmored target!

Some examples of crossbow damage (xbow against 0 armor):

Code:
[*] = ;                  if Distance < 5 then
[*] = ;                  begin
[*] = ;                     if CubeRes <= 10 then HPDec := DeadDamage
[*] = ;                     else
[*] = ;                     HPDec := HardDamage;
[*] = ;                  end
Code:
[*] = ;                  if Distance < 40 then
[*] = ;                  begin
[*] = ;                     if CubeRes <= 6 then HPDec := DeadDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 7 then HPDec := HardDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 9 then HPDec := LiteDamage;
[*] = ;                  end
Code:
[*] = ;                  if Distance < 100 then
[*] = ;                  begin
[*] = ;                     if CubeRes <= 3 then HPDec := DeadDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 4 then HPDec := HardDamage
[*] = ;                     else
[*] = ;                     if CubeRes <= 6 then HPDec := LiteDamage;
[*] = ;                  end
As you can see xbow is absolutely deadly at short range. Nearly every bolt kills. Of course at long range xbow is not so deadly but still has a chance of insta kill (unarmored target).
So If you don't like dev's archery system you can easily change it yourself.
Reply With Quote