全面战争:三国

全面战争:三国

41 个评价
Mod Config Tool [Beta]
4
   
奖励
收藏
已收藏
取消收藏
标签: mod, campaign
文件大小
发表于
更新日期
371.273 KB
9 月 11 日 下午 3:59
9 月 27 日 上午 9:46
3 项改动说明 ( 查看 )

订阅以下载
Mod Config Tool [Beta]

在 Ironic 的 2 个合集中
190 Expanded [Recommended]
18 件物品
Modder Tools
3 件物品
描述
The idea shamelessly taken from WH3, this allows for the modder to create options for the user to select and choose from.

USERS

You just need to install this mod and you are good to go, you will see a new button on the main menu below quit.

You can stop reading now.

MODS THAT USE THIS

190 Expanded (in a future update)

More Options

Please leave a link/mod name in the comments so I can add it here.

Modders
# MCT Configuration System - Developer Guide

Create Configurable Options for Your Mods

The MCT (Mod Configuration Tool) system provides a standardized way to add configurable options to your mods. This guide will show you exactly how to implement it.

---

## Quick Start

1. File Naming (IMPORTANT!)
Always name your config file with
zzz_
prefix:
zzz_my_mod_config.lua

This ensures it loads after the main MCT system.

2. Basic Template
local my_config = { ["MyModName"] = { option_1 = { name = "EnableFeature", template = "checkbox", adopt = true, tooltip = "MCT_localised_string_enable_feature", base = "selected" } } } if RegisterMCTConfig then RegisterMCTConfig("MyMod_Config", my_config) ModLog("MyMod MCT registered successfully!") else ModLog("ERROR: MCT not found! Enable MCT mod first.") end

---

## Configuration Parameters

Required Parameters:
name - Unique identifier for your option
template - UI type: "checkbox" or "dropdown"
tooltip - Localization key for tooltip text
base - Default state: "selected", "active", or "inactive"

Optional Parameters:
adopt - Set to true to use root as parent (recommended)
priority - Display order (ignored if adopt = true)
amount - Number of options (for dropdowns only)

---

## Template Types

Checkbox (Simple On/Off)
simple_toggle = { name = "EnableAwesomeFeature", template = "checkbox", adopt = true, tooltip = "MCT_localised_string_awesome_feature", base = "selected" -- Starts enabled }

Checkbox (Multiple Choices)
difficulty_setting = { name = "DifficultyLevel", template = "checkbox", adopt = true, amount = 3, -- 3 options tooltip = { "MCT_localised_string_easy", "MCT_localised_string_normal", "MCT_localised_string_hard" }, base = "active" }


Dropdown (Multiple Choices)
difficulty_setting = { name = "DifficultyLevel", template = "dropdown", adopt = true, amount = 3, -- 3 options tooltip = { "MCT_localised_string_easy", "MCT_localised_string_normal", "MCT_localised_string_hard" }, base = { "active", "active", "active"} }

---

## Localization Setup

Tooltip Format:
Base key:
MCT_localised_string_[your_key]
Language variants:
MCT_localised_string_[your_key]_EN
,
MCT_localised_string_[your_key]_KR
, etc.

Example:
tooltip = "MCT_localised_string_enable_god_mode" -- In your localization files: -- MCT_localised_string_enable_god_mode_EN = "Enable God Mode" -- MCT_localised_string_enable_god_mode_KR = "신 모드 활성화" -- MCT_localised_string_enable_god_mode_FR = "Activer le mode Dieu"

Multiple Tooltips (for dropdowns):
tooltip = { "MCT_localised_string_difficulty_easy", "MCT_localised_string_difficulty_normal", "MCT_localised_string_difficulty_hard" }

---

## Complete Working Example

-- File: zzz_awesome_mod_config.lua local awesome_mod_config = { ["AwesomeMod"] = { -- Enable/disable main feature enable_mod = { name = "EnableAwesomeMod", template = "checkbox", adopt = true, tooltip = "MCT_localised_string_enable_awesome_mod", base = "selected" }, -- Difficulty selection difficulty = { name = "DifficultyLevel", template = "dropdown", adopt = true, amount = 4, tooltip = { "MCT_localised_string_diff_easy", "MCT_localised_string_diff_normal", "MCT_localised_string_diff_hard", "MCT_localised_string_diff_nightmare" }, base = "active" }, -- Debug option (starts disabled) debug_mode = { name = "DebugMode", template = "checkbox", adopt = true, tooltip = "MCT_localised_string_debug_mode", base = "inactive" } } } -- Register configuration if RegisterMCTConfig then RegisterMCTConfig("AwesomeMod_Config", awesome_mod_config) ModLog("AwesomeMod MCT configuration registered successfully!") else ModLog("ERROR: MCT system not found! Make sure the main MCT mod is loaded first.") end -- Optional: Check if registration worked function IsAwesomeModMCTRegistered() return _G.MCT_REGISTRY and _G.MCT_REGISTRY["AwesomeMod_Config"] ~= nil end

---

## Adding to Existing Groups

You can extend existing MCT groups by using the same group name:

local extend_vanilla = { ["ExistingModGroup"] = { my_new_option = { name = "MyNewFeature", template = "checkbox", adopt = true, tooltip = "MCT_localised_string_my_new_feature", base = "inactive" } } }

---

## Base State Values

"selected" - Checkbox starts checked, option is enabled by default
"active" - Option is available and functional (good for dropdowns)
"inactive" - Checkbox starts unchecked, option is disabled by default

---

## Troubleshooting

My options don't appear:
• Check your file has the
zzz_
prefix
• Make sure MCT main mod is enabled and loaded
• Verify your script has no syntax errors

Tooltips not showing:
• Check localization key format:
MCT_localised_string_[key]
• Make sure you have language-specific variants (_EN, _KR, etc.)

Registration fails:
• Ensure MCT mod is loaded before your mod
• Check the lua_mod_log for error messages
• Use the debug function to verify registration

Options not working in-game:
• Make sure option names are unique within each group
• Check that your mod actually reads the MCT values
• Verify the base state is set correctly

Credits

Credits to l Groove Wizard
5 条留言
Circle Of Dao 9 月 14 日 上午 6:48 
Not the Hero we deserve.:steamthumbsup:
Murl 9 月 13 日 上午 7:49 
nice
蜀漢第二把交椅 9 月 12 日 下午 11:34 
sigma
Comrade Khleb 9 月 12 日 下午 9:14 
Finally! This mod might actually bring back 3K modding
Azza909 9 月 11 日 下午 9:38 
This is great can't wait to see more events and options added