FAF should handle contributions better and be less resistant to change

FAF is too resistant to change and has several significant flaws with how it handles contributions and contributors. Huge amounts of time get wasted on contributions that basically never see the light of day, good features get rejected or left in limbo, contributions and contributors get misjudged and treated unfairly, widely desired changes with willing developers don't get implemented or take excessively long to get implemented, etc.

These problems result in fewer features for FAF, fewer improvements, slower changes, fewer maps and mods, previously helpful contributors being frustrated by flawed systems and reducing or eliminating their contributions to FAF, etc. Numerous contributors have already left FAF as a result of these issues and FAF's excessive resistance to change.

I'm saying this as someone who has significantly contributed as a developer to FAF's repositories, made over a hundred maps/mods for FAF, and interacted extensively with numerous players and contributors.

To give some examples from my personal experiences and observations:

1 ) Last year, I wanted to make it possible for modders to easily add proper lobby options for their mods, similarly to how mappers can (mod options currently require an inconvenient/derpy/buggy hack). I initially reached out to Jip multiple times about the possibility of him finishing the mod options PR he had partially made about a year prior and then basically abandoned, but that didn't work out. So, I then decided to make a new mod options PR that was more focused on the core functionality, and I finished it quickly. Jip pointed out some issues with it, and I fixed those. Then, rather then merging the functional PR, Jip basically started refactoring the code to some more complicated variant of it that seemingly resembled a hybrid between my PR and his original PR, didn't finish that process, and left it in a state of limbo with no additional commits for the last 8 months, and I don't know if it will ever be merged...

tldr; it's disheartening to waste time like this, and this overall system seems way too inefficient with work duplication.

2 ) Most maps don't even get reviews on the FAF client, but when they do, they are disproportionately often reviews like this:
1386c061-e19b-4f0a-9b50-d43af9379430-image.png
83ec6b2a-1aa5-432c-892e-6ba9f72238d0-image.png

The maps receiving those reviews:
baae73b4-012b-4237-ac40-8401fd0c32a6-image.png

Suffice it to say, those maps are definitely not trash 1-star maps, but those sorts of reviews do make mappers want to contribute less, especially when there aren't good reviews to balance them out.

3 ) Some people spend a lot of time making maps for FAF, and it seems like the vast majority of new maps barely get played unless they are used in the matchmaker. Making a map that barely gets played can easily feel like a waste of time that discourages the mappers from making more maps in the future.
Good new maps generally take mappers between about 5 and 50 hours of work in my observation, and they tend to get lost in the shuffle of many low-quality maps that took a lot less time and effort. So, some mappers will then try to meet the standards of the matchmaker team and submit their maps in the #matchmaker-submissions channel. However, that often results in the submitted maps taking even longer to finish, and still not being included in the matchmaker with little to no constructive feedback for the mappers... This can be a very frustrating experience that has driven many mappers, even good mappers, away from FAF.

The matchmaker team has made some progress on this, but others should as well. More should be done to encourage the creation of good new maps, whether that be more constructive feedback for matchmaker submissions, more frequent updating of the M&M team top picks to feature good new maps, some sort of new feature or news sub-system that highlights more good new maps, map bounties, or something else.

4 ) Many people wanted in-lobby autobalancing and party support, and many people wasted so much time manually balancing in-lobby. So, I wanted to add an in-lobby autobalancer to FAF. I was told that there was a previous in-lobby autobalancer PR that basically just needed a button to be added to it and it would be fine. This was wrong. It took a very frustrating amount of evaluating, arguing and explaining to establish why that previous attempt was so flawed and extremely inefficient compared to what I wanted to add to FAF. Eventually, I managed to get my new in-lobby autobalancer that I coded from scratch added in to FAF, and it worked quite well and has been used many thousands of times since. However, I also wanted to add several additional improvements to it, including party support, slot pair shuffling, support for any number of teams of any sizes, and more. I even coded a few of them about 6 months ago. However, all my PR's regarding the autobalancer stopped being merged or even responded to on GitHub about 6 months ago, and so all progress on it has been halted since then. Jip had said that some of them (including my in-lobby party support PR and my aforementioned mod options PR) would be included in the next patch, back in April. That didn't happen. When I enquired about them again more recently, after progress had already been halted for several months, I was informed that a designer is now working on a new lobby design that may make some significant portion of my work incompatible and consequently not used regardless...

