War modding

本页面部分全部内容上次核对于3.3版本


这个界面是关于制作 Casus Belli(宣战理由) and War Goal(战争目标).

Casus Belli(宣战理由)[编辑 | 编辑源代码]

宣战理由的定义文件在 "common/casus_belli/xxx.txt".

数据结构[编辑 | 编辑源代码]

  • show_in_diplomacy = <yes/no> – 决定这个宣战理由是否在外交中表现出来。
  • show_notification = <yes/no> – 确定这个宣战理由是否在得到时生成通知消息。
  • aggregated_message_key – Localisation key(本地化条目) (e.g. = "MESSAGE_NEW_CASUS_BELLI_TRIAL_OF_ADVANCEMENT_TARGET")
  • potential – 决定这个宣战理由是否有效的条件块。如果条件块判定为假(false),这个宣战理由不会被给予。 (范围ROOT/THIS = casus belli owner, FROM = casus belli target country)
  • is_valid – 一个每天要检查的条件块。 如果条件块判定为真(true),则自动启用这个宣战理由,否则禁用这个。如果这个宣战理由是由脚本(script)添加的,那么此属性无关紧要。
  • destroy_if – 一个每天要检查的条件块。如果条件块判定为真(true),则自动禁用这个宣战理由,只影响脚本(script)添加的战争原因。

宣战理由例子[编辑 | 编辑源代码]

要求臣服(subjugation)宣战理由

cb_subjugation = {
	show_in_diplomacy = yes
	show_notification = yes
	potential = {
		OR = {
			is_country_type = default
			is_country_type = awakened_fallen_empire
		}
		NOT = { is_in_federation_with = from }
		is_subject = no
	}
	is_valid = {
		NOT = { is_overlord_to = FROM }
		is_country_type = awakened_fallen_empire
		NOT = { has_authority = auth_machine_intelligence }
	}
}

只有觉醒的堕落帝国才会自动授予这种理由。普通帝国必须通过脚本授予它: add_casus_belli = { type = cb_subjugation who = from days = 360 }

本地化必须使用这个条目来定义: "casus_belli_xxx:".

War Goals(战争目标)[编辑 | 编辑源代码]

战争目标的定义文件在"common/war_goals/xxx.txt".

数据结构[编辑 | 编辑源代码]

  • casus_belli = <casus belli key> – 必须。决定对目标使用此站长目标的宣战理由。
  • hide_if_no_cb = <yes/no> – 如果判定为是,则若没有必要的战争理由,这个战争目标是隐藏的。
  • total_war = <yes/no> – 决定这场战争目标是否是一场全面战争。
    • 被这一方面占领的星系将立即被割让, 让cede_claimsrelease_occupied_systems_on_status_quo 字段变得无关紧要。
    • 如果另一方投降,他们所有的星系都将被放弃。即使被允许,AI也不会向全面战争的战争目标投降。
    • 由于领土主张在全面战争中没有意义,如果一个帝国只能对另一个帝国使用全面战争的战争目标,那么普通游戏规则将阻止领土索赔,例如 种族洁癖 Fanatic Purifiers 种族洁癖Fanatic Purifiers
  • set_defender_wargoal = <war goal key> – 可选。防御方将被迫使用指定的战争目标
  • defender_default = <yes/no> – 如果防御方没有及时选择战争目标,它将让防御方默认战争目标(默认为羞辱wg_humiliation)。如果多个战争目标被设置为默认防御方,则选择文件中脚本化的第一个。
  • threat_multiplier = <float> – 征服星系和行星所产生的威胁会在此战争目标的战争中乘以这个数值。
  • cede_claims = <yes/occupied_only/no> – 确定进攻方是否应该从防御方手中割让已宣称的星系。
    • 如果yes,当赢得了战争时,这个战争目标的使用者将放弃来自另一方的所有主张,并且只有在战争以现状结束时才会放弃完全占领的领土宣称。
    • 如果occupied_only,这个战争目标的使用者只有在没有输掉这场战争的情况下才会放弃完全占领的领土。
    • 如果no,这个战争目标的使用者永远不会放弃领土宣称。
  • release_occupied_systems_on_status_quo = <yes/no> – 如果是,在维持现状之后,当那个星球上有至少一个非机器人的智慧生命pop存在,被占领的星系将作为一个独立的帝国被释放。
    • 这个战争目标的使用者总是首先放弃完全占领的领土。如果所有殖民地都以这种方式割让,被占领的星系将不会被释放。
  • surrender_acceptance = <int> – 决定AI投降的接受程度。
  • war_exhaustion = <float> – 在这场战争中产生的厌战度乘以这个值。
  • show_claims_in_description = <yes/no> – 确定是否应该在描述中显示声明。
  • potential & possible – 触发条件块来检查这个战争目标是否列出/可用于对抗目标帝国。 (Scopes: ROOT/THIS = war goal country FROM = war goal target country)
  • on_accept & on_status_quo效果块,在这个战争目标达成后执行(因为对手投降了)或当战争以现状结束时。
    (Scopes: ROOT/THIS = war goal country, FROM = war goal target country)
    • 使用以下条件检查是否有帝国以这种方式释放:
