LAX1DUDE_SIGNATURE.txt
以获取说明,以验证这是原始副本,如果该文件不存在,则不要使用该项目的此副本Eaglercraft 是真正的 Minecraft 1.5.2,您可以在任何常规网络浏览器中玩。这包括学校 chromebook,它适用于所有 chromebook。它支持单人游戏和多人游戏。 |
目前由ayunami2000维护
如有任何问题,您可以加入 Discord 服务器并联系我们 https://discord.gg/Ekzcgs3DKZ
(右键单击链接并按“链接另存为...”以下载文件)
单人游戏 | 多人游戏 | 其他的 |
---|---|---|
导入和导出世界 | 公共客户端和服务器 | 插件开发 |
局域网世界 | 创建服务器 - Bukkit | 编译 |
公共 LAN 中继 | 创建服务器 - EaglercraftBungee | 创建资源包 |
创建 LAN 中继 | 创建客户端 | 贡献 |
EaglercraftBungee 配置 | ||
创建反向代理 - NGINX | ||
NGINX 配置 |
只需按主菜单上的“单人游戏”按钮,您就可以创建一个常规的香草《我的世界》并随时玩。
世界存储在浏览器的本地存储中,您可以将它们导出为 EPK 文件,然后在所有其他也支持单人游戏的 Eaglercraft 网站上再次导入它们。您甚至可以将导出的世界复制到完全不同的计算机,或将其发送给朋友,然后导入并继续玩保存的所有进度。
LAN 世界可以在任何两个连接到互联网的设备之间运行,您不仅限于连接到 Wi-Fi 网络的玩家
要向 LAN 打开您的世界,请转到暂停菜单并单击“打开 LAN”。如果您想隐藏您的局域网世界,您可以配置游戏模式和作弊。当您不隐藏您的 LAN 世界时,它会出现在多人游戏屏幕上的主菜单中,对 Wi-Fi 网络上的其他人也可见。如果您在学校或其他地方并且不希望班上的其他人也加入并开始悲伤,请将世界隐藏起来。
当您向 LAN 打开世界时,它会给您一个“加入代码”。只需与您的朋友分享代码,他们就可以从主菜单访问多人游戏屏幕,然后单击“直接连接”并输入代码,他们将能够加入您的世界。
确保他们将您的游戏打开 LAN 世界的中继服务器添加到可从多人游戏屏幕访问的“网络设置”菜单中。一旦世界打开,您只需向他们发送暂停菜单中指示的 URL,他们就可以使用“添加中继”选项将 URL 添加到他们的列表中。
wss://relay.deev.is/
wss://relay.lax1dude.net/
wss://relay.shhnowisnottheti.me/
java -jar sp-relay.jar
运行java -jar sp-relay.jar --debug
来查看调试信息,例如传入连接的所有 IP,因为默认情况下不会显示它,因为当每秒 ping 中继多次时,记录所有这些信息会降低性能,具体取决于就其受欢迎程度而言。
编辑首次启动时生成的relayConfig.ini
文件以更改端口并配置速率限制等,并编辑relays.txt
以更改向连接到中继的客户端报告的STUN和TURN中继列表,这是正确建立P2P LAN所必需的浏览器中的世界连接
origin-whitelist
配置变量是一个以分号 ( ;
) 分隔的域列表,用于限制允许哪些站点使用您的中继。如果留空,则允许所有站点。添加offline
以允许离线下载客户端也使用您的中继,并添加null
以允许不指定Origin:
标头的连接。使用*
作为通配符,例如: *.deev.is
允许所有以“deev.is”结尾的域使用中继。
多人游戏功能类似于普通 Minecraft,允许您像普通客户端一样加入普通 Minecraft 服务器。
服务器有多个部分,主要由常规 1.5.2 Bukkit 服务器和名为EaglercraftBungee的 Bungeecord 修改版本组成,该版本在常规 Bungeecord 功能之上,将 WebSocket 连接转换为 Bukkit 可以理解的原始 TCP 连接。
您可能还想设置自己的客户端,允许您控制默认服务器列表、资源包以及由于负载较少而整体更快的连接。
如果您想为您的服务器使用域,可以设置反向代理以启用 EaglercraftBungee 中的额外功能。推荐使用NGINX ,这里有教程。这是可选的,只需连接 IP 即可跳过。
java/bukkit_command
文件夹run.bat
。它应该打开一个新的终端窗口cd
命令导航到java/bukkit_command
chmod +x run_unix.sh
,然后运行./run_unix.sh
。它应该启动相同的服务器java/bukkit_command/plugins
中(请参阅 https://github.com/lax1dude/eaglercraft-plugins/ 下载一些支持的插件) java/bungee_command
文件夹run.bat
。它应该打开第二个终端窗口java/bungee_command
java/bungee_command/plugins
中Bungeecord 中有很多配置,但这应该可以帮助您设置
您的服务器现已准备就绪。访问任何客户端,然后从主菜单转到“多人游戏”。选择“直接连接”,输入127.0.0.1:25565
并按“加入服务器”它应该允许您连接,如果没有,请检查两个终端窗口是否有错误
要安装,请将stable-download/web
的内容上传到 Web 服务器。
/var/www/html
并在那里上传stable-download/web
的内容。https://eaglercraft.example.com/server
如果您在本地浏览器中打开“web”文件夹,则该文件夹将不起作用!如果您在 URL 中看到“file:///”,则说明您操作错误。您需要将该文件夹上传到 HTTP 或 HTTPS 服务器,并通过 http:// 或 https:// 通过互联网访问它。否则游戏将无法加载,这不是错误
要修改默认服务器列表,请修改index.html
中的window.eaglercraftOpts
变量。
关于如何配置eaglercraftOpts
完整指南即将推出,但是当您查看 stable-download 时,根据已有的默认值来弄清楚如何设置它应该是相当直观的
要创建自动加入服务器的站点链接,请在 URL 中添加?server=
变量,例如(例如): https://g.deev.is/eaglercraft/?server=127.0.0.1:25565 将玩家完成用户名和皮肤设置后自动加入ws://127.0.0.1:25565/
java/bungee_command/config.yml
中侦听器配置的motd1:
标记,并替换配置文件所在文件夹中的server-icon.png
。使用&
添加颜色/格式代码。服务器列表会将您的图标缩小到 64x64 像素motd2:
来定义第二行要在 EaglercraftBungee 中启用 /login 和 /register 命令,您可以编辑 config.yml 的这部分
authservice :
authfile : auths.db
register_enabled : true
ip_limit : 0
join_messages :
- ' &3Welcome to my &aEaglercraftBungee &3server! '
login_timeout : 30
enabled : false
authfile
设置认证数据库文件,兼容AuthMe
register_enabled
打开和关闭寄存器命令
ip_limit
设置每个IP的最大注册数量,0=无限制
join_messages
玩家加入时显示的消息列表
login_timeout
设置玩家在被踢之前必须登录多少秒
enable
打开和关闭登录命令
如果您在服务器上使用/op,请记住,如果您“/op LAX1DUDE”,则以“laX1DUDE”或“LaX1dUdE”或“lax1dude”身份加入的玩家也将拥有/op。要解决此问题,请通过将“BitchFilterPlugin.jar”移动到“java/bukkit_command/plugins”中,强制所有操作员只能加入其用户名中的所有小写(“lax1dude”)字母,然后将每个操作员用户名小写注册
要禁用语音聊天,请在bungeecord config.yml中设置voice_enabled: false
eag-ban
eag-ban-regex
以及正则表达式以匹配小写的用户名为了IP Bans起作用,需要反向代理,并且需要配置forward_ip
,否则无法禁止用户的IP
eag-ban-ip
或eag-ban-ip
自动禁止玩家的 IPeag-ban-ip 192.168.0.0/8
eag-ban-wildcard *
或eag-ban-wildcard *
或eag-ban-wildcard **
enable_web_origin_blacklist : false
origin_blacklist_block_replit_clients : true
origin_blacklist_block_offline_download : true
origin_blacklist_block_missing_origin_header : true
要添加您自己的黑名单域,请在您的bungeecord 目录中创建一个名为origin_blacklist.txt
的文件,并将正则表达式放入其中,每行一个。控制台中还有一个domain
命令可以查看玩家的域,还有一个block-domain
和block-domain-name
以及unblock-domain
命令可以从bungee控制台管理本地origin_blacklist.txt
(如果你不知道如何自行编辑文件)。当检测到文件更改时,列表会自动重新加载。
origin_blacklist_use_simple_whitelist : true
然后,将您的域添加到origin_blacklist_simple_whitelist
中,如下所示:
origin_blacklist_simple_whitelist :
- type the name of your client's domain here
然后,除非您仍然希望将其作为玩家的选项,否则请禁用离线下载,这样黑客就不会使用它来绕过白名单,因为默认情况下它在白名单模式下不会被阻止:
origin_blacklist_block_offline_download : true
服务器内置了 DoS 保护,可以通过在 bungee 控制台中输入“eag-ratelimit reset”来重置它**
可以进行限速,但需要反向代理,并且需要配置forward_ip
才能使用限速,否则默认禁用
ratelimit :
ip :
enable : true
period : 90
limit : 60
limit_lockout : 80
lockout_duration : 1200
exceptions : []
enable
启用速率限制
period
和limit
设置在 ( period
) 秒内可以发出的请求数量 ( limit
)
limit_lockout
和lockout_duration
设置在 IP 被阻止lockout_duration
秒数之前 ( period
) 秒内可以发出的请求 ( limit_lockout
) 数量
不应该受到速率限制的 IP 地址列表exceptions
。 127.0.0.1 和 192.168.*.* 等本地 IP 默认设置为例外
如果您想通知客户端与您的bungeecord 断开连接并重新连接到不同的bungeecord,请在config.yml 的servers
部分中配置一个条目,如下所示:
test :
redirect : wss://ServerHere/
restricted : false
在此示例中,将玩家发送到服务器test
,例如当他们进入门户或输入/server test
时,将触发他们的客户端与您的 Bungeecord 断开连接,然后自动重新连接到wss://ServerHere/
就像输入时一样通过“直接连接”
这是在 Linux 上设置 NGINX 的快速速成课程,特别是在 Debian 发行版上。
以下是一些其他发行版的谷歌搜索:
打开你的终端,然后运行sudo apt update
和sudo apt install nginx
打开任意 Web 浏览器,然后在搜索栏中搜索localhost
。你应该看到这样的东西:
使用cd /etc/nginx/sites-enabled
导航到 NGINX 的配置。
使用您的域名创建新的配置文件,例如nano eaglercraft.example.com
将以下代码粘贴到文件中。将example.com
替换为您自己的域,并将app_server_address
替换为您希望 URL 连接到的 EaglercraftBungee 服务器的ip:port
。
server {
listen 80;
listen [::]:80;
server_name example.com eaglercraft.example.com;
location / {
proxy_pass app_server_address;
include proxy_params;
}
}
sudo service nginx restart
重新启动 NGINX,你就可以开始了! proxy_pass
行下方添加行。 add_header X-Frame-Options "SAMEORIGIN";
add_header Referrer-Policy "strict-origin";
add_header X-XSS-Protection "1; mode=block";
add_header Content-Security-Policy "default-src 'self' 'unsafe-inline'; img-src 'self' 'unsafe-inline' data: blob:; connect-src 'self' ws: wss:; upgrade-insecure-requests";
proxy_set_header X-Real-IP $remote_addr
添加到您的代理配置中要开发插件,请下载 stable-download/java/bungee_command/bungee_dist.jar 并将其添加到 Java IDE 的构建路径中。像常规 BungeeCord 插件一样开发插件,请参阅 EaglerMOTD 示例。
通过将插件导出为 jar 并将其放入 EaglercraftBungee 的“/plugins”目录中,然后单击“run.bat”来测试您的插件
net.md_5.bungee.api.event.WebsocketMOTDEvent :当客户端或网站请求 MOTD 时触发
net.md_5.bungee.api.event.WebsocketQueryEvent :当客户端或网站请求查询时触发。当站点向侦听器打开文本 WebSocket 并发送单个字符串Accept:
数据包时,就会发生这种情况。可用于向支持集成 WebSocket 查询的服务器列表站点提供额外的自定义统计信息
在Listener
类中使用标准 BungeeCord @EventHandler
注释注册事件处理程序
要针对 Web 进行编译,请运行 gradle 'teavm' 编译目标以生成classes.js 文件。
不再支持 LWJGL 运行时,仅供参考
run.bat
。等待窗口显示Press any key to continue...
并将其关闭。然后,转到存储库中的../javascript
并将javascript/assets.epk
复制到您网站上的assets.epk
cd
导航到 epkcompiler 文件夹并运行chmod +x run_unix.sh
和./run_unix.sh
来执行此操作,然后将相同的javascript/assets.epk
复制到assets.epk
上你的网站我真正想说的是,制表符而不是空格,并将代码格式化为出厂设置中的 Eclipse 自动格式化工具,而且运行的代码行足够长以超出屏幕和单行 if 语句和其他如果该类别中的格式违规有助于增强文件中较不重要的代码和较重要的代码之间的对比,那么它是受欢迎的。不要对javascript/classes.js
或javascript/classes_server.js
或javascript/assets.epk
或stable-download/
中的任何内容提交更改。当我合并拉取请求时,我会自己重新编译它们。
公共服务器列表已经添加到官方客户端中 ↩
服务器列表正在重建中,暂时使用官方客户端↩