diff --git a/lib/engine/game/g_18_royal_gorge/entities.rb b/lib/engine/game/g_18_royal_gorge/entities.rb index c2027e122c..e3b087c678 100644 --- a/lib/engine/game/g_18_royal_gorge/entities.rb +++ b/lib/engine/game/g_18_royal_gorge/entities.rb @@ -8,9 +8,10 @@ module Entities { sym: 'Y1', name: 'St. Cloud Hotel (Y1)', - desc: "Hotel token starts in Silvercliffe (G17). When owned by a corporation, St. Cloud's "\ - 'hotel token will generate an additional $20 revenue only for the holding corporation. '\ - 'Once in Brown Phase, the hotel is moved to Cañon City (H12). This company never closes.', + desc: 'Special abilities not implemented.', + # desc: "Hotel token starts in Silvercliffe (G17). When owned by a corporation, St. Cloud's "\ + # 'hotel token will generate an additional $20 revenue only for the holding corporation. '\ + # 'Once in Brown Phase, the hotel is moved to Cañon City (H12). This company never closes.', value: 50, revenue: 5, abilities: [ @@ -20,8 +21,9 @@ module Entities { sym: 'Y2', name: 'Ghost Town Tour Co. (Y2)', - desc: 'When the owning corporation ships the last gold from any mine space, they may put 1 Ghost Town '\ - 'Token in that hex. On future turns, Ghost Town Tokens provide $10 revenue for the owning corporation.', + desc: 'Special abilities not implemented.', + # desc: 'When the owning corporation ships the last gold from any mine space, they may put 1 Ghost Town '\ + # 'Token in that hex. On future turns, Ghost Town Tokens provide $10 revenue for the owning corporation.', value: 45, revenue: 15, abilities: [ @@ -31,9 +33,10 @@ module Entities { sym: 'Y3', name: 'Coal Creek Mines (Y3)', - desc: 'When any corporation runs through Coal Creek, the owning corporation receives a coal cube '\ - 'from the Coal Mine Card. On a future turn, the owning corporation may use up to 2 coal cubes '\ - 'to increase their train run by 1 stop for each cube. When used, cubes are removed from the game.', + desc: 'Special abilities not implemented.', + # desc: 'When any corporation runs through Coal Creek, the owning corporation receives a coal cube '\ + # 'from the Coal Mine Card. On a future turn, the owning corporation may use up to 2 coal cubes '\ + # 'to increase their train run by 1 stop for each cube. When used, cubes are removed from the game.', value: 40, revenue: 5, abilities: [ @@ -48,15 +51,15 @@ module Entities value: 75, revenue: 5, abilities: [ - # { type: 'shares', shares: 'CF&I_1' }, - { type: 'shares', shares: 'RG_1' }, + { type: 'shares', shares: ['CF&I_1', 'RG_1'] }, { type: 'no_buy' }, ], }, { sym: 'Y5', name: 'Territorial Prison (Y5)', - desc: 'If a corporation owns the prison, they may use prison labor to build in any terrain at 1/2 price.', + desc: 'Special abilities not implemented.', + # desc: 'If a corporation owns the prison, they may use prison labor to build in any terrain at 1/2 price.', value: 70, revenue: 10, abilities: [ @@ -95,8 +98,9 @@ module Entities { sym: 'G2', name: '13LB Gold Nugget (G2)', - desc: 'Once during the game, the owning corporation may ship 1 Gold for $130 revenue '\ - 'increase (instead of the normal $50).', + desc: 'Special abilities not implemented.', + # desc: 'Once during the game, the owning corporation may ship 1 Gold for $130 revenue '\ + # 'increase (instead of the normal $50).', value: 40, revenue: 5, abilities: [ @@ -106,9 +110,10 @@ module Entities { sym: 'G3', name: 'Hanging Bridge Lease (G3)', - desc: 'The owning corporation may run through The Royal Gorge (D12-E13-F12) by paying a '\ - '10% dividend to the Rio Grande from the proceeds. This money can either come from '\ - "the charter, or the president's personal cash.", + desc: 'Special abilities not implemented.', + # desc: 'The owning corporation may run through The Royal Gorge (D12-E13-F12) by paying a '\ + # '10% dividend to the Rio Grande from the proceeds. This money can either come from '\ + # "the charter, or the president's personal cash.", value: 50, revenue: 10, abilities: [ @@ -131,9 +136,10 @@ module Entities { sym: 'G5', name: 'Metals Investor (G5)', - desc: 'Each Stock Round, the owning player may purchase 1 CF&I share and/or 1 VGC '\ - 'share for one step cheaper than their current value. Once used, the player may '\ - 'not sell any of the purchased stocks until the next Stock Round.', + desc: 'Special abilities not implemented.', + # desc: 'Each Stock Round, the owning player may purchase 1 CF&I share and/or 1 VGC '\ + # 'share for one step cheaper than their current value. Once used, the player may '\ + # 'not sell any of the purchased stocks until the next Stock Round.', value: 25, revenue: 5, abilities: [ @@ -145,9 +151,10 @@ module Entities { sym: 'G6', name: 'Coal Depot (G6)', - desc: 'Place one coal cube on this card for every $10 paid for this company in the '\ - 'initial auction (rounded down). During operating rounds, the owning corporation may '\ - 'spend 1-2 coal cubes to add additional stops on a route, following normal route rules.', + desc: 'Special abilities not implemented.', + # desc: 'Place one coal cube on this card for every $10 paid for this company in the '\ + # 'initial auction (rounded down). During operating rounds, the owning corporation may '\ + # 'spend 1-2 coal cubes to add additional stops on a route, following normal route rules.', value: 10, revenue: 5, abilities: [ @@ -169,9 +176,10 @@ module Entities { sym: 'B2', name: 'Sulphur Springs (B2)', - desc: 'The owning corporation may close this company permanently to turn Sulphur '\ - 'Springs (E3) into a city of the same color tile. If owned by a player, once in Brown Phase, '\ - 'provides $50 revenue per operating round, only if Sulphur Springs is connected by any rail.', + desc: 'Special abilities not implemented.', + # desc: 'The owning corporation may close this company permanently to turn Sulphur '\ + # 'Springs (E3) into a city of the same color tile. If owned by a player, once in Brown Phase, '\ + # 'provides $50 revenue per operating round, only if Sulphur Springs is connected by any rail.', value: 50, revenue: 0, abilities: [ @@ -183,9 +191,10 @@ module Entities { sym: 'B3', name: 'Steel Depot (B3)', - desc: 'Comes with the Steel Depot card. Once per operating round, owning corporation '\ - 'may use 0-2 steel from the Steel Depot card to lay yellow track for free. (Max '\ - 'of 6 track applies).', + desc: 'Special abilities not implemented.', + # desc: 'Comes with the Steel Depot card. Once per operating round, owning corporation '\ + # 'may use 0-2 steel from the Steel Depot card to lay yellow track for free. (Max '\ + # 'of 6 track applies).', value: 55, revenue: 10, abilities: [ @@ -195,8 +204,9 @@ module Entities { sym: 'B4', name: 'Gold Miner (B4)', - desc: 'This card acts as though it were a 20% share of Victor Gold Company. Does not '\ - 'count as a certificate. Closes when the first 5+ train is purchased.', + desc: 'Special abilities not implemented.', + # desc: 'This card acts as though it were a 20% share of Victor Gold Company. Does not '\ + # 'count as a certificate. Closes when the first 5+ train is purchased.', value: 20, revenue: 0, abilities: [ @@ -209,8 +219,9 @@ module Entities { sym: 'B5', name: 'Track Engineer (B5)', - desc: 'Every operating round, this company may treat one train as if it were +1. It may '\ - 'be a different train each operating round.', + desc: 'Special abilities not implemented.', + # desc: 'Every operating round, this company may treat one train as if it were +1. It may '\ + # 'be a different train each operating round.', value: 60, revenue: 10, abilities: [ @@ -220,8 +231,9 @@ module Entities { sym: 'B6', name: 'U.S. Mint Worker (B6)', - desc: 'The owning player may close this company to purchase 1-2 Victor Gold Company '\ - 'shares at a 50% discount each. These are bought simultaneously.', + desc: 'Special abilities not implemented.', + # desc: 'The owning player may close this company to purchase 1-2 Victor Gold Company '\ + # 'shares at a 50% discount each. These are bought simultaneously.', value: 40, revenue: 5, abilities: [ @@ -353,6 +365,17 @@ def self.def_metal_corporation(**kwargs) text_color: 'black', ), ].freeze + + DEBT_CORPORATION = { + sym: 'DEBT', + name: 'Debt', + color: 'red', + tokens: [], + logo: '18_royal_gorge/DEBT', + simple_logo: '18_royal_gorge/DEBT.alt', + type: :debt, + hide_shares: true, + }.freeze end end end diff --git a/lib/engine/game/g_18_royal_gorge/map.rb b/lib/engine/game/g_18_royal_gorge/map.rb index cc9f8914fb..122b115732 100644 --- a/lib/engine/game/g_18_royal_gorge/map.rb +++ b/lib/engine/game/g_18_royal_gorge/map.rb @@ -62,7 +62,24 @@ module Map 'color' => 'green', 'code' => 'city=revenue:40,slots:2;path=a:2,b:_0;path=a:3,b:_0;path=a:5,b:_0;label=S', }, - # TODO: 3-hex royal gorge tile + 'RG-D12-G' => { + 'count' => 1, + 'color' => 'green', + 'code' => 'city=revenue:30;path=a:2,b:_0;path=a:5,b:_0;border=edge:1', + 'hidden' => 1, + }, + 'RG-E13-G' => { + 'count' => 1, + 'color' => 'green', + 'code' => 'town=revenue:40;path=a:2,b:_0;path=a:4,b:_0;border=edge:1', + 'hidden' => 1, + }, + 'RG-F12-G' => { + 'count' => 1, + 'color' => 'green', + 'code' => 'city=revenue:60;path=a:1,b:_0;path=a:4,b:_0;border=edge:1', + 'hidden' => 1, + }, # brown '39' => 2, '40' => 1, @@ -90,7 +107,24 @@ module Map 'color' => 'brown', 'code' => 'city=revenue:60,slots:2;path=a:2,b:_0;path=a:3,b:_0;path=a:5,b:_0;label=S', }, - # TODO: 3-hex royal gorge tile + 'RG-D12-B' => { + 'count' => 1, + 'color' => 'brown', + 'code' => 'city=revenue:40;path=a:2,b:_0;path=a:5,b:_0;border=edge:1', + 'hidden' => 1, + }, + 'RG-E13-B' => { + 'count' => 1, + 'color' => 'brown', + 'code' => 'town=revenue:60;path=a:2,b:_0;path=a:4,b:_0;border=edge:1', + 'hidden' => 1, + }, + 'RG-F12-B' => { + 'count' => 1, + 'color' => 'brown', + 'code' => 'city=revenue:80;path=a:1,b:_0;path=a:4,b:_0;border=edge:1', + 'hidden' => 1, + }, # gray '171' => 1, }.freeze @@ -133,28 +167,27 @@ module Map %w[N2 G3 B4 F4 L4 N4 C5 G5 M5 H6 N6 C7 G7 M7 F8 E9 K9 M9 H10 L10 K11 M11 J12 N12 G13 K13 M13 N14 G15 I15 H16 J16 L16 E17 K17 H18 G19] => '', # mines only - %w[E7 H8 F18] => 'icon=image:18_royal_gorge/mine,sticky:1,name:mine;', + %w[E7 H8 F18] => 'icon=image:18_royal_gorge/mine,name:mine;', # mountains %w[I11 J10 L6] => 'upgrade=cost:10,terrain:mountain;', - %w[J8] => 'upgrade=cost:10,terrain:mountain;icon=image:18_royal_gorge/mine,sticky:1,name:mine;', + %w[J8] => 'upgrade=cost:10,terrain:mountain;icon=image:18_royal_gorge/mine,name:mine;', %w[C9 D16 E5 I5 J4 J6 K5] => 'upgrade=cost:20,terrain:mountain;', - %w[B10 D4 D6 D8 D18] => 'upgrade=cost:30,terrain:mountain;icon=image:18_royal_gorge/mine,sticky:1,name:mine;', + %w[B10 D4 D6 D8 D18] => 'upgrade=cost:30,terrain:mountain;icon=image:18_royal_gorge/mine,name:mine;', # water - %w[K15 M15] => 'upgrade=cost:20,terrain:water;icon=image:18_royal_gorge/mine,sticky:1,name:mine', + %w[K15 M15] => 'upgrade=cost:20,terrain:water;icon=image:18_royal_gorge/mine,name:mine', %w[G11 J14 N16] => 'upgrade=cost:20,terrain:water;', # towns - %w[B8 C3 G9 I17 K3 L8 M3] => 'town=revenue:0;', + %w[B8 C3 G9 I17 K3 M3] => 'town=revenue:0;', %w[E19 F16] => 'town=revenue:0;upgrade=cost:10,terrain:mountain;', - %w[H4 I9 F6 H14 L12] => 'town=revenue:0;icon=image:18_royal_gorge/mine,sticky:1,name:mine;', + %w[H4 I9 F6 H14 L12] => 'town=revenue:0;icon=image:18_royal_gorge/mine,name:mine;', %w[E3] => 'town=revenue:0;label=R', - %w[I13] => 'town=revenue:0;upgrade=cost:20,terrain:water;', # cities %w[G17 K7] => 'city=revenue:0', - %w[B6] => 'city=revenue:0;icon=image:18_royal_gorge/mine,sticky:1,name:mine;'\ - 'icon=image:18_royal_gorge/mine,sticky:1,name:mine;upgrade=cost:20,terrain:water,loc:1.5;', + %w[B6] => 'city=revenue:0;icon=image:18_royal_gorge/mine,name:mine;'\ + 'icon=image:18_royal_gorge/mine,name:mine;upgrade=cost:20,terrain:water,loc:1.5;', %w[C11] => 'city=revenue:0;upgrade=cost:20,terrain:water;label=S', - %w[I7] => 'city=revenue:0;icon=image:18_royal_gorge/mine,sticky:1,name:mine;'\ - 'icon=image:18_royal_gorge/mine,sticky:1,name:mine;', + %w[I7] => 'city=revenue:0;icon=image:18_royal_gorge/mine,name:mine;'\ + 'icon=image:18_royal_gorge/mine,name:mine;', %w[H12 L14] => 'city=revenue:0;upgrade=cost:20,terrain:water;', }, yellow: { @@ -201,6 +234,25 @@ module Map 'path=a:4,b:_0;path=a:5,b:_0;border=edge:3;', }, }.freeze + + HOME_TOWN_HEXES = { + 'FCC' => { + city: { + %w[I13] => 'city=revenue:0;upgrade=cost:20,terrain:water;', + }, + town: { + %w[I13] => 'town=revenue:0;upgrade=cost:20,terrain:water;', + }, + }, + 'NO' => { + city: { + %w[L8] => 'city=revenue:0;', + }, + town: { + %w[L8] => 'town=revenue:0;', + }, + }, + }.freeze end end end diff --git a/lib/engine/game/g_18_royal_gorge/meta.rb b/lib/engine/game/g_18_royal_gorge/meta.rb index d588c4302c..3969418fad 100644 --- a/lib/engine/game/g_18_royal_gorge/meta.rb +++ b/lib/engine/game/g_18_royal_gorge/meta.rb @@ -9,6 +9,7 @@ module Meta include Game::Meta DEV_STAGE = :prealpha + PROTOTYPE = true GAME_SUBTITLE = 'The Rails of Fremont County and the Royal Gorge Wars' GAME_DESIGNER = 'Kayla Ross & Denman Scofield' diff --git a/lib/engine/game/g_18_royal_gorge/trains.rb b/lib/engine/game/g_18_royal_gorge/trains.rb index 4a1fbd60a4..8e470b10a7 100644 --- a/lib/engine/game/g_18_royal_gorge/trains.rb +++ b/lib/engine/game/g_18_royal_gorge/trains.rb @@ -31,7 +31,6 @@ module Trains { 'nodes' => ['town'], 'pay' => 0, 'visit' => 99 }], price: 400, num: 3, - discount: { '2+' => 0 }, events: [{ 'type' => 'brown_par', 'when' => 3 }], }, { @@ -46,7 +45,7 @@ module Trains distance: [{ 'nodes' => %w[city offboard town], 'pay' => 6, 'visit' => 6, 'multiplier' => 2 }], price: 650, num: 5, - discount: { '3+' => 0 }, + events: [{ 'type' => 'trigger_endgame' }], }, ].freeze