from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="dredging_site", prod_cargo_types_with_multipliers=[("SAND", 17)], prob_in_game="3", prob_map_gen="5", map_colour="194", special_flags=[ "IND_FLAG_BUILT_ON_WATER, IND_FLAG_AI_CREATES_AIR_AND_SHIP_ROUTES" ], location_checks=dict( location_check_industry_disallow_too_far_from_coast=True), prospect_chance="0.75", name="string(STR_IND_DREDGING_SITE)", nearby_station_name="string(STR_STATION_WATER)", fund_cost_multiplier="180", graphics_change_dates=[1906, 1945], ) industry.economy_variations["BASIC_TEMPERATE"].enabled = True industry.economy_variations[ "BASIC_TEMPERATE"].prod_cargo_types_with_multipliers = [("SAND", 17)] ###industry.economy_variations['BETTER_LIVING_THROUGH_CHEMISTRY'].enabled = True ###industry.economy_variations['BETTER_LIVING_THROUGH_CHEMISTRY'].prod_cargo_types_with_multipliers = [('SAND', 17)] industry.add_tile( id="dredging_site_tile_1", location_checks=TileLocationChecks(disallow_industry_adjacent=True, disallow_slopes=True),
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="oil_wells", prod_cargo_types_with_multipliers=[("OIL_", 28)], prob_in_game="6", prob_map_gen="8", map_colour="151", prospect_chance="0.75", name="TTD_STR_INDUSTRY_NAME_OIL_WELLS", fund_cost_multiplier="230", nearby_station_name="string(STR_STATION_WELLS)", pollution_and_squalor_factor=1, ) industry.economy_variations["BASIC_TROPIC"].enabled = True industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.add_tile( id="oil_wells_tile_1", location_checks=TileLocationChecks(disallow_industry_adjacent=True), animation_length=20, animation_looping=True, animation_speed=3, special_flags=["INDTILE_FLAG_RANDOM_ANIMATION"], random_trigger="oil_wells_tile_1_anim_control", custom_animation_next_frame="oil_wells_tile_1_anim_next_frame", custom_animation_control={ "macro": "oil_wells", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)", },
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='manganese_mine', prod_cargo_types=['MNO2'], prob_in_game='2', prob_random='7', prod_multiplier='[20, 0]', map_colour='16', location_checks=dict(cluster=[70, 3]), prospect_chance='0.75', name='string(STR_IND_MANGANESE_MINE)', nearby_station_name='string(STR_STATION_MANGANESE_MINES)', fund_cost_multiplier='232') industry.economy_variations['FIRS'].enabled = True industry.add_tile( id='manganese_mine_tile_1', animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= '((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)', custom_animation_control={ 'macro': 'first_frame_is_0', 'animation_triggers': 'bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)' }, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True))
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='dredging_site', prod_cargo_types=['SAND', 'CLAY'], prob_in_game='4', prob_random='5', prod_multiplier='[17, 17]', map_colour='194', spec_flags= 'bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_AI_CREATES_AIR_AND_SHIP_ROUTES)', location_checks=dict(coast_distance=True), prospect_chance='0.75', name='string(STR_IND_DREDGING_SITE)', nearby_station_name='string(STR_STATION_WATER)', fund_cost_multiplier='180', graphics_change_dates=[1906, 1945]) industry.economy_variations['FIRS'].enabled = True industry.economy_variations['BASIC_TEMPERATE'].enabled = True industry.add_tile( id='dredging_site_tile_1', location_checks=TileLocationChecks(disallow_industry_adjacent=True)) sprite_ground = industry.add_sprite(sprite_number='GROUNDSPRITE_WATER', ) spriteset_ground_overlay = industry.add_spriteset(type='empty', ) spriteset_platform = industry.add_spriteset(sprites=[(10, 10, 64, 100, -31, -67)], )
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="soda_ash_mine", prod_cargo_types_with_multipliers=[("SASH", 16), ("SALT", 18)], prob_in_game="4", prob_map_gen="7", map_colour="169", location_checks=dict(cluster=[70, 3]), prospect_chance="0.75", name="string(STR_IND_SODA_ASH_MINE)", nearby_station_name="string(STR_STATION_TRONA_BEDS)", fund_cost_multiplier="180", ) industry.economy_variations["STEELTOWN"].enabled = True industry.add_tile( id="soda_ash_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= "((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)", custom_animation_control={ "macro": "first_frame_is_0", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)", }, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True), )
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='limestone_mine', prod_cargo_types=['LIME'], prob_in_game='4', prob_random='7', prod_multiplier='[20, 0]', map_colour='207', location_checks=dict(cluster=[70, 3]), prospect_chance='0.75', name='string(STR_IND_LIMESTONE_MINE)', nearby_station_name='string(STR_STATION_LIMESTONE_MINES)', fund_cost_multiplier='232') industry.economy_variations['STEELTOWN'].enabled = True industry.add_tile( id='limestone_mine_tile_1', animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= '((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)', custom_animation_control={ 'macro': 'first_frame_is_0', 'animation_triggers': 'bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)' }, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True))
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive(id='soda_ash_mine', prod_cargo_types=['SASH', 'SALT'], prob_in_game='4', prob_random='7', prod_multiplier='[16, 18]', map_colour='169', location_checks=dict(cluster=[70, 3]), prospect_chance='0.75', name='string(STR_IND_SODA_ASH_MINE)', nearby_station_name='string(STR_STATION_TRONA_BEDS)', fund_cost_multiplier='180') industry.economy_variations['FIRS'].enabled = True industry.add_tile(id='soda_ash_mine_tile_1', animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame='((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)', custom_animation_control={'macro': 'first_frame_is_0', 'animation_triggers': 'bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)'}, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True)) industry.add_tile(id='soda_ash_mine_tile_2', animation_length=71, animation_looping=True, animation_speed=2, location_checks=TileLocationChecks(require_effectively_flat=True,
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="limestone_mine", prod_cargo_types_with_multipliers=[("LIME", 20)], prob_in_game="4", prob_map_gen="7", map_colour="69", location_checks=dict(cluster=[70, 3]), prospect_chance="0.75", name="string(STR_IND_LIMESTONE_MINE)", nearby_station_name="string(STR_STATION_LIMESTONE_MINES)", fund_cost_multiplier="232", ) industry.economy_variations["STEELTOWN"].enabled = True industry.add_tile( id="limestone_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame="((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)", custom_animation_control={ "macro": "first_frame_is_0", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)", }, location_checks=TileLocationChecks( require_effectively_flat=True, disallow_industry_adjacent=True ),
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='junk_yard', prod_cargo_types=['SCMT'], prob_in_game='3', prob_random='7', prod_multiplier='[12, 0]', map_colour='64', # no industry location checks for junk yard, by design prospect_chance='0.75', name='string(STR_IND_JUNKYARD)', nearby_station_name='string(STR_STATION_BONEYARD)', fund_cost_multiplier='101', graphics_change_dates=[1949, 1960, 1980, 2000], intro_year=1850) industry.economy_variations['FIRS'].enabled = True industry.economy_variations['BASIC_TEMPERATE'].enabled = True industry.economy_variations['STEELTOWN'].enabled = True industry.economy_variations['STEELTOWN'].prob_random = '14' industry.add_tile(id='junk_yard_tile_1', location_checks=TileLocationChecks( disallow_steep_slopes=True, require_houses_nearby=True, disallow_industry_adjacent=True)) sprite_ground = industry.add_sprite(sprite_number='GROUNDTILE_MUD_TRACKS') spriteset_ground_overlay = industry.add_spriteset(type='empty') spriteset_1 = industry.add_spriteset(sprites=[(10, 10, 64, 55, -31, -24)], )
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive(id='iron_ore_mine', map_colour='55', prob_in_game='4', prob_random='7', prospect_chance='0.75', name='TTD_STR_INDUSTRY_NAME_IRON_ORE_MINE', location_checks=dict(cluster=[70, 3]), prod_multiplier='[20]', prod_cargo_types=['IORE'], nearby_station_name='string(STR_STATION_IRONSTONE)', fund_cost_multiplier='232') industry.economy_variations['FIRS'].enabled = True industry.economy_variations['BASIC_TEMPERATE'].enabled = True industry.economy_variations['STEELTOWN'].enabled = True industry.economy_variations['STEELTOWN'].prob_random = '10' industry.add_tile(id='iron_ore_mine_tile_1', animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame='((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)', custom_animation_control={'macro': 'first_frame_is_0', 'animation_triggers': 'bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)'}, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True)) industry.add_tile(id='iron_ore_mine_tile_2', animation_length=7,
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="coal_mine", prod_cargo_types_with_multipliers=[("COAL", 20)], prob_in_game="4", prob_map_gen="7", map_colour="1", location_checks=dict(require_cluster=[70, 3]), prospect_chance="0.75", name="TTD_STR_INDUSTRY_NAME_COAL_MINE", nearby_station_name="string(STR_STATION_COLLIERY)", fund_cost_multiplier="252", pollution_and_squalor_factor=1, ) industry.economy_variations["BASIC_TEMPERATE"].enabled = True industry.economy_variations["STEELTOWN"].enabled = True industry.economy_variations["STEELTOWN"].prob_map_gen = "10" # industry.economy_variations['IN_A_HOT_COUNTRY'].enabled = True industry.add_tile( id="coal_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= "((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)", custom_animation_control={ "macro": "first_frame_is_0",
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="iron_ore_mine", prod_cargo_types_with_multipliers=[("IORE", 20)], map_colour="55", prob_in_game="4", prob_map_gen="7", prospect_chance="0.75", name="TTD_STR_INDUSTRY_NAME_IRON_ORE_MINE", location_checks=dict(require_cluster=[70, 3]), nearby_station_name="string(STR_STATION_IRONSTONE)", fund_cost_multiplier="232", ) industry.economy_variations["BASIC_TEMPERATE"].enabled = True industry.economy_variations["STEELTOWN"].enabled = True industry.economy_variations["STEELTOWN"].prob_map_gen = "10" industry.add_tile( id="iron_ore_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= "((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)", custom_animation_control={ "macro": "first_frame_is_0", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)", }, location_checks=TileLocationChecks(require_effectively_flat=True,
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='coal_mine', prod_cargo_types=['COAL'], prob_in_game='5', prob_random='7', prod_multiplier='[20, 0]', map_colour='1', location_checks=dict(cluster=[70, 3]), prospect_chance='0.75', name='TTD_STR_INDUSTRY_NAME_COAL_MINE', nearby_station_name='string(STR_STATION_COLLIERY)', fund_cost_multiplier='252') industry.economy_variations['FIRS'].enabled = True industry.economy_variations['BASIC_TEMPERATE'].enabled = True industry.economy_variations['STEELTOWN'].enabled = True industry.economy_variations['STEELTOWN'].prob_random = '10' industry.add_tile( id='coal_mine_tile_1', animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= '((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)', custom_animation_control={ 'macro': 'first_frame_is_0', 'animation_triggers': 'bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)' },
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='oil_rig', prod_cargo_types=['OIL_', 'PASS'], prob_in_game='6', prob_random='6', prod_multiplier='[29, 4]', substitute='5', map_colour='151', spec_flags= 'bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_AI_CREATES_AIR_AND_SHIP_ROUTES)', location_checks=dict(coast_distance=True), prospect_chance='0.75', name='TTD_STR_INDUSTRY_NAME_OIL_RIG', nearby_station_name='string(STR_STATION_OIL_RIG)', fund_cost_multiplier='255', override='5', intro_year=1967) industry.economy_variations['FIRS'].enabled = True industry.economy_variations['FERNZ'].enabled = True industry.economy_variations['MISTAH_KURTZ'].enabled = True industry.add_tile( id='oil_rig_tile_1', location_checks=TileLocationChecks(disallow_industry_adjacent=True)) sprite_ground = industry.add_sprite(sprite_number='GROUNDSPRITE_WATER', ) spriteset_ground_empty = industry.add_spriteset(type='empty') sprite_1 = industry.add_sprite(sprite_number='2096')
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="manganese_mine", prod_cargo_types_with_multipliers=[("MNO2", 20)], prob_in_game="4", prob_map_gen="7", map_colour="16", location_checks=dict(require_cluster=[70, 3]), prospect_chance="0.75", name="string(STR_IND_MANGANESE_MINE)", nearby_station_name="string(STR_STATION_MANGANESE_MINES)", fund_cost_multiplier="232", pollution_and_squalor_factor=1, ) industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.add_tile( id="manganese_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= "((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)", custom_animation_control={ "macro": "first_frame_is_0", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)", }, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True),
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='pyrite_mine', prod_cargo_types=['PORE'], prob_in_game='4', prob_random='7', prod_multiplier='[20, 0]', map_colour='181', location_checks=dict(cluster=[70, 3]), prospect_chance='0.75', name='string(STR_IND_PYRITE_MINE)', nearby_station_name='string(STR_STATION_PYRITES)', fund_cost_multiplier='252') industry.economy_variations['FIRS'].enabled = True industry.add_tile( id='pyrite_mine_tile_1', animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= '((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)', custom_animation_control={ 'macro': 'first_frame_is_0', 'animation_triggers': 'bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)' }, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True))
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="potash_mine", prod_cargo_types_with_multipliers=[("POTA", 20)], prob_in_game="4", prob_map_gen="7", map_colour="125", location_checks=dict(cluster=[70, 3]), prospect_chance="0.75", name="string(STR_IND_POTASH_MINE)", nearby_station_name="string(STR_STATION_MINE)", fund_cost_multiplier="232", ) # industry.economy_variations['BASIC_ARCTIC'].enabled = True # exists in Steeltown primarily to give a direct cargo to Bulk Terminal industry.economy_variations["STEELTOWN"].enabled = True industry.economy_variations["STEELTOWN"].prod_cargo_types_with_multipliers = [ ("POTA", 20), ("SALT", 15), ] industry.add_tile( id="potash_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= "((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)",
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="clay_pit", prod_cargo_types_with_multipliers=[("KAOL", 16)], prob_in_game="4", prob_map_gen="7", map_colour="45", # allow longer distance on clustering than usual, and more clusters, as industry is hard to locate location_checks=dict(cluster=[90, 4]), prospect_chance="0.75", name="string(STR_IND_CLAY_PIT)", nearby_station_name="string(STR_STATION_PIT)", fund_cost_multiplier="200", ) industry.economy_variations["BASIC_TEMPERATE"].enabled = True industry.economy_variations[ "BASIC_TEMPERATE"].prod_cargo_types_with_multipliers = [("KAOL", 16)] # 2 tiles for this industry: pit outer tile cannot be on slopes; pit inner tiles and processor tiles can be # cases for both tiles ensure that tiles can only be built at same height as north tile industry.add_tile( id="clay_pit_tile_1", location_checks=TileLocationChecks( require_effectively_flat=True, disallow_desert=True, disallow_industry_adjacent=True, ), ) industry.add_tile(
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="copper_mine", prod_cargo_types_with_multipliers=[("CORE", 20)], prob_in_game="7", prob_map_gen="7", map_colour="10", location_checks=dict(cluster=[60, 3]), # it's rare to force co-location of secondaries, but this one is near copper mine by design # !! won't work in Tropic Basic, no concentrator # location_checks=dict(industry_max_distance=['copper_concentrator', 72]), prospect_chance="0.75", name="TTD_STR_INDUSTRY_NAME_COPPER_ORE_MINE", nearby_station_name="string(STR_STATION_COPPER_LODE)", fund_cost_multiplier="238", ) industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.economy_variations["BASIC_TROPIC"].enabled = True industry.add_tile( id="copper_mine_tile_1", animation_length=71, animation_looping=True, animation_speed=2, custom_animation_control={ "macro": "random_first_frame", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_CONSTRUCTION_STATE)", },
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="nitrate_mine", prod_cargo_types_with_multipliers=[("FMSP", 12), ("NITR", 17)], prob_in_game="4", prob_map_gen="7", map_colour="121", location_checks=dict(cluster=[70, 3]), prospect_chance="0.75", name="string(STR_IND_NITRATE_MINE)", nearby_station_name="string(STR_STATION_SALTPETER_WORKS)", fund_cost_multiplier="180", ) industry.economy_variations["BASIC_TROPIC"].enabled = True industry.add_tile( id="nitrate_mine_tile_1", animation_length=7, animation_looping=True, animation_speed=3, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True), ) sprite_ground = industry.add_sprite( sprite_number="GROUNDTILE_MUD_TRACKS" # ground tile same as overlay tile ) spriteset_ground_overlay = industry.add_spriteset(type="empty")
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='quarry', prod_cargo_types=['SAND', 'LIME'], prob_in_game='6', prob_random='7', prod_multiplier='[14, 14]', map_colour='194', # allow longer distance on clustering than usual, and more clusters, as industry is hard to locate location_checks=dict(cluster=[90, 4]), prospect_chance='0.75', name='string(STR_IND_QUARRY)', nearby_station_name='string(STR_IND_QUARRY)', fund_cost_multiplier='210') industry.economy_variations['FIRS'].enabled = True industry.economy_variations['MISTAH_KURTZ'].enabled = True industry.economy_variations['STEELTOWN'].enabled = True industry.economy_variations['STEELTOWN'].prod_cargo_types = ['SAND', 'LIME'] # 2 tiles for this industry: pit outer tile cannot be on slopes; pit inner tiles and processor tiles can be # cases for both tiles ensure that tiles can only be built at same height as north tile industry.add_tile(id='quarry_tile_1', location_checks=TileLocationChecks( require_effectively_flat=True, disallow_industry_adjacent=True)) industry.add_tile( id='quarry_tile_2', animation_length=56, animation_looping=True,
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="peatlands", prod_cargo_types_with_multipliers=[("PEAT", 14)], prob_in_game="4", prob_map_gen="7", map_colour="72", # allow longer distance on clustering than usual, and more clusters, as industry is hard to locate location_checks=dict(require_cluster=[90, 4]), prospect_chance="0.75", name="string(STR_IND_PEATLANDS)", nearby_station_name="string(STR_IND_PEATLANDS)", fund_cost_multiplier="210", pollution_and_squalor_factor=1, ) industry.economy_variations["BASIC_ARCTIC"].enabled = True # 2 tiles for this industry: pit outer tile cannot be on slopes; pit inner tiles and processor tiles can be # cases for both tiles ensure that tiles can only be built at same height as north tile industry.add_tile( id="peatlands_tile_1", location_checks=TileLocationChecks( require_effectively_flat=True, disallow_desert=True, disallow_industry_adjacent=True, ), ) industry.add_tile( id="peatlands_tile_2",
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="phosphate_mine", prod_cargo_types_with_multipliers=[("PHOS", 16)], prob_in_game="4", prob_map_gen="7", map_colour="45", # allow longer distance on clustering than usual, and more clusters, as industry is hard to locate location_checks=dict(require_cluster=[90, 4]), prospect_chance="0.75", name="string(STR_IND_PHOSPHATE_MINE)", nearby_station_name="string(STR_STATION_PIT)", fund_cost_multiplier="200", pollution_and_squalor_factor=1, ) industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.economy_variations["IN_A_HOT_COUNTRY"].prod_cargo_types_with_multipliers = [ ("PHOS", 16), ("CLAY", 10), ] industry.economy_variations["BASIC_ARCTIC"].enabled = True industry.economy_variations["BASIC_ARCTIC"].prod_cargo_types_with_multipliers = [ ("PHOS", 16) ] # 2 tiles for this industry: pit outer tile cannot be on slopes; pit inner tiles and processor tiles can be # cases for both tiles ensure that tiles can only be built at same height as north tile industry.add_tile( id="phosphate_mine_tile_1",
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="oil_rig", prod_cargo_types_with_multipliers=[("OIL_", 29), ("PASS", 4)], prob_in_game="6", prob_map_gen="6", substitute="5", map_colour="151", special_flags=[ "IND_FLAG_BUILT_ON_WATER", "IND_FLAG_AI_CREATES_AIR_AND_SHIP_ROUTES", ], location_checks=dict(coast_distance=True), prospect_chance="0.75", name="TTD_STR_INDUSTRY_NAME_OIL_RIG", nearby_station_name="string(STR_STATION_OIL_RIG)", fund_cost_multiplier="255", override="5", intro_year=1967, ) industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.add_tile( id="oil_rig_tile_1", location_checks=TileLocationChecks( disallow_industry_adjacent=True, disallow_slopes=True ), )
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='oil_wells', prob_in_game='4', prob_random='8', map_colour='151', prospect_chance='0.75', name='TTD_STR_INDUSTRY_NAME_OIL_WELLS', prod_cargo_types=['OIL_'], fund_cost_multiplier='230', prod_multiplier='[28]', nearby_station_name='string(STR_STATION_WELLS)', intro_year=1830) industry.economy_variations['FIRS'].enabled = True industry.economy_variations['BASIC_TROPIC'].enabled = True industry.economy_variations['MISTAH_KURTZ'].enabled = True industry.add_tile( id='oil_wells_tile_1', location_checks=TileLocationChecks(disallow_industry_adjacent=True), animation_length=20, animation_looping=True, animation_speed=3, special_flags='bitmask(INDTILE_FLAG_RANDOM_ANIMATION)', random_trigger='oil_wells_tile_1_anim_control', custom_animation_next_frame='oil_wells_tile_1_anim_next_frame', custom_animation_control={ 'macro': 'oil_wells', 'animation_triggers': 'bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)'
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="quarry", prod_cargo_types_with_multipliers=[("SAND", 14), ("LIME", 14)], prob_in_game="4", prob_map_gen="7", map_colour="194", # allow longer distance on clustering than usual, and more clusters, as industry is hard to locate location_checks=dict(cluster=[90, 4]), prospect_chance="0.75", name="string(STR_IND_QUARRY)", nearby_station_name="string(STR_IND_QUARRY)", fund_cost_multiplier="210", ) ###industry.economy_variations['BETTER_LIVING_THROUGH_CHEMISTRY'].enabled = True industry.economy_variations["STEELTOWN"].enabled = True industry.economy_variations["STEELTOWN"].prod_cargo_types_with_multipliers = [ ("SAND", 14), ("LIME", 14), ] industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.economy_variations[ "IN_A_HOT_COUNTRY"].prod_cargo_types_with_multipliers = [ ("SAND", 14), ("GRVL", 14), ] # industry.economy_variations['IN_A_HOT_COUNTRY'].prod_cargo_types_with_multipliers = [('LIME', 16)]
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='diamond_mine', map_colour='69', prospect_chance='0.75', prob_random='4', prob_in_game='7', layouts="AUTO", override='INDUSTRYTYPE_DIAMOND_MINE', prod_multiplier='[12]', # diamond mine doesn't cluster, by design - no industry location checks needed prod_cargo_types=['DIAM'], substitute='INDUSTRYTYPE_DIAMOND_MINE', name='TTD_STR_INDUSTRY_NAME_DIAMOND_MINE', nearby_station_name='string(STR_STATION_KIMBERLITE_DEPOSITS)', fund_cost_multiplier='232') industry.economy_variations['FERNZ'].enabled = True industry.economy_variations['FERNZ'].name = 'TTD_STR_INDUSTRY_NAME_GOLD_MINE' industry.economy_variations['FERNZ'].prod_cargo_types = ['GOLD'] industry.economy_variations['MISTAH_KURTZ'].enabled = True industry.add_tile( id='diamond_mine_tile_1', animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= '((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)', custom_animation_control={
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id='nitrate_mine', prod_cargo_types=['NITR'], prob_in_game='4', prob_random='7', prod_multiplier='[12, 17]', map_colour='121', location_checks=dict(cluster=[70, 3]), prospect_chance='0.75', name='string(STR_IND_NITRATE_MINE)', nearby_station_name='string(STR_STATION_SALTPETER_WORKS)', fund_cost_multiplier='180') industry.economy_variations['FIRS'].enabled = True industry.add_tile(id='nitrate_mine_tile_1', animation_length=7, animation_looping=True, animation_speed=3, location_checks=TileLocationChecks( require_effectively_flat=True, disallow_industry_adjacent=True)) sprite_ground = industry.add_sprite( sprite_number='GROUNDTILE_MUD_TRACKS' # ground tile same as overlay tile ) spriteset_ground_overlay = industry.add_spriteset(type='empty')
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="diamond_mine", prod_cargo_types_with_multipliers=[("DIAM", 12)], map_colour="69", prospect_chance="0.75", prob_map_gen="4", prob_in_game="7", layouts="AUTO", override="INDUSTRYTYPE_DIAMOND_MINE", # diamond mine doesn't cluster, by design - no industry location checks needed substitute="INDUSTRYTYPE_DIAMOND_MINE", name="TTD_STR_INDUSTRY_NAME_DIAMOND_MINE", nearby_station_name="string(STR_STATION_KIMBERLITE_DEPOSITS)", fund_cost_multiplier="232", pollution_and_squalor_factor=1, ) industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.add_tile( id="diamond_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= "((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)", custom_animation_control={ "macro": "first_frame_is_0", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)",
from industry import IndustryPrimaryExtractive, TileLocationChecks industry = IndustryPrimaryExtractive( id="chromite_mine", prod_cargo_types_with_multipliers=[("CHRO", 20)], prob_in_game="4", prob_map_gen="7", map_colour="181", location_checks=dict(require_cluster=[70, 3]), prospect_chance="0.75", name="string(STR_IND_CHROMITE_MINE)", nearby_station_name="string(STR_STATION_PYRITES)", fund_cost_multiplier="252", ) # industry.economy_variations['IN_A_HOT_COUNTRY'].enabled = True industry.add_tile( id="chromite_mine_tile_1", animation_length=81, animation_looping=True, animation_speed=1, custom_animation_next_frame= "((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME)", custom_animation_control={ "macro": "first_frame_is_0", "animation_triggers": "bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP)", }, location_checks=TileLocationChecks(require_effectively_flat=True, disallow_industry_adjacent=True), )