跳到正文
本页目录

模组

模组页面列出服务器里已经安装的东西。读完这一页,你就能看懂这个列表,从文件、文件夹或网址安装模组,更新和卸载模组,并且清楚每种更新到底会做什么。

想查找并安装 levimc.org 上的模组,请用获取模组页面。如果你还不熟悉按键和屏幕上的各个部分,请先读界面导览。

列表

装了四个模组的服务器的模组页面。编号标出操作行、用户安装的模组和没有方框的行。

  1. 操作行针对整个工作区。
  2. 你的模组:你自己安装的模组。每个前面都有一个方框 [ ]。
  3. 没有方框的行分两组:先是灰色的依赖,然后是游戏和加载器。

每一行是一个模组和它的版本。名字是模组仓库的地址,比如 github.com/LiteLDev/LeviOptimize。# 后面的部分是所安装的变体,例如 #lua。

分组是什么可以做什么
你的模组你主动要装的模组。勾选、更新、卸载。
依赖因为其他模组需要才装上的模组。更新。不能单独卸载:没有模组需要它时,它会自动被移除。
游戏和加载器github.com/LiteLDev/bds 是 Minecraft 服务器,github.com/LiteLDev/LeviLamina 是加载器。这里不能操作。它们的版本在工作区页面更改。

列表的表头“已安装(7)”统计的是所有行,包括游戏和加载器。

在第一个模组上按 ↑ 会移到操作行,在最后一个操作行上按 ↓ 回到列表。Tab 也能从操作行移到列表。

INFO

安装、更新或卸载之后,列表的顺序不会变。每一组都按名称排序,高亮也会留在原来那个模组上。

详情区

页面下方的区域显示高亮那一行的更多信息:名字、版本,以及一句说明它是什么的话。

如果模组不是从仓库的某个正式版本安装的,还会多出第三行来源,说明它是从哪里来的:

一个从分支安装的模组处于高亮。详情区有一行“来源  branch:main”。

“来源”一行模组是从哪里安装的
没有这一行仓库的某个版本。“获取模组”安装的就是这种。
branch:main、tag:… 或 rev:…仓库的某个分支、标签或提交。
以 https:// 开头的网址网上的一个 .zip 文件。
一个路径,比如 D:\downloads\SpawnTweaks磁盘上的 .zip 文件或文件夹。

一个从网上的 .zip 文件安装的模组。“来源”一行显示它的网址,中间被省略。

一个从文件夹安装的模组。“来源”一行显示文件夹的路径。

来源决定了更新会做什么,见更新会做什么。

没有服务器或没有模组的文件夹

在没有服务器的文件夹里,列表是空的,第一个操作行带你去创建服务器。装模组之前要先有服务器。

空文件夹的模组页面。操作行是“新建服务器…”“从来源安装…”和“获取模组”,列表写着“还没有模组。”

  1. 新建服务器… 只在文件夹里还没有服务器时出现。
  2. 详情区用一句话说明高亮的那一行。

在还没有模组的服务器里,列表只有游戏和加载器,“全部更新”的位置换成了获取模组:

没有模组的服务器的模组页面。“获取模组”处于高亮,列表里是游戏和 LeviLamina。

模组的菜单

在一行上按 Enter 打开它的菜单。

你的一个模组的菜单:详情、更新、更新到指定版本…、卸载。

操作作用
详情显示 levimc.org 上关于这个模组的信息。
更新把模组更新到与服务器相配的最新版本。
更新到指定版本…把模组换成你指定的版本。
卸载移除模组及其文件。

依赖没有“卸载”:

一个依赖的菜单:详情、更新、更新到指定版本…。详情区写着“因其他模组需要而安装。”

游戏和加载器只有“详情”和前往工作区:

游戏的菜单:详情和前往工作区。

详情

详情显示的内容和“获取模组”页面上一样:模组的简介、作者、下载量、星标、许可证,以及它依赖什么。

对话框里的模组详情,按钮是“README”“在浏览器中打开”和“关闭”。

README 打开作者为模组写的说明。在浏览器中打开打开模组在 levimc.org 上的页面。

详情来自 levimc.org 的模组目录。目录里没有这个模组时(比如游戏本体,或者你从自己磁盘上安装的模组),lip 会告诉你:

提示信息:“模组目录中没有这个模组的信息。”

读不到目录时,lip 会显示“无法读取模组目录。”。等网络恢复后再试。

从来源安装

