All Mods Resource Packs Data Packs Shaders Modpacks Plugins
chatbox

chatbox

by zhenshiz • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Mod Introduction

ChatBox is a dialog box mod designed for Minecraft, inspired by the dialog systems found in Galgames. You can configure it using data packs:

  • Pre-set multiple themes for dialog boxes and switch between them anytime using commands.

  • Customize the appearance, position, and size of dialog boxes, option boxes, history buttons, and character portraits.

  • Character portraits support multiple types: images, player avatars, and item textures. You can define custom entry animations for these portraits, with images having 3 preset animations.

  • Configure dialog text and multiple options for each line. Clicking options can trigger custom commands and jump to other dialogs.

  • All text elements (dialogs, options) support translation keys.

Since all dialog configurations are implemented through data packs, you can reload all dialog settings directly using the /reload command. Create beautiful dialog systems without modifying any code!

Built-in Commands

Switch themes:

/chatbox theme

Jump to a specific dialog:

/chatbox skip

Open dialog box:

/chatbox open

Event System

For KubeJS users, the mod provides predefined events:

//client_script

// Triggered BEFORE dialog rendering. Provides GuiGraphics for custom rendering. Cancellable.
ChatBoxEvents.renderPre(event=>{
  let getGuiGraphics = event.getGuiGraphics()
  event.cancel()
})

// Triggered AFTER dialog rendering. Provides GuiGraphics for custom rendering.
ChatBoxEvents.renderPost(event=>{
  let getGuiGraphics = event.getGuiGraphics()
})

// Triggered when jumping to a dialog. Provides dialog metadata for custom functionality.
ChatBoxEvents.skipChat(event => {
  let { chatBoxScreen, resourceLocation, group, index } = event
})

Additional Information

Example data packs and documentation are available on GitHub. Upcoming feature: The author is developing a web-based JSON generator to simplify dialog configuration. Stay tuned for its release!

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
1.21.1
Neoforge
1d ago 1
1.21
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
26.3
Fabric Neoforge
1d ago 1
26.1.2
Fabric Neoforge
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.21.1
Fabric
1d ago 1
1.21.11
Neoforge
1d ago 1
1.21.11
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.21.11
Neoforge
1d ago 1
1.20.1
Forge
1d ago 1
1.21.11
Fabric
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.8
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.1
Neoforge
1d ago 1
1.21.8
Fabric
1d ago 1
1.21.1
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.1
Forge
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.1
Forge
1d ago 1
1.20.1
Fabric
1d ago 1
1.21.8
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Neoforge
1d ago 1
## ChatBox 1.1.6.1beta — NeoForge 1.21.1

  • 配合新版网页编辑器,支持立绘复制粘贴、撤销与重做。
  • 支持通过预览框控制点调整组件大小,并对支持旋转的组件拖动旋转。
  • 改善带动画组件的实时预览同步,保留动画本身的缩放与旋转效果。
