安装教程
我们按次序安装 Lambda 生态的各个组件
本教程面向 Windows Server 系统,Linux 系统操作类似,本教程将不讲述设置服务、开机启动等额外内容,请自行部署。
# sculptor
Figura 后端
从 Github (opens new window) 或 镜像站 (opens new window) 下载 sculptor 并解压。
先修改 Config.toml
配置文件,删除自带的高级用户 Shiroyashik
,调整后端公告信息(motd)最大外观文件大小(maxAvatarSize)等参数,在文件开头注释的下面添加以下内容
authProviders = [
{ name = "Local", url = "http://127.0.0.1:5009/hasJoined" }
]
2
3
然后运行可执行文件,启动 sculptor 即可。请保持这个后端一直在运行,就跟运行 Minecraft 服务器一样。
# FiguraAuthProvider
身份验证插件
从 Github (opens new window) 或 镜像站 (opens new window) 下载相应版本的 FiguraAuthProvider 插件。
将 Bukkit 插件安装到登录服(或者你没有登录服的话,安装到任意一个子服,只需要安装到一个子服就可以了)
将 BungeeCord 插件或 Velocity 插件安装到群组核心。比如 Waterfall 或 Velocity。
如果你有修改过默认端口 5009
,需要修改相关配置,包括群组核心插件配置和 sculptor 配置。
# 配置 HTTPS
Figura 客户端 Mod 访问后端需要 HTTPS,需要你的服务器可开放 443 端口,或者寻找一个支持 HTTPS 的内网穿透服务。
你可以使用 nginx 等反向代理软件创建一个 HTTPS 服务,将流量转发到 http://127.0.0.1:6665
(如果你没改过 sculptor 配置,默认端口是 6665
)。
以下给出一个示例配置,假如你的域名是 figura.mcio.dev
,并且用 Certbot 申请了 Let`s Encrypt 的 SSL 证书。
http {
server {
listen 80;
server_name figura.mcio.dev;
rewrite ^ https://$server_name$request_uri? permanent;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name figura.mcio.dev;
ssl_certificate "/etc/letsencrypt/live/figura.mcio.dev/fullchain.pem";
ssl_certificate_key "/etc/letsencrypt/live/figura.mcio.dev/privkey.pem";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location ~ ^/(api|health) {
proxy_redirect off;
proxy_pass "http://127.0.0.1:6665";
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
client_max_body_size 20000m;
}
location /ws {
proxy_pass "http://127.0.0.1:6665/ws";
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_read_timeout 86400s;
proxy_send_timeout 86400s;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
client_max_body_size 20000m;
}
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
本文作者最终的方案是使用 nginx
+ frp
,nginx
配置如上,使用 frp 进行反向代理以免暴露源站 IP。
具体做法是: 创建一条 https 隧道和一条 http 隧道分别转发到内网的 443 和 80,并绑定自定义域名。我是自建的,如果你的 frp 提供商有自动转跳 https、自动签 SSL 证书之类的服务,就不需要创建 http 隧道了。
由于 NBT 出色的压缩率,外观的大小通常不超过 100KB,使用体验尚且不错。
如果要使用 Cloudflare Tunnels(不推荐,可能会被墙),进入 Cloudflare 仪表盘,点击 Zero Trust
,点击 网络 -> Tunnels
,创建一条隧道。
在公共主机名输入你的域名,在服务中添加 http://localhost:6665
和 tcp://localhost:6665
,以支持 WebSocket 连接。
# FiguraLambda
Figura 客户端 Mod
从 Github (opens new window) 或 镜像站 (opens new window) 下载相应版本的 FiguraLambda Mod。
安装到你的客户端并启动,找到 开发人员
(Dev) 栏目下的 Figura后端地址
(Figura Cloud IP),将其改为你上一步部署的 HTTPS 服务地址,比如 figura.mcio.dev
(仅举例,这是我服务器的 Figura 后端,在其他服务器无法使用),保存设置即可。
如果你不想在游戏内设置,也可以修改配置文件。
游戏关闭的情况下,在 .minecraft/config/
或 .minecraft/versions/版本/config/
(开启了版本隔离) 打开 figura.json
,写入以下内容
{
"CONFIG_VERSION": 1,
"update_channel": 0,
"connection_toasts": false,
"server_ip": "figura.mcio.dev"
}
2
3
4
5
6
# FiguraAvatars
外观管理插件
从 Github (opens new window) 或 镜像站 (opens new window) 下载 FiguraAvatars 插件并安装即可。
详细配置教程已在插件注释与相关文档内,请自由发挥。