从来源安装… 用来安装你自己指定的模组,而不是在“获取模组”页面里挑选的模组。别人给你的 .zip 文件或文件夹,或者 levimc.org 上没有的模组,都用它来装。

  1. 按 ↑ 直到操作行从来源安装… 高亮,然后按 Enter。lip 会问你打算怎样指定模组。

    “从来源安装”选项列表,有两行:“浏览…”和“输入来源…”。

  2. 从下面两种方式里选一种。

浏览…

磁盘上的 .zip 文件或文件夹,选浏览…。lip 会打开文件浏览器,里面列出文件夹和 .zip 文件。

文件浏览器位于 D:\downloads。一个 .zip 文件处于高亮。

  1. 如果是 .zip 文件,高亮它并按 Enter。
  2. 如果包是一个文件夹,打开那个文件夹,然后选选择此文件夹。

接着 lip 显示计划:

安装本地 .zip 文件的计划:一行文字说明将安装哪个模组的哪个版本,以及来自哪个文件。

选应用开始安装。在浏览器里按 Esc 回到上一步的选择。

输入来源…

网上的模组,选输入来源…。文本框一开始是空的,里面的灰色文字是示例。

“从来源安装”对话框,文本框是空的。灰色的“github.com/owner/repo@1.2.3”是示例。

输入或粘贴下面任意一种:

输入的内容安装的是
github.com/engsr6982/PLand这个仓库里与服务器相配的最新版本。
github.com/engsr6982/PLand@0.19.0指定的这个版本。
github.com/LiteLDev/LegacyScriptEngine#lua模组的 lua 变体。
github.com/owner/repo@branch:mainmain 分支。tag: 和 rev: 以同样的方式指定标签和提交。
https://example.com/mod.zip这个网址上的 .zip 文件。
D:\downloads\mod.zip磁盘上的文件或文件夹。路径里有空格时,用英文双引号括起来。

想一次安装多个模组,用空格把它们隔开。

同一个对话框,文本框里已输入“github.com/engsr6982/PLand@0.19.0”。

按 Enter。lip 显示计划,选应用开始安装。

安装的计划:“Dry run: would install github.com/engsr6982/PLand 0.19.0 (3 files)”。

如果这个模组还需要别的模组,计划里也会列出来,lip 会一并安装。来源的各种写法见用命令管理包。

更新

更新有三种方式,每一种都会先显示计划。

更新

模组菜单里的更新,把这个模组更新到与服务器的游戏和 LeviLamina 相配的最新版本。

更新的计划:“would uninstall LegacyScriptEngine#lua 0.13.1”和“would install LegacyScriptEngine#lua 0.13.2”。

更新就是移除旧版本、安装新版本。选应用:

更新的结果:旧版本已卸载,新版本已安装,然后是“✓ 完成。”

之后列表显示新的版本:

更新之后的列表。这个模组的版本变成了 0.13.2。

更新到指定版本…

更新到指定版本… 把模组换成你选的版本。它可以比现在的新,也可以比现在的旧,所以想退回旧版本也是用它。

  1. 打开模组的菜单,选更新到指定版本…。

    模组的菜单,“更新到指定版本…”处于高亮。

  2. 输入 @ 后面的部分:一个版本号(比如 0.13.0),或者 branch:、tag:、rev: 加上名称。

    “更新到指定版本”对话框。标签以“@”结尾,文本框里是“0.13.0”。

    lip 看不懂你输入的内容时,对话框不会关闭,并说明它需要什么。

    文本框里是“tag:”。下方一行写着“请填写版本号、branch:<名称>、tag:<名称> 或 rev:<提交>。”

  3. 按 Enter,看一下计划,然后选应用。

    计划:“would uninstall LegacyScriptEngine#lua 0.13.1”和“would install LegacyScriptEngine#lua 0.13.0”。

从网上的 .zip 文件或从磁盘安装的模组,没有别的版本可以指定。对它们来说这个操作是灰色的,菜单会说明原因:

一个来自网址的模组的菜单。“更新到指定版本…”是灰色,有一行写着“只有来自仓库的模组才有版本可选。”

全部更新

全部更新是第二个操作行。它更新你的每一个模组,方式和单独对它们按“更新”一样。依赖、游戏和加载器保持不变,除非新版本的模组需要更新的依赖。

操作行“全部更新”处于高亮。详情区写着“更新你安装的所有模组。”

计划里只列出会改变的部分。这里四个模组中有一个有新版本:

“全部更新”的计划:四行以“Resolving”开头的文字,然后是 LegacyScriptEngine#lua 的一次卸载和一次安装。

