1
0
forked from mirrors/0ad

[gameplay] Tweak Ranged spreads, reduce archer spread, tweak cosmetic stats.

The major change here is that Archer spread is reduced to 2 to make them
have much better aim than before at max-range, where they often missed.
This makes their DPS more predictable over their range.

This makes ranged unit's spread proportional between citizen soldiers,
advanced/elite CS, champions and heroes.

Because of the spread reduction and because promotion more strongly
reduces spread, the 10% spread reduction from the archery tradition
technology is removed.

Gravity values are tweaked.
LaunchPoint values are raised and standardised by unit type.

Patch By: Nescio
Differential Revision: https://code.wildfiregames.com/D3374
This was SVN commit r24709.
This commit is contained in:
wraitii
2021-01-19 19:15:06 +00:00
parent 9d82ae15af
commit 4a2cc3273e
31 changed files with 74 additions and 61 deletions
@@ -20,10 +20,9 @@
"requirementsTooltip": "Unlocked in Village Phase.",
"icon": "archery_tradition.png",
"researchTime": 60,
"tooltip": "Archers 10% training time, +10 attack range, and 10% ranged attack spread.",
"tooltip": "Archers 10% training time and +10 attack range.",
"modifications": [
{ "value": "Attack/Ranged/MaxRange", "add": 10 },
{ "value": "Attack/Ranged/Spread", "multiply": 0.9 },
{ "value": "Cost/BuildTime", "multiply": 0.9 },
{ "value": "Vision/Range", "add": 8 }
],
@@ -1,13 +1,13 @@
{
"autoResearch": true,
"icon": "upgrade_advanced.png",
"tooltip": "Advanced and Elite units +20% training time, +25% health, +0.7 capture attack strength, +20% loot, and 30% gather speed; Healers +5 healing strength and +3 healing range; Melee units +1 resistance and +20% attack damage; Ranged units 10% spread.",
"tooltip": "Advanced and Elite units +20% training time, +25% health, +0.7 capture attack strength, +20% loot, and 30% gather speed; Healers +5 healing strength and +3 healing range; Melee units +1 resistance and +20% attack damage; Ranged units 20% spread.",
"modifications": [
{ "value": "Attack/Capture/Capture", "add": 0.7 },
{ "value": "Attack/Melee/Damage/Hack", "multiply": 1.2, "affects": "Melee" },
{ "value": "Attack/Melee/Damage/Pierce", "multiply": 1.2, "affects": "Melee" },
{ "value": "Attack/Melee/Damage/Crush", "multiply": 1.2, "affects": "Melee" },
{ "value": "Attack/Ranged/Spread", "multiply": 0.9, "affects": "Ranged" },
{ "value": "Attack/Ranged/Spread", "multiply": 0.8, "affects": "Ranged" },
{ "value": "Cost/BuildTime", "multiply": 1.2 },
{ "value": "Health/Max", "multiply": 1.25 },
{ "value": "Heal/Range", "add": 3, "affects": "Healer" },
@@ -1,13 +1,13 @@
{
"autoResearch": true,
"icon": "upgrade_elite.png",
"tooltip": "Elite units +20% training time, +25% health, +0.8 capture attack strength, +20% loot, and 30% gather speed; Healers +5 healing strength and +3 healing range; Melee units +1 resistance and +20% attack damage; Ranged units 10% spread.",
"tooltip": "Elite units +20% training time, +25% health, +0.8 capture attack strength, +20% loot, and 30% gather speed; Healers +5 healing strength and +3 healing range; Melee units +1 resistance and +20% attack damage; Ranged units 20% spread.",
"modifications": [
{ "value": "Attack/Capture/Capture", "add": 0.8 },
{ "value": "Attack/Melee/Damage/Hack", "multiply": 1.2, "affects": "Melee" },
{ "value": "Attack/Melee/Damage/Pierce", "multiply": 1.2, "affects": "Melee" },
{ "value": "Attack/Melee/Damage/Crush", "multiply": 1.2, "affects": "Melee" },
{ "value": "Attack/Ranged/Spread", "multiply": 0.9, "affects": "Ranged" },
{ "value": "Attack/Ranged/Spread", "multiply": 0.8, "affects": "Ranged" },
{ "value": "Cost/BuildTime", "multiply": 1.2 },
{ "value": "Health/Max", "multiply": 1.25 },
{ "value": "Heal/Range", "add": 3, "affects": "Healer" },
@@ -16,7 +16,7 @@
<Projectile>
<Speed>100.0</Speed>
<Spread>1.5</Spread>
<Gravity>9.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -22,7 +22,7 @@
<Projectile>
<Speed>100.0</Speed>
<Spread>1.5</Spread>
<Gravity>9.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -16,7 +16,7 @@
<Projectile>
<Speed>100.0</Speed>
<Spread>1.5</Spread>
<Gravity>39.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -16,7 +16,7 @@
<Projectile>
<Speed>100.0</Speed>
<Spread>1.5</Spread>
<Gravity>39.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -16,7 +16,7 @@
<Projectile>
<Speed>100.0</Speed>
<Spread>1.5</Spread>
<Gravity>9.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -15,10 +15,10 @@
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Gravity>39.81</Gravity>
<Spread>3.0</Spread>
<Spread>2.0</Spread>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -14,11 +14,11 @@
<RepeatTime>1250</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>70</Speed>
<Gravity>39.81</Gravity>
<Speed>70.0</Speed>
<Spread>4.0</Spread>
<Gravity>35.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -15,10 +15,10 @@
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Spread>1.0</Spread>
<Gravity>39.81</Gravity>
<Spread>0.8</Spread>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -14,11 +14,11 @@
<RepeatTime>1250</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>70</Speed>
<Spread>1.0</Spread>
<Gravity>39.81</Gravity>
<Speed>70.0</Speed>
<Spread>1.6</Spread>
<Gravity>35.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -15,8 +15,8 @@
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Spread>1.0</Spread>
<Gravity>39.81</Gravity>
<Spread>0.8</Spread>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -14,9 +14,9 @@
<RepeatTime>1000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>70</Speed>
<Spread>1.0</Spread>
<Gravity>39.81</Gravity>
<Speed>70.0</Speed>
<Spread>1.6</Spread>
<Gravity>35.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -15,10 +15,10 @@
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Gravity>39.81</Gravity>
<Spread>3.0</Spread>
<Spread>2.0</Spread>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<LaunchPoint y="9"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -15,10 +15,10 @@
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Spread>0.5</Spread>
<Gravity>39.81</Gravity>
<Spread>0.4</Spread>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -14,11 +14,11 @@
<RepeatTime>1250</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>70</Speed>
<Spread>0.5</Spread>
<Gravity>39.81</Gravity>
<Speed>70.0</Speed>
<Spread>0.8</Spread>
<Gravity>35.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -15,8 +15,8 @@
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Spread>0.5</Spread>
<Gravity>39.81</Gravity>
<Spread>0.4</Spread>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -15,8 +15,8 @@
<Delay>0</Delay>
<Projectile>
<Speed>70</Speed>
<Spread>0.5</Spread>
<Gravity>39.81</Gravity>
<Spread>0.8</Spread>
<Gravity>35.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -15,8 +15,8 @@
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Gravity>39.81</Gravity>
<Spread>3.0</Spread>
<Spread>2.0</Spread>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -14,9 +14,9 @@
<RepeatTime>1250</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>70</Speed>
<Gravity>39.81</Gravity>
<Speed>70.0</Speed>
<Spread>4.0</Spread>
<Gravity>35.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -14,9 +14,9 @@
<RepeatTime>1250</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>90</Speed>
<Spread>3.5</Spread>
<Gravity>29.81</Gravity>
<Speed>90.0</Speed>
<Spread>3.0</Spread>
<Gravity>45.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -16,7 +16,7 @@
<Projectile>
<Speed>100.0</Speed>
<Spread>2.0</Spread>
<Gravity>39.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -16,7 +16,7 @@
<Projectile>
<Speed>40.0</Speed>
<Spread>6.0</Spread>
<Gravity>9.81</Gravity>
<Gravity>20.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -16,7 +16,7 @@
<Projectile>
<Speed>100.0</Speed>
<Spread>2.0</Spread>
<Gravity>39.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -16,7 +16,7 @@
<Projectile>
<Speed>40.0</Speed>
<Spread>6.0</Spread>
<Gravity>9.81</Gravity>
<Gravity>20.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
<ImpactActorName>props/units/weapons/rock_explosion.xml</ImpactActorName>
@@ -15,9 +15,9 @@
<RepeatTime>2000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>75.0</Speed>
<Speed>100.0</Speed>
<Spread>2.0</Spread>
<Gravity>9.81</Gravity>
<Gravity>50.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
@@ -1,5 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_cavalry_ranged_javelineer">
<Attack>
<Ranged>
<Projectile>
<LaunchPoint y="7"/>
</Projectile>
</Ranged>
</Attack>
<Footprint>
<Height>7.5</Height>
</Footprint>
@@ -14,7 +14,11 @@
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>100.0</Speed>
<Speed>120.0</Speed>
<Spread>0.8</Spread>
<Gravity>30.0</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
@@ -1,5 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_cavalry_ranged_archer">
<Attack>
<Ranged>
<Projectile>
<LaunchPoint y="7"/>
</Projectile>
</Ranged>
</Attack>
<Footprint>
<Height>7.5</Height>
</Footprint>
@@ -9,10 +9,6 @@
<MinRange>25</MinRange>
<PrepareTime>3700</PrepareTime>
<RepeatTime>5000</RepeatTime>
<Projectile>
<Speed>37.5</Speed>
<Gravity>9.81</Gravity>
</Projectile>
</Ranged>
</Attack>
<Cost>