This experience has bothered me a lot and resulted in me shifting more of my coding free time to other projects that are more receptive of and cooperative to contribution. Other contributors have had similar experiences, and the systemic flaws highlighted here result in decreased contribution.

5 ) Particularly frustratingly; the in-lobby party system I coded was fully functional, desired by many, added partly based on Jip's suggestions and in a location that Jip suggested, revised several times based on feedback, and then not included anyway. To put some time into coding a new feature that isn't used is one thing, but to additionally put a lot more time into a repeated revision and improvement process for a requested feature, following suggestions for it, and it getting rejected anyway after being completed, is very frustrating to say the least. That is exactly the sort of thing that drives contributors away.

6 ) Many people find share until death to be too punishing, and many people find full share to not be punishing enough. So, I made a PR that adds a new share condition (called partial share) that transfers buildings and engineers like in full share, but kills other units like in share until death. The day I posted it, Jip said he'd test it and merge it that weekend (he did not). Sheikah and Jip pointed out some things I should change about its backend formatting, and I promptly adjusted it accordingly, and it was ready to be merged 5 days after it was initially posted. Now, it's been about 2.5 months since it was posted, and there hasn't been any feedback for it on GitHub beyond those initial 5 days, and it's just sitting there, waiting for Godot...

When I asked Jip about it, he said he just hasn't found the time to test it, but it only changes about 50 lines of code, and it's not like it's hard to test. I understand that Jip has a lot of responsibilities, but perhaps some more of them should be delegated if he really can't find the little bit of time it would take to test stuff like this after over 2 months, and it's not like he's the only one capable of testing stuff like this...

7 ) Many people have have expressed desires for new matchmaker queues, such as a casual queue, party-game queue, and mapgen-only queue. New queues can be added to the matchmaker relatively easily. I'm a member of the matchmaker team and a developer, and I've advocated for new queues repeatedly, but we still don't have them... Why? Resistance to change, disagreements on what should be added, and the majority of the matchmaker team's low activity level and general hesitance to make changes at anything faster than a snail's pace? I'm not really sure, but I do know that there's no need for progress on this to go so slowly...

8 ) There is too much toxicity in FAF, and toxicity is a significant factor in discouraging additional FAF contribution, especially when it is directed at contributors and or their contributions. How would you feel if you spent 50 hours working on something and someone called it trash? Most of the toxicity that contributors are exposed to seems to stem from a few key people who are often toxic, dismissive, and unempathetic, and those who imitate them. If the rules and COC/Contribution Guidelines were actually enforced on those key people, the overall environment in FAF would improve a lot, and there would be more contributions to FAF.

9 ) Widely desired balance changes seem to happen so slowly in FAF. I understand the desire to be extra cautious to not make a mistake, but it seems to me like a less conservative approach to balancing would be better. In the worst-case scenario, if a bad change gets made, it can simply be undone. If the issue is a lack of manpower, I know there are several 1.6k+ players who would be willing to contribute; perhaps the balance team should expand its membership.

I could give many more examples, but hopefully you get the point; FAF should be less resistant to change, more friendly to and welcoming of contributors and contributions, less time should be wasted, toxicity should be reduced, good features shouldn't be rejected or left in limbo, widely desired changes with willing developers should be implemented more readily, etc.

PS: the purpose of this thread is not about my personal experiences, nor is it intended as an attack on any person or group mentioned above. I was just giving examples from personal experience and observation. I attempted to be accurate; if I made a mistake, I apologize. However, I really don't want to debate whatever nitpicks may be found in my specific examples in this thread; let's keep things to the overall issues, solutions, and general types of examples, rather than arguing technicalities on details of specific examples that should not be the focus here. The purpose of this thread is to point out and hopefully prompt change regarding FAF's resistance to change and how it handles contributions and contributors in a variety of contexts. So, let's keep it focused on that please. To be clear, there are also many things that FAF does well regarding contributors and contributions, but some keys things really should change. If there is much discussion in this thread, I hope it is constructively focused on improving the situation. Thank you.

