本帖最后由 innc 于 2023-3-25 21:22 编辑
安装教程3.安装教程(原版更新助手系列JarClient):https://balloonupdate.github.io/Docs (不推荐)
新版迁移通知
原版更新助手系列(JarClient)会在2023年1月28日23:59(大年初七晚上)之后停止维护和技术支持。建议用户迁移至McPatch系列
补充:
1.停止技术支持后,文档不会再更新,不会再发布新版本,但已经发布可执行文件会一直保留下载链接不受影响(百度网盘),仍可以下载使用
2.停止技术支持的内容包括五项:单文件服务端、静态服务端,JarClient,Exe客户端,规则编辑器
2022年12月31日23:59之前有过任意金额赞助(爱发电或者红包),或者购买过任意技术支持服务的用户不受影响,我会一直提供长期技术支持(请求技术支持时请一定要告知我你有过赞助,我会加你好友并添加备注,否则我可能不会回应你的消息)
老用户说明
目前更新助手发布了3个系列,从旧到新是:原版更新助手(JarClient),McVersioning,McPatch
目前更新助手发布了3个系列,从旧到新是:原版更新助手(JarClient),McVersioning,McPatch
1.原版更新助手(JarClient)会在2023年1月28日23:59(大年初七晚上)之后停止维护和技术支持
2.McVersioning被反馈有文件漏更新的严重问题,且受架构限制无法修复,切勿使用,已在使用请尽快更换
3.McPatch是最后发布的系列,综合使用体验最好,建议新用户从这个版本开始用,老用户尽可能迁移到此系列
McPatch相对原版更新助手(JarClient)有经验是不相通的,甚至是完全相反的,略有学习成本,但不大
比如客户端删除文件后,McPatch是无法进行补全下载的,更多不同需要阅读McPatch的文档
如果你是原版更新助手(JarClient)的老用户,在使用McPatch时尽可能不要代入老版的使用经验,详细阅读文档里高亮的文字
2.McVersioning被反馈有文件漏更新的严重问题,且受架构限制无法修复,切勿使用,已在使用请尽快更换
3.McPatch是最后发布的系列,综合使用体验最好,建议新用户从这个版本开始用,老用户尽可能迁移到此系列
McPatch相对原版更新助手(JarClient)有经验是不相通的,甚至是完全相反的,略有学习成本,但不大
比如客户端删除文件后,McPatch是无法进行补全下载的,更多不同需要阅读McPatch的文档
如果你是原版更新助手(JarClient)的老用户,在使用McPatch时尽可能不要代入老版的使用经验,详细阅读文档里高亮的文字
简单介绍
更新助手McPatch是一个给客户端做文件更新的独立软件,管理端和客户端均支持JVM全平台
客户端程序支持:JVM全平台,包括Windows平台(PC端任意三方启动器!)和Android平台(手机端澪和HMCLPE已验证通过)
服务端有开箱即用小白友好,且支持JVM全平台的MiniHttpServer,也有支持巨佬魔改的纯静态部署方案
管理端支持JVM全平台:Windows,Linux,MacOS只要能安装java的平台就能支持
所有的源代码完全开源,欢迎各位萌新大佬前来学(bai)习(piao)
亮点特性
1.客户端支持多种更新协议,目前支持的有:HTTP(难度最低,可配合对象存储)、Webdav(可配合AList),SFTP(可配合Docker + sftpd)
2.支持任何三方启动器的一键启动(不再仅限于HMCL)玩家仅需点击启动器的"启动游戏"按钮,无需任何额外操作,会自动检查文件更新并运行游戏
2.软件整体使用模块化设计,将管理端和服务端拆分出来,管理端本身仅负责更新包打包工作,而不会限制更新包的具体部署平台(比如本机部署或者对象存储,网站主机等地方)
3.服务端是一个自带的轻量级的HTTP服务器,可无需任何配置就可以开箱即用,极大降低无nginx,宝塔环境下的部署难度
(运行截图:McPatchClient 1.0.8版本配置一键启动后的效果。除了演示用的PCL和HMCL,同样支持任意三方启动器)



