Counters are integer symbols for individual levels. Outside of the scope of that level they are undefined. At each pass through the level they are incremented or decremented. If the modulo is specified that is applied with respect to the initial value. If the limit is specified and exceeded that causes a pop to the next level up.

counter | name to use for the counter |

initial | initial value of counter (default=1) |

increment | amount to increment each time (default=1) |

modulo | number of possible values for the counter (default=none) |

limit | limiting value of counter before popping to next level (default=none) |

An initial value of 10 and a modulo of 2 will generate values of 10, 11, 10, 11...

For positive increments, the value of the counter will always be less than or equal to the limit. For negative increments, the value of the counter will always be greater than or equal to the limit.