文本工作室

文本工作室

添加动画文字效果、名称样式和聊天界面改进。

Text Studio 将动态文字创作、玩家显示名称样式和功能更强大的聊天界面结合在一起。它为整合包作者提供了可视化预设编辑器和可复制的特效文本,同时为日常使用提供了聊天历史、选择/复制工具、时间戳和玩家头像。

安装与入口

组件 要求
Minecraft 此源码面向 1.20.1
Forge 47.4.2 或更高版本
KineticCore 26.9.20 或更高版本;必需

在客户端和服务器上同时配合 KineticCore 使用 Text Studio,以获得完整的多玩家功能集。渲染和本地显示偏好运行在客户端;名称、聊天限制和持久化历史涉及服务器。

按 F6(KineticCore 的默认配置中心按键)打开 Text Studio 的文字特效和聊天页面。你也可以使用 /kt font 直接打开特效指南。

构建并复用文字特效

编辑器将多种特效组合在一起,而不是将每个预设限制为单一动画:

特效类别 可用示例
颜色 彩虹、自定义调色板、脉冲、渐变、霓虹闪烁、微光、闪点
运动 波浪、弹跳、抖动、摇摆、钟摆、环绕、涟漪、漂移
特殊动画 打字机、反向擦除、故障、信号丢失、心跳、心电图扫描、音符弹跳
额外渲染 描边、发光、色差偏移、拖尾、挤出、逐字形缩放

在调整支持的速度、幅度、宽度、颜色或强度控件时,预览你自己的文本。预设可以创建、选择、复制、重置和删除。保存会持久化预设集合并关闭编辑器。

指南允许你选择一个预设,并复制完整的样式文本、前缀或停止码。前缀会影响其后的文本,直到出现停止码。编辑器可以将特效参数与预览文本一起复制,这对于组合出特定的视觉效果非常有用。

特效码使用紧凑的不可见控制字符。请使用指南/编辑器的复制按钮,而不是手动输入标记。复制的预设引用依赖于相应的本地预设定义;自定义参数副本会将其特效参数随文本一起携带。

发光会使文字主体全亮并添加稳定的描边。大型泛光光晕取决于光影包,而非发光设置所保证的。

示例工作流程

  1. 运行 /kt font editor 或通过 F6 打开可视化编辑器。
  2. 选择一个预设,输入预览文本,并调整特效控件。
  3. 复制完整结果,或组合前缀 + 文本 + 停止码以形成样式化片段。
  4. 如果你希望以后复用,请保存预设更改。
  5. 将生成的文本粘贴到模组支持的文本字段中,并检查渲染结果。

玩家显示名称命令

这些命令作用于执行命令的玩家;它们不是账号名称更改。

命令 操作
/kt font 打开特效指南
/kt font guide 或 /kt font help 打开相同的指南
/kt font editor 打开可视化预设编辑器
/kt font name 或 /kt font name help 显示显示名称命令帮助
/kt font name set <name> 设置你的自定义显示名称
/kt font rename <name> 设置显示名称的别名
/kt font name effect <id> 选择一个有效的已配置名称特效预设
/kt font name toggle rainbow <true/false> 切换彩虹名称标志
/kt font name toggle bold <true/false> 切换粗体名称
/kt font name toggle strike <true/false> 切换删除线名称
/kt font name clear 清除自定义显示名称

名称在移除支持的格式控制后限制为 24 个可见 Unicode 码点。可接受的可见字符包括汉字、拉丁字母、数字、空格、_ 和 -。保留名称以及已被其他在线玩家使用的名称将视情况被拒绝。

某些名称特效有特定限制:抖动、故障和特殊作者特效仅限于模组内置的作者 UUID。普通玩家所选名称预设的高级组件会被过滤。仅拥有管理员状态并不授予该作者身份。此限制涉及玩家名称样式,而非探索可视化编辑器的能力。

聊天界面与历史

  • 将聊天/命令输入长度增加到超过原版的 256 字符限制。
  • 保留更大的聊天历史,并在重新加入世界时恢复已保存的聊天和输入历史。
  • 以 [HH:mm:ss.SSS] 格式显示毫秒时间戳。
  • 将连续相同的消息合并并显示重复计数器。
  • 在玩家消息旁显示可拖动的滚动条和皮肤头像。
  • 打开聊天复制画布,以从完整保留的历史中滚动、选择和复制文本。

服务器聊天页面控制以下设置;此处显示的是默认值,而非假定每个服务器都是如此:

设置 默认值 可配置范围/行为
聊天和命令长度 16,384 256–32,767
保留历史行数 10,000 100–100,000;还受存储大小限制
持久化历史 启用 禁用会停止新的记录/同步,但不会删除已有的已保存历史
签名剥离 启用 在消息广播前移除聊天签名

签名剥离会改变聊天消息的发送方式;它不会移除服务器日志,也不保证对话无法被记录。时间戳、重复压缩、滚动条和头像都是独立的客户端本地偏好。

持久化与性能

位置 存储数据
config/kineticcore/textstudio_effects.toml 本地特效预设和渲染性能设置
config/kineticcore/chat.toml 服务器聊天设置和本地显示偏好,位于各自的实例上
世界保存数据 textstudio_chat_history 主世界数据存储中每位玩家的持久化聊天和输入历史
玩家 NBT 自定义显示名称、所选特效和样式标志

历史存储每位玩家还有额外 8 MiB 的编码数据预算,超出限制时会丢弃最旧的聊天记录。因此,即使行数限制很大,显示的历史也是有界的。

渲染设置包括 performance_refresh_ms、performance_max_animated_glyphs 和 performance_extra_pass_budget。它们让整合包作者可以控制动画更新频率、动画字符数量和额外渲染通道。如果有大量动画标签可见,请结合视觉效果一并调整这些设置。

预设是本地定义。当你依赖共享预设 ID 时,请将预期的预设配置随客户端整合包一起提供。玩家名称状态与本地预设集合是分别同步的。

实现参考:命令、特效配置、聊天设置和持久化历史。

许可证:LGPLv3。依赖项:mods.toml。

返回语言选择