附庸系統不同變種在/Hearts of Iron IV/common/autonomous_states/*.txt路徑下定義,允許自定義新變種。
參數
- id 是附庸狀態的鍵值,不能重複。所有附庸狀態的鍵值均不可和另一附庸狀態的鍵值重複。
- default: 如果為真,則遊戲將嘗試使和平談判中的 '傀儡' 選項以及 '傀儡' 效果在其他默認附庸狀態中使用此附庸狀態。默認狀態下為 no。
- is_puppet 用來檢測該國是否是傀儡國。若需要該國為傀儡國,則
is_puppet
或者is_puppet_of
條件將會返還真值。默認狀態下為 no。 - use_overlord_color 使附庸國使用和宗主國相同的顏色。
- min_freedom_level 決定了自治領的等級。當遊戲使自治領作為一個降級或升級時的主體時,級別較低的自治領的自治程度,比級別較高的自治領的自治程度低。這同樣也決定了主體提升或降低等級所需的多少自治點數,即等級間的差值乘以5000. 如前所述,吞併一個
min_freedom_level
為0.1的自治領需要花費500點數。 - manpower_influence附庸國人力要求,決定了宗主國的殖民地軍隊中能使用多大比例的殖民地人力。 需要共赴勝利 DLC.
- rule 給主體設定「是」或「否」的遊戲規則
遊戲規則列表 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
以下遊戲規則作為可選擇選項:
|
- modifier :給附庸國添加修正所有國家修正均可以應用。
- ai_subject_wants_higher :決定了ai國家是否專注於獲得更高的自治程度。如果設置為0,AI永遠不會在自治度系統中提升自治等級。
- ai_overlord_wants_lower :決定了AI宗主國是否專注於降低附庸國的自治等級。如果設置為0,AI永遠不會在自治度系統中降低自治等級。
- ai_overlord_wants_garrison: 決定了AI宗主國是否願意像衛戍自己的領土一樣給附庸國的領土派遣衛戍部隊
- allowed: 所對應主體必須滿足必要的觸發條件,以使遊戲中的自治狀態生效。可以使用 OVERLORD 作用域來作用於 overlord(宗主國)。
- use_for_peace_conference_weight :決定了潛在的宗主國在和平談判中附庸某國家的機會。此處ROOT是附庸國,FROM是宗主國。
- can_take_level :決定了附庸國能夠在自治度系統中提升等級所必須滿足的條件。
- can_lose_level :決定了只有附庸國滿足了一些條件,宗主國才能夠在自治度系統中降低附庸國等級。
- peace_conference_initial_freedom :是和平會議後給自治領設定的初始自治等級,其範圍是0到1。如果不特別指明,則設定為0.5。
- allowed_levels_filter :決定一個自治領能到達哪些自治等級。如果不特別指明,所有的等級都是可以的。
圖標
Sprite系統概述 |
---|
遊戲使用Sprite類代碼加載圖形文件(如.GFX)。Sprite是指那些將名稱附加到圖像文件的定義類代碼,同時還可以選擇性地添加額外的信息,例如動畫、幀數、圖像的加載方式等等。綜上所述,僅僅將所使用的圖像文件放入gfx文件夾中是不夠的,還必須有圖像對應的sprite代碼來調用它。
Sprite類代碼可在任意/Hearts of Iron IV/interface/*.gfx文件中進行定義(這與/Hearts of Iron IV/gfx/interface/是不同的), 並可以通過文本編輯器打開。若要建一個新的 spriteTypes = { spriteType = { name = GFX_first_sprite # In some cases, beginning with GFX_ is mandatory for it to work. texturefile = gfx/interface/folder/filename.dds # The folder and filename don't matter, as long as they are correct } # Only the forward slash '/' (can be doubled as '//') can be used to separate folders. spriteType = { # The image doesn't have to be .dds, as .tga and .png are acceptable. name = GFX_second_sprite texturefile = gfx/interface/folder2/filename2.dds noOfFrames = 2 # Splits the image into 2 halves, which may be switched between dynamically in GUI } } 在這種情況下,系統會生成一個名為 若想添加動畫效果,需要使用frameAnimatedSpriteType 如需對sprite類文件小改不必複製原版遊戲文件。倘若因相同名字的sprite在不同文件中導致了重複定義,遊戲將會根據文件名稱優先調用後面被定義的Sprite,舊定義會被無視。可以通過重命名文件以ASCII表靠後的字符開頭來確保正確調用新的自定義內容,通常情況下使用小寫字母「z」開頭來實現這一點。例:要將 由於大多數 .gfx 文件定義了用戶界面的關鍵部分,複製它們可能會導致模組在遊戲大更新後缺失新版本的sprite類代碼,進而顯示為錯誤圖像,通常是「錯誤小狗」的圖標。除非在某些迫不得已的時候,(例:添加的文件可能會對模組功能造成損害,如/Hearts of Iron IV/interface/subuniticons.gfx)為了減少檢查文件的麻煩,儘可能不要複製 |
遊戲將使用格式為GFX_<autonomy state>_icon
的sprite類作為圖標。包含此類定義的一個 /Hearts of Iron IV/interface/*.gfx 文件可能是這樣的:
spriteTypes = { spriteType = { name = "GFX_autonomy_mod_new_icon" textureFile = "gfx/interface/autonomy/autonomy_mod_new_icon.dds" } spriteType = { name = "GFX_example_icon" texturefile = "another_folder/image_name.dds" } }
本地化
本地化文件位置在/Hearts of Iron IV/localisation/ 文件夾的 .yml
文件中。對前面的例子autonomy_mod_new
而言,文件本地化樣式大概是 autonomy_mod_new:0 "Mod's new autonomy state"
我們可以設置關於一個特定國家的項目,如GER_autonomy_mod_new:0 "New mod Germany"
將使德國的名字在其自治水平為 autonomy_mod_new
時變成它。相似的,ENG_FRA_autonomy_mod_new:0 "New mod French UK"
會使不列顛在其宗主國為法國且在自治狀態為 autonomy_mod_new
時擁有這個名字。
代碼示例
autonomy_state = { id = autonomy_example default = yes #Will be a possible option for peace deals is_puppet = yes use_overlord_color = yes min_freedom_level = 0.2 #Puts it as 0.2 on the autonomy level scale, which is the same as an integrated puppet. peace_conference_initial_freedom = 0.9 #Close to independence manpower_influence = 0.9 rule = { can_not_declare_war = yes can_decline_call_to_war = no units_deployed_to_overlord = yes can_be_spymaster = no contributes_operatives = no can_create_collaboration_government = no } modifier = { autonomy_manpower_share = 1.0 can_master_build_for_us = 1 extra_trade_to_overlord_factor = 1.0 overlord_trade_cost_factor = -0.9 cic_to_overlord_factor = 0.75 mic_to_overlord_factor = 0.75 research_sharing_per_country_bonus_factor = -0.5 } ai_subject_wants_higher = { factor = 0.0 } ai_overlord_wants_lower = { factor = 0.0 } allowed = { has_dlc = "Together for Victory" OVERLORD = { tag = FRA } } allowed_levels_filter = { autonomy_example autonomy_example_1 autonomy_example_2 } use_for_peace_conference_weight = { base = 0 modifier = { add = 10 FROM = { has_wargoal_against = { target = ROOT type = puppet_wargoal_focus } } # Adds 10 to the chance if the overlord has a wargoal to puppet the country. } modifier = { factor = 2 tag = ENG # Multiplies the chance by 2 if the subject is UK. } } can_take_level = { OVERLORD = { NOT = { controls_state = 123 } # If the overlord does not control state 123, the subject can gain a level. } } can_lose_level = { OVERLORD = { controls_state = 123 } # If the overlord controls state 123, it can decrease the subject's autonomy level. } }
相關定義
一些定義通過特殊的方式影響自治領系統,它們是:
- RESOURCE_SENT_AUTONOMY_DAILY_BASE這是宗主國購買資源時自治領獲得的基礎獨立傾向增長。
- RESOURCE_SENT_AUTONOMY_DAILY_FACTOR 這是宗主國購買資源時自治領獲得的獨立增益因子。(用於調整自治增長速度)
- WAR_SCORE_AUTONOMY_BASE 自治領在戰爭中獲得戰爭積分所帶來的基礎獨立傾向增長。
- WAR_SCORE_AUTONOMY_FACTOR 自治領在戰爭中獲得戰爭積分所帶來的獨立增益因子。(用於調整其自治增長速度)
- LL_TO_OVERLORD_AUTONOMY_DAILY_BASE 自治領向宗主國起草租借法案所獲得的基礎獨立傾向增益。
- LL_TO_OVERLORD_AUTONOMY_DAILY_FACTOR 自治領向宗主國起草租借法案的獨立增益因子。(用於調整自治增長速度)
- LL_TO_PUPPET_AUTONOMY_DAILY_BASE 宗主國向自治領起草租借法案所獲得的基礎獨立傾向壓制。(基礎獨立壓制必須為負值才能減少自治增長)
- LL_TO_PUPPET_AUTONOMY_DAILY_BASE 宗主國向自治領起草租借法案所獲得的獨立壓制因子。(基礎獨立壓制必須為負值才能減少自治增長)
- AUTONOMY_FREEDOM_FROM_CAPITULATE 在宗主國投降後,自治領的獨立傾向將大幅上升。
- ATTACHE_TO_SUBJECT_EFFECT 宗主國向自治領派遣軍事顧問所獲得的基礎獨立傾向壓制。(基礎獨立傾向壓制必須為負值才能減少自治增長)
- ATTACHE_TO_OVERLORD_EFFECT宗主國向自治領派遣軍事顧問所獲得的獨立壓制因子。(基礎獨立傾向壓制必須為負值才能減少自治增長)
- AUTONOMY_LEVEL_CHANGE_PP_COST_BASE 在不同自治狀態下進行轉換所需要的政治點數。
- AUTONOMY_LEVEL_CHANGE_PP_ANNEX宗主國吞併半吞併傀儡國所需要花費的政治點數。
- AUTONOMY_LEVEL_CHANGE_PP_FREE 作為附庸獲得獨立所需要的政治點數。
- MAX_SCORE_DIFF_TO_CHANGE_AUTONOMY 自治領當前獨立點數與升級或降級點數的最大差值。
- MASTER_BUILD_AUTONOMY_FACTOR 宗主國向自治領進行援建所獲得的獨立傾向壓制因子。(基礎獨立傾向壓制必須為負值才能減少自治增長)
- AUTONOMOUS_TOTAL_SCORE 自治領國家被吞併與獨立間的總自治點數。
- AUTONOMOUS_SPILLOVER 各自治等級間可保存的自治點數上限。
額外說明
在對國家歷史文件中的自治等級進行設置時,可能會使對應國家的政黨受支持度和當前執政黨等數據遭到覆蓋後丟失。以防萬一,建議將作用域(scope)設置為宗主國,如
TAG = { if = { limit = { has_dlc = "Together for Victory" } set_autonomy = { target = TAG2 autonomy_state = autonomy_mod_new } } else = { puppet = TAG2 } }
在自治領的歷史文件中,也可以將其放在定義執政黨和對應支持度之前。另一種方法是可以更改 /Hearts of Iron IV/common/country_tags/中標籤的順序,使得宗主國在自治領之前被定義。
若決定創建一個類似於日本獨特自治的新自治系統,則需要禁用默認的自治省份,以防新系統下的自治領中出現調用allowed = {}
或allowed_levels_filter = {}
的情況。如果選擇第二個選項,需注意的是仍需禁用默認的自治省份,以確保它們在新建傀儡國家時不出現。
新的自治等級應當只能通過 set_autonomy
效果手動分配,那麼可以這樣設置允許狀態,使用 ID 為 autonomy_my_state
的自治領:
allowed = { OR = { is_subject = no has_autonomy_state = autonomy_my_state } }
通過對自治等級進行升降級改動是無法實現目標國際自治狀態的,因為若目標國家具有其他自治狀態,則allowed
將為假。這確保只要目標國家在被命令執行時是獨立的,就可以安全執行set_autonomy
,並且一旦被賦予該自治狀態,該狀態在存在時不會被清除。
在創建自治系統時,避免兩個不同的省份具有相同的min_freedom_level。
文件 | 效果 • 條件 • 定義 • 修正 • 修正列表 • 作用域 • 本地化 • on action • 數據結構 (標記, 臨時標記, 國家別名, 變量, 數組) |
腳本 | 成就修改 • AI修改 • AI focuses • 自治領修改 • 權力平衡修改 • 劇本/標籤 (遊戲規則)• 建築修改 • 人物修改 • 修飾性TAG修改 • 國家創建 • 軍隊修改 • 決議製作 • 裝備修改 • 事件修改 • Idea修改 • 意識形態修改 • 軍工商修改 • 國策製作 • 資源修改 • Scripted GUI • 科技製作 • 單位修改 |
地圖 | 地圖 • 省份 • 補給區域 • 戰略區域 |
圖形圖像 | 界面 • 圖形資產 • 實體模型 • 後期特效 • 離子效果 • 字體 |
裝飾性 | 肖像 • 命名列表 • 音樂 • 音效 |
其他 | 控制台指令 • 故障排除 • 模組結構 • 成就代碼分析 • Mod相關 • Nudger修改 |