Grobots - Documentation - Scoring and Rules

There are many potential ways to score a round of Grobots, and many variations of the rules.

Scoring

Scoring Measures

Biomass (Value)
A robot's biomass is its cost plus its current energy minus its initial energy. Biomass is a more accurate representation of worth than cost, because it includes energy that hasn't been made into robots yet.
Survival
A side scores a point if it has any cells left at the end. How many doesn't matter.
Kills
How much enemy biomass a side has destroyed, minus how much of its own it has destroyed. (Experience in other games has shown this correction to be necessary, lest sides kill their own robots to deny enemies credit for killing them.)
Damage
A robot damaging an enemy scores the cost of the target times the fraction of the target's initial armor that was destroyed. Example: doing 100 damage to a robot costing 1000 energy with 250 initial armor scores 400 damage. As with kills, damage to friendly robots is deducted.
Income
How much energy a side has acquired, by any method.
Carnivory
How much energy acquired through heterotrophy.

Regardless of measure, scores are normalized so the total score awarded is the same for every round. (In other words, scores are expressed as percentages of the total.) This prevents high-scoring rounds from having more influence on a tournament.

A side's score in a tournament is the mean of its scores in individual rounds.

Other Statistics

Fraction
The mean score of rounds the side survived (IOW, score / survival).

Rule Changes

In addition to changing the scoring system, the game can be varied by changing the rules.

World Parameters

There are various parameters that can be changed:

World size
Smaller worlds lead to more combat and fewer robots. This has the nice effect of speeding up the simulation. Larger worlds leave more room for huge, organized sides to develop.
Number of sides
There are usually ten sides at once.
Manna rate
Lots of manna makes energy readily available, so robots will be numerous, growth fast, and heterotrophy unappealing. Little manna makes a leaner and meaner population.
Time limit
Since a round could easily last forever, a time limit should be imposed. Varying time limits might affect strategy. Larger worlds may need longer time limits for their potential to show.

Reproduction Restrictions

Single Combat
Reproduction is disabled entirely. A side therefore consists of a single robot. Annoyingly, this prevents use of missiles. Perhaps creation of robots without constructors could be allowed.
Clones
Reproduction is allowed, but a robot may only create other robots of same type. Each side is for practical purposes restricted to one type.
Full Grobots
Sides may have as many types as they want. This makes for a complicated game.

Other hardware than the constructor could be restricted. Note there's no support for hardware restrictions yet, so this must be enforced by hand.

Seeds

Each side starts with some robots costing a constant amount. Varying this could be useful. Allowing a larger or smaller seed would allow Little League and Titan variants of Single Combat. Larger seeds would let the game get started faster, and would have an interesting effect in Clones: if a side starts with one robot of each type, the types act as genetically independent teammates.

Tournaments

Large tournaments might be held in stages to reduce the quick-kill problem and to favor sides that are good in the presence of other good sides. In each stage, many rounds are run - enough that each side has been in 20-30 rounds. After each stage, the lowest-scoring sides are removed, and the rest enter the next stage. The first stage would remove only 10-25% of the sides; later stages would remove more.

If anyone ever runs a tournament with prizes or other special recognition, they should be given not only to high-scoring robots, but also on aesthetic grounds. Some examples:

Most tournaments are run in batches, but continuous ones (such as the CoreWar King of the Hill tournament and its RoboWar imitation) offer fast response and retain only the best sides. They are easy to run when automated. However, they're demoralizing to newbies, whose best entries tend to come in last.

Balance Issues

Roster effect
The performance of sides varies dramatically depending on what other sides they face. This should be less of a problem when there are a wider variety of good sides.
Excessive buildup
If a side doesn't suffer from resource limitation or combat losses, it can accumulate hundreds of cells, slowing the simulation down. This happens most with autotrophs, since they're not limited by food supply.
Cell size
We want most cells to cost about 1000 energy. Balancing this is tricky.
War and peace
Some sides are agressive. This can be fun to watch, but if they're too successful they'll kill off other sides that would have been even more fun.

Ideal Balance

Once the game is balanced properly, scores should look comething like this:

SideScoreSurvivalDeath ratesEarly
score
Fraction
EarlyLate
Winner20%80%10%11%12%25%
Typical good side10%50%20%38%10%20%
Not so good3%30%40%50%9%10%
Agressive side2.5%5%75%80%2%50%
Algae3%6%40%90%8%50%
Overall:50%20%38%
Grobots by Devon Schudy (dschudy@yahoo.com) and Warren Schudy (wschudy@wpi.edu)