pfp credit to gieb

I wouldn’t want more random dudes put in balance team because of how balance team works. If some role existed where people can take part in balance discussions, make PRs, and so on while not actually being the voting body on the decisions then I’d be more comfortable with broader membership. Since that doesn’t exist I don’t want random dudes swaying votes when they don’t understand the game fully. Yes, I don’t consider 1.6k a mark of game understanding.

Didn't we just have such a thread, was even from you, too. https://forum.faforever.com/topic/4735/resistance-to-change-vs-what-s-best-for-the-game-community

You just added some more points about things that don't really have much to do with that overall topic.

That thread focused specifically on resistance to change regarding FAF's balancing and was somewhat of a precursor to this one. That thread actually resulted in some positive changes with improved awareness and communication regarding the balance team's limitations and how people can help, and as a result, I made some PR's for sparkies and kennels that were/will be merged. I hope this thread will also reach positive conclusions. The ideas can come from constructive discussions/whomever suggests them. For example, I like the idea of adding non-voting members to the balance team, where they can still participate in discussions and help out, even if they don't get to vote. I think there's merit to adding something like that to the balance team as well as something similar for the matchmaker team. That could also help lessen the barrier to getting new members for both teams, as potential members can also be tested out a bit and learn some from the team, without impacting team votes unless/until they've proved themselves enough to become full-fledged voting members.

pfp credit to gieb

Maps have a much greater impact on the gameplay than balance or game patches do, but there is pretty much zero barrier to entry. For this reason, I really do not want many new maps, especially from new mappers. I don't want to play a game where the majority of my gameplay is dictated by some random dude that started mapping last week. From my perspective there does seem to be quite a lot of newish maps put in the matchmaker pools already.

There may be a very low barrier to uploading new maps to the vault, but there is a relatively high barrier to a map being used in the matchmaker. For perspective, fewer than 2% of FAF's maps were used in ladder in all of 2021, meanwhile several 'classic' maps were used in 5+ ladder pools each in 2021. Rest assured, no one is suggesting your gameplay be dictated by some random dude that started mapping last week. The matchmaker team has standards that cover maps' gameplay, variance, aesthetics, technical details, etc. If anything, the standards applied to new maps are higher than the standards applied to old maps, which are sometimes grandfathered in. That being said, if you want higher quality maps, please give mappers more constructive feedback with details in places such as the #mapping-general channel of the FAF Discord. Many mappers desire more helpful feedback; some even actively request and seek out more constructive feedback and often still don't get enough.

pfp credit to gieb

There was a thread recently where the balance team asked for help:
https://forum.faforever.com/topic/4953/looking-for-balance-testers
I'm not sure how many replies were serious, because they won't get avatars for this.
Those 1.6k+ people could certainly help there.

Is this topic only about game code? FAF is more than that and I can't really apply this to the rest.

"Nerds have a really complicated relationship with change: Change is awesome when WE'RE the ones doing it. As soon as change is coming from outside of us it becomes untrustworthy and it threatens what we think of is the familiar."
– Benno Rice

@blackyps said in FAF should handle contributions better and be less resistant to change:

There was a thread recently where the balance team asked for help:
https://forum.faforever.com/topic/4953/looking-for-balance-testers
I'm not sure how many replies were serious, because they won't get avatars for this.
Those 1.6k+ people could certainly help there.

Why would they not? Even just the role description as it stands is more involved than ice testing yet that was given an avatar.

@brutus5000 said in FAF should handle contributions better and be less resistant to change:

Is this topic only about game code?

No, this topic is about several things as detailed in the OP. There are many things that it isn't about though. For example, I've had much less exposure to the areas you focus on, Brutus, but FWIW, I don't have any complaints about how you handle things in your areas, and I'm looking forward to your progress with ICE : )

pfp credit to gieb

