location_checks=dict(cluster=[72, 4]), prod_cargo_types=['BEER', 'FRUT'], nearby_station_name='string(STR_STATION_WINERY)', fund_cost_multiplier='54', prod_multiplier='[11, 8]', override_default_construction_states=True) industry.economy_variations['BASIC_TROPIC'].enabled = True industry.economy_variations['BASIC_TROPIC'].prod_multiplier = '[9, 9]' industry.economy_variations['FERNZ'].enabled = True industry.add_tile(id='vineyard_tile_1', foundations='return CB_RESULT_NO_FOUNDATIONS', autoslope='return CB_RESULT_NO_AUTOSLOPE', location_checks=TileLocationChecks(disallow_above_snowline=True, disallow_desert=True, disallow_industry_adjacent=True)) industry.add_tile(id='vineyard_tile_2', # house autoslope='return CB_RESULT_AUTOSLOPE', location_checks=TileLocationChecks(disallow_above_snowline=True, disallow_desert=True, disallow_industry_adjacent=True)) sprite_ground = industry.add_sprite( sprite_number=3962 ) spriteset_ground_overlay = industry.add_spriteset( type='empty' ) spriteset_1 = industry.add_spriteset(
industry = IndustryPrimaryOrganic( id="sheep_farm", prod_cargo_types_with_multipliers=[("LVST", 12), ("WOOL", 14)], prob_in_game="4", prob_map_gen="11", map_colour="168", location_checks=dict(require_cluster=[72, 4]), prospect_chance="0.75", name="string(STR_IND_SHEEPFARM)", nearby_station_name="string(STR_STATION_SHEEP_FOLD)", fund_cost_multiplier="45", ) industry.add_tile( id="sheep_farm_tile_1", location_checks=TileLocationChecks(disallow_coast=True, disallow_industry_adjacent=True), ) spriteset_ground = industry.add_spriteset(type="empty") spriteset_ground_overlay = industry.add_spriteset(type="empty") spriteset_1 = industry.add_spriteset(sprites=[(10, 10, 64, 52, -31, -21)], ) spriteset_2 = industry.add_spriteset(sprites=[(80, 10, 64, 52, -31, -19)], ) spriteset_3 = industry.add_spriteset(sprites=[(150, 10, 64, 52, -31, -21)], ) spriteset_4 = industry.add_spriteset(sprites=[(220, 10, 64, 52, -31, -21)], ) spriteset_5 = industry.add_spriteset(sprites=[(290, 10, 64, 52, -31, -21)], ) industry.add_spritelayout( id="sheep_farm_spritelayout_1", ground_sprite=spriteset_ground, ground_overlay=spriteset_ground_overlay,
prod_multiplier='[14, 14]', map_colour='209', spec_flags='bitmask(IND_FLAG_PLANT_FIELDS_PERIODICALLY, IND_FLAG_PLANT_FIELDS_WHEN_BUILT)', location_checks=dict(cluster=[72, 4]), prospect_chance='0.75', name='string(STR_IND_ARABLE_FARM)', extra_text_fund='string(STR_FUND_ARABLE_FARM)', nearby_station_name='string(STR_STATION_FARM_1)', fund_cost_multiplier='55', graphics_change_dates=[1928]) industry.economy_variations['FIRS'].enabled = True industry.add_tile(id='arable_farm_tile_1', location_checks=TileLocationChecks(disallow_slopes=True, disallow_above_snowline=True, disallow_desert=True, disallow_industry_adjacent=True)) sprite_ground = industry.add_sprite( sprite_number='GROUNDTILE_MUD_TRACKS' ) spriteset_ground_empty = industry.add_spriteset( type='empty' ) spriteset_ground_overlay = industry.add_spriteset( type='empty' ) spriteset_1 = industry.add_spriteset( sprites=[(10, 10, 64, 59, -31, -28)], )
"IND_FLAG_NO_PRODUCTION_INCREASE", "IND_FLAG_AI_CREATES_AIR_AND_SHIP_ROUTES", ], location_checks=dict(cluster=[60, 5], coast_distance=True), prospect_chance="0.75", name="string(STR_IND_FISH_FARM)", nearby_station_name= "string(STR_STATION_SEAFOOD)", # appears to not work - maybe water industries don't accept station names? fund_cost_multiplier="88", ) industry.economy_variations["BASIC_ARCTIC"].enabled = True industry.add_tile( id="fish_farm_tile_1", land_shape_flags="bitmask(LSF_ONLY_ON_FLAT_LAND)", location_checks=TileLocationChecks(always_allow_founder=False), ) industry.add_tile( id="fish_farm_tile_2", foundations="return CB_RESULT_NO_FOUNDATIONS", location_checks=TileLocationChecks(always_allow_founder=False, require_coast=True), ) sprite_ground = industry.add_sprite(sprite_number="GROUNDSPRITE_WATER", ) spriteset_ground_empty = industry.add_spriteset(type="empty") spriteset_concrete = industry.add_spriteset( sprites=[(10, 10, 64, 39, -31, -8)], always_draw=1, )
nearby_station_name="string(STR_STATION_TAPPERS_SHED)", location_checks=dict(require_cluster=[72, 4]), fund_cost_multiplier="54", override_default_construction_states=True, ) industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.economy_variations[ "IN_A_HOT_COUNTRY"].prod_cargo_types_with_multipliers = [("RUBR", 16)] # industry.economy_variations['IN_A_HOT_COUNTRY'].prod_cargo_types_with_multipliers = [('LATX', 16)] industry.add_tile( id="rubber_plantation_tile_1", foundations="return CB_RESULT_NO_FOUNDATIONS", autoslope="return CB_RESULT_NO_AUTOSLOPE", location_checks=TileLocationChecks( disallow_above_snowline=True, disallow_coast=True, disallow_industry_adjacent=True, ), ) industry.add_tile( id="rubber_plantation_tile_2", # house autoslope="return CB_RESULT_AUTOSLOPE", location_checks=TileLocationChecks( disallow_above_snowline=True, disallow_coast=True, disallow_industry_adjacent=True, ), ) sprite_ground = industry.add_sprite(sprite_number=3962)
name="string(STR_IND_ORCHARD_PIGGERY)", extra_text_fund="string(STR_FUND_ORCHARD_PIGGERY)", location_checks=dict(require_cluster=[72, 4]), nearby_station_name="string(STR_STATION_ORCHARDS)", fund_cost_multiplier="54", override_default_construction_states=True, pollution_and_squalor_factor=1, ) industry.economy_variations["BASIC_TEMPERATE"].enabled = True industry.add_tile( id="orchard_piggery_tile_1", foundations="return CB_RESULT_NO_FOUNDATIONS", autoslope="return CB_RESULT_NO_AUTOSLOPE", location_checks=TileLocationChecks( disallow_above_snowline=True, disallow_desert=True, disallow_industry_adjacent=True, ), ) industry.add_tile( id="orchard_piggery_tile_2", autoslope="return CB_RESULT_AUTOSLOPE", location_checks=TileLocationChecks( disallow_above_snowline=True, disallow_desert=True, disallow_industry_adjacent=True, ), ) sprite_ground = industry.add_sprite(sprite_number="GROUNDTILE_MUD_TRACKS")
# industry.economy_variations['IN_A_HOT_COUNTRY'].prod_cargo_types_with_multipliers = [('MAIZ', 14), ('LVST', 13), ('NUTS', 14), ('WOOL', 10)] industry.economy_variations["IN_A_HOT_COUNTRY"].prob_map_gen = "14" ###industry.economy_variations['BETTER_LIVING_THROUGH_CHEMISTRY'].enabled = True ###industry.economy_variations['BETTER_LIVING_THROUGH_CHEMISTRY'].prod_cargo_types_with_multipliers = [('GRAI', 14), ('LVST', 13)] industry.economy_variations["STEELTOWN"].enabled = True industry.economy_variations["STEELTOWN"].prod_cargo_types_with_multipliers = [ ("FOOD", 14) ] industry.add_tile( id="farm_tile_1", location_checks=TileLocationChecks( disallow_steep_slopes=True, disallow_above_snowline=True, disallow_desert=True, disallow_coast=True, disallow_industry_adjacent=True, ), ) spriteset_ground = industry.add_spriteset(type="empty") sprite_ground_mud = industry.add_sprite(sprite_number="GROUNDSPRITE_CLEARED") spriteset_ground_overlay = industry.add_spriteset(type="empty") spriteset_1 = industry.add_spriteset( sprites=[(10, 10, 64, 52, -31, -21)], ) spriteset_1_ground = industry.add_spriteset( sprites=[(10, 70, 64, 52, -31, -21)], ) spriteset_2 = industry.add_spriteset(
prod_multiplier='[5, 0]', map_colour='207', spec_flags='bitmask(IND_FLAG_NO_PRODUCTION_INCREASE)', # herding_coop doesn't cluster, by design - no industry location checks needed prospect_chance='0.75', name='string(STR_IND_HERDING_COOP)', extra_text_fund='string(STR_FUND_HERDING_COOP)', nearby_station_name='string(STR_STATION_HERDING_COOP)', fund_cost_multiplier='88') industry.economy_variations['BASIC_ARCTIC'].enabled = True industry.add_tile(id='herding_coop_tile_1', animation_length=71, animation_looping=True, animation_speed=2, location_checks=TileLocationChecks(disallow_desert=True, disallow_coast=True, disallow_industry_adjacent=True)) spriteset_ground = industry.add_spriteset( type='empty' ) sprite_ground_mud = industry.add_sprite( sprite_number=3943 ) spriteset_ground_overlay = industry.add_spriteset( type='empty' ) spriteset_1 = industry.add_spriteset( sprites=[(10, 10, 64, 52, -31, -21)],
fund_cost_multiplier="95", substitute="INDUSTRYTYPE_FOREST", nearby_station_name="string(STR_STATION_FOREST)", graphics_change_dates=[1935, 1990], override_default_construction_states=True, ) industry.economy_variations["BASIC_ARCTIC"].enabled = True industry.economy_variations[ "BASIC_ARCTIC"].prod_cargo_types_with_multipliers = [("WOOD", 24)] industry.economy_variations["IN_A_HOT_COUNTRY"].enabled = True industry.add_tile( id="forest_tile_1", foundations="return CB_RESULT_NO_FOUNDATIONS", autoslope="return CB_RESULT_NO_AUTOSLOPE", location_checks=TileLocationChecks(disallow_desert=True, disallow_coast=True, disallow_industry_adjacent=True), ) industry.add_tile( id="forest_tile_2", location_checks=TileLocationChecks(disallow_desert=True, disallow_coast=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, 78, -31, -45)], ) spriteset_2 = industry.add_spriteset(sprites=[(80, 10, 64, 78, -31, -45)], ) spriteset_3 = industry.add_spriteset(sprites=[(150, 10, 64, 78, -31, -45)], )
prod_multiplier='[19]', substitute='INDUSTRYTYPE_FOREST', nearby_station_name='string(STR_STATION_FOREST)', graphics_change_dates=[1935, 1990], override_default_construction_states=True) industry.economy_variations['FIRS'].enabled = True industry.economy_variations['BASIC_ARCTIC'].enabled = True industry.economy_variations['BASIC_ARCTIC'].prod_cargo_types = ['WOOD'] industry.economy_variations['BASIC_ARCTIC'].prod_multiplier = '[24]' industry.economy_variations['MISTAH_KURTZ'].enabled = True industry.add_tile(id='forest_tile_1', foundations='return CB_RESULT_NO_FOUNDATIONS', autoslope='return CB_RESULT_NO_AUTOSLOPE', location_checks=TileLocationChecks( disallow_desert=True, disallow_coast=True, disallow_industry_adjacent=True)) industry.add_tile(id='forest_tile_2', location_checks=TileLocationChecks( disallow_desert=True, disallow_coast=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, 78, -31, -45)], ) spriteset_2 = industry.add_spriteset(sprites=[(80, 10, 64, 78, -31, -45)], ) spriteset_3 = industry.add_spriteset(sprites=[(150, 10, 64, 78, -31, -45)], )
id='ranch', prod_cargo_types=['LVST', 'WOOL'], prob_in_game='4', prob_random='11', prod_multiplier='[14, 13]', map_colour='168', location_checks=dict(cluster=[72, 4]), prospect_chance='0.75', name='string(STR_IND_RANCH)', nearby_station_name='string(STR_STATION_FARM_3)', fund_cost_multiplier='45') industry.economy_variations['BASIC_TROPIC'].enabled = True industry.add_tile(id='ranch_tile_1', location_checks=TileLocationChecks( disallow_coast=True, disallow_industry_adjacent=True)) spriteset_ground = industry.add_spriteset(type='empty') spriteset_ground_overlay = industry.add_spriteset(type='empty') spriteset_1 = industry.add_spriteset(sprites=[(10, 10, 64, 52, -31, -21)], ) spriteset_2 = industry.add_spriteset(sprites=[(80, 10, 64, 52, -31, -19)], ) spriteset_3 = industry.add_spriteset(sprites=[(150, 10, 64, 52, -31, -21)], ) spriteset_4 = industry.add_spriteset(sprites=[(220, 10, 64, 52, -31, -21)], ) spriteset_5 = industry.add_spriteset(sprites=[(290, 10, 64, 52, -31, -21)], ) industry.add_spritelayout(id='ranch_spritelayout_1', ground_sprite=spriteset_ground, ground_overlay=spriteset_ground_overlay, building_sprites=[spriteset_1], terrain_aware_ground=True)
prod_multiplier='[14, 14]', map_colour='72', # 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_PEATLANDS)', nearby_station_name='string(STR_IND_PEATLANDS)', fund_cost_multiplier='210') industry.economy_variations['FIRS'].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', foundations= 'return CB_RESULT_NO_FOUNDATIONS', # might not be needed, cargo-culted from previous code, didn't test; may be needed to stop rear foundations showing in some cases? autoslope='return CB_RESULT_NO_AUTOSLOPE', location_checks=TileLocationChecks(disallow_slopes=True, disallow_desert=True, disallow_coast=True, disallow_industry_adjacent=True)) sprite_ground = industry.add_sprite(sprite_number='4126') sprite_ground_tracks = industry.add_sprite( sprite_number='GROUNDTILE_MUD_TRACKS')