工作流程
McPatch使用基于版本号的更新策略,软件运行后会向服务端获取最新的版本号,如果本地的版本号不是最新的,会一次下载中间所有的更新包然后安装
相比之前的同步式更新,有许多优点:
1.不会误删玩家自己添加的模组和资源包文件
2.不用写头大的更新规则,这个应该是效果最明显的改进了
3.无更新时秒速启动,尤其是更新文件夹特别大时(GB级以上),仍然维持1s内完成检查更新,对移动端设备非常友好
4.如果没有任何更新,仅仅是向检测一下最新版本号,每次流量开销可以降低到0.3Kb以下
5.使用差异式更新,一个100000000GB的文件,如果只改写1字节,那么更新包就只会记录1字节,节省99999999.999GB流量
5.每个更新包都会尽可能压缩,尽可能降低更新时的流量消耗
简单视频教程
这个视频以演示和宣传为主。视频里能传达的东西非常有限,安装时请尽量按文档教程操作,而非视频教程
下载地址
1. 百度网盘:
█████,如果您要查看本帖隐藏内容请回复
2. QQ群文件:【更新助手官方群】 群号可以在帮助文档里找到,群文件与百度网盘同步更新
安装教程
1.安装教程(McPatch系列):https://asforest.gitee.io/mcpatch-docs
开源仓库
如果喜欢可以给一颗小星星哦,所有源代码完全开源
如果喜欢的话,记得点个收藏啦!
大爱!这插件比上一款好用多了!支持!
我就想问客户端的直接打开请问是放在mods文件夹里面打开还是放在整合包启动器根目录就可以的?
没人回复不科学,好东西~
yy53003061 发表于 2017-7-27 21:20
我就想问客户端的直接打开请问是放在mods文件夹里面打开还是放在整合包启动器根目录就可以的? ...
直接运行,和启动器放在一起的
做的真好,希望多更新一下
这么好的东西 没人回复 呵呵。。。 帮楼主顶一个
我的面板可以开端口 QWQ希望做出一个更新客户端软件版本的 有的人java版本不对 整半天也没明白 让我损失了很多玩家
柴源 发表于 2017-7-31 15:23
我的面板可以开端口 QWQ希望做出一个更新客户端软件版本的 有的人java版本不对 整半天也没明白 让我损失了 ...
感谢建议,下次我会尽量做成exe自动寻找Java路径并能兼容java1.7
mod服表示,用了这个之后,每次更新后,玩家的小地图数据就没了,小地图数据存储在mods文件夹下的。。
zlzchuyue 发表于 2017-8-1 01:28
mod服表示,用了这个之后,每次更新后,玩家的小地图数据就没了,小地图数据存储在mods文件夹下的。。 ...
可以试一下这个办法:
在mods文件夹里面再新建一个文件夹,让以后需要更新的mod都更新到这个文件夹里面,第二层文件夹forge会扫描到的,目前只能这样了,因为按规范来说mods文件夹不应该存放任何数据的
不过还是建议 在做个 插件的
为什么总是提示连接不上服务器,服务器上面的规则已经加进去了,而且托盘图标是绿色的,而且客户端和服务端的配置也没错。
an_an_an 发表于 2017-8-6 16:03
为什么总是提示连接不上服务器,服务器上面的规则已经加进去了,而且托盘图标是绿色的,而且客户端和服务端 ...
要不在服务器上试一试看能不能正常使用,可能是端口不通的问题
innc 发表于 2017-8-6 16:05
要不在服务器上试一试看能不能正常使用,可能是端口不通的问题
真是端口不通,不过端口怎么通?
an_an_an 发表于 2017-8-6 16:52
真是端口不通,不过端口怎么通?
服务器是什么操作系统?公网可以访问吗
innc 发表于 2017-8-6 16:54
服务器是什么操作系统?公网可以访问吗
win2012R2,在MC上是可以连接的
innc 发表于 2017-8-6 16:54
服务器是什么操作系统?公网可以访问吗
抱歉,我去联系一下服务器商吧。。
牛逼!希望多更新一下
an_an_an 发表于 2017-8-7 11:10
端口开了,为毛还是连不上
如果能确定端口是通的的话,看看配置文件里服务器的地址有没有差错,就是客户端的配置文件
innc 发表于 2017-8-7 11:19
如果能确定端口是通的的话,看看配置文件里服务器的地址有没有差错,就是客户端的配置文件 ...
IP是共享IP,而且给服务器商给域名掩了,不过逆域名检测也能查到IP
an_an_an 发表于 2017-8-7 11:24
IP是共享IP,而且给服务器商给域名掩了,不过逆域名检测也能查到IP
能把客户端配置文件里写的内容pm我吗?
LUKX 发表于 2017-8-6 19:37
牛逼!希望多更新一下
嗯,感谢支持!
本帖最后由 维达哎哎 于 2017-10-3 03:12 编辑
一直提示载入0条规则怎么办?
rules.txt
文件:
一直提示载入0条规则怎么办?
rules.txt

文件:

为什么提示零规则??????
网盘掉了啊!!!!!!!!!!!!!!
块补上
块补上
安装方式好复杂