I may get some flak for this especially considering how old the game is, and keep in mind this is all just my opinion but honestly FAF feels kind of stale. New maps, new updates, new mods, new anything, they all come at a snails pace. Balance changes especially. And at the risk of sounding like an idiot as again this is just opinion, the balance team being made up of pretty much just the top players and being fairly resistant to even minor changes just smells like fear of change to me. I have no doubt top players could adjust to changes made, but sometimes it feels they just don't want to bother.

IMO, balance changes shouldn't just be made to balance the game better but to also shake things up and change the meta once in a while. Make different strategies viable and old ones less viable. Shit, take it a step further and add/remove units or even buildings once in a while. It's not like there aren't a bunch of mods for inspiration already. Shit, do it on a different branch. Name it FAF Fluid or something and let people host customs with a separate rating for this mode. Idc.

So many of us having been playing almost the same maps for a decade and half, and there's still people afraid of new maps? Like what? It's rare to find new good maps. If anything, the MM pools should feature way more new maps. Shit, start a council of new maps or something. A group of players willing to go find new maps and play them to test for viability and then submit them to the map pool team. It's something even I'd be willing to do because I'm honestly tired of playing the same maps over and over again. Mapgen has been a godsend in that regard, but even mapgen needs work.

I'm kind of just rambling, but the jist of it is that I wish there were more changes made more often to FAF, even just for testing purposes. And it's disheartening to see the amount of work someone like Penguin puts in that doesn't even get merged. It makes someone like me who's thought of contributing many times before definitely not even want to bother. And of course I don't mean any of this to insult anyone, I know all the contributors do it all for free and Jip especially puts a lot of his own time into it which I'm sure we all appreciate. But I'm with Penguin when I say FAF could be a lot better than what it is if contributing and making changes was easier.

Why would they not? Even just the role description as it stands is more involved than ice testing yet that was given an avatar.

Let's rephrase that to "Afaik it was not planned to give them avatars for this." But I am not responsible for avatar decisions, so I am the wrong person to talk to about this.

I wanted to highlight the already available possibilities to help the balance team to speed things up.

The notion of balance changes being necessary to change the game is a false dichotomy when compared to other games. People always seem to fail to acknowledge how impactful maps are in determining meta and how difficult it is to just make 50 new, decent maps.

You can’t just go and make a balance change (see: the thread about ACU oc’ing underwater) that can undermine a decade’s worth of commonly played maps under the guise that some mappers may or may not make up for the change in the upcoming decade. Likewise, making changes built to intentionally force maps like dual gap or astro to be more dynamic are a fool’s errand because people can freely go and make dual gap^2 to revert to the safety those maps originally gave.

“just put in new maps” - most new maps are terrible. Sorry, that’s the reality of it. You don’t get many new maps in matchmakers because there might be 2 or 3 viable, decent new maps each month at best.

If FAF started adding random new units “for fun” in default balance I’ll get tumors and stop playing normal games. I cannot comprehend the issue of stale meta when dudes can play 50 entirely different maps with entirely different metas in 10 entirely different ways on each respective map. If you reduce yourself to playing 1 map in 1 way, the stale meta is your fault really. Even sentons develops random meta improvements through no real adjustment to balance: see beach walking mid.

All I care about balance-wise is making sure every faction doesn’t have a clown roster of noob traps and making sure the game generally has a healthy progression on maps that are defined as “decent benchmarks.” The meta whatever comes down to the mappers and players.

@snugglefox If people want to shake things up in terms of balance, make a balance mod and then host a cash money tourney for it. You can find ways to bring more of the community onboard like having 1 tourney with no rating limits and another tourney with rating limits so that lower-rated players can participate.

If you want a better balance mod, host a cash money competition for the best balance mod submission, then draw from the submissions to make a great balance mod. I'm thinking you would need some sort of theme in order to encourage coherent submissions, e.g. "faster gameplay faster battles units hit harder"

If there's no interest from the community to do this on their own, why should anyone expect FAF admins to do it?

Even without cash money prizes (or with very small amounts of money), if you can get a big caster to promise to cast the games, that might be enough incentive for people to choose to play in the tourney. Or arrange for other rewards like "a lesson from Tagada"

Avatars could also be a good reward but you should probably have a successful contest first before asking FAF admins to commit to providing that

This is less a response to Penguin and more a post about how FAF works:

