ZeroK-RTS / Zero-K-Infrastructure

Website, lobby launcher and server, steam deployment, .NET based tools and other vital parts of Zero-K infrastructure
GNU General Public License v3.0
50 stars 51 forks source link

Parallel attack and defense queues #2132

Open GoogleFrog opened 6 years ago

GoogleFrog commented 6 years ago

This is a specification of an initiative system that would allow for the creation of parallel attacks and defenses. This solves many issues such as prioritization and queuing.

Here are some new parameters:

Some terminology:

Attacking

The attack phase proceeds mostly as usual. Players of the attacking faction can join any valid planet using the MM UIs or the ATTACK PLANET button. The attack phase ends with the creation of at least one invasion if both of the following are satisfied:

The attack phase is forfeit (no invasions are created) if the two conditions remain unsatisfied for MaxAttackTime.

If the attack phase ends and it has gone for longer than MinAttackTime then a single invasion is launched, exactly like the current system. If the attack phase ends because there was at least one full battle at MinAttackTime then multiple invasions may be launched like so:

Retaining the players preferences through the reshuffle would be nice but is not required.

Multiple invasions targeting the same planet should be able to be launched simultaneously. These changes are required:

Note that these rules explicitly only allow factions to start multiple games on adjacent planets. A planet that is only accessible via warp should not have simultaneous games started by the same faction.

Defending

The defense phase can now contain multiple planets, with the added complication that attacks on multiple different factions can occur.

If the phase has not yet reached MaxDefenseTime then a battle turns into a game when both the following two conditions are satisfied:

The defense phase ends when either all battles are turned into games or MaxDefenseTime is reached. If MaxDefenseTime is reached then:

Booting

Faction officials want to be able to push their way into particularly important battles. They are especially interested in getting the most out of warp attacks. This can be achieved with the booting system. It works the same way in the attack and defend phase.

The rank of a player is determined by the following list. Top is the best with lower entries breaking ties.

Lobby Interface

Notes

MinDefenseTime and MinAttackTime exist to give the faction a few minutes to plan and discuss their battles. It also allows for people to shuffle and boot each other before any battles are created, resulting in the most flexible creation of battles.

DeinFreund commented 6 years ago

I've missed out on important battles because they are filled one second after the button (and had a hard time to get into any pw game). Orfelius described it best:

[21:39] Orfelius: coordination cannot be acheived
[21:39] Orfelius: because everybody and their mum is playing PW

So I'd like to see this implemented for steam, if somehow possible.