ChatBox 1.1.6beta
修复了服务端加载客户端类导致的bug
修复了服务端加载客户端类导致的bug
修复了服务端加载客户端类导致的bug
修复了服务端加载客户端类导致的bug
<ul>
<li>
<p><code>chatbox</code>命令新增<code>group</code>子命令,用于添加对话组,成员会自动同步组长的对话进度</p>
</li>
<li>
<p><code>chatbox</code>命令新增<code>playVideo</code>子命令,用于播放视频</p>
</li>
<li>
<p><code>chatbox command nextDialogue</code> 添加一个可选数字参数,用于强制跳转对话,可以填负数</p>
</li>
<li>
<p>视频:</p>
<ul>
<li>
<p>兼容<a href="https://modrinth.com/mod/watermedia" target="_blank"
rel="noopener noreferrer nofollow"><u>WATERMeDIA</u></a>
3.0.0.23版本,同时保留旧版(2.1.25)兼容(26.1版本模组只兼容3.0.0.23)</p>
</li>
<li>
<p>新增<code>removeOnEnd</code>字段(默认为<code>true</code>)</p>
</li>
<li>
<p>
新增<code>removeOnNext</code>字段(默认为<code>true</code>)(详细介绍见主文档的<strong>视频</strong>部分)
</p>
</li>
</ul>
</li>
<li>
<p>若对话的主题没有配置快进按键,渲染层模式下也不允许快进对话</p>
</li>
<li>
<p>新增<code>disableMouseScroll</code>配置项(默认为<code>false</code>)</p>
</li>
</ul>
<ul>
<li>
<p><code>chatbox</code>命令新增<code>group</code>子命令,用于添加对话组,成员会自动同步组长的对话进度</p>
</li>
<li>
<p><code>chatbox</code>命令新增<code>playVideo</code>子命令,用于播放视频</p>
</li>
<li>
<p><code>chatbox command nextDialogue</code> 添加一个可选数字参数,用于强制跳转对话,可以填负数</p>
</li>
<li>
<p>视频:</p>
<ul>
<li>
<p>兼容<a href="https://modrinth.com/mod/watermedia" target="_blank"
rel="noopener noreferrer nofollow"><u>WATERMeDIA</u></a>
3.0.0.23版本,同时保留旧版(2.1.25)兼容(26.1版本模组只兼容3.0.0.23)</p>
</li>
<li>
<p>新增<code>removeOnEnd</code>字段(默认为<code>true</code>)</p>
</li>
<li>
<p>
新增<code>removeOnNext</code>字段(默认为<code>true</code>)(详细介绍见主文档的<strong>视频</strong>部分)
</p>
</li>
</ul>
</li>
<li>
<p>若对话的主题没有配置快进按键,渲染层模式下也不允许快进对话</p>
</li>
<li>
<p>新增<code>disableMouseScroll</code>配置项(默认为<code>false</code>)</p>
</li>
</ul>
<ul>
<li>
<p><code>chatbox</code>命令新增<code>group</code>子命令,用于添加对话组,成员会自动同步组长的对话进度</p>
</li>
<li>
<p><code>chatbox</code>命令新增<code>playVideo</code>子命令,用于播放视频</p>
</li>
<li>
<p><code>chatbox command nextDialogue</code> 添加一个可选数字参数,用于强制跳转对话,可以填负数</p>
</li>
<li>
<p>视频:</p>
<ul>
<li>
<p>兼容<a href="https://modrinth.com/mod/watermedia" target="_blank"
rel="noopener noreferrer nofollow"><u>WATERMeDIA</u></a>
3.0.0.23版本,同时保留旧版(2.1.25)兼容(26.1版本模组只兼容3.0.0.23)</p>
</li>
<li>
<p>新增<code>removeOnEnd</code>字段(默认为<code>true</code>)</p>
</li>
<li>
<p>
新增<code>removeOnNext</code>字段(默认为<code>true</code>)(详细介绍见主文档的<strong>视频</strong>部分)
</p>
</li>
</ul>
</li>
<li>
<p>若对话的主题没有配置快进按键,渲染层模式下也不允许快进对话</p>
</li>
<li>
<p>新增<code>disableMouseScroll</code>配置项(默认为<code>false</code>)</p>
</li>
</ul>
<ul>
<li>
<p><code>chatbox</code>命令新增<code>group</code>子命令,用于添加对话组,成员会自动同步组长的对话进度</p>
</li>
<li>
<p><code>chatbox</code>命令新增<code>playVideo</code>子命令,用于播放视频</p>
</li>
<li>
<p><code>chatbox command nextDialogue</code> 添加一个可选数字参数,用于强制跳转对话,可以填负数</p>
</li>
<li>
<p>视频:</p>
<ul>
<li>
<p>兼容<a href="https://modrinth.com/mod/watermedia" target="_blank"
rel="noopener noreferrer nofollow"><u>WATERMeDIA</u></a>
3.0.0.23版本,同时保留旧版(2.1.25)兼容(26.1版本模组只兼容3.0.0.23)</p>
</li>
<li>
<p>新增<code>removeOnEnd</code>字段(默认为<code>true</code>)</p>
</li>
<li>
<p>
新增<code>removeOnNext</code>字段(默认为<code>true</code>)(详细介绍见主文档的<strong>视频</strong>部分)
</p>
</li>
</ul>
</li>
<li>
<p>若对话的主题没有配置快进按键,渲染层模式下也不允许快进对话</p>
</li>
<li>
<p>新增<code>disableMouseScroll</code>配置项(默认为<code>false</code>)</p>
</li>
</ul>
<ul>
<li>
<p>优化历史记录界面的渲染</p>
</li>
<li>
<p>
优化MVEL解析,详见扩展功能-MVEL文档,现在可以在对话文本中写<code>&lt;&lt;MVEL代码&gt;&gt;</code>当做更加强大的占位符使用(需要代码执行后有返回值)
</p>
</li>
<li>
<p>对话文本配置新增字段:</p>
<ul>
<li>
<p><code>bgm</code>:用于控制背景音乐播放</p>
<ul>
<li>
<p>若值有效,只要玩家处于对话框界面,该音效就会循环播放</p>
</li>
<li>
<p>连续的对话若该字段值相同,背景音乐不会重新开始</p>
</li>
<li>
<p>填写空字符串会停止背景音乐(不想为了bgm再加个类似于stopBgm的字段)</p>
</li>
<li>
<p>如果不写该字段(即为null的情况),不会有任何操作(意思是你可以只在需要播放和停止背景音乐时才写这个字段)</p>
</li>
</ul>
</li>
<li>
<p>
<code>stayTick</code>:强制玩家在该对话停留时长,若未达到指定时长,玩家无法跳转下一句对话(默认值为0,填负数则不论过多久玩家都无法跳转,不影响选项的跳转)
</p>
</li>
</ul>
</li>
<li>
<p>修复无法正常检查音效是否正在播放的bug</p>
</li>
</ul>
<ul>
<li>
<p>优化历史记录界面的渲染</p>
</li>
<li>
<p>
优化MVEL解析,详见扩展功能-MVEL文档,现在可以在对话文本中写<code>&lt;&lt;MVEL代码&gt;&gt;</code>当做更加强大的占位符使用(需要代码执行后有返回值)
</p>
</li>
<li>
<p>对话文本配置新增字段:</p>
<ul>
<li>
<p><code>bgm</code>:用于控制背景音乐播放</p>
<ul>
<li>
<p>若值有效,只要玩家处于对话框界面,该音效就会循环播放</p>
</li>
<li>
<p>连续的对话若该字段值相同,背景音乐不会重新开始</p>
</li>
<li>
<p>填写空字符串会停止背景音乐(不想为了bgm再加个类似于stopBgm的字段)</p>
</li>
<li>
<p>如果不写该字段(即为null的情况),不会有任何操作(意思是你可以只在需要播放和停止背景音乐时才写这个字段)</p>
</li>
</ul>
</li>
<li>
<p>
<code>stayTick</code>:强制玩家在该对话停留时长,若未达到指定时长,玩家无法跳转下一句对话(默认值为0,填负数则不论过多久玩家都无法跳转,不影响选项的跳转)
</p>
</li>
</ul>
</li>
<li>
<p>修复无法正常检查音效是否正在播放的bug</p>
</li>
</ul>
[1.1.4] chatbox 1.1.4 by zhenshiz on Oct 21, 2026
Download
<ul>
<li>
<p>优化历史记录界面的渲染</p>
</li>
<li>
<p>
优化MVEL解析,详见扩展功能-MVEL文档,现在可以在对话文本中写<code>&lt;&lt;MVEL代码&gt;&gt;</code>当做更加强大的占位符使用(需要代码执行后有返回值)
</p>
</li>
<li>
<p>对话文本配置新增字段:</p>
<ul>
<li>
<p><code>bgm</code>:用于控制背景音乐播放</p>
<ul>
<li>
<p>若值有效,只要玩家处于对话框界面,该音效就会循环播放</p>
</li>
<li>
<p>连续的对话若该字段值相同,背景音乐不会重新开始</p>
</li>
<li>
<p>填写空字符串会停止背景音乐(不想为了bgm再加个类似于stopBgm的字段)</p>
</li>
<li>
<p>如果不写该字段(即为null的情况),不会有任何操作(意思是你可以只在需要播放和停止背景音乐时才写这个字段)</p>
</li>
</ul>
</li>
<li>
<p>
<code>stayTick</code>:强制玩家在该对话停留时长,若未达到指定时长,玩家无法跳转下一句对话(默认值为0,填负数则不论过多久玩家都无法跳转,不影响选项的跳转)
</p>
</li>
</ul>
</li>
<li>
<p>修复无法正常检查音效是否正在播放的bug</p>
</li>
</ul>
<ul>
<li>
<p>优化历史记录界面的渲染</p>
</li>
<li>
<p>
优化MVEL解析,详见扩展功能-MVEL文档,现在可以在对话文本中写<code>&lt;&lt;MVEL代码&gt;&gt;</code>当做更加强大的占位符使用(需要代码执行后有返回值)
</p>
</li>
<li>
<p>对话文本配置新增字段:</p>
<ul>
<li>
<p><code>bgm</code>:用于控制背景音乐播放</p>
<ul>
<li>
<p>若值有效,只要玩家处于对话框界面,该音效就会循环播放</p>
</li>
<li>
<p>连续的对话若该字段值相同,背景音乐不会重新开始</p>
</li>
<li>
<p>填写空字符串会停止背景音乐(不想为了bgm再加个类似于stopBgm的字段)</p>
</li>
<li>
<p>如果不写该字段(即为null的情况),不会有任何操作(意思是你可以只在需要播放和停止背景音乐时才写这个字段)</p>
</li>
</ul>
</li>
<li>
<p>
<code>stayTick</code>:强制玩家在该对话停留时长,若未达到指定时长,玩家无法跳转下一句对话(默认值为0,填负数则不论过多久玩家都无法跳转,不影响选项的跳转)
</p>
</li>
</ul>
</li>
<li>
<p>修复无法正常检查音效是否正在播放的bug</p>
</li>
</ul>
组件新增widthReference和heightReference字段,以保证在不同窗口尺寸下,图片的宽高比可以不变

