25800woaini
本帖最后由 25800woaini 于 2021-9-18 19:45 编辑

弃坑


壹、SkyCraft是什么?
介绍
        本插件(Mod ?)提供一套Mod服全自动更新客户端的系统,只需要把客户端文件上传到服务器的client目录,任何配置过的客户端就会自动同步服务器提供的mod、配置文件等资源,简化mod服的新版本分发流程,让快速迭代更新成为可能。

简而言之 自动更新客户端的MOD无需频繁上传客户端/下载客户端

贰、如何使用

首先下载SkyCraft:https://www.mcbbs.net/thread-1212410-1-1.html 请前往原贴下载
该插件的原理是MOD+插件结合使用,注意!插件和MOD为一体!这就很棒

将下载的文件丢入客户端mods文件夹!

第一步:配置客户端
启动一次客户端之后会在config文件里面生成Updater.yml文件,打开它默认是这样
  1. # Configuration file

  2. general {
  3.     B:enableUpdate=true
  4.     S:ignores <
  5.      >
  6.     S:serverIp=127.0.0.1

  7.     # Min: 0
  8.     # Max: 65535
  9.     I:serverPort=80
  10. }
复制代码
将“S:serverIp=127.0.0.1”后面的ip地址改成你所租VPS/物理机的IP,不带端口!
将“I:serverPort=80”后面的port端口改成服务商允许你使用的端口之一,不要跟mc服务器的端口重合!
保存关闭


第二步:配置服务端

在某位置右键新建一个文件夹,在里面创建以下四个项目,需要自己手动新建并改后缀名,若不显示后缀名,请在上分点击-查看-勾选后缀名

- 插件.jar
- 启动.bat
- client_manifest.json
- client文件夹
右键编辑启动.bat,输入以下代码,记得修改端口与客户端匹配,这里IP填0.0.0.0!!

  1. java -cp .\插件.jar org.skycraft.updater.core.Provider client client_manifest.json 0.0.0.0 [这里写上面的Port端口]
  2. pause
复制代码
右键client_manifest.json,输入以下代码

  1. [
  2.     {
  3.         "category": "mods",
  4.         "path": "mods"
  5.     }
  6. ]
复制代码

将整个mods文件夹复制粘贴进client文件里面!注意!更新主程序也需要放进mods文件里面!!

双击启动.bat,等待插件读取client文件夹里的内容,最后显示“信息: Updater provider successfully started”为成功

最后准备一个纯Forege端,mod里面只放进更新MOD,记得按照上面的方法配置好客户端即可,启动游戏等加载到更新MOD的时候会提示你缺少文件并自动下载文件。

只需保证设置的IP跟端口不变,以后删MOD/加MOD只需在远程桌面的VPS/物理机上操作即可,本地客户端加载到更新MOD时会自动检索是否缺少文件/多文件,少文件会自动下载,多文件会自动删除!若有遗漏尽快评论说出来。以上就是我今天所研究的结果,写教程不易,大佬手下别留情


更新记录
2021/6/26/11:06 服务端bat文件IP改为本地IP,0.0.0.0

z543075006
本帖最后由 z543075006 于 2021-6-25 23:28 编辑

辛苦了,作者帖教程我也看了 都来学习一下

库多诺帝
辛苦了
自我感觉这个模组对于大部分的服务器来说是一个非常优秀的东西,能够让玩家们抛去那些去云盘下载限速的烦恼

白给一帆
不错的教程,正在尝试ing。

Akasaka美琴
楼主,我在本地测试成功后将文件放入vps中运行,然后吧客户端的ip更改为vps域名多次尝试无果,求助

25800woaini
a1532307511 发表于 2021-6-30 16:47
楼主,我在本地测试成功后将文件放入vps中运行,然后吧客户端的ip更改为vps域名多次尝试无果,求助 ...

本地测试用的是0.0.0.0IP放入VPS后需要将IP改为VPS的连接IP

绿奈
能补充上客户端的
S:ignores <
>
内容吗?
实在不明白是怎么填写的直接填写也无法识别
而且客户端有部分配置文件是每次启动都会排一下版插件就会识别他们不一样就和服务器同步
然后重复套娃客户端无法启动
帖子也没有说客户端此相应参数

25800woaini
绿奈 发表于 2021-7-1 15:08
能补充上客户端的
S:ignores <
>


config文件是存在漏洞 提前把config塞进客户端 不同步这个文件夹 目前应该没有办法 那个ignore选项我问问作者吧 不清楚用法  一般情况 应该很少动用客户端的config吧 大部分都是在服务端进行配置

绿奈
25800woaini 发表于 2021-7-1 16:40
config文件是存在漏洞 提前把config塞进客户端 不同步这个文件夹 目前应该没有办法 那个ignore选项我问 ...

行了你不用问了,我也问过了还没回我
我已经经历无数次测试出来了

他里面是这样填的
比如说是一个名为XXX的Mod他在Mods文件夹里面那么就应该这样填
S:ignores <
  mods/XXX.jar
>

虚无DDi
严重: Could not start http server
java.io.IOException: Failed to bind to p-c18.polarstar.cc/43.248.186.2:10010
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:349)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:310)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:234)
        at org.skycraft.updater.shades.org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.Server.doStart(Server.java:401)
        at org.skycraft.updater.shades.org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
        at org.skycraft.updater.core.Provider.startServer(Provider.java:254)
        at org.skycraft.updater.core.Provider.run(Provider.java:61)
        at org.skycraft.updater.core.Provider.main(Provider.java:315)