Generally on FAF you need to have 3 things happen in order to implement a change.

  1. Get consensus for the change. Make a post on the forums, collect evidence to support the change, convince existing members of the relevant team, persuade people that your change is better than the status quo.
  2. Implement it. Sit down and do the work or wait for someone else to. There are a lot of interconnected parts of FAF and actually getting changes made is time consuming.
  3. Test it. Lots of changes on FAF can have unintended consequences, balance changes can impact the game in unforeseen ways unless tested carefully. Introducing breaking software bugs can be worse for the player experience than if no change had been made at all.

Each step can require significant amounts of volunteer time and energy depending on the scale of the change. There's also the risk that if you implement a change before getting consensus for it that it will be rejected by the team. Of course this process would be much smoother if each team had better planning and communication, but guess what? That requires even more volunteer manpower and that is the driving constraint on all change already. I know balance team has many ideas that are currently waiting in each bin. It's been pointed out above that Tagada recently took the initiative to recruit more balance testers to help with some of the issues stuck in bin #3.

As far as avatars go, as much as I am the "avatar guy" as Tournament Team Lead (which is somewhat unclear but I'm just going with it), if someone wants to make an avatar to give out for balance team testers, just go for it. Contributor avatars are a totally reasonable thing to hand out.

@arma473

I don't think having to pay money and organize tournies is a reasonable enough solution for the issues related to slow balance change. If someone wants to do that, they're welcome to, but expecting people to do that as the solution seems unreasonable, nor would it sufficiently solve that issue imo if someone actually did that...

I would've made a balance mod ages ago if I thought there was a sufficiently viable solution there; I have the coding abilities, the desire, and the relevant game knowledge to be capable of such a thing. However, I have not done so because trying to host it would result in drastically slower fill times with a lot more lobby-sim and a lot fewer games. Even if it was ranked, regardless of the quantity and quality of the changes, it would take significantly longer to fill than a regular game would. Featured mods like phantom and nomads are the exceptions. Less-established sim mods for a competitive FAF game often take ridiculously long to fill in my experience, as they're unfamiliar and competitive players normally play ranked, while sim mods are often unranked/filtered from view via client option/automatically disregarded by many players/etc.

Maybe someone has a bright idea that would change this. For example, I would totally be up for managing a featured mod that I could customize the balance of with input from others. I actually requested to do that in the past, but iirc, that was rejected largely due to a desire to reduce rather than increase use of the featured mod system. Maybe there is some alternative solution that involves changes to how games are shown in the client that would allow select/ranked sim mods to be displayed similarly to how featured mods are or something.... I'm open to ideas : )

pfp credit to gieb

Making mods is historically not a realistic solution. Making mods ranked is likewise not a realistic solution. Really arma’s idea is the most practical as, beyond tournaments, equilibrium essentially saw zero play outside of random dudes playing solo sandbox or 3 hour in house games even though it has a ton of effort and eventually was ranked.

Reality is that FAF doesn’t have a playerbase large enough to support a ton of different mods being played much. The ones that are interested in some balance mod are gonna be a subgroup of the subgroup that are competitive yet want to play different things. These guys tend to already be decently high rated (at least 1.2k if not higher) and are already entering the “difficult to find a game” rating. So that means these mods just die and function more as proof of concepts for default faf or an exercise of fun for the modder themselves.

The exception of decently played mods I would say are phantom and nomads. Phantom avoids the issue by resolving the problem of a different subgroup (making ffa actually viable rather than being a balance mod). While nomads is more an exception that proves the rule by having a ton of other external support through the years and “cool factor” that most balance mods simply won’t reach. And if they do reach it, the “cool factor” is just going to be too exotic for default balance and it defeats the purpose of this whole idea of “alternate balance” and instead just becomes a different game to appeal to a wider subgroup.

Arma reccomodation is basically exactly what I did with SCTA tbf. And results of those games, while not intended when I started, I know some of the TA Memes in SCTA have been discussed in Balance Team.

I’m a shitty 1k Global. Any balance or gameplay suggestions should be understood or taken as such.

Project Head and current Owner/Manager of SCTA Project