The rules go to Congress
Some players call a rule a bug. Others call it the game. OpenCol doesn't pick a side:
a change like that becomes a rule option. At 0 it is the original's rule, and
its default is argued out in public, on the issue and on Discord, before it is merged.
A game keeps the rules it started with, in its saved games too. A 1994 saved game plays by the original's rules.
; 0 is the original's rule. Yours to change.
[Rules]
custom-house-obeys-boycotts = 1
ai-loads-what-it-plans = 0
colonists-may-leave-stockades = 0
passengers-stay-aboard = 0 ; on is proposed
hammers-and-bells-carry-over = 1
How a rule is decided
The same four steps for every one. When it is not clear what kind of change something is, ask in the issue before writing the code.
- An issue says what changes, and proposes a default and why.
- Discussion on the issue and on Discord: which variant, what the computer players do, the default.
- The maintainers decide, and write the decision on the issue.
- The change is made with a rules test. With every option at 0, OpenCol still plays as the 1995 game.
Every rule option
From the CHANGELOG of 0.11.0: what each one does, why, and how to turn it off.
The original's rules, but for its clear bugs (where it crashes or contradicts itself), unless
you turn on a rule option. Value 0 is the original's rule; each option's default is decided with
the community (docs/VISION.md). They are set in the [Rules] section of
OPENCOL.INI (there is no menu yet): an option the file has no line for gets one at its
default, and a line you have set is never changed. A new game keeps the options it started
with, in its saved games too; a 1994 saved game plays by the original's rules.
Each option has its own default, decided with the community: a new
OPENCOL.INIhas custom-house-obeys-boycotts and hammers-and-bells-carry-over on, the others off. Your own lines stay as they are. (0.10)custom-house-obeys-boycotts (on at first, 0.10): a Custom House keeps a boycotted good in store and sells it again once the boycott ends. (0.6)
ai-loads-what-it-plans: a computer player's ship or wagon train loads what its plan says, not up to 100 of a good whatever it planned. (0.6)
colonists-may-leave-stockades: colonists may leave a colony behind walls, and the last one abandons it, as in FreeCol; the original keeps 3 behind a stockade, fort or fortress. (0.8)
passengers-stay-aboard (off at first; on is proposed): each colonist, soldier or treasure at sea sails on a ship of its own. (0.10, issue #8)
- Why: the original never records which ship a unit is on. A ship leaving takes whoever its square holds while it has room, so two ships on one square of sea swap passengers, and ships arriving from Europe in the same turn land each other's colonists on the wrong coast. You also could not disband an empty ship beside a loaded one at sea.
- With it on: a unit boarding at sea takes the first of your ships there with room; one boarding in a colony or on Europe's docks goes with the first ship to leave. A ship takes its own passengers first, then those of no ship, never another ship's: when it leaves, when it sails from Europe (the harbour menu or a drag to the sea), when it is turned around at sea, when its passengers arrive, and when you ask to disband it. A ship beaten in a fight loses only its own passengers. Passengers who sail into a colony land there. It holds for the computer players too.
- What you lose: the hop on purpose. Two ships meeting at sea can no longer hand units from one to the other.
- Known limit: in Europe the passengers of the ships in port show as units on the docks set to board, as in the original, so nothing on the screen says which ship each is on. Choosing "Board ship" or "Wait on docks" for one makes it a passenger of no ship again, and the first ship to sail takes it.
- A saved game with it on loads only in an OpenCol that has it. A game saved before it, played with it on, has each unit's ship worked out on loading by the original's own rule.
- Turn it off:
passengers-stay-aboard = 0inOPENCOL.INI's[Rules], before a new game. - Pictures: the before-and-after row at the top, two caravels on one square of sea.
hammers-and-bells-carry-over (on at first): the hammers and bells a turn makes past what they paid for are kept for the next build and the next Founding Father. (0.10)
- Why: the original sets a colony's hammers to 0 when it finishes a build, and the nation's bells to 0 when a Founding Father joins, so what the last turn made past the cost was thrown away: a colony making 30 hammers a turn that needed 10 to finish lost 20.
- With it on: that surplus waits for the next build or father. Only the turn's own is kept: hammers that piled up while a colony waited for tools, or a build it already has, still go when it finishes. It holds for the computer players too.
- Not changed: goods past the warehouse's room. The "reached its storage capacity" message shows once, and what the colony makes past it later is lost without a word, as in the original.
- A saved game with it on loads only in an OpenCol that has it.
- Turn it off:
hammers-and-bells-carry-over = 0inOPENCOL.INI's[Rules], before a new game.