EmpiresCommunity / Unreal-Empires-Project

4 stars 0 forks source link

Add an option to automatically set the amount of reinforcement the game starts with based on the amount of players #59

Open Xiaminou opened 1 year ago

Xiaminou commented 1 year ago

One of the difficult points of balance in Empires matches is reinforcements, sometimes it feels like there's too little, sometimes it feels like there's too many. It stems from two things, players skills and amount of players. I have tried to adapt starting reinforcements as much as I can using the min/max players restrictions implemented in the mapcycle but it simply is not enough to account for the variation in playercount that can happen during or after the vote. Which leads me to believe that the ideal implementation would be to have an option to have the number of reinforcements you start with automatically set when the game starts based on the amount of players. The configuration option would let you chose how many reinforcements the team gets per player. The next question is, should new players who join the team add reinforcements to the team when they do? I don't know that there's a correct answer to that without a lot of testing, but I believe they should. These options should not be mutually exclusive with setting a number of starting reinforcements. When both are enabled they should add up.

I think ideally this should be a server variable.

empZealoth commented 1 year ago

I think this is a valid idea but also quite risky and will require A TON of testing. It's really frustrating in Enlisted because they constantly mess with ticket income and as a player I really hate not knowing if today the game decides "lul you get 50" and tommorow the game decides "JACKPOT 600 TICKETS DINGDINGDING" Personally I suspect the maps have to be tuned around player counts (6v6, 11v11, 16v16 etc) and you should not be able to even vote for a lower pop map once you have too many people. The ticket numbers should be tuned around design pop, with the ticket change per additional player away from the "optimum" falling off. You can still have moderate fun playing 11v11 on 6v6 map, but something like drygulch with 20v20 should end very quickly, in my opinion. But hey, I got really sick of the trench warfare meta and perhaps more people like it than not.

Trainzack commented 1 year ago

An additional issue to consider is whether the system should adjust for population changes mid-match. I can't think of an elegant way to accomplish that.

RoyAwesome commented 1 year ago

We chatted a bit about transforming Tickets into a point gaining system. I'd be curious to get people's feedback on the idea.

Basically whenever you do something in Empires that benefits your team, you gain some number of points (lets say 1 per 100 damage, 1 per kill, 1 per revive, 1 per 100 points repaired, etc). Any anti exploiting mechanics you can think of to prevent this system from being easily gameable, imagine those are implemented.

Once you gain enough points for your team, the other team goes into a sudden death mode where their command vehicle starts taking damage over time and reducing max health, so you can't just out repair it. Eventually, it dies. The team in sudden death can still respawn and play as normal, they just have like 5 minutes to win before they lose.