Caused by: java.net.BindException: Cannot assign requested address: bind
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Unknown Source)
        at sun.nio.ch.Net.bind(Unknown Source)
        at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
        at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:344)
        ... 9 more

无法绑定这个地址是咋回事

极地雪
客户端多的文件不会自动删除,每次启动都提示更新

25800woaini
虚无DDi 发表于 2021-7-22 00:08
严重: Could not start http server
java.io.IOException: Failed to bind to p-c18.polarstar.cc/43.248.1 ...

你这个可能跟服务商有关系(大概 比竟是传输数据了 有的服务商不让

25800woaini
极地雪 发表于 2021-7-22 22:49
客户端多的文件不会自动删除,每次启动都提示更新

设置目录只会同步目录文件里的文件,其他不会受影响,如果陷入套娃中,请不要尝试同步config文件,可以看看楼上的回复

极地雪
25800woaini 发表于 2021-7-23 01:18
设置目录只会同步目录文件里的文件,其他不会受影响,如果陷入套娃中,请不要尝试同步config文件,可以看 ...

找到套娃的原因了,是某个mod加载优先权比SkyCraft高,所以SkyCraft就删不掉

萌萌哒鱼儿
本帖最后由 萌萌哒鱼儿 于 2021-7-27 16:01 编辑

请问一下 那个 我按照配置来之后 确实是开始自动更新了 但是每次启动他都会更新 哪怕配置相同了 他也是一种在同步... 不知道为啥

但确实是同步成功了.. 也不知为何 他就一直这样显示..

25800woaini
萌萌哒鱼儿 发表于 2021-7-27 15:59
请问一下 那个 我按照配置来之后 确实是开始自动更新了 但是每次启动他都会更新 哪怕配置相同了 他也是一种 ...

这个问题,的确是这个插件的缺陷,我建议你就是仅仅用来同步mod文件就好了,至于config是可能会陷入套娃的,解决方案就是提前确定好config文件,尽量不装需要改动config文件夹的模组,进一步改进还是等待作者更新,看看能不能解决这个套娃和优先级问题

萌萌哒鱼儿
25800woaini 发表于 2021-7-27 19:02
这个问题,的确是这个插件的缺陷,我建议你就是仅仅用来同步mod文件就好了,至于config是可能会陷入套娃 ...

emm 是的 现在不同步config了 解决了

wfga233666
严重: Could not start http server
java.io.IOException: Failed to bind to pe.getmc.cn/43.248.187.230:17496
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:349)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:310)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:234)
        at org.skycraft.updater.shades.org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.Server.doStart(Server.java:401)
        at org.skycraft.updater.shades.org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
        at org.skycraft.updater.core.Provider.startServer(Provider.java:254)
        at org.skycraft.updater.core.Provider.run(Provider.java:61)
        at org.skycraft.updater.core.Provider.main(Provider.java:315)
Caused by: java.net.BindException: Cannot assign requested address: bind
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Unknown Source)
        at sun.nio.ch.Net.bind(Unknown Source)
        at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
        at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
        at org.skycraft.updater.shades.org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:344)
        ... 9 more

不行啊,为什么别的自动更新就能用,也是传输数据的,这个就不行,跟服务商没关系吧?

年流z刹k
楼主。怎么忽略文件讲一下呗,谢谢

神奇小污龟
如何配置自定义文件夹,我想更新.minecraft里的scripts,里面放了模组物品的魔改合成,这个插件我知道是支持自定义文件夹,但是完全没讲则么配置

25800woaini
本帖最后由 25800woaini 于 2021-8-30 23:38 编辑
神奇小污龟 发表于 2021-8-30 11:30
如何配置自定义文件夹,我想更新.minecraft里的scripts,里面放了模组物品的魔改合成,这个插件我知道是支 ...
client_manifest.json


类推 除最后一段外都要加逗号
已经停更 类似问题请咨询其他人(没回答的其实是我也不会)



神奇小污龟
25800woaini 发表于 2021-8-30 23:33
client_manifest.json

类推 除最后一段外都要加逗号

谢谢,我自己试出来了

我是一个王神奇
你什么与i四

我是一个王神奇
222222222222222222

我是一个王神奇
水1111111111111111111111111

粉雀
在作者原贴看教程看了好久都没懂 咋一来你这里就懂了诶  谢谢大佬

Lsmmy_
感谢楼主的分享,受益匪浅

Lsmmy_
感谢大佬分享的干货,受益匪浅

1422756921
判断客户端多文件会删除的功能,我裂开,把我自己单机玩的mod全删了,这个判断能不能关的??

1733028138
感谢分享经验

蛋壳666
请问bat启动器里填写0.0.0.0还是vps的ip,本地测试都没问题 放vps客户端就卡死在2/5了

大米我这呢
感谢教程!! 谢谢作者

areny6
感谢楼主!这个好!收藏了

小七先生
不错不错感谢楼主分享!

tangdouya

我这根本同步不了,用服务器的主机可以同步,但换其他电脑就不行了

你没洗头
感谢大佬教程,如果要加载材质或者其他文件夹呢可不可以加

ahkoi
感谢大佬分享

1150898168
我要金粒

我真护啊
好像不支持自定义文件...

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