lz!链接炸了!
楼主,链接挂了
怎么没下载地址啦?
zhang_min 发表于 2017-12-23 18:55
为什么提示零规则??????
能把rules.txt内容发我看下吗
18502788409 发表于 2018-1-13 21:21
网盘掉了啊!!!!!!!!!!!!!!
块补上
感谢支持,已经补上 http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833
volta薯片~ 发表于 2018-1-13 22:08
安装方式好复杂
试一下新版的可好,只要点点点 http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833
asd1282435812 发表于 2018-1-19 18:54
怎么没下载地址啦?
感谢,已补上http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833
本帖最后由 q805705693 于 2018-1-29 01:13 编辑
请问,是完全与设定文件夹里的文件保持一致且是md5一致吗?
如果有多余的文件,会清除掉吗?
要是能增加个可选mod的设置就好了233333
还有服务端与客户端之间的通讯协议是啥,tcp?udp?
主要是方便设置服务端的安全组设置
还有,
这里的执行文件是什么意思,就是新版客户端吗?
如果有个例子来说明用法就好了
这个报错又是什么情况?
复制代码——————————————更新————————————————
和我猜的一样,是clientJAR=没设置好,这个指向同目录下的最新版客户端,没有这个客户端就会报错。
同样,如果同目录下没有设置好的clientmods一样会报错
建议针对这俩报错特意设置一个信息提示
而且,多余的mod不会删除,只会保证有服务端的mod并且相同
bug报告:
1.自动启动启动器,会一次启动俩,很蛋疼
又出错了,找不到原因复制代码
————————————更新2————————————
该错误是由于命名不规范
clientmods中的mod名称不能有中文?或许某些特殊符号(可能%?)
只要规范英文命名肯定没问题
bug:忽略文件的功能实测无用。。还是说我**误?命名没错才对。。
请问,是完全与设定文件夹里的文件保持一致且是md5一致吗?
如果有多余的文件,会清除掉吗?
要是能增加个可选mod的设置就好了233333
还有服务端与客户端之间的通讯协议是啥,tcp?udp?
主要是方便设置服务端的安全组设置
还有,
serverConfig.properties文件里的clientJAR字段就是设置的客户端的执行文件
这里的执行文件是什么意思,就是新版客户端吗?
如果有个例子来说明用法就好了

这个报错又是什么情况?
- 117.135.227.188:6156连接上来了!
- java.lang.reflect.InvocationTargetException
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at top.metime.updater.server.net.Client.run(Client.java:63)
- at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
- at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
- at java.lang.Thread.run(Thread.java:748)
- Caused by: java.io.FileNotFoundException: clientJars (No such file or directory)
- at java.io.FileInputStream.open0(Native Method)
- at java.io.FileInputStream.open(FileInputStream.java:195)
- at java.io.FileInputStream.<init>(FileInputStream.java:138)
- at top.metime.updater.server.net.NP.writeFile(NP.java:45)
- at top.metime.updater.server.net.protocol.PV0.handle(PV0.java:33)
- ... 8 more
- 117.135.227.188:6156断开了连接!
和我猜的一样,是clientJAR=没设置好,这个指向同目录下的最新版客户端,没有这个客户端就会报错。
同样,如果同目录下没有设置好的clientmods一样会报错
建议针对这俩报错特意设置一个信息提示
而且,多余的mod不会删除,只会保证有服务端的mod并且相同
bug报告:
1.自动启动启动器,会一次启动俩,很蛋疼
又出错了,找不到原因
- Exception in thread "MainService" java.lang.NullPointerException
- at top.metime.updater.server.memory.MStorage$Builder.wle(MStorage.java:55)
- at top.metime.updater.server.memory.MStorage$Builder.wle(MStorage.java:73)
- at top.metime.updater.server.memory.MStorage$Builder.<init>(MStorage.java:48)
- at top.metime.updater.server.tools.RulesLoader.loadRules(RulesLoader.java:28)
- at top.metime.updater.server.Main.getRules(Main.java:90)
- at top.metime.updater.server.init.CommandLine.reload(CommandLine.java:88)
- at top.metime.updater.server.init.CommandLine.run(CommandLine.java:67)
- at top.metime.updater.server.Main.main2(Main.java:48)
- at top.metime.updater.server.Main.main(Main.java:34)
————————————更新2————————————
该错误是由于命名不规范
clientmods中的mod名称不能有中文?或许某些特殊符号(可能%?)
只要规范英文命名肯定没问题
bug:忽略文件的功能实测无用。。还是说我**误?命名没错才对。。
本帖最后由 innc 于 2018-1-29 01:51 编辑
感谢反馈!多余文件无法清除的问题,没设置好就报错的问题,启动启动器的问题和忽略文件的问题,我会尽最快速度修复的。其实嘛,这个程序整个通讯过程都是tcp协议,不瞒你说。动态更新的大致流程就是把核心代码打包成jar,等到客户端连接上来的时候把核心代码给客户端发过去,然后客户端再运行,这次可能有点着急了,帮助文档有些地方也写的很模糊,下次我会尽可能写的详细,通俗易懂,最后感谢支持
q805705693 发表于 2018-1-28 02:48
请问,是完全与设定文件夹里的文件保持一致且是md5一致吗?
如果有多余的文件,会清除掉吗?
感谢反馈!多余文件无法清除的问题,没设置好就报错的问题,启动启动器的问题和忽略文件的问题,我会尽最快速度修复的。其实嘛,这个程序整个通讯过程都是tcp协议,不瞒你说。动态更新的大致流程就是把核心代码打包成jar,等到客户端连接上来的时候把核心代码给客户端发过去,然后客户端再运行,这次可能有点着急了,帮助文档有些地方也写的很模糊,下次我会尽可能写的详细,通俗易懂,最后感谢支持

innc 发表于 2018-1-29 01:46
感谢反馈!多余文件无法清除的问题,没设置好就报错的问题,启动启动器的问题和忽略文件的问题,我会尽最 ...
哈!没事,感觉挺不错的,发展空间大。。。说实话挺感兴趣的,看了看源代码,发现了两段启动EXE的代码23333不同的方式,同样的效果。
虽然没系统学习过编程,兴趣还是有的,这或许可以作为我入坑java的动力源,因为能在这基础上修修改改出自己想要的特性,并且能成功应用,也是很有成就感了

对自己要求不高,巩固刚学的git......,看懂你的源码、原理,再能一定程度的修改一些,就心满意足了

说实话很巧,前几天正找到这个帖子,那时候还没更新,下载链接又挂了,于是自己苦心研究,怎么编译你的源码——怎么配置jdk——怎么编译这个项目(哇说实话cmd编译太蛋疼了,而且还没搞懂)——怎么用eclipse——编译成功尚未使用——惊喜的发现你的帖子更新了!顺带更新了波源码
说实话这野路子真不好,啥概念都不懂,主要是这面相对象编程的思想和以往的不一样。也傻啦吧唧的没去查这些概念,基础。果然还是得买本书或者看看视频什么的系统学习,基础很重要。
但是对于我这样的人,不喜欢学习了那么久没出点有用的成果

ps:半夜了,思想就是有点奇怪。
请问楼主,我vps里存在两个服,服务端路径的话是不是要把服务器的文件夹也写上
dougou 发表于 2018-1-31 09:22
请问楼主,我vps里存在两个服,服务端路径的话是不是要把服务器的文件夹也写上 ...
不用啊,这个软件和服务器的文件夹没有任何联系,我猜你的两个服,两个服之间的mod肯定不会是一样的,那么就需要分别给两个服务器写两个不同规则
q805705693 发表于 2018-1-29 02:16
哈!没事,感觉挺不错的,发展空间大。。。说实话挺感兴趣的,看了看源代码,发现了两段启动EXE的代码233 ...
我也是为了做插件才入的Java

苦于前几日想用ps3手柄玩win10版mc。不小心把驱动卸载了,寨板弄了好几天了驱动死活装不上,开发进度被迫停滞

另外git这个东西就和vi一样,入门困难,一旦入门之后感觉用起来非常爽的那种。我又想起来以前一个人玩极限模式,怕死掉,就用git把整个存档给维护起来,死了就回档

很棒,从旧帖来的
食用方式与readme.md 不符 请楼主纠正
innc 发表于 2017-8-1 13:44
可以试一下这个办法:
在mods文件夹里面再新建一个文件夹,让以后需要更新的mod都更新到这个文件夹里面, ...
楼主啊那么现在都18年2月了EXE启动的写了吗还有自动寻找java支持java7
innc 发表于 2017-7-31 19:38
感谢建议,下次我会尽量做成exe自动寻找Java路径并能兼容java1.7
楼主啊那么现在都18年2月了EXE启动的写了吗还有自动寻找java支持java7
805781737 发表于 2018-2-13 13:49
楼主啊那么现在都18年2月了EXE启动的写了吗还有自动寻找java支持java7
exe启动器我还在努力,苦于c++学习周期太长了,每天晚上只要有时间都有在看教程,最近准备换成kotlin但也在努力学习啦,有些类java7没有,所以只能用Java8来写,所以实在无法兼顾java7,加上不经常回家,只能每次借同学电脑写一点,进度有点慢还请谅解。
half_life 发表于 2018-2-8 10:20
食用方式与readme.md 不符 请楼主纠正
收到.感谢指错,会尽快纠正