SuperHardcorePlanetwars

From Zero-K
Revision as of 21:54, 28 October 2016 by GoogleFrog (talk | contribs)
Jump to navigation Jump to search

This page details the design of Super Hardcore Planetwars. Note that this design is for super hardcore players and should probably not be implemented as-is. In particular this means that it ignores:

* Counterproductive behaviour caused by player confusion (shooting yourself in the foot). All super hardcore players are committed enough to know what to do or be ordered around by someone who knows what to do. 
* Evilness. Super hardcore players relish in games that are best won by playing 24/7.

Planetwars design tends to be simplest when they are allowed to be super hardcore. Therefore I'll design this way and try to scale the evilness and confusion back to acceptable levels.

Basic Structures

The galaxy map contains a graph of planets. There are 1 to N factions. Factions contain players. Planets can be owned by a particular faction or be neutral.

Pending Battles

Every player can see a list of pending battles for their faction. It acts a bit like a sign-up sheet as each item on the list is a pending battle. A pending battle has:

* A required number of players.
* A current number of players.
* A list of which players have signed up (maybe).
* A planet.
* Depending on the type, a timer.
* A name, goal, type, whatever else etc...

In general, the list contains two types of battles:

* Potential invasion targets for the faction. Call this an Attack pending battle.
* Invasions against the faction that require defenders. Call this a Defend pending battle.

Invasions against the faction have timers.

Players are usually free to join and leave pending battles. We can even let them be in an arbitrary number of these battles. In this sense the list is more like a matchmaking queue list than a server list. If the required number of players is met then the pending battle is 'filled'. Upon filling, all players in the battle are removed from all pending battles and will undertake some action that prevents them from joining any pending battles for some amount of time. Two pending battles may have their requirement met by the same player who joins both simultaneously, just flip a coin or something to decide which is filled.

Battles

Filling an Attack pending battle creates a Defend pending battle for the faction(s) eligible to respond to the invasion. Defend pending battles have a timer, say 10 minutes. Expiration of this timer yields an automatic victory for the attacking faction. The players in the attacking side are stuck in the pending battle and unable to join any other pending battles for 10 minutes (possibly longer) to prevent invasion spoofing.

A ZK game is launched if the Defend pending battle is filled. This game should be an XvX game between the attackers and the defenders. The outcome of the game determines something on the main map, probably planet ownership. Metagame structures exist in the game and can be destroyed, because that is cool.

A planet can only have one battle on it at a time. If an Attack is filled for a planet, or if a battle is running, then no other faction can attack it.

Invasion/Defense Targets

The list of invasion targets is simply the list of planets which can be attacked by your faction. This list will most consist of adjacent planets. As usual, there must be a working wormhole stabilizer from your factions planet to the adjacent planet for it to be invaded. The jumpdrive from previous PW rounds could be implemented by making planet X invadable by faction Y until faction Y next launches an invasion targeting X.

The planets which require defense for a faction are those planets which the faction owns as well as all neutral planets. Players from multiple factions can hop in to defend a neutral planet.

Metagame

The usual PW metagame can still exist, most unchanged from the 2v2 Planetwars.

The galaxy turn structure will have to be replaced with a timer system. Perhaps there will be one turn per hour, or day, or anything which seems to work. A turn once a day would actually be an un-evil change to planetwars. However, for this to work the production rates in the metagame may need to be sped up.

Alliances

Alliances and trading can exist. The most hardcore players of the previous 5-Way FFA Planetwars seemed to really enjoy this part. The usual energy for metal/planets/whatever trading alliances could exist. It depends on what the metagame looks like.

Here are some alliances that make sense within the proposed battle structure. All the alliances may as well be implemented as single-directional for diplomacy !Fun!. We'd expect reasonable people to make symmetrical alliances most of the time. The explanations have an alliance between Factions A and B with Faction A as the party which is mechanically affected. [list]

[*] Ceasefire. Really simple, Faction A cannot invade planets of Faction B.
[*] Defensive Pact. Players from Faction A can help Faction B make up the numbers for defense. In effect, the Defend pending battles of Faction B are added to the pending battle list of Faction A.
[*] Agressive Pact. Players from Faction A can invade all planets invadable by Faction B. In effect, the Attack pending battles of Faction B are added to the pending battle list of Faction A. These pending battles are marked as belonging to Faction B and any benefit/cost of the battle goes to Faction B. The Faction A players are simply mercenaries. If both Faction A and Faction B can invade the same planet then players of Faction A will have a duplicate entry in their pending battle list.

[\list]

All of these pacts can be broken at any time (also breaking the deal they are part of?) and they can be abused. Faction A could throw battles which are important to Faction B. This is fine because every involved is super hardcore and, as I understand it, this type of diplomatic shenaniganing is all part of the !Fun!. On that note, we could offer ceasefires alongside both the aggressive and defensive pacts in the way that makes sense. Technically this is not required because players of Faction A would only end up on both sides of a battle only if they are less than super hardcore.

Ponderings

How can this design be made less confusing and evil? What is a good level of confusion/evil?

Pending Battles

The pending battle list is likely to be too much for most players to handle. The pending battle list may technically be as stated but the presentation should filter to data significantly to only show what is important. For example, we could give each player the ability to "propose" invasions by opening an Attack for that planet and joining it. This is effectively the same as hiding all Attacks with no player and providing an extra bit of UI to unhide particular Attacks.

We may also want to modify the pending battles in a mechanical way to make it harder for players to shoot themselves in the foot.

Flexibility

The super hardcore design allows factiosns to disregard defense in favour of attack. It allows a faction to very quickly take over an AFK faction, or even one with slightly fewer players online.

Relentless Attacking

Any de-hardcoring of the system has to avoid the situation where one side can attack indefinitely, provided they click fast enough. One approach could be to prevent the faction that last attacked from attacking for 45 minutes after their most recent Attack was filled. The result of this is that Factions A and B can rampage through AFK Faction C by quickly alternating attacks.

The main evilness rating of the system will be determined by how much of an advantage is conferred by significant activity. Absent (or understaffed) factions should lose territory but the game shouldn't end in one night.

Battle Stickyness

Sticking the attacking players in their battle may be annoying for non-super hardcore players. Players could be able to leave attacks but doing so destroys the pending Defence and prevents all the attacking players from doing any actions for the remaining time. Alternately, there could be a complicated structure which allows people to swap into Attacks.

Planet Battle Limit

The limit of one battle at a time per planet creates a potential bottleneck in the game. Careful galaxy design can prevent extreme bottlenecks, however, a limit to the number of simultaneous battles that Planetwars supports. This is a scaling issue that seems hard to workaround.

Exploits

Resigning

Super hardcore players (or even just normal hardcore players) will want to get the most out of their active players as they can. This means that, even though a pending battle may require 3 players on each side (to make a 3v3), some of the participants should resign early once they feel that their presence does not affect the outcome. The resigned player could go on to participant in another battle quicker than they otherwise would.

If such play is undesired then we could prevent players from joining pending battles while a game they were in is ongoing.

Planet Battle Limit

A planet only being in one battle at a time creates an exploitable bottleneck. Faction A and B can have a stealth alliance and spend long games attacking each others planets and throwing the games such that the defender always wins. This behaviour prevents these planets from falling to other factions.

A solution may be to let factions attack a planet before the battle completes and then spawn an Attack for the faction which least recently attacked the planet. Another solution could be to stagger the planet's inclusion in the pending battle list. The least recent faction to attack could receive it immediately, second least 30 seconds after that etc...