From: John D. G. <jd...@di...> - 2005-04-24 06:42:39
|
Erik Vos wrote: > We have three round types: > - initial round (buying privates), > - stock round, > - operation round. > (for now leaving aside specialties like the 18EU > "Minor Company Final Exchange Round"). For most 18xx games, the initial auction (or starting packet purchases) is not a separate kind of round, but happens during the first stock round; and in fact, most games allow an operating round to occur with some of the "starting packet" still unsold. This will create several problems if the initial round is a separate type of round: * You need to determine whether the next round is an operating round or a stock round. * If the next round is an operating round, then after it you have to determine whether to go to another initial round or a stock round. On the other hand, if the game starts with secretly written bids (as 1841 or 1853) these objections don't arise, and you do need a separate initial round. So I say, yes, go ahead and define these three types of rounds; but don't do anything in the "initial round" of games like 1830 or 1835 except to assign the seating order. Instead, 1830 and 1835 start-packet turns take place in a stock round, and a global variable (perhaps game_phase) should determine what actions are allowed during a stock-round turn. For games like 1830 or 18EU, you'll want a fourth round type, an "auction round", to handle the auction of a particular private/minor. This can be nested within a stock round, or you can start a new stock round after it; but in either case the auction round doesn't move the Priority Deal. (I prefer the nested model because it makes the rounds in the program agree with those in the rule book.) |