From: John D. G. <jd...@di...> - 2012-05-12 20:34:03
|
On 2012-05-12 04:06, Erik Vos wrote: > In my opinion, the biggest novelty is the hexagonal stock market - unless we > settle for a rectangular one featuring diagonal token movements. In any > case, some new share price movements must be added. I had planned to "rectangularize" it for now, which would mean adding "up-and-left" and "down-and-right" as possible price movements. > To your questions: > > 1. Separate train sequences are not supported, and IMO more importantly, > separate phase sequences are not supported yet. > But neither seem to be required for 1837: the 2G becomes available when the > first 3T is bought, etc. That can already very well be handled by the > 'released' <Phase> attribute. > More important is that we may need to tweak or circumvent the built-in > automatic train progression, either by disabling it (requiring *all* new > trains to be specified with 'released'), or by putting all G-trains at the > end of the list of train types. Since I wrote I figured this part out for myself. It will work as you say, except that the 1G train has to be the first type listed since the coal companies run (and must buy 1G's) before the minors run and buy the first 2. > However, I suspect the main issue is that (to my knowledge) we haven't yet > any means to restrict the train types that a company can buy. > Per company type we should either add an attribute that specifies the > allowed train types (default: all), or define some higher train type (e.g. > train class) and link that to the relevant company types. > > None of this should be a big deal, and I can do the required programming if > you like. > 2. Off-limits areas do not yet exist as such. I've rethought this too, and I think all I need to accomplish it is the ability to have a phase change cause a bunch of tiles to be automatically laid. I'll start with a map where Bosnia is impassable (blank gray hexes); when it opens I'll simply lay "tile 0" (and one "-10") all over it; and when Italy closes I'll lay a bunch of blank gray hexes over it (and Bozen). > 3. Auto tile actions would be useful, the main question is what > specification options we need (per hex? per area? per tile id?) I suggest this: within <Phase> I'll put several lines like this. <LayTile hex="C25" tile="105" orientation="4" removeToken="yes"/> These should work like normal tile lays except that there's no checking (so negative numbers and otherwise illegal tiles can be placed, and if the tile number <= 0 then it doesn't come from the supply). Any tile already on the hex would get picked up, and removeToken determines whether any tokens on the hex get picked up too (and returned to the company they came from). The most tiles I'd need to lay at one time is 9 (Italy + Bozen). > Also: some parts of the Rails code rely on preprinted tiles to have negative > numbers, so we really need those. I figured that, but I assume it would be OK if I also use negative numbers for automatically placed "tiles" which don't come from the tile inventory and won't be returned there if removed. I'll change over to negative numbers for hexes with preprinted tiles that look like regular tiles. By the way: is there a capability to spell out that certain tiles must be laid in specific orientations? (The "preserve existing track" rule is not enough to limit the brown upgrade of Wien to the right way.) > The general rule is that for 18xx games where xx is numeric we use xx for > the thousands range. For 1837 that would be -37001 and following. > Preprinted tiles that look generic may get a low negative number; in > particular, preprinted tiles that exactly duplicate existing layable tiles > often get the id of the latter with a minus sign prepended. > > You can leave actual tile creation to me if you prefer (unless you want to > add artwork, like mine symbols; TileDesigner cannot handle that). I've gone ahead and done Tiles.xml and TileSet.xml, but haven't messed with TileDesigner. How would I do the mine art? I'm set up to create .gif or .jpg images of any reasonable size, but I have no idea of where or how rails stores image files. I'm going to treat the mines as offboard destinations for calculating runs, which means I need a way to specify that the G trains must start "offboard" and all others can't go there. Graphically, I intend them to look like the actual board (which means that the coal company's token, which will exist for calculating runs, needs to be invisible). |