So that you can put upper and lower bounds on the number of sides in your
game, GDL includes the variables sides-min
and sides-max
.
As you might expect, every game design must allow at least one side.
The upper limit on sides depends on the implementation, but is at least 7.
Large numbers of sides can make a player's life very complicated,
not to mention consuming vast quantities of memory, so you should
try to limit the number of sides as much as possible.
Another important limit is based on the notion of side classes.
Each side can have a side class, and multiple sides can belong to the
same class.
For instance, sides named "Hyperborean"
and "Germanic"
could both have class "barbarian"
.
The value of side classes is that unit types have a property
possible-sides
that limits which side class(es)
a type can belong to. This is very important for any game
in which different players should have fundamentally different
sorts of units. To continue the barbarians example, it is basically
impossible for any barbarian side to have even one Roman legion,
whether by construction, capture, or even surrender.
So you can do something like
(add legion possible-sides "roman") ... (side 1 (name "Rome") (class "roman")) (side 2 (name "Germania") (class "barbarian")) (side 3 (name "Hyperborea") (class "barbarian"))
and ensure that Roman legions are always Roman.