如果某个模组是从文件夹或文件安装的,而那个文件夹或文件已经不存在,它会保持原样,计划里会说明。

更新会做什么

“更新”和“全部更新”对一个模组做什么,取决于它当初是从哪里安装的。看“来源”一行就知道属于哪种情况。

模组是从哪里安装的更新
仓库的某个版本,比如通过“获取模组”安装更新到与服务器相配的最新版本。它不会停留在你当初选的那个版本。
一个分支,比如 branch:main留在这个分支上,取它的最新状态。
一个标签或提交留在原处。提交永远不变;标签只有在作者移动它时才会变。
网上的 .zip 文件重新下载这个文件,安装它现在的内容。
磁盘上的 .zip 文件或文件夹重新读取,安装它现在的内容。

下图里,“更新”重新下载了一个模组在网上的文件,并发现里面是更新的版本:

更新一个来自网址的模组的计划:旧版本将被卸载,并从同一个网址安装 1.2.1 版本。

“更新到指定版本…”则总是把模组换成你指定的内容,不管它之前在哪里。对分支上的模组指定一个版本号,它就离开了那个分支。

想让模组停在某个版本,不更新它就行。没有办法“锁定”一个模组,让“全部更新”跳过它。

没有更新的版本时

模组已经是最新版本时,没有什么可应用的:计划写着“不会有任何更改。”,只有一个关闭按钮。不管你按多少次“更新”都是这样,“获取模组”按你选定的版本安装的模组也一样。

什么都不会改的更新计划:“不会有任何更改。”,带一个“关闭”按钮。

有两种计划写的不是这句,而是只有 lip 的记录会变。这两种情况下服务器的文件都不会变,应用或取消都可以。

第一种:用**更新到指定版本…**指定了模组现在就是的那个版本。lip 会记下你要的是这个版本。

第二种:对一个依赖按“更新”。之后 lip 把这个依赖算作你的模组:它会移到“你的模组”里,前面有了方框,也可以卸载了。

计划:“would mark LegacyRemoteCall 0.13.0 as explicitly installed.”和“只会更新 lip 的安装记录。”

卸载

  1. 高亮要卸载的模组,按 Enter。

  2. 选卸载。

    模组的菜单,“卸载”处于高亮。

  3. 看一下计划。里面列出这个模组,以及所有不再被其他模组需要的依赖。

    卸载的计划:这个模组和一个依赖将被卸载。

  4. 选应用。

    结果:“Uninstalling LegacyMoney 0.16.1”,然后是“✓ 完成。”

卸载会移除模组安装的文件。模组在服务器运行期间自己生成的文件(比如配置和数据)可能会留在 mods 下它的文件夹里。

一次处理多个模组

想一次更新或卸载多个模组,先把它们勾选上。

  1. 高亮一个模组,按 Space。它的方框变成 [x]。其他模组照样操作。

    两个模组已勾选。列表的表头写着“已安装(7) · 已勾选 2 个”。

    1. Space 勾选或取消勾选高亮的模组。
    2. 表头显示勾选了多少个。
  2. 按 Enter。这时菜单针对的是勾选的模组。

    标题为“已勾选 2 个”的菜单:LeviOptimize 的详情、更新 2 个模组、卸载 2 个模组、取消全部勾选。

    1. ……的详情只针对高亮的那一行,它不一定是勾选的模组。
    2. 更新 … 个模组和卸载 … 个模组在同一个计划里处理所有勾选的模组。
    3. 取消全部勾选清除所有勾选。

只有你的模组可以勾选。依赖、游戏和加载器没有方框。更新或卸载之后,勾选会被清除。

服务器运行期间

工作区的服务器运行期间,这个页面只能看,不能改。

服务器运行期间的模组页面。一行黄色文字写着“服务器运行中,停止后才能更改模组。”,操作行是灰色。

  1. 页面顶部的一行提示服务器正在运行。
  2. 从来源安装… 和全部更新是灰色,在它们上面按 Enter 没有反应。
  3. 详情区写着“请先停止服务器。”

在模组的菜单里,“更新”“更新到指定版本…”和“卸载”是灰色,原因相同。“详情”照常可用。

服务器运行期间一个模组的菜单。“更新”是灰色,有一行写着“请先停止服务器。”

菜单打开期间服务器启动或停止了,菜单会立刻跟着变。

到服务器页面停止服务器,改好模组,再重新启动。模组是在服务器启动时加载的,所以改动本来也要重启才生效。