Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[18RoyalGorge] config updates #10196

Merged
merged 1 commit into from
Jan 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 57 additions & 34 deletions lib/engine/game/g_18_royal_gorge/entities.rb
Original file line number Diff line number Diff line change
Expand Up @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand Down Expand Up @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand All @@ -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: [
Expand Down Expand Up @@ -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
Expand Down
78 changes: 65 additions & 13 deletions lib/engine/game/g_18_royal_gorge/map.rb
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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: {
Expand Down Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions lib/engine/game/g_18_royal_gorge/meta.rb
Original file line number Diff line number Diff line change
Expand Up @@ -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'
Expand Down
3 changes: 1 addition & 2 deletions lib/engine/game/g_18_royal_gorge/trains.rb
Original file line number Diff line number Diff line change
Expand Up @@ -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 }],
},
{
Expand All @@ -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

Expand Down
Loading