Skip to content

Server Admin

HoshinoYumeka edited this page Sep 7, 2026 · 2 revisions

服主须知

首页使用手册 | 下一页:从源码构建

服务端配置、图片占多少硬盘、备份要备哪些目录。


服务端配置

文件位置:

环境 路径
单人游戏 存档目录下的 serverconfig/mcphone-server.toml每个存档一份
专用服务器 serverconfig/mcphone-server.toml

改完重进世界(或重启服务器)生效。

默认 范围 说明
allowFriendTeleport true 关闭后好友那一行的传送图标不再显示,服务端也拒绝传送请求。好友关系与聊天不受影响
allowChatImages true 关闭后输入栏左侧的图片键不再显示,服务端也拒收上传。已发送的图不删除,仍然可见——关掉的是"再发新的"
chatImageMaxKb 512 64–768 单张图片的 KB 上限。客户端按它压缩,服务端按它接收

这三项必须是服务端配置:客户端配置在每个玩家自己电脑上,用它来管"能不能传送"等于把规则交给被管的人。 服务端配置由服主一份说了算,NeoForge 会在玩家连入时同步给客户端,因此界面能据此提前隐藏按钮,而真正的拦截仍在服务端——界面只是不给入口,伪造客户端照样发得出包。

图片占多少硬盘

最坏情况 = chatImageMaxKb × 20 × 好友对数。

每对会话最多保留 20 张不同的图,所以每对好友封顶是该值的 20 倍。默认 512 KB 即每对 10 MB;200 对常聊的好友是 2 GB 上限。

实际远小于上限:Minecraft 的截图大片是天空与地形,长边压到 512 之后常常只有几 KB。上限卡的是满屏噪点的画面(雨天、粒子)以及动图——动图是所有帧拼成一张,因此最吃这个上限。

图片按内容存储(文件名为"会话键 + 图片字节"的哈希),因此同一张表情在同一对好友之间发一百次,硬盘上仍然只有一份,也只占那 20 个名额中的一个。

想怎么调 结果
调小 chatImageMaxKb 客户端自动降一档尺寸重压,图变糊;动图先掉帧、再不行退成一张静态图。功能不坏,画质让路。128 KB 大致是每对 2.5 MB
调大 图更清楚、动图更流畅,硬盘与带宽跟着涨
完全关闭 allowChatImages = false,已发送的仍然可见

上限 768 KB 是硬的:再往上就顶到原版"服务端发给客户端"那 1 MB 的包上限。

服务器启动时会扫描一遍图片仓,删除没有任何消息认领的文件(写完文件、消息尚未落盘就崩溃会留下这种孤儿)。

数据存在哪儿

做备份时要知道:

数据 位置 随什么走
好友关系、聊天记录 世界存档的 data/ 存档
聊天里发的图片 世界存档的 mcphone/chat-images/ 存档
笔记、已购 App、唱片仓、终端卡槽、壁纸选择、未读标记 玩家数据(playerdata/ 存档 + 玩家
App 安装状态与主屏排列 客户端 config/mcphone/installed/<存档>.json 玩家自己的客户端
书架收藏 客户端 config/mcphone/reader/shelf.json 玩家自己的客户端,全局一份不分存档
表情包 客户端 config/mcphone/stickers/ 玩家自己的客户端,全局一份不分存档
客户端设置(字色、界面大小、快捷键、HUD) 客户端 config/mcphone-client.toml 玩家自己的客户端

前三行在服务器上,删存档即丢失;后四行在玩家自己电脑上,服务器备份不包含它们

装了 Integrated Dynamics 的话

MCphone 会在方块注册的末尾,把 Integrated Dynamics 全部方块的掉落表提前解析一次。

不改变任何掉落行为,也不给玩家多出任何功能——它的作用是让别人的崩溃能被正确指认。

成因:NeoForge 的注册阶段只要收到任何一个模组抛出的异常,就会把整个注册表回滚成原版状态;而回滚过程本身会在 Integrated Dynamics 的墙上火把处踩到一个空指针,于是真正的错误被顶掉,崩溃报告上只剩一句

Trying to access unbound value: integrateddynamics:menril_torch_stone

看起来像是 Integrated Dynamics 的问题,实际上它只是最后一个倒下的。提前解析一次即可绕开那个空指针,使回滚正常完成并抛出真正的原因。

这不会救回服务器:起不来还是起不来,它只让崩溃报告指认对人。

细节写在 compat/IntegratedDynamicsCompat.java 的类注释里。未安装该模组时,这段代码一行都不会执行。


首页使用手册 | 上一页:换肤(资源包) | 下一页:从源码构建

Clone this wiki locally