McLists一周年快乐
服务器已经添加了详细介绍信息板块
服主可以在管理后台来提交自己服务器介绍信息。
服务器介绍信息提交后,管理人员会进行审核
审核通过后会在服务器详细页面进行显示
提交服务器介绍信息会让新玩家更好的了解你的服务器哦~
添加图片信息,也会让百度等搜索引擎更好的收录您的服务器哦~
管理平台地址:传送门
YAML Config

YAML Config - YAML Config 配置库

基于 YAML 格式并带有 GUI 的配置库。
fabric / neoforge 作者 DAQEM 支持版本 1.21 - 1.21.11
下载量
97,170
关注数
25
数据来源
Modrinth
模组详细介绍
Bisect Hosting Promotion Banner
Ko-fi Promotion Banner

YAML Config:一个 Minecraft 配置模组

概述

YAML Config 是一个功能强大的 Minecraft 配置模组,使模组开发者能够使用 YAML 文件格式创建和管理配置设置。它提供了用户友好的 GUI、广泛的数据类型支持,以及用于客户端-服务器同步的强大网络功能。

特性

  • YAML 文件格式: YAML Config 使用 YAML 文件格式,这种格式以可读性高和易于使用而闻名。
  • GUI 界面: 精心设计的 GUI 让玩家能够轻松浏览和编辑他们的配置设置。
  • 广泛的数据类型支持: 该模组支持多种数据类型,包括:
  • 基本类型: boolean, int, float, double, String, ResourceLocation, Registry
  • 集合: List, Map
  • 日期与时间: LocalDateTime
  • 服务器-客户端同步: 在服务器上对配置所做的更改会自动同步到客户端,确保整个游戏体验中的一致性。
  • 整合包支持: 该模组旨在与现有整合包无缝协作,提供灵活且可扩展的配置系统。
  • 验证与错误处理: 该模组包含健壮的验证和错误处理机制,以确保配置符合预期要求。

安装与使用

安装

  • 下载模组: 从该模组的官方网站、CurseForge 或 Modrinth 下载最新版本的 YAML Config。
  • 放置模组文件: 将下载的 JAR 文件移动到你的 Minecraft 目录中的 "mods" 文件夹内。
  • 启动 Minecraft: 启动 Minecraft 并进入一个世界。

使用方法

  • 打开 Configs Screen: 按下键盘上的 "F12" 打开 Configs Screen。
  • 导航到配置: Configs Screen 会显示可用配置的列表。选择你想修改配置的模组。
  • 编辑配置项: Config Screen 会显示可用设置。每个条目包括:
  • 标题: 设置的名称。
  • 输入框: 用于编辑值的字段。
  • 重置按钮: 用于将该值重置回默认值的按钮。
  • 保存更改: 点击 "Save Changes" 按钮以保存你的修改。该模组会自动将更改保存到配置文件中,并将其与服务器上的其他玩家同步(如果适用)。

开发

创建配置

1. 定义一个 Config 类:

  • 在你的模组代码库中创建一个新的 Java 类,用于表示你的模组配置。
public class MyModConfig {

    public static IConfig config;

    public static IConfigEntry debug;

    public static void init() {
        ConfigBuilder builder = new ConfigBuilder(MyMod.MOD_ID, "mymod-config", ConfigExtension.YAML, ConfigType.CLIENT);
    }
}

2. 定义配置项:

  • 使用 ConfigBuilder 类来定义你的配置设置。
  • 使用 define* 方法为每个条目选择合适的数据类型。
// 定义布尔值条目的示例:
debug = builder.defineBoolean("debug", false); 

// 定义带范围的整数条目的示例:
intEntry = builder.defineInteger("intEntry", 10, 0, 100); // 最小 0,最大 100

// 定义带模式的字符串条目的示例:
stringEntry = builder.defineString("stringEntry", "test", "test\\d+"); 

// 定义注册表条目的示例:
registryEntry = builder.defineRegistry("registryEntry", Blocks.GRASS_BLOCK, BuiltInRegistries.BLOCK);

// 定义列表的示例:
stringListEntry = builder.defineStringList("stringListEntry", List.of("test1", "test2", "test3"), 3, 10); // 最小 3,最大 10

// 定义映射的示例:
integerMapEntry = builder.defineIntegerMap("integerMapEntry", Map.of("test1", 1, "test2", 2, "test3", 3), 3, 10); // 最小 3,最大 10

3. 构建配置:

  • ConfigBuilder 上调用 build() 方法来创建你的配置。
  • 将该配置存储在静态字段中,以便在你的模组代码中轻松访问。
public MyModConfig() {
    ConfigBuilder builder = new ConfigBuilder("mymod", "mymod-config", ConfigExtension.YAML, ConfigType.CLIENT);
    // ... 定义配置项 
    config = builder.build(); 
}

4. 在代码中访问配置值:

  • 使用 get() 方法获取配置项的当前值。
  • 使用 set() 方法修改配置项的值。
// 示例:
boolean debugEnabled = MyModConfig.debug.get(); // 获取 "debug" 设置的当前值

if (debugEnabled) {
    // 执行与调试相关的操作 
}

MyModConfig.intEntry.set(25); // 将 "intEntry" 的值设置为 25

配置类型

  • ConfigType.CLIENT 客户端配置仅对安装了该模组的客户端生效。它们不会与服务器上的其他玩家共享。
  • ConfigType.SERVER 服务器端配置仅适用于专用服务器。它们不会在单人世界中使用,也不会同步给服务器上的玩家。
  • ConfigType.COMMON 通用配置由客户端和服务器共享。可以通过直接编辑配置文件并重启服务器来在服务器上修改,也可以通过游戏内 GUI 编辑这些值并保存更改。

使用自定义数据类型

  • 使用 IConfigEntryType 接口向 YAML Config 模组注册自定义数据类型。
  • 实现自定义序列化器,以处理你的自定义数据类型的序列化与反序列化。

整合包配置

  • 如果你正在创建一个整合包,你可以使用 YAML Config 为你的整合包定义配置设置。
  • 将你的整合包配置文件放在整合包目录中的 "config" 文件夹内。

示例

// 示例:基础客户端配置

public class MyModConfig {

    public static IConfig config;

    public static IConfigEntry debug;
    public static IConfigEntry testInt;

    public static void init() {
        ConfigBuilder builder = new ConfigBuilder("mymod", "mymod-config", ConfigExtension.YAML, ConfigType.CLIENT);

        debug = builder.defineBoolean("debug", false) // 默认值为 false。
                .withComments("Whether debug mode is enabled for the mod.");

        testInt = builder.defineInteger("testInt", 10, 0, 100); // 默认值 10,最小 0,最大 100。

        config = builder.build();
    }
}
基本信息
模组名称YAML Config
作者DAQEM
下载量97,170
关注数25
支持版本1.21 - 1.21.11
加载器fabric / neoforge
客户端optional
服务端optional

友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作

历史访问人数:90,592  |  历史访问人次:180,595

今日访问人数:1,375  |  今日访问人次:1,467

昨日访问人数:19,978  |  昨日访问人次:22,291

Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.

Powered by GermMC 京ICP备17023959号-6