修复了在跳转到一句新的对话时触发跳转对话(jump)事件会导致崩溃的bug
组件新增widthReference和heightReference字段,以保证在不同窗口尺寸下,图片的宽高比可以不变

修复了在跳转到一句新的对话时触发跳转对话(jump)事件会导致崩溃的bug
[1.1.3] chatbox 1.1.3 by zhenshiz on Oct 21, 2026
Download
组件新增widthReference和heightReference字段,以保证在不同窗口尺寸下,图片的宽高比可以不变

修复了在跳转到一句新的对话时触发跳转对话(jump)事件会导致崩溃的bug
组件新增widthReference和heightReference字段,以保证在不同窗口尺寸下,图片的宽高比可以不变

修复了在跳转到一句新的对话时触发跳转对话(jump)事件会导致崩溃的bug
引入MVEL,使立绘配置的条件判断更简单灵活。为此,组件渲染事件有如下改动:

增加了condition字段,留空即无条件,默认客户端执行mvel,若以execute开头就是服务端执行命令,若以server:开头就是在服务端执行mvel

增加了两种触发时机:tick和check(即使不被渲染也会执行一次,可用于被隐藏的组件)

增加了一些类型:lock, unlock, set_normal, mvel

立绘现在新增了isLock和lockTexture字段;选项的unlockCommand字段逻辑和组件事件的condition字段一样,效果同之前

