Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

flavor_mos.37 莫斯科大火

时间范围:1547.1.1 - 1548.1.1(每月 10% 概率)

触发条件

  • 莫斯科地区 (location:moscow) 必须满足以下所有条件:
    • 发展度 (development) 不低于 25。
    • 所有者为触发事件的国家 (owner = root)。
    • 控制者为触发事件的国家 (controller = root)。
    • 所在市场 (market) 交易木材 (goods:lumber)。
    • 地区内存在至少一座满足以下任一条件的建筑:
      • 建筑类型为市场仓库 (building_type:market_warehouse)。
      • 建筑类别为消费品类别 (consumer_goods_category)。

关键效果

  • 选项 A (flavor_mos.37.a) - 历史选项

    • 触发前提:国家拥有变量 kremlin_towers,且莫斯科地区至少拥有一级克里姆林宫 (kremlin) 建筑。
    • 主要效果
      • 莫斯科地区
        • 发展度:development_mild_penalty(轻度惩罚)。
        • 繁荣度:prosperity_severe_penalty(重度惩罚)。
        • 建筑破坏:根据地区内建筑等级排序,破坏一定数量的建筑等级(major_destroy_building_levels_in_location)。破坏的最大等级数计算方式为:1 + (num_buildings / 8)
        • 人口:所有人口规模减少 3%。
        • 艺术品:随机销毁至多 3 件位于该地区的艺术品。
        • 文化传统:国家主流文化 (root.culture) 的文化传统受到 cultural_tradition_severe_penalty(重度惩罚)。
      • 显示自定义提示:flavor_mos.37.tt1flavor_mos.37.tt2
    • AI 选择权重:factor = 1
  • 选项 B (flavor_mos.37.b) - 历史选项

    • 触发前提:莫斯科地区没有克里姆林宫 (building_type:kremlin) 建筑。
    • 主要效果
      • 莫斯科地区
        • 发展度:development_weak_penalty(微弱惩罚)。
        • 繁荣度:prosperity_mild_penalty(轻度惩罚)。
        • 建筑破坏:根据地区内建筑等级排序,破坏一定数量的建筑等级(minor_destroy_building_levels_in_location)。破坏的最大等级数计算方式为:1 + (num_buildings / 12)
        • 人口:所有人口规模减少 1%。
        • 艺术品与传统文化:如果地区内存在艺术品,则随机销毁 1 件,并且国家主流文化的文化传统受到 cultural_tradition_mild_penalty(轻度惩罚)。同时显示自定义提示 flavor_mos.37.tt3
    • AI 选择权重:factor = 1

背景介绍: 此事件模拟了莫斯科在特定历史时期可能遭遇的一场毁灭性大火。事件的发生与莫斯科作为重要贸易中心(特别是木材贸易)的地位以及其城市建筑密度有关。大火造成的破坏程度取决于莫斯科的城市建设水平,尤其是作为城市核心与象征的克里姆林宫是否存在及其状态。事件反映了历史上城市火灾对人口、经济、建筑遗产和文化造成的深远影响。

完整事件代码

flavor_mos.37 = { #DEVASTATION
	type = country_event
	fire_only_once = yes
	title = flavor_mos.37.title
	desc = flavor_mos.37.desc
	image = "gfx/interface/illustrations/situation/_default.dds" 

	dynamic_historical_event = {
		tag = MOS
		tag = RUS
		from = 1547.1.1
		to = 1548.1.1
		monthly_chance = 10
	}

	trigger = {

		location:moscow = {
			development >= 25
			owner = root
			controller = root
			market = {
				is_traded_in_market = goods:lumber
			}
			any_buildings_in_location = {
				OR = {
					building_type = building_type:market_warehouse
					building_category = consumer_goods_category
				}
			}
		}

	}

	immediate = {

		set_variable = {
			name = great_fire_moscow
			value = 1
		}

		location:moscow = {
			save_scope_as = target_location
		}

		root = { save_scope_as = target_root_country }

	}

	option = {
		name = flavor_mos.37.a
		historical_option = yes
		trigger = {
			has_variable = kremlin_towers
			location:moscow = {
				has_building_with_at_least_one_level = kremlin
			}
		}

		location:moscow = {
			change_development  = development_mild_penalty
			change_prosperity = prosperity_severe_penalty

			ordered_buildings_in_location = {
				order_by = building_level
				max = {
					value = 1
					add = {
						value = num_buildings
						divide = 8
					}
				}

				location = { major_destroy_building_levels_in_location = yes }
			}
			every_pop = {
				add_pop_size = {
					value = pop_size
					multiply = -0.03
				}
			}
			while = {
				count = 3
				if = {
					limit = {
						any_work_of_art_in_location = {
							exists = this
						}
					}
					random_work_of_art_in_location = {
						destroy_art = this
					}
				}
			}
			root.culture = { add_cultural_tradition = cultural_tradition_severe_penalty }
			custom_tooltip = flavor_mos.37.tt1
		}

		custom_tooltip = flavor_mos.37.tt2

		ai_chance = {
			factor = 1
		}
	}

	option = {
		name = flavor_mos.37.b
		historical_option = yes
		trigger = {
			location:moscow = {
				NOT = { has_building = building_type:kremlin }
			}
		}

		location:moscow = {
			change_development  = development_weak_penalty
			change_prosperity = prosperity_mild_penalty

			ordered_buildings_in_location = {
				order_by = building_level
				max = {
					value = 1
					add = {
						value = num_buildings
						divide = 12
					}
				}

				location = { minor_destroy_building_levels_in_location = yes }
			}
			every_pop = {
				add_pop_size = {
					value = pop_size
					multiply = -0.01
				}
			}
			if = {
				limit = {
					any_work_of_art_in_location = {
						exists = this
					}
				}
				random_work_of_art_in_location = {
					destroy_art = this
				}
				root.culture = { add_cultural_tradition = cultural_tradition_mild_penalty }
				custom_tooltip = flavor_mos.37.tt3
			}
		}

		ai_chance = {
			factor = 1
		}
	}

	historical_info = flavor_mos.37.historical_info

}