-
Notifications
You must be signed in to change notification settings - Fork 1
Zero K PW
At first I'd like to ponder what role Planet Wars has in Zero-K. You can experience casual, freestyle, clusterfuck battles in custom rooms, and fair and competitive environment of 1v1 to 3v3 battles in matchmaker. If its point was to be one of those two, it would be redundant.
For me, planet wars is a MMO campaign and friendly rivalry of factions. As such it should embrace asymmetric design (defender always has extra structures etc., ai always has more stuff than you do). In order to balance that design, asymmetric tools for attackers should be introduced as well. You should not always expect fair matches, and the goal shouldn't always be total victory.
Current system is turn based (synchronous) which has its benefits and flaws:
- ensures that each faction no matter how numerous has equal opportunity to attack and defend
- makes it easy to predict possible outcomes (like influence change after battle, number of turns to win while powering artifacts)
- is not very scalable -- it worked for 50-ish people, the more the people the higher coordination it requires and the less playtime each player has as they compete for limited opportunities presented.
- assumes perfect coordination as equal opportunity to attack/defend means also that wasted opportunity (say by miscommunication and getting a newbie on a crucial battle) is frustrating for everyone involved
- because it's turn based and each battle counts (equally), it promotes a lot of elitist behavior where you always want to put your strongest soldiers in all battles
- It promotes stalling / prolonging matches since the best players are likely to be put forward and tying them up is beneficial. This however, wastes the time of everyone who is involved.
- has lots of inherent delays such as waiting for the other factions to enter battle
- people want to feel in control - both generals controlling soldiers or soldiers choosing their battles
- everyone wants to feel useful and being able to contribute - reality won't change and high elo player will always be more useful with their ability to win more battles, but there should be ways to contribute for everyone
- people want to see progress they make with effort they put in - that means being able to do something with your planet, empower yourself in planet wars battles with your effort (like upgrading your commander for upcoming battles)
"Turns" are replaced with micro turns or "time ticks". Time tick is the fundamental time interval in which everything is quantized. Let us assume that "time tick" is 5 seconds for now. This value should be dynamically changing based on a total activity function spanning from 2 secs to 8 secs:
[img]https://imgur.com/fa4Xmdx[/img]
Actions should be queued to next time tick, but viewing of certain things can be interpolated to be more fluid (like influence change over time, or metal income)
Battles can be done in parallel. Launching an attack or defense consists of the following steps:
- Start a squad
- Invite people to your squad / add people from your faction's "Looking for squad" list
- Choose the target and purpose:
- target - for attack usually planets or new goals; for defense - incoming attack
- purpose: one of the four: influence, sabotage, pillage, defense
- Assign tools and resources for your squad - like dropships or bombers that will accompany the attack - after this step, the selected resources are reserved - you don't need to confirm use of resources that are assigned to any of the squad members
- customizable by faction leader: certain resources or amounts above X have to be confirmed by at least a lieutenant
- certain tools can be assigned to certain missions: dropships help influence attacks, bombers help sabotage attacks, (interceptors? help defense)
- more exotic and rare tools are later to be mentioned
- attacks require FTL commander capsules from each squad member
- Queue in confirmation phase:
- after 5 min (60 ticks) - the attack/defense will auto-confirm and launch, it can be sped up by a general confirming your attack.
- the initiative can be stopped by a general (for strategic reasons: denied access of tools for the mission, or you are needed elsewhere) - then the squad returns to step 3 or 4
- you or any of the squad members can change your mind and cancel it yourself
- Finalizing - all reserved resources are used/put on cooldown and battle/attack is registered.
In case of an attack: after all above steps are passed, an attack is launched. This does not mean the battle starts immediately. In game sense, it means that the commanders are on the planet and are progressing towards the goal in real time until interrupted (defense arrives). They do so with following function:
[img]https://imgur.com/yp23zI2[/img]
Lorewise, it means that the commanders involved in the assault are travelling to the planet, establishing a base, fighting towards the main objective and finally, reinforcing their armies. That is, if the assault is undefended, it will make progress towards its goal (influence, pillage, sabotage) with effectiveness over time equal to the derivative of the above function, as seen in the following picture:
[img]https://i.stack.imgur.com/QdlcW.jpg[/img]
The progress is stopped when defenders arrive and process is paused until battle finishes.
Some remarks:
- Attackers at any point can flee the battle, keeping the progress made thus far.
- "Travel time" is a grace period - time for the defenders to react without penalty. Delaying the reaction will result in some of the progress being made for free.
- You can participate in only one defense/attack at a time, possibly it should be exclusive with matchmaker (but not casual rooms)
- Attack is looking for zero-k battle, defense is immediately starting the battle
- Players participating in the attack are visible to the opponent, but only after travel time has passed
When defense responds, everyone has 1 minute (30 ticks) to confirm participation. Unconfirmed or denied participation results in player being replaced by ai of strength equal to faction's ai strength in that area (more on that later) - usually that will be in defender's favor.
The battle can result in varying degrees of success, depending on survival of command center and result of the battle:
- when battle is lost, but enemy command center is destroyed it results in partial failure (20% effectiveness)
- when battle is won, but your command center is destroyed it results in partial success (80% effectiveness)
- in other cases the result is either total failure (0% effectiveness) or total success (100%)
- sabotage runs result in 100% success if target structure is destroyed no matter the result.
- pillage runs are effective proportionally to the amount of storages destroyed during the battle (more in pillage run mechanics)
After the battle, the total progress (success) of the assault will be:
- progress made before the defense arrived is added to the total progress
- remaining progress multiplied by battle the effectiveness is added to the total progress The remaining part of the progress is applied over the time that the battle took - rounded to the whole number with minimum of 180 ticks (15 minutes). The application of progress follows the same shape as progress function (sigmoidal), but scaled to the target effectiveness and new time duration. (or linearly to simplify things). See next section for how progress translates to action in the context of influence, pillage or sabotage.
To sum it up, the process of starting a battle resembles a bit of a matchmaker:
- assembling party
- looking for opponents (launching assault)
- game found! (defenders arrived)
Commander capsule - CC in short.
This resource is introduced for several reasons:
- balancing high population factions vs low population factions
- preventing planet wars dominating over all zero-k activity when they happen
- limit influence of high elo players by limiting number of games anyone can participate
Lorewise, commander in order to fight has to send its drone/representation to the battlefield and that isn't cheap. Every commander has their personal CC manufactory, slowly manufacturing (say one per 9 hours), storing up to 3 commander capsules. Unfortunately commander capsules are made for individuals and they won't fit other person's neural interface so they cannot be traded. Apart from personal factories, there's also a faction wide CC factory that is main source of capsules and produces them with rate of about 1 capsule/72 ticks, production divided among players who have the least capsules.
Another idea was that successful defense allows to refurbish enemy CC adding half of the CC production progress. On the contrary, maybe defense should also consume a CC. This requires testing. Maybe only defending your faction's capital shouldn't consume CC?
Commander capsule in other words is an action point in planet wars.
Influence battle is like how battles are right now:
- during the battle, all structures are represented on the battlefield. When destroyed in battle, they get damaged by up to 30% depending on the mission success
- battle result is influence change on the planet, base attack value is current base attack value
- base attack value is improved by the dropships, 5% per dropship, up to 250% (max 50 dropships)
Sabotage is targeted towards single structure:
- during the battle, selected building (possibly buildings complex, like metal extractors, energy structures, shipyard) and defense structures are present.
- all buildings that are not target of sabotage if destroyed during the battle are damaged by 30% (as usual in battles)
- bombers increase destruction potential by 10% each, up to 100% (10 max)
- base sabotage value of an assault is 100% (most buildings with total success can be completely destroyed with 5 bombers and full success, or less success and multiple sabotage runs)
- evacuating the building during sabotage run can prevent victory by destruction of this building, but when the battle is won by aggressors, the full damage still is applied to the building.
Sabotage applies its damage to the building according to the usual sigmoidal function, yet if it is defended then the remainder of the damage happens in single tick. All other building damages are applied in point the battle finished to all other [spoiler] old idea:
After battle all results of buildings damage are applied over battle's duration in the remainder of sigmoidal function's fashion (scaled so that at battle start the result is 0 and at the battle end the result is 100% of the damage dealt). // this possibly needs rethinking, maybe fixed linear function for fixed duration for buildings is better because of predictability [or even discrete point in time damage], making sabotage runs an exception). [/spoiler]
Pillage runs are easy to partially succeed and always results in (varied) amount of success. Its point is to sabotage enemy energy and metal production and steal all metal that you can manage. Even veterans (defenders) vs newbies (aggressors) can have trouble achieving full success (preventing any pylon being destroyed).
Mission purpose is raiding tanky pylon-storage hybrids that appear on the map (defenders own them, so they have lots of free energy grid and storage advantage). Depending on the map size 6-12 pylons can appear, each destroyed pylon gives 1/number_of_generated_pylons progress towards pillage effectiveness. Destroying enemy command center gives 20% effectiveness. Mission can achieve a maximum of 100% effectiveness. Effectiveness is multiplied by remaining pillage success potential (the sigmoidal function).
In pillage runs only economy buildings and defense structures are present.
Full success results in:
- depleting (disabling) pillaged metal extractor on this planet for: max(success * 1440 ticks (2 hours) - mex_plungered_ticks, 0), acquiring 35% of the metal that would be produced in those ticks,
- destroying 20% * success of reclaim field present on the planet, retrieving 35% of metal destroyed
- damaging present economy buildings by 60% * success (potential energy disabling)
- dropships increase maximum possible success by 5% each up to 100% (200% success total).
Success is determined by the sigmoidal curve (flat success progress is added as time goes by), when defenders arrive the remaining part of the success is multiplied by the battle effectiveness (as mentioned before - partial success, full success etc.)
During pillage attacker's command center does not appear (thus special equipment cannot be used during the mission).
Pillage runs can retrieve at most 500 metal (+ 100 per added dropship). Metal is retrieved in burst after the whole pillage run ends.
mex_plungered_ticks are decreased every tick when mex is operational (repaired above 80%)
Buildings when constructed start with 0% health and fully spent resources. Then they get constructed over time reaching 100%. They become active at 80%. During resulting battles the buildings can get damaged and become inactive until repaired up to 80%. The minimum at which building health can be is 0%. If the building were to receive 49% damage below 0%, it is permanently destroyed instead.
Some unique buildings cannot be destroyed (they have destruction threshold higher than possible damage % you can achieve), and some may be easier to destroy. Some have higher max hp than 100% so they are more difficult to disable & destroy.
Flexibility remains for balance purposes. Possibility of making buildings armored for extra metal adding max hp% and increasing destruction damage threshold?
Each individual use of the bombers/dropships in each attack has been described above. Apart from that, independent use of bombers and dropships remains. Independent spaceships attacks:
- take time to travel equal to 36 ticks per necessary planet hop from the furthest spaceport (stationing place, not necessarily spaceport).
- dropships: add 1.5 influence on neutral territory per dropship at rate consuming 1 dropship per 12 ticks when in orbit
- bombers: decrease enemy influence per 0.75 per bomber, damaging random present structures by 5%, at rate consuming 1 bomber per 12 ticks in orbit
- interceptors: destroy dropships/bombers in orbit 2 per 1 interceptor consuming all of them, or 1 interceptor per interceptor at rate of 6 ticks, when in orbit
Having interceptors in orbit does not prevent all damage, given enough of interceptors and absence of other defenses 1/3 of dropships/bombers will still succeed. Interceptors fight other interceptors first, then dropships and bombers in equal amounts (when both present). You can increase success of your bombing/dropship runs and mission supports by escorting them with interceptors.
All spaceships are no longer in the ether, they are stationed at their production facilities and can be destroyed with interceptors.
Planet Wars should use our AI for the added complexity of the game. Brutal AI is no pushover and can be utilized to repel weak attacks.
New building is introduced - AI computer quantum uplink which represents AI of your faction. The strength of AI is proportional to the distance (lag of the connection) - represented in planet hops that you have to make. At the planet it's built on AI is Brutal, all neighbors are Hard, 2 away are Normal, then Easy and Very Easy, no beginner AI.
Each such AI center has its own commander core production facility that can be used to launch fully AI-powered battle at the enemy (with the same rules of AI strength).
It should be fairly expensive both to build and in maintenance, possibly should be limited how many can be present in faction (say, maximum 3).
All unmanned attacks (AI or chickens) have 5 times the usual time span for defense (giving more time to defend) - lore wise they are less efficient than sentients.
Current system is very simple and rewards general activity: battle participation, and territory - rudimentary metal income per planet. That's good! I want to keep it, but expand on it.
Suggestions of more epic and strategic economy:
- Increase cost of everything 10x, so the old system is less relevant
- Introduce Metal Extractors that become one of the main metal resources
- Introduce pillage raids and neutral metal generators - asteroid belts
- Introduce reclaim fields to fight for
- Introduce more metal expenditure sinks.
These are neutral "planets" that cannot be captured that reside near common borders of factions. They offer pillage missions on random asteroid maps (Astrosurf for example) against AI. You can choose difficulty, the higher the greater the reward. The asteroid belts have usual, very rich metal extractors which extract metal producing reclaim fields on the planet (up to the certain limit, say 5000 metal). The usual pillage mechanics apply to the asteroid belts regarding metal rewards. Reward is scaled by the chosen AI difficulty. The scale factor could be as in the following table:
Very Easy | 0.1 Easy | 0.3 Normal | 0.6 Hard | 1.0 Brutal | 1.3
Metal extractors on the asteroids cannot be damaged (or can, but present buildpower is astronomical and repairs it instantly). Each asteroid belt has 3 Mex which can be raided independently. Each asteroid belt is accessible only from 2 planets.
-- unfinished
Planets should have 3 potential strategic differences:
- metal extractor spots and efficiency
- geothermal capabilities (amount of geothermal powerplants you can build on a planet)
- building space
Planets should be very limited by size and building room. They definitely shouldn't be able to hold all the buildings. Also multiple buildings of the same type should be allowed when it makes sense. Like more starships ports.
There's a lot to add in this section but I postpone it for other time
Reclaim is a big part of Zero-K as a whole, and an interesting concept. Why not introduce it to Planet Wars?
Reclaim is retrievable metal that consists of:
- 40% of cost of anything that was destroyed on the planet from Planet Wars. Be it a building in sabotage run (full destruction, not disable), dropships, bombers, interceptors
- 1% of all reclaim that is present at the end of a battle at the maximum of 1000 (in zero-k game).
Reclaim is retrieved with (planet_faction_influence%) * 0.1% per tick ratio, with a minimum of 1 metal per tick and maximum of 10. (possibly reclaim ratio could be improved with buildpower)
Reclaim is usually anti-snowball mechanic as it adds most of the resources to the defender's side.
To spice things up, let's say that when resource fields becomes large enough it attracts neutral agent (independent AI) which launches pillage attacks with increasing difficulty, stealing 20% of the field on full success.
-- unfinished Short list without much details:
- Metal Extractors
- Ground planetary defense (armored static turrets, like sunlance)
- Caretaker - adds buildpower to build and repair faster
- AI main computing unit
- Planet Plasma Battery Artilery
- Anti spaceship defense battery - static armored flak in game - destroys randomly 1-3 + 10% of enemy spaceship fleet in orbit every ~10 minutes (120 ticks)
-- unfinished
-- unfinished In short I thought it would be fun to associate artifacts with controlling chickens (similar to psi and zerg in starcraft), making prolonged artifact activation attracting waves of chicken of increasing difficulty.
New goals - mentioned before asteroid raids, I had few other ideas but they got scrapped.
-- unfinished
Currently planets switch sides way too quickly. All defense/attack bonuses and base influence gains should get multiplied by at least 1/3.
Most of the mechanisms (like warpgate influence spread) can be translated onto asynchronous system counting 1 turn equal to around 250 ticks.
I think that suggested changes address flaws of the current system pretty well. I have concerns about commander capsules mechanics and factions balance. Ultimately always the faction with highest active player count is doomed to have some advantage. System is in place to mitigate this effect, not fully prevent it.
Another concern is the added complexity of the system - with many effects over time a better UI has to be designed to have better clarity. On the other hand I don't think that having less edge predictability of the outcome is inherently bad. (in turns system you could calculate exact amount of dropships to take over the planet, now with all delays and over time effects it would be much harder to calculate and estimates would have to be made)