chatbox指令新增mvelTest子命令,便于测试mvel的执行情况
引入MVEL,使立绘配置的条件判断更简单灵活。为此,组件渲染事件有如下改动:

增加了condition字段,留空即无条件,默认客户端执行mvel,若以execute开头就是服务端执行命令,若以server:开头就是在服务端执行mvel

增加了两种触发时机:tick和check(即使不被渲染也会执行一次,可用于被隐藏的组件)

增加了一些类型:lock, unlock, set_normal, mvel

立绘现在新增了isLock和lockTexture字段;选项的unlockCommand字段逻辑和组件事件的condition字段一样,效果同之前

chatbox指令新增mvelTest子命令,便于测试mvel的执行情况
[1.1.2] chatbox 1.1.2 by zhenshiz on Oct 21, 2026
Download
引入MVEL,使立绘配置的条件判断更简单灵活。为此,组件渲染事件有如下改动:

增加了condition字段,留空即无条件,默认客户端执行mvel,若以execute开头就是服务端执行命令,若以server:开头就是在服务端执行mvel

增加了两种触发时机:tick和check(即使不被渲染也会执行一次,可用于被隐藏的组件)

增加了一些类型:lock, unlock, set_normal, mvel

立绘现在新增了isLock和lockTexture字段;选项的unlockCommand字段逻辑和组件事件的condition字段一样,效果同之前

chatbox指令新增mvelTest子命令,便于测试mvel的执行情况
引入MVEL,使立绘配置的条件判断更简单灵活。为此,组件渲染事件有如下改动:

增加了condition字段,留空即无条件,默认客户端执行mvel,若以execute开头就是服务端执行命令,若以server:开头就是在服务端执行mvel

增加了两种触发时机:tick和check(即使不被渲染也会执行一次,可用于被隐藏的组件)

增加了一些类型:lock, unlock, set_normal, mvel

立绘现在新增了isLock和lockTexture字段;选项的unlockCommand字段逻辑和组件事件的condition字段一样,效果同之前

chatbox指令新增mvelTest子命令,便于测试mvel的执行情况
新增配置项:图片立绘宽度缩放比例

新增生物实体渲染类型的立绘
新增配置项:图片立绘宽度缩放比例

新增生物实体渲染类型的立绘
chatbox Icon
Download chatbox
Select game version
Select platform