exists = last_created_country
last_created_country = { has_country_flag = released_empire }
  • on_wargoal_set – 效果块,当这个战争目标被接受时执行。 (Scopes: ROOT/THIS = war goal country, FROM = war goal target country)
  • allowed_peace_offers = { … } – 决定使用此战争目标时允许什么样的和平提议。可以由以下任意数组成: status_quo, surrender, demand_surrender. “Total War(全面战争)”的战争目标使用这一点来防止在全面战争期间投降,使他们只能以维持现状或完全摧毁任何一方结束。
  • ai_weight = <int>/{ … } –一个权重数或一个块,包含:modifier_rule字段。 (Scopes: ROOT/THIS = the acting country, FROM = the targeted country)
  • galactic_empire_joins_defender – 可选,触发条件块来检查银河帝国的成员是否加入战争。 (Scopes: ROOT/THIS = war goal country, FROM = war goal target country)

另外,还有一个图标 (at /interface with "GFX_xxx")并且应该定义本地化(with keys "war_goal_xxx:", "war_goal_xxx_desc:").

战争目标的例子[编辑 | 编辑源代码]

征服战争的目标:

wg_subjugation = {
	casus_belli = cb_subjugation

	hide_if_no_cb = no
	release_occupied_systems_on_status_quo = yes

	allowed_peace_offers = {
		status_quo
		surrender
		demand_surrender
	}

	surrender_acceptance = -100

	potential = {
		NOR = {
			has_valid_civic = civic_inwards_perfection
			has_authority = auth_corporate
		}
		has_total_war_cb = no
		NAND = {
			is_galactic_emperor = yes
			from = { is_galactic_community_member = yes }
		}
	}
	possible = {
		custom_tooltip = {
			fail_text = has_claimed_all_systems
			from = {
				is_country_type = default
				any_owned_planet = {
					is_colony = yes
					root = {
						NOT = { has_claim = prev.solar_system }
					}
				}
			}
		}
		custom_tooltip = {
			fail_text = cannot_subjugate_empire_member
			NAND = {
				has_galactic_emperor = yes
				is_galactic_community_member = no
				from = { is_galactic_community_member = yes }
			}
		}
		custom_tooltip = {
			fail_text = "cannot_use_against_custodian"
			from = { is_galactic_custodian = no }
		}
		custom_tooltip = {
			fail_text = "cannot_use_against_emperor"
			from = { is_galactic_emperor = no }
		}
		custom_tooltip = {
			fail_text = "cannot_use_against_btc"
			from = { has_been_declared_crisis = no }
		}
		custom_tooltip = {
			fail_text = pax_galactica_active
			NAND = {
				is_active_resolution = resolution_emperor_pax_galactica
				is_galactic_community_member = yes
				from = { is_galactic_community_member = yes }
			}
		}
	}
	on_accept = {
		hidden_effect = {
			from = {
				add_threat = {
					who = root
					amount = 0.5
				}
			}
		}
		if = {
			limit = { from = { has_been_declared_crisis = no } }
			from = {
				set_subject_of = {
					who = root
					subject_type = vassal
				}
			}
		}
	}

	on_status_quo = {
		if = {
			limit = {
				exists = last_created_country
				last_created_country = {
					has_country_flag = released_empire
				}
			}

			last_created_country = {
				set_subject_of = {
					who = root
					subject_type = vassal
				}
			}
		}
	}

	ai_weight = {
		weight = 10
		modifier = {
			factor = 0
			has_ai_personality_behaviour = wants_tribute
		}
	}
}

在胜利时,胜利国将放弃所有要求,而主要的失败国将成为主要胜利国的附庸。

  • 如果胜利国将割让主要失败国的所有殖民地,使它们不存在,这个战争目标就不能在一开始就被使用。然而,攻击者可以在宣战后提出进一步的要求。

在维持现状下,这一方的帝国将放弃所有完全占领的领土,然后从所有剩余的完全占领的敌人系统中创建一个独立的帝国,它成为主要胜利国的附庸。


帝国 帝国思潮政府 • 国民理念 • 起源承诺议程传统 • 飞升天赋法令政策遗珍科技自定义帝国
人口 岗位派系
领袖 领袖领袖特质
物种 物种物种特质
行星 行星行星特征 • 轨道矿藏建筑 • 区划行星决议
星系 星系恒星基地巨型结构虫洞 • 星门地图
舰队 舰队舰船 • 部件
地面战 陆军轰炸姿态
外交 外交 • 联邦 • 星海共同体评价修正宣战理由 • 战争目标
事件 事件异常现象特殊项目考古遗址
游玩 游玩定义研究 • 经济游戏开局
动态修改 动态指令效果触发条件作用域修正变量AI
媒体/本地化 Maya 导出器图形肖像旗帜事件图片界面图标音乐本地化
Other 控制台命令存档编辑Steam 创意工坊模组制作教程