innc
本帖最后由 innc 于 2023-3-25 21:22 编辑

新版迁移通知
原版更新助手系列(JarClient)会在2023年1月28日23:59(大年初七晚上)之后停止维护和技术支持。建议用户迁移至McPatch系列
补充:
1.停止技术支持后,文档不会再更新,不会再发布新版本,但已经发布可执行文件会一直保留下载链接不受影响(百度网盘),仍可以下载使用
2.停止技术支持的内容包括五项:单文件服务端、静态服务端,JarClient,Exe客户端,规则编辑器
2022年12月31日23:59之前有过任意金额赞助(爱发电或者红包),或者购买过任意技术支持服务的用户不受影响,我会一直提供长期技术支持(请求技术支持时请一定要告知我你有过赞助,我会加你好友并添加备注,否则我可能不会回应你的消息)

老用户说明
目前更新助手发布了3个系列,从旧到新是:原版更新助手(JarClient),McVersioning,McPatch
1.原版更新助手(JarClient)会在2023年1月28日23:59(大年初七晚上)之后停止维护和技术支持
2.McVersioning被反馈有文件漏更新的严重问题,且受架构限制无法修复,切勿使用,已在使用请尽快更换
3.McPatch是最后发布的系列,综合使用体验最好,建议新用户从这个版本开始用,老用户尽可能迁移到此系列


McPatch相对原版更新助手(JarClient)有经验是不相通的,甚至是完全相反的,略有学习成本,但不大
比如客户端删除文件后,McPatch是无法进行补全下载的,更多不同需要阅读McPatch的文档
如果你是原版更新助手(JarClient)的老用户,在使用McPatch时尽可能不要代入老版的使用经验,详细阅读文档里高亮的文字


