2018 RA Balance
4/22/2018 Balance Update
I totally agree a ranking system would be of great help, but I don't know how feasible it would be for OpenRA, considering it probably requires a backend gathering data and a unique ID for every player.
Anyway I think engineering the building is definitely not one of the most important mechanics to learn to improve in the game. Additionally, a setting could be added to decide the standard behavior of units/defensives, so that any pro can just set it as he prefers.
Anyway I think engineering the building is definitely not one of the most important mechanics to learn to improve in the game. Additionally, a setting could be added to decide the standard behavior of units/defensives, so that any pro can just set it as he prefers.
#2265 is the main point of discussion around player authentication and the (definitely not going to happen) idea of global stat tracking.
My goal for balance after this release is to transition from the normal cycle of balance playtests into single issue project work.
What do I mean by project work? Several of the remaining issues are simply too big to be thrown into a pot of several minor changes, and would be disserviced by not being in a stand-alone playtest map. I also feel like the game is at a state where we can start focusing on one issue at a time.
(1.)
A good example of this is the potential rework of unit veterancy. If we end up changing the rates of experience gain, and/or add special per unit abilities on max rank, that's going to need it's own playtest.
There are several thoughts I've had and heard that we can work with here. I'll list them in no particular order. I'd like to hear feedback on which sound good, which ones sound like fluff, and if you have your own idea.
- Change the percentage of unit value killed per rank from 200, 400, 800, 1600 to something like 200, 400, 600, 800 (or even 300, 300, 300 ,300)
- Reduce the number of ranks from 4 to 3
- Give every unit a specific perk on max rank. An example of this could be ranger gets a grenade launcher at max rank, or maybe +3 vision. Artillery could get +3 range.
- Lower the damage benifiets of veterancy so that infantry doesn't go bonkers if the xp per rank is lowered. Or....
- Give infantry a seperate xp per rank table than vehicles, so that vehicles can rank up easier.
I'm pretty big on the idea of specific unit perks on max rank, but we're going to need one perk for each unit to do so. That means I need some IDEAS on what perks would look good on particular units.
(2.)
Another example of project work would be Orb's Allied overhaul, which will be the next big conversation this community needs to have. If you aren't familiar with this project, catch up on these threads:
http://www.sleipnirstuff.com/forum/view ... 83&t=20529
http://www.sleipnirstuff.com/forum/view ... 82&t=20544
(3.)
To wrap up, lets talk about something a bit lighter. ENGI HUSK SALVAGE!
If you haven't heard by now, I'm pretty big on the idea of Engineers scrapping vehicle husks for credits. I like this idea because it's the only good idea I've had engineers have a lack of duties outside of capturing oil derricks and suiciding into the enemies base in a likely vain attempt to capture something important. I also feel like it would make husks more interactive.
There are a couple things to consider looking at this:
-How long should it take for an engineer take to scrap a husk?
-What percentage of credits should a salvaged husk yield?
So far, I've gone with 5 seconds and 40% of the vehicle's value.
___
Post your ideas and feedback on these three matters here or in discord.
What do I mean by project work? Several of the remaining issues are simply too big to be thrown into a pot of several minor changes, and would be disserviced by not being in a stand-alone playtest map. I also feel like the game is at a state where we can start focusing on one issue at a time.
(1.)
A good example of this is the potential rework of unit veterancy. If we end up changing the rates of experience gain, and/or add special per unit abilities on max rank, that's going to need it's own playtest.
There are several thoughts I've had and heard that we can work with here. I'll list them in no particular order. I'd like to hear feedback on which sound good, which ones sound like fluff, and if you have your own idea.
- Change the percentage of unit value killed per rank from 200, 400, 800, 1600 to something like 200, 400, 600, 800 (or even 300, 300, 300 ,300)
- Reduce the number of ranks from 4 to 3
- Give every unit a specific perk on max rank. An example of this could be ranger gets a grenade launcher at max rank, or maybe +3 vision. Artillery could get +3 range.
- Lower the damage benifiets of veterancy so that infantry doesn't go bonkers if the xp per rank is lowered. Or....
- Give infantry a seperate xp per rank table than vehicles, so that vehicles can rank up easier.
I'm pretty big on the idea of specific unit perks on max rank, but we're going to need one perk for each unit to do so. That means I need some IDEAS on what perks would look good on particular units.
(2.)
Another example of project work would be Orb's Allied overhaul, which will be the next big conversation this community needs to have. If you aren't familiar with this project, catch up on these threads:
http://www.sleipnirstuff.com/forum/view ... 83&t=20529
http://www.sleipnirstuff.com/forum/view ... 82&t=20544
(3.)
To wrap up, lets talk about something a bit lighter. ENGI HUSK SALVAGE!
If you haven't heard by now, I'm pretty big on the idea of Engineers scrapping vehicle husks for credits. I like this idea because it's the only good idea I've had engineers have a lack of duties outside of capturing oil derricks and suiciding into the enemies base in a likely vain attempt to capture something important. I also feel like it would make husks more interactive.
There are a couple things to consider looking at this:
-How long should it take for an engineer take to scrap a husk?
-What percentage of credits should a salvaged husk yield?
So far, I've gone with 5 seconds and 40% of the vehicle's value.
___
Post your ideas and feedback on these three matters here or in discord.
"Do not trust the balance tzars (Smitty, Orb). They are making the changes either for the wrong reasons, for no reason at all, or just because they can and it makes them feel good." - Alex Jones
I'm sorry to throw it that way but, could we maybe focus first on underused/useless units such as highjacker, dogs, mad tanks, supply truck, cruisers, missile subs ... ect. The rest of the release/meta works pretty well so far and before modifying what is already "working" we might have a look first on what is not and left aside.
I'm glad and look forward to see a revision of veterancy or any other aspects in order to improve the game but i would like better to see hightjacker and madtank (ect ..) be usefull or removed.
Edit :
To improve engeneer gameplay :
I'm not fond of how the derrick works. They don't bring back that much unless having an army of them and they are easyer to kill than recapture. I will expose a new concept for the enge/derrick:
-Oil derrick can no longer be destroyed, only recaptured.
-Oil derrick generates more money over time, the longer you keep it, the more it gives you per tick.
-Engeneer instant captures derrick but are consumed by them (anyway you see fit). The reason of that is engee are to easly snipable while recapturing and an attentive opponent will never let you recapture his precious "long timer" derrick. but instant capture is too "easy" so, compromise is losing the enge as investment. the instat capture does not apply for other structure in the game, only the derricks. Like restoring a husk for a mechanic.
That way, oil derricks become a valuable and strategic asset All along the game ! If the recap don't give you right away a big flow of money,it at least cuts the money flow accumulated by and for the opponenet. As you can't kill it you are forced to "enge up" whenever it's needed to ensure that your opponenet is not enjoying a "big fat derrick" captured for a too long time.
I'm glad and look forward to see a revision of veterancy or any other aspects in order to improve the game but i would like better to see hightjacker and madtank (ect ..) be usefull or removed.
Edit :
To improve engeneer gameplay :
I'm not fond of how the derrick works. They don't bring back that much unless having an army of them and they are easyer to kill than recapture. I will expose a new concept for the enge/derrick:
-Oil derrick can no longer be destroyed, only recaptured.
-Oil derrick generates more money over time, the longer you keep it, the more it gives you per tick.
-Engeneer instant captures derrick but are consumed by them (anyway you see fit). The reason of that is engee are to easly snipable while recapturing and an attentive opponent will never let you recapture his precious "long timer" derrick. but instant capture is too "easy" so, compromise is losing the enge as investment. the instat capture does not apply for other structure in the game, only the derricks. Like restoring a husk for a mechanic.
That way, oil derricks become a valuable and strategic asset All along the game ! If the recap don't give you right away a big flow of money,it at least cuts the money flow accumulated by and for the opponenet. As you can't kill it you are forced to "enge up" whenever it's needed to ensure that your opponenet is not enjoying a "big fat derrick" captured for a too long time.
Last edited by WhoCares on Tue May 15, 2018 2:48 am, edited 1 time in total.
I too would love to see the hijacker, dogs, and mad tank fixed, but that is far outside of my skill set. I've been attempting to learn more of the C# coding language, but I'm a long way away from dropping 100's of lines of code.WhoCares wrote: ↑I'm sorry to throw it that way but, could we maybe focus first on underused/useless units such as highjacker, dogs, mad tanks, supply truck, cruisers, missile subs ... ect. The rest of the release/meta works pretty well so far and before modifying what is already "working" we might have a look first on what is not and left aside.
I'm glad and look forward to see a revision of veterancy or any other aspects in order to improve the game but i would like better to see hightjacker and madtank (ect ..) be usefull or removed.
I agree that cruisers and missile subs are still underachieving for highly expensive units, but I ran into a lot of resistance this time around over naval changes. There's a big disconnect between competitive players and the team game crowd over what is and isn't weak in naval. As the team players get to see naval more often, I doubt I'll be able to push meaningful naval changes through in the future.
I've seen the "Why fix 'x' when 'a', 'b', and 'c' are clearly more broken" line of thinking several times, and I have to call it out for the logical fallacy it is. The way I see it, I can either sit on my balls and do nothing, or I can fix what I can fix. It's pretty much my life philosophy. There's no point in holding back achievable improvements over something I can't fix.
(P.S. It's possible dogs may be fixed soon: https://github.com/OpenRA/OpenRA/pull/15008)
Last edited by Smitty on Tue May 15, 2018 3:24 am, edited 1 time in total.
"Do not trust the balance tzars (Smitty, Orb). They are making the changes either for the wrong reasons, for no reason at all, or just because they can and it makes them feel good." - Alex Jones
-
- Posts: 77
- Joined: Wed Mar 14, 2018 2:59 am
- Location: Catia
I shouldn't even be helping you with this, but as far as changing veterancy rates, I've already done it, tested it, and those values will work. Makes the game more exciting and dynamic.
As for improving the use of "useless/underused" units, again, been there, done that, it works with the changes I've made, and virtually everyone likes the changes.
Save yourself some time and work by checking it out.
edit: If you truly care about the community, and bettering this game, you should really consider looking at all the work I've done with the CG420 maps. You can only benefit from that.
As for improving the use of "useless/underused" units, again, been there, done that, it works with the changes I've made, and virtually everyone likes the changes.
Save yourself some time and work by checking it out.
edit: If you truly care about the community, and bettering this game, you should really consider looking at all the work I've done with the CG420 maps. You can only benefit from that.
My CG420 maps do that, and much more. v42 is the latest. Ignore the MAD Tank Values, I accidentally made them OP. I meant to double the damage output, and boost it's health and move speed, but what I messed up was the damage output, increasing it fourfold.WhoCares wrote: ↑So, if someone gives you a map with workaround/solutions in yaml that actually make some of those unit usefull or more efficient you could use that as a base to start working the issue ?
Since we are talking fallacies, I have to call out the argument to moderation (in before fallacy fallacy) . I feel that large alterations of the veterancy system will only make efforts to balance even more complicated as opposed to bold ideas for underused units (hijacker uncrushable pls).Smitty wrote: ↑ I've seen the "Why fix 'x' when 'a', 'b', and 'c' are clearly more broken" line of thinking several times, and I have to call it out for the logical fallacy it is. The way I see it, I can either sit on my balls and do nothing, or I can fix what I can fix. It's pretty much my life philosophy.
From what I've read, it seems you want to make it easier to obtain max veterancy (via 4 ranks instead of 3 and faster tank ranking). I hope the example of a ranger with a grenade launcher is an extrapolation because while it would add some interesting aspects, I can see it being either being overwhelming or underwhelming (particularly overwhelming if veterancy is much easier to obtain). And if carried out I feel most, if not all units, would require attention as every unit in the game is able to obtain veterancy out of crates (even harvesters and demo). It would also need to be taken into extreme consideration that Allies are able to produce units that are already vetted.
A way to counter this is still have it hard to obtain but in reality, its not that hard to get veterancy in the current game with specific units. Yaks, Hinds, Rangers. Artillery and V2's are the easiest to level up and hold onto.
Not talking this down but your suggestion of veterancy abilitie is outside the scope of the actual problems I've heard with veterancy and really only makes things more complicated, in my opinion.
It could definitely be implemented in a beneficial way but I feel it will take a lot more effort to theorise and balance this out than it will to learn how to code
Last edited by anjew on Tue May 15, 2018 2:07 pm, edited 1 time in total.
-
- Posts: 77
- Joined: Wed Mar 14, 2018 2:59 am
- Location: Catia
I looked at my YAML, and here's the changes I made (I forgot to remove unedited lines, and forgot which lines exactly I didn't touch):
----------
^GainsExperience:
GainsExperience:
Conditions:
180: rank-veteran
420: rank-veteran
740: rank-veteran
1420: rank-veteran
GrantCondition@RANK-ELITE:
RequiresCondition: rank-veteran >= 4
Condition: rank-elite
DamageMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 95
DamageMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 90
DamageMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 85
DamageMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 75
FirepowerMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 105
FirepowerMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 110
FirepowerMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 120
FirepowerMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 130
SpeedMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 105
SpeedMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 110
SpeedMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 120
SpeedMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 140
ReloadDelayMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 95
ReloadDelayMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 90
ReloadDelayMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 85
ReloadDelayMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 75
InaccuracyMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 90
InaccuracyMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 80
InaccuracyMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 70
InaccuracyMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 50
SelfHealing@ELITE:
Step: 2000000
Delay: 100
HealIfBelow: 100
DamageCooldown: 125
RequiresCondition: rank-elite
WithDecoration@RANK-1:
Image: rank
Sequence: rank-veteran-1
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-veteran == 1
ZOffset: 256
WithDecoration@RANK-2:
Image: rank
Sequence: rank-veteran-2
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-veteran == 2
ZOffset: 256
WithDecoration@RANK-3:
Image: rank
Sequence: rank-veteran-3
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-veteran == 3
ZOffset: 256
WithDecoration@RANK-ELITE:
Image: rank
Sequence: rank-elite
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-elite
ZOffset: 256
----------
I've had 0 issues with these changes, only benefits in terms of increasing dynamic gameplay and fun. Also, see my comment above anjew's.
----------
^GainsExperience:
GainsExperience:
Conditions:
180: rank-veteran
420: rank-veteran
740: rank-veteran
1420: rank-veteran
GrantCondition@RANK-ELITE:
RequiresCondition: rank-veteran >= 4
Condition: rank-elite
DamageMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 95
DamageMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 90
DamageMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 85
DamageMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 75
FirepowerMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 105
FirepowerMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 110
FirepowerMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 120
FirepowerMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 130
SpeedMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 105
SpeedMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 110
SpeedMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 120
SpeedMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 140
ReloadDelayMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 95
ReloadDelayMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 90
ReloadDelayMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 85
ReloadDelayMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 75
InaccuracyMultiplier@RANK-1:
RequiresCondition: rank-veteran == 1
Modifier: 90
InaccuracyMultiplier@RANK-2:
RequiresCondition: rank-veteran == 2
Modifier: 80
InaccuracyMultiplier@RANK-3:
RequiresCondition: rank-veteran == 3
Modifier: 70
InaccuracyMultiplier@RANK-ELITE:
RequiresCondition: rank-elite
Modifier: 50
SelfHealing@ELITE:
Step: 2000000
Delay: 100
HealIfBelow: 100
DamageCooldown: 125
RequiresCondition: rank-elite
WithDecoration@RANK-1:
Image: rank
Sequence: rank-veteran-1
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-veteran == 1
ZOffset: 256
WithDecoration@RANK-2:
Image: rank
Sequence: rank-veteran-2
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-veteran == 2
ZOffset: 256
WithDecoration@RANK-3:
Image: rank
Sequence: rank-veteran-3
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-veteran == 3
ZOffset: 256
WithDecoration@RANK-ELITE:
Image: rank
Sequence: rank-elite
Palette: effect
ReferencePoint: Bottom, Right
RequiresCondition: rank-elite
ZOffset: 256
----------
I've had 0 issues with these changes, only benefits in terms of increasing dynamic gameplay and fun. Also, see my comment above anjew's.
This is the system Nolt and I applied onto Sattered Paradise a few weeks ago:
Changed veterancy system:
Veterancy: (achieved after killing 300% of the units worth)
+10% Durability
+10% Attack damage
+10% Attack speed
+10% Movement speed
Elite: (achieved after killing 600% of the units worth)
+10% Durability
+10% Attack damage
+10% Attack speed
+10% Movement speed
Heroic: (achieved after killing 900% of the units worth)
Unit gains self healing to 100%
+10% Durability
+10% Attack damage
+10% Attack speed
+10% Movement speed
Removed Chevron 3 and made Platinum Star the new Rank 3
Removed accuracy bonus
Streamlined the other bonuses
Adjusted required experience to gain rank
It works pretty good and even SoScared was interested taking it over for his mod.
Unit extra perks on Heroic would be pretty cool (like in Red Alert 2 and 3) but needs lots of theorizing so it doesnt become either blank simple or absolutely op.
In CnC3 Heroic gaves units extra attack range and further Damage and Attackspeed boost which was (I believe) even more broken than just an extra perk.
Changed veterancy system:
Veterancy: (achieved after killing 300% of the units worth)
+10% Durability
+10% Attack damage
+10% Attack speed
+10% Movement speed
Elite: (achieved after killing 600% of the units worth)
+10% Durability
+10% Attack damage
+10% Attack speed
+10% Movement speed
Heroic: (achieved after killing 900% of the units worth)
Unit gains self healing to 100%
+10% Durability
+10% Attack damage
+10% Attack speed
+10% Movement speed
Removed Chevron 3 and made Platinum Star the new Rank 3
Removed accuracy bonus
Streamlined the other bonuses
Adjusted required experience to gain rank
It works pretty good and even SoScared was interested taking it over for his mod.
Unit extra perks on Heroic would be pretty cool (like in Red Alert 2 and 3) but needs lots of theorizing so it doesnt become either blank simple or absolutely op.
In CnC3 Heroic gaves units extra attack range and further Damage and Attackspeed boost which was (I believe) even more broken than just an extra perk.
Last edited by ZxGanon on Tue May 15, 2018 1:57 pm, edited 2 times in total.
Not anymore. This was fixed in release-20180218.anjew wrote: ↑every unit in the game is able to obtain veterancy out of crates (even harvesters and demo).
WhoCares wrote: ↑So, if someone gives you a map with workaround/solutions in yaml that actually make some of those unit usefull or more efficient you could use that as a base to start working the issue ?
If there's a yaml solution for something that I've overlooked then yeah, I'd like to look into it. A workaround or yaml 'hack' however will likely not make it through the review process. Uncrushable hijackers are a good example of this. The reason that uncrushable hijackers (and spies) were rejected were because that would allow them to block the ore refinery dock like the phase transport.anjew wrote: ↑(hijacker uncrushable pls).
As far as I know, acceptable fixes for the most commonly reported problems will require work in C#.
"Do not trust the balance tzars (Smitty, Orb). They are making the changes either for the wrong reasons, for no reason at all, or just because they can and it makes them feel good." - Alex Jones
tbh the hijacker doesnt need its cloak if it can capture efficiently and it would make no sense to block a ref with an uncloaked hijacker, irregardless, it is a hack but that wasnt the point of my post. The point of my post is that if these actual problems cant be fixed then RA balance is relegated to making new problemsSmitty wrote: ↑If there's a yaml solution for something that I've overlooked then yeah, I'd like to look into it. A workaround or yaml 'hack' however will likely not make it through the review process. Uncrushable hijackers are a good example of this. The reason that uncrushable hijackers (and spies) were rejected were because that would allow them to block the ore refinery dock like the phase transport.anjew wrote: ↑(hijacker uncrushable pls).
As far as I know, acceptable fixes for the most commonly reported problems will require work in C#.