What we could do here is calculate the average score gain of an average player per minute (maybe bucket it to account for more deadly late game weapons), and set the point value a team must achieve to be about 40 minutes of average score gain for the number of players in the server. As players join or leave, the score limit can dynamically adjust (maybe with some lag time so a person leaving the game doesn't end it).

Thoughts?

I personally think this system will easily handle games between 20 to 100 players. Once you get below 20 players in the server, I think our gamemode just doesn't work for that player count, so we would have to account for that in other ways (small maps, KOTH gamemode, etc)

I think that a system in which players gain points rather than costing their team points would make a real effort toward de-toxifying the community. This system discourages Death and encourages Reviving much like tickets do, but the failure to get revived isn't a detriment to your team. It does harm revive cycles, but I'm curious if that's even something we'd like to keep (probably need to add a revive confirmation to prevent being forced to revive in a bad spot and just feeding points to the other team).

Xiaminou commented 1 year ago

[...] Personally I suspect the maps have to be tuned around player counts (6v6, 11v11, 16v16 etc) and you should not be able to even vote for a lower pop map once you have too many people. The ticket numbers should be tuned around design pop, with the ticket change per additional player away from the "optimum" falling off. [...]

That's already what I'm doing and I can tell you, it is not ideal, it can be better.

An additional issue to consider is whether the system should adjust for population changes mid-match. I can't think of an elegant way to accomplish that.

I believe I have already asked that question: I believe each joining player should add the same amount of reinforcements the team would have gotten if they had been here at the start of the game (possibly with diminishing return based on the amount of reinforcements remaining). From my original post:

The next question is, should new players who join the team add reinforcements to the team when they do? I don't know that there's a correct answer to that without a lot of testing, but I believe they should.

Trainzack commented 1 year ago

Oops, reading comprehension issues on my part.

Xiaminou commented 1 year ago

We chatted a bit about transforming Tickets into a point gaining system. I'd be curious to get people's feedback on the idea.

I don't really like the idea of removing reinforcements. I've always though about reinforcements as a second resource in Empires, to be managed just like the main one. I think it should be expanded upon instead of removed. I think it should still be a finite resource but one that you need to acquire, Fuel for example has a capture point in the middle that supplies reinforcements up to whoever holds it up to 100. This makes for very interesting gameplay and opens many strategical designs.

You're talking about replacing reinforcements' "clock" with another one that might not develop the same way, in fact it might be quite the opposite. A lot of games that develop slowly (because of chokepoint or other developments) tend to generate a lot of points, but because they develop slowly they give fewer opportunities to make plays. Your method would have these games end much faster than more open and dynamic games where a lot of plays can be made in a short time.

The other thing about reinforcements that you talked about a little bit is to discourage dying. Why is it important to discourage dying? Because there are ways of abusing that death to have a much greater impact. The most common one is to destroy vehicles as infantry, effectively trading reinforcements for resources. While it's a dynamic that works with the current balance of reinforcement versus resources, it's a fragile one and I don't believe it would work with your system, or at the very least it would require a lot of tuning.

In conclusion I think reinforcements should be acquired dynamically by holding strategical locations on the maps, it could work very much like regular resources where you place a certain building in a location to gain the resource but reinforcements would be a finite resource unlike regular resources. I believe this is the way to make reinforcement a more interesting and engaging mechanism.

RoyAwesome commented 1 year ago

Tickets as an acquirable resource is an interesting path that I'll have to ponder more.

The main thing i want to avoid is the feel-bad nature of playing the game without tickets. Not being able to play the game because you are dead just... sucks. It drives people out of the game and forces people into spectator mode or just leaving the server and turning the game off if it lasts too long. This is extremely bad. Any solution on this front must contain a fix for this problem.

Another thing I want to solve is having predictable match lengths. Your point about a highly choke-pointed map ending faster is a very valid point, and the kind of feedback I was looking for. I fear that being able to gain tickets as a resource may artificially extend match lengths and put people into an hour+ slog that stops being as fun as it could be.

I think there is a space where your ticket gain idea works with these two problems solved. Perhaps you can only gain a certain number of tickets (like Fuel's center point (i think that was fuel that did that)), and then also we just take that sudden death idea from my proposal to be what happens when a team runs out of tickets, so that people can keep playing until the match ends for good.

Xiaminou commented 1 year ago

Once you gain enough points for your team, the other team goes into a sudden death mode where their command vehicle starts taking damage over time and reducing max health, so you can't just out repair it. Eventually, it dies. The team in sudden death can still respawn and play as normal, they just have like 5 minutes to win before they lose.

The main thing i want to avoid is the feel-bad nature of playing the game without tickets. Not being able to play the game because you are dead just... sucks. It drives people out of the game and forces people into spectator mode or just leaving the server and turning the game off if it lasts too long. This is extremely bad. Any solution on this front must contain a fix for this problem. [...] and then also we just take that sudden death idea from my proposal to be what happens when a team runs out of tickets, so that people can keep playing until the match ends for good.

I agree with you that playing without reinforcements is bad, and squad point management to revive those last few people is also a pain in the ass. And I do prefer your options for sudden death over what we currently have, in fact we might just want to implement that in Source Empires, with one difference, I don't like the idea of reducing maximum health, I would rather the damage gradually increase, requiring more and more engineers to repair the command vehicle and therefore putting more stress on the players that remain at the front lines, until one breaks.

Another thing I want to solve is having predictable match lengths. Your point about a highly choke-pointed map ending faster is a very valid point, and the kind of feedback I was looking for. I fear that being able to gain tickets as a resource may artificially extend match lengths and put people into an hour+ slog that stops being as fun as it could be.

I think there is a space where your ticket gain idea works with these two problems solved. Perhaps you can only gain a certain number of tickets (like Fuel's center point (i think that was fuel that did that)

Like I said, reinforcements would be a finite resource, just like on Fuel, and it would be up to the mappers to provide the correct amount of reinforcements for their map, chokepoint maps would likely have a slower reinforcement income and a lower maximum amount you can acquire. Just like a lot of chokepoint maps have lower resource income compared to other maps, they would also have lower reinforcement income.

One last thing, while we're on the subject of reinforcements, and not to be a pain in the ass. But I would try and refer to them as reinforcements as much as possible in the development environment to avoid confusion and make searching for keywords easier.

RoyAwesome commented 1 year ago

One last thing, while we're on the subject of reinforcements, and not to be a pain in the ass. But I would try and refer to them as reinforcements as much as possible in the development environment to avoid confusion and make searching for keywords easier.

As much as I agree with this, with the rise of battlebit and battlefield probably going into another marketing cycle, "Tickets" is probably a better name just because the community we want to target is familiar with both the word and the mechanic it represents. I really want a Battlefield player to be able to just skip a tutorial for Empires and understand like 70-80% of what is going on.

Xiaminou commented 1 year ago

That's strange, that's my reasoning too, but I thought battlefield still referred to them as reinforcements, don't they?

RoyAwesome commented 1 year ago

They use "Tickets" in game design language, and "Reinforcements" in voice lines and stuff. Battlebit only uses "Tickets"

MayamaMayama commented 1 year ago

Don't discourage dying, empires is basically built around dying a lot.

You would have to restructure the whole game if dying would matter more. There are so many ways you can die in this game without you having any chance of avoiding it. Dying is basicaly a core theme of empires, its imo one of the main reasons why this game feels so much more intense and "real" than a lot of other military FPS games. It encourages risky and dump plays that either fail horrible or make you feel like a god damn hero if it works. Tons of dying and short respawn timers are also the reason why frontlines feel way more alive than in a lot of other similar games, even compared to games with a lot more players on the map.

Dying is also already heavily punished in empires because you lose the most important resource, time.

empZealoth commented 1 year ago

Don't discourage dying, empires is basically built around dying a lot.

You would have to restructure the whole game if dying would matter more. There are so many ways you can die in this game without you having any chance of avoiding it. Dying is basicaly a core theme of empires, its imo one of the main reasons why this game feels so much more intense and "real" than a lot of other military FPS games. It encourages risky and dump plays that either fail horrible or make you feel like a god damn hero if it works. Tons of dying and short respawn timers are also the reason why frontlines feel way more alive than in a lot of other similar games, even compared to games with a lot more players on the map.

Dying is also already heavily punished in empires because you lose the most important resource, time.

This is getting offtopic, but there are differences between dying. We really should get rid of "both sides sit behind walls and spam infinite HE at eachother for 30 minutes" types of dying and reviving

I also hate most of sudden deaths suggestions - turning of one of the core mechanics of healing/revive is just dumb. So would be a mechanic of your CV randomly starting to die, for completely opaque to some random player reasons. Just fast ticket to frustration. And the match can still drag out forever with those anyway

Perhaps having conditions for a draw could be a solution. Or just having a guaranteed ticket drain source on each map, like a company of heroes Victory Point - you hold, your teams ticket bleed is turned off, enemy holds it, they no longer slowly bleed tickets. No one holds it? Both sides are bleeding slowly. It would force the people to defend it to the last man. Obviously those areas should not be placed in some chokepoint hellhole

Xiaminou commented 1 year ago

Just remember that all these solutions we're discussing are just tools to be given to the people so they can make their own balance. Be it the mappers or the server hosts or tournament organizers. We've all played many games, we know different people will want different things, we've seen those battlefield servers that play those chokepoint maps 24/7, and if that's what people want to do, it's fine. So include as many tools as possible to create different elements of balance, but make sure all of those are optional.

MayamaMayama commented 1 year ago

I know Zealoth wants to nudge mappers into making "good maps" but I think its just impossible. From a (typical empires) game design perspective maps are the only thing we have basicaly zero control over. People (big groups) are weird and most likley even prefer something that is really bad because they know it and are comfortable with it, best example would be dust2.

empZealoth commented 1 year ago

You can make several stalemate eliminating mechanic options available to mappers AND require at least one to be present for a map to be valid, the same way as they require at least one spawn point for one team.

To be clear, I am not advocating for utter totalitarian dictatorship with arbitrary, sunken-cost-fallacy changes everywhere.

There are a tons of side tweaks that could help nudge things into different directions without actually forcing people with arbitrary top down heavy handed rules.

Game design just has to ensure there is source of ticket bleed, be it from excessive reviving, vehicles dying, just innately or from the map