成就修改

本頁面所適用的版本可能已經過時,最後更新於1.12

P社允許modder在玩家的遊戲簡介中顯示自定義的成就。Avalanche(1.12.1)版本提供了創建這些成就的能力。 成就可以在個人檔案(在遊戲中這一按鈕叫作「本局遊戲概況」)里找到,圖像可以在Paradox論壇中使用。

文件結構

custom_achievements/
    common/achievements/
        custom_achievements_achievements.txt
    gfx/achievements/
        custom_achievement_test.dds
        custom_achievement_test_grey.dds
        custom_achievement_test_not_eligible.dds
    localization/english/
        custom_achievements_l_english.yml

編碼語法

  • unique_id - 這是你的 Mod 的自定義必要屬性,它是將成就存儲的 cloudsavefile 的名稱。
  • custom_achievement_test/custom_ribbon_test - 這是你的特定成就的唯一標誌。
  • possible - 這會在遊戲開始時檢測勛帶或成就是否可以被獲得。如果在遊戲開始時為否(不滿足其中條件),那麼將無法獲得這些成就和勛帶。
    • 這與決議或Idea的 allowed 代碼類似,但是它是在遊戲開始時而不是開始之前進行計算的。
    • 代碼示例中並未使用一些常見檢測條件,例如tag檢測( tagoriginal_tag)或是否為鐵人模式 (is_ironman = yes).
  • happened - 一旦滿足其中條件,就可以獲得成就。(通常是滿足瞬間到遊戲內兩個小時生效)
  • ribbon - (選填)這一參數只用於綬帶。它允許通過RGB色值修改綬帶的顏色。
unique_id = custom_achievements_123456

custom_achievement_test = {
    possible = {
        # classic triggers used in all vanilla achievements
        difficulty > 1
        has_start_date < 1936.01.02
        has_any_custom_difficulty_setting = no
        game_rules_allow_achievements = yes
    }
 
    happened = {
        date > 1936.01.02
    } 
}


custom_ribbon_test = {
    possible = {
        difficulty > 1
        has_start_date < 1936.01.02
        has_any_custom_difficulty_setting = no
        game_rules_allow_achievements = yes
        tag = ITA
    }
 
    happened = {
        date > 1936.01.02
    }

    ribbon = {
        frames = { 1 1 1 1 }
        colors = {
            { 45.0 64.0 102.0 1.0 }
            { 154.0 73.0 107.0 1.0 }
            { 238.0 189.0 96.0 1.0 }
            { 211.0 181.0 128.0 1.0 }
        }
    }
}

圖標

成就的圖片需要 3 個不同的圖像,存儲在gfx/achievements文件夾中,他們不需要在interface文件夾中通過spriteType 方式進行註冊。

  • custom_achievement_test.dds
    • 完成成就時使用的彩色圖標。
  • custom_achievement_test_not_eligible.dds
    • 遊戲內不可以完成成就時使用的圖標。
  • custom_achievement_test_grey.dds
    • 遊戲內有可能完成成就時使用的圖標。

本地化

成就的本地化需要兩個本地化鍵。後綴NAME表示該成就的名字,而後綴DESC表示該成就的描述,可以是一些笑話,也可以是如何完成這個成就的指引,隨你:)

 custom_achievement_test_NAME: "Custom Achievement Title"
 custom_achievement_test_DESC: "Custom Achievement Description"

References