简单介绍
更新助手McPatch是一个给客户端做文件更新的独立软件,管理端和客户端均支持JVM全平台
客户端程序支持:JVM全平台,包括Windows平台(PC端任意三方启动器!)和Android平台(手机端澪和HMCLPE已验证通过
服务端有开箱即用小白友好,且支持JVM全平台的MiniHttpServer,也有支持巨佬魔改的纯静态部署方案
管理端支持JVM全平台:Windows,LinuxMacOS只要能安装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.每个更新包都会尽可能压缩,尽可能降低更新时的流量消耗

简单视频教程
这个视频以演示和宣传为主。视频里能传达的东西非常有限,安装时请尽量按文档教程操作,而非视频教程
【原创国产更新器!MC客户端自动更新教程】

下载地址
1. 百度网盘:
█████,如果您要查看本帖隐藏内容请回复
2. QQ群文件:【更新助手官方群】 群号可以在帮助文档里找到,群文件与百度网盘同步更新

安装教程
1.安装教程(McPatch系列):https://asforest.gitee.io/mcpatch-docs
3.安装教程(原版更新助手系列JarClient):https://balloonupdate.github.io/Docs (不推荐)

开源仓库
如果喜欢可以给一颗小星星哦,所有源代码完全开源
https://balloonupdate.github.io/McPatchDocs


如果喜欢的话,记得点个收藏啦!

Mccraft-pepsi
大爱!这插件比上一款好用多了!支持!

yy53003061
我就想问客户端的直接打开请问是放在mods文件夹里面打开还是放在整合包启动器根目录就可以的?

夜米奇
没人回复不科学,好东西~

innc
yy53003061 发表于 2017-7-27 21:20
我就想问客户端的直接打开请问是放在mods文件夹里面打开还是放在整合包启动器根目录就可以的? ...

直接运行,和启动器放在一起的

LX神龙
做的真好,希望多更新一下

2264050315
这么好的东西 没人回复      呵呵。。。  帮楼主顶一个

源源不开心
我的面板可以开端口 QWQ希望做出一个更新客户端软件版本的  有的人java版本不对 整半天也没明白 让我损失了很多玩家

innc
柴源 发表于 2017-7-31 15:23
我的面板可以开端口 QWQ希望做出一个更新客户端软件版本的  有的人java版本不对 整半天也没明白 让我损失了 ...

感谢建议,下次我会尽量做成exe自动寻找Java路径并能兼容java1.7

zlzchuyue
mod服表示,用了这个之后,每次更新后,玩家的小地图数据就没了,小地图数据存储在mods文件夹下的。。

innc
zlzchuyue 发表于 2017-8-1 01:28
mod服表示,用了这个之后,每次更新后,玩家的小地图数据就没了,小地图数据存储在mods文件夹下的。。 ...

可以试一下这个办法:
在mods文件夹里面再新建一个文件夹,让以后需要更新的mod都更新到这个文件夹里面,第二层文件夹forge会扫描到的,目前只能这样了,因为按规范来说mods文件夹不应该存放任何数据的

half_life
不过还是建议 在做个 插件的

an_an_an
为什么总是提示连接不上服务器,服务器上面的规则已经加进去了,而且托盘图标是绿色的,而且客户端和服务端的配置也没错。

innc
an_an_an 发表于 2017-8-6 16:03
为什么总是提示连接不上服务器,服务器上面的规则已经加进去了,而且托盘图标是绿色的,而且客户端和服务端 ...

要不在服务器上试一试看能不能正常使用,可能是端口不通的问题

an_an_an
innc 发表于 2017-8-6 16:05
要不在服务器上试一试看能不能正常使用,可能是端口不通的问题

真是端口不通,不过端口怎么通?

innc
an_an_an 发表于 2017-8-6 16:52
真是端口不通,不过端口怎么通?

服务器是什么操作系统?公网可以访问吗

an_an_an
innc 发表于 2017-8-6 16:54
服务器是什么操作系统?公网可以访问吗

win2012R2,在MC上是可以连接的

an_an_an
innc 发表于 2017-8-6 16:54
服务器是什么操作系统?公网可以访问吗

抱歉,我去联系一下服务器商吧。。

innc
an_an_an 发表于 2017-8-6 17:00
抱歉,我去联系一下服务器商吧。。

嗯,没事,可能是服务商没有开通端口把

M_Dawn
牛逼!希望多更新一下

an_an_an
innc 发表于 2017-8-6 17:15
嗯,没事,可能是服务商没有开通端口把

端口开了,为毛还是连不上

innc
an_an_an 发表于 2017-8-7 11:10
端口开了,为毛还是连不上

如果能确定端口是通的的话,看看配置文件里服务器的地址有没有差错,就是客户端的配置文件

an_an_an
innc 发表于 2017-8-7 11:19
如果能确定端口是通的的话,看看配置文件里服务器的地址有没有差错,就是客户端的配置文件 ...

IP是共享IP,而且给服务器商给域名掩了,不过逆域名检测也能查到IP

innc
an_an_an 发表于 2017-8-7 11:24
IP是共享IP,而且给服务器商给域名掩了,不过逆域名检测也能查到IP

能把客户端配置文件里写的内容pm我吗?

innc
LUKX 发表于 2017-8-6 19:37
牛逼!希望多更新一下

嗯,感谢支持!

维达哎哎
本帖最后由 维达哎哎 于 2017-10-3 03:12 编辑

一直提示载入0条规则怎么办?
rules.txt


文件:




zhang_min
为什么提示零规则??????

Reon_Aqest
网盘掉了啊!!!!!!!!!!!!!!
块补上

volta薯片~
安装方式好复杂

M_Dawn
lz!链接炸了!

dougou
楼主,链接挂了

asd1282435812
怎么没下载地址啦?

innc
zhang_min 发表于 2017-12-23 18:55
为什么提示零规则??????

能把rules.txt内容发我看下吗

innc
18502788409 发表于 2018-1-13 21:21
网盘掉了啊!!!!!!!!!!!!!!
块补上

感谢支持,已经补上        http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833

innc

试一下新版的可好,只要点点点 http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833

innc

感谢支持,已补上http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833

innc
dougou 发表于 2018-1-18 23:34
楼主,链接挂了

感谢支持,已补上http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833

innc
asd1282435812 发表于 2018-1-19 18:54
怎么没下载地址啦?

感谢,已补上http://www.mcbbs.net/forum.php?mod=viewthread&tid=711833

Mr.Seven590
本帖最后由 q805705693 于 2018-1-29 01:13 编辑

请问,是完全与设定文件夹里的文件保持一致且是md5一致吗?
如果有多余的文件,会清除掉吗?

要是能增加个可选mod的设置就好了233333



还有服务端与客户端之间的通讯协议是啥,tcp?udp?
主要是方便设置服务端的安全组设置

还有,
serverConfig.properties文件里的clientJAR字段就是设置的客户端的执行文件

这里的执行文件是什么意思,就是新版客户端吗?
如果有个例子来说明用法就好了


这个报错又是什么情况?
  1. 117.135.227.188:6156连接上来了!
  2. java.lang.reflect.InvocationTargetException
  3.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  4.         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  5.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  6.         at java.lang.reflect.Method.invoke(Method.java:498)
  7.         at top.metime.updater.server.net.Client.run(Client.java:63)
  8.         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
  9.         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
  10.         at java.lang.Thread.run(Thread.java:748)
  11. Caused by: java.io.FileNotFoundException: clientJars (No such file or directory)
  12.         at java.io.FileInputStream.open0(Native Method)
  13.         at java.io.FileInputStream.open(FileInputStream.java:195)
  14.         at java.io.FileInputStream.<init>(FileInputStream.java:138)
  15.         at top.metime.updater.server.net.NP.writeFile(NP.java:45)
  16.         at top.metime.updater.server.net.protocol.PV0.handle(PV0.java:33)
  17.         ... 8 more
  18. 117.135.227.188:6156断开了连接!
复制代码
——————————————更新————————————————
和我猜的一样,是clientJAR=没设置好,这个指向同目录下的最新版客户端,没有这个客户端就会报错。

同样,如果同目录下没有设置好的clientmods一样会报错

建议针对这俩报错特意设置一个信息提示


而且,多余的mod不会删除,只会保证有服务端的mod并且相同

bug报告:
1.自动启动启动器,会一次启动俩,很蛋疼
又出错了,找不到原因
  1. Exception in thread "MainService" java.lang.NullPointerException
  2.         at top.metime.updater.server.memory.MStorage$Builder.wle(MStorage.java:55)
  3.         at top.metime.updater.server.memory.MStorage$Builder.wle(MStorage.java:73)
  4.         at top.metime.updater.server.memory.MStorage$Builder.<init>(MStorage.java:48)
  5.         at top.metime.updater.server.tools.RulesLoader.loadRules(RulesLoader.java:28)
  6.         at top.metime.updater.server.Main.getRules(Main.java:90)
  7.         at top.metime.updater.server.init.CommandLine.reload(CommandLine.java:88)
  8.         at top.metime.updater.server.init.CommandLine.run(CommandLine.java:67)
  9.         at top.metime.updater.server.Main.main2(Main.java:48)
  10.         at top.metime.updater.server.Main.main(Main.java:34)
复制代码

————————————更新2————————————
该错误是由于命名不规范
clientmods中的mod名称不能有中文?或许某些特殊符号(可能%?)

只要规范英文命名肯定没问题

bug:忽略文件的功能实测无用。。还是说我**误?命名没错才对。。

innc
本帖最后由 innc 于 2018-1-29 01:51 编辑
q805705693 发表于 2018-1-28 02:48
请问,是完全与设定文件夹里的文件保持一致且是md5一致吗?
如果有多余的文件,会清除掉吗?


感谢反馈!多余文件无法清除的问题,没设置好就报错的问题,启动启动器的问题和忽略文件的问题,我会尽最快速度修复的。其实嘛,这个程序整个通讯过程都是tcp协议,不瞒你说。动态更新的大致流程就是把核心代码打包成jar,等到客户端连接上来的时候把核心代码给客户端发过去,然后客户端再运行,这次可能有点着急了,帮助文档有些地方也写的很模糊,下次我会尽可能写的详细,通俗易懂,最后感谢支持

Mr.Seven590
innc 发表于 2018-1-29 01:46
感谢反馈!多余文件无法清除的问题,没设置好就报错的问题,启动启动器的问题和忽略文件的问题,我会尽最 ...

哈!没事,感觉挺不错的,发展空间大。。。说实话挺感兴趣的,看了看源代码,发现了两段启动EXE的代码23333不同的方式,同样的效果。
虽然没系统学习过编程,兴趣还是有的,这或许可以作为我入坑java的动力源,因为能在这基础上修修改改出自己想要的特性,并且能成功应用,也是很有成就感了

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

说实话很巧,前几天正找到这个帖子,那时候还没更新,下载链接又挂了,于是自己苦心研究,怎么编译你的源码——怎么配置jdk——怎么编译这个项目(哇说实话cmd编译太蛋疼了,而且还没搞懂)——怎么用eclipse——编译成功尚未使用——惊喜的发现你的帖子更新了!顺带更新了波源码

说实话这野路子真不好,啥概念都不懂,主要是这面相对象编程的思想和以往的不一样。也傻啦吧唧的没去查这些概念,基础。果然还是得买本书或者看看视频什么的系统学习,基础很重要。

但是对于我这样的人,不喜欢学习了那么久没出点有用的成果

ps:半夜了,思想就是有点奇怪。

dougou
请问楼主,我vps里存在两个服,服务端路径的话是不是要把服务器的文件夹也写上

innc
dougou 发表于 2018-1-31 09:22
请问楼主,我vps里存在两个服,服务端路径的话是不是要把服务器的文件夹也写上 ...

不用啊,这个软件和服务器的文件夹没有任何联系,我猜你的两个服,两个服之间的mod肯定不会是一样的,那么就需要分别给两个服务器写两个不同规则

innc
q805705693 发表于 2018-1-29 02:16
哈!没事,感觉挺不错的,发展空间大。。。说实话挺感兴趣的,看了看源代码,发现了两段启动EXE的代码233 ...

我也是为了做插件才入的Java,可学了这么长时间,写出来的东西连自己看都真的费劲。简直就是在用java写c,真怀疑是不是学了假的java,不过现在也在慢慢改进呀。凡事都要个过程嘛。一起加油吧,学到手的东西多了,总有一天会派上用场的

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

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

volta薯片~
很棒,从旧帖来的

half_life
食用方式与readme.md 不符 请楼主纠正

805781737
innc 发表于 2017-8-1 13:44
可以试一下这个办法:
在mods文件夹里面再新建一个文件夹,让以后需要更新的mod都更新到这个文件夹里面, ...

楼主啊那么现在都18年2月了EXE启动的写了吗还有自动寻找java支持java7

805781737
innc 发表于 2017-7-31 19:38
感谢建议,下次我会尽量做成exe自动寻找Java路径并能兼容java1.7

楼主啊那么现在都18年2月了EXE启动的写了吗还有自动寻找java支持java7

第一页 上一页 下一页 最后一页