• 【问卷调查奖励发放公告】

    感谢大家积极参与本次 MineBBS 社区问卷调查。200 金粒的参与奖励已完成发放。部分用户发放失败,请【点击此处】 查看详情。

Eaglecraft - 真正运行在网页上的Minecraft!可开服!

其他 Eaglecraft - 真正运行在网页上的Minecraft!可开服! 2022-07-16

登录后下载
版权类型
授权转载
适用平台
Web浏览器
版权链接
https://github.com/LAX1DUDE/eaglercraft
前置组件
Java
适配版本(互通)
1.5.2

授权证明:​

b1658e5243f92.png

什么是Eaglecraft?

Eaglercraft 是真正的 Minecraft 1.5.2,您可以在任何正常的网络浏览器中游戏。这包括学校 chromebook,它适用于所有 chromebook。您可以通过基于 Bungeecord 的自定义代理加入真正的 Minecraft 1.5.2 服务器。

在线体验:http://ws.imc.re/


版本说明:
下载“stable-download-new.zip”以快速开始使用改进后的客户端
下载“stable-download-SECURE.zip”以快速安全地开始
下载“Offline_Download_Version.html”将允许您在不托管服务器的情况下进行单机游戏

其他版本:
汉化版:https://www.minebbs.com/resources/eaglercraft-mc.4208/
单机版:https://www.minebbs.com/resources/eaglercraft-mc.4206/

安全模式可用:stable-download-SECURE.zip

安全客户端:https ://g.eags.us/eaglercraft/secure.html

普通客户端:https ://g.eags.us/eaglercraft/

安全模式离线下载:Offline_Download_Version_SECURE.html

常规离线下载:Offline_Download_Version.html
(右键单击链接并按“将链接另存为...”以下载文件)

您可以在这里玩 Minecraft Beta 单人游戏:https ://g.eags.us/eaglercraft/singleplayer_test/


它是如何工作的?​

Eaglercraft 使用直接来自 Mojang 的 Minecraft 1.5.2 官方版本的反编译源代码。它由MCP反编译,然后使用TeaVM重新编译为 Javascript. 因此它可以加入真正的 Minecraft 1.5.2 服务器,因为它实际上是在浏览器中运行 Minecraft 1.5.2。然而,由于现代浏览器的安全限制,它必须使用 javascript Websocket 对象进行多人游戏,而不是直接 TCP 连接到它的服务器。Eaglercraft 包含一个修改版的 Bungeecord,它接受来自 Eaglercraft 客户端的浏览器 HTTP Websocket 连接,并在内部将流解包到常规 TCP,以便可以将它们转发到没有插件的常规 Bukkit 服务器。对于图形,自定义 GPU 兼容层允许 Mojang 的固定功能基于 OpenGL 1.3 的渲染引擎直接渲染到页面上的 HTML5 WebGL 2.0 画布,而对源代码的更改最少,从而使游戏的图形看起来与桌面版 Minecraft 1.5 完全相同。

如有任何问题,您可以加入不和谐服务器并在那里联系作者https://discord.gg/KMQW9Uvjyq

Ayonull 运行一个常见问题解答网站:https ://eagler.nully.tech/


注意:该项目将从作为独立的“免费浏览器我的世界”的 Eaglercraft 过渡到作为服务器的 bukkit/bungee 插件的 Eaglercraft,以允许在服务器上使用命令注册为真实在线模式 Minecraft 帐户的玩家“在线访问” . 服务器所有者仍然可以选择online-mode=false在他们的 server.properties 中设置以允许免费登录,但现法律责任由使用者承担,而不是作者。​

鹰手工艺

安装(详细)​

如果你想使用这个项目但不想从头开始编译,下载stable-download/stable-download-new.zip并解压

在 stable-download-new.zip 中有一个“java”和一个“web”文件夹。将 web 文件夹的内容上传到您的 web 服务器。web文件夹如果在本地通过file:///打开是不行的,需要在http://或者https://页面打开。如果您使用的是 chrome,或者如果这不可能,请尝试使用此扩展程序,然后下载适用于文件 URL 的替代单文件 html离线版本如果您使用此替代版本,请确保您和您的同行通过定期下载此链接上的任何较新版本的 html 文件来保持您的副本是最新的以避免陷入具有破坏游戏故障或错误的版本。eaglercraft bungeecord 可执行文件与示例配置文件和用于启动它的 run.bat 脚本一起位于 java/bungee_command 文件夹中。配置为与 eaglercraft bungee 可执行文件一起使用的 minecraft 1.5.2 的 CraftBukkit 位于 java/bukkit_command 中。Spigot 1.5.2 的可用版本在与 bungee 一起使用时存在错误,因此您只能在服务器上使用 CraftBukkit 和 CraftBukkit 插件

以下是一些与 Eaglercraft 兼容的 Bukkit 插件:https ://github.com/LAX1DUDE/eaglercraft-plugins

要玩游戏,请在 bungee_command 和 bukkit_command 文件夹中启动 run.bat 脚本。然后导航到 web 文件夹内容结束的 URL。游戏应该加载没有任何问题。转到多人游戏屏幕并选择“直接连接”。键入 127.0.0.1:25565。按下 connect 或者随便什么就可以了,在 bungeecord config.yml 中配置的默认端口是 25565 而不是 80 以避免与本地 Web 服务器或操作系统的任何潜在冲突(并且 linux 桌面用户不能在没有 sudo 的情况下使用 1024 以下的端口号)。

如果在连接到服务器时未提供 :port,Eaglercraft 中的默认行为是使用端口 80,而不是端口 25565。这样游戏在生产环境中的多人连接不会默认使用当前被任何防火墙阻止的端口. 这也使您能够使用 Cloudflare 和 nginx 在您的站点上创建反向代理连接,以在同一域上托管多个服务器,并为每个套接字使用不同的 ws:// URL。

如果您需要 SSL,请将nginx设置为从端口 443 到 bungeecord 服务器上的端口的反向代理。当 nginx 虚拟主机处于代理模式时,您可以非常轻松地在其上配置 SSL,这比我在 bungee 中创建自己的 websocket SSL 配置选项要容易得多。要连接到在多人游戏屏幕上运行 SSL websocket 的服务器,请使用以下格式:wss:///. 您还可以在 URL 开头的域或 ip 地址之后再次添加 :port 选项以更改端口并使用 SSL 连接。如果您在 https:// URL 上设置 Eaglercraft index.html,Chrome 将只允许您从多人游戏屏幕建立 wss:// 连接。它是 Chrome 中的一项安全功能,如果您想同时支持 ws:// 和 wss://,您必须在 http:// URL 上托管 Eaglercraft index.html。我对安全性的最佳建议是使用 Cloudflare 代理站点和 websocket,因为您可以在本地服务器上使用 http 和 ws,然后您可以配置 cloudflare 在连接被代理时为您执行 SSL。它可以将您的 IP 地址设置到最大,您还可以在他们的小型入门包中免费为大型 assets.epk 和 classes.js 文件设置内容交付网络 要更改服务器列表中的默认服务器,请下载stable-download/servers_template.dat并使用 NBTExplorer(我的世界之一)打开文件。您将在存储为 NBT 组件的“服务器”标签中看到默认服务器列表,您可以编辑它们并添加更多,只要您遵循现有服务器具有的相同格式即可。完成后,保存文件并使用[URL='https://github.com/LAX1DUDE/eaglercraft/blob/main/base64encode.org']base64encode.org上的上传选项将文件编码回 base64 ,然后下载编码文件并打开它,并将 index.html 第 8 行引号之间的 base64 替换为您下载的编码文件中的新base64。

bungeecord 服务器中有一个硬编码的插件,用于在玩家和世界之间自动同步 eaglercraft 配置文件皮肤

您可能应该使用像AuthMe这样的插件来阻止恶意软件登录到其他人的个人资料

Eaglecraft Bungee​

Eaglercraft Bungee 将 WebSockets 转换为原始的 Minecraft 1.5.2 TCP 连接。它只是普通的 BungeeCord,有更多config.yml选项,还有一个内置插件,用于在客户端之间同步人们的自定义皮肤,这样人们就可以看到彼此的皮肤

启用 forward_ip 并从您的代理传递 X-Real-IP 标头以对 URL 使用速率限制和 IP 禁令

Nginx 示例:添加proxy_set_header X-Real-IP $remote_addr到您的代理配置

服务器已内置 DoS 保护,通过在 bungee 控制台中键入“eag-ratelimit reset”进行重置

代码:
ratelimit:
    ip:
        enable: true
        period: 90
        limit: 60
        limit_lockout: 80
        lockout_duration: 1200
        exceptions: []
  • enable启用速率限制
  • period并limit设置请求数 ( limit) 可以在 ( period) 秒内进行
  • limit_lockout并lockout_duration设置在IP 被阻塞秒数之前 ( ) 秒内可以limit_lockout发出的请求数 ( )periodlockout_duration
  • exceptions永远不应受到速率限制的 IP 地址列表。默认情况下,将 127.0.0.1 和 192.168.*.* 等本地 IP 设置为例外
要开发插件,请下载stable-download/java/bungee_command/bungee_dist.jar并将其添加到 Java IDE 的构建路径中。像普通的 BungeeCord 插件一样开发插件,请参阅EaglerMOTD示例。

通过将插件导出为 jar 并将其放在 EaglercraftBungee 的“/plugins”目录中然后单击“run.bat”来测试您的插件


新活动:​

使用类中的标准 BungeeCord@EventHandler 注解注册事件处理程序 Listener

编译​

要为 Web 编译,请运行 gradle 'teavm' 编译目标以生成 classes.js 文件。

要编译为常规桌面 Java 以进行快速调试,请使用本机 OpenGL 而不是 WebGL 进行渲染:

  • 创建一个新的空 eclipse 项目
  • 将 src/main/java 和 src/lwjgl/java 链接为源文件夹,并将 lwjgl-rundir 中的 jar 作为依赖项添加
  • 创建一个运行配置并添加一个指向 lwjgl natives 文件夹 (lwjgl-rundir/natives) 的 jvm 参数,如下所示:-Djava.library.path=natives,并确保运行配置的工作目录是 lwjgl-rundir 文件夹。
修改游戏资源包(javascript/assets.epk),查看/epkcompiler目录下的readme

这个项目只是一个概念证明,展示了使用 TeaVM 将现有的 java 程序交叉编译为 javascript 时可以完成的工作。它不是很快也不是很稳定,唯一真正有用的部分是模拟器代码,它使用在浏览器中运行的 webgl(基于 OpenGL 3.3)创建临时固定功能 OpenGL 1.3 上下文。也许将来可以用来移植其他游戏。

贡献​

真正要说的是,制表符而不是空格,并且将代码格式化为类似于出厂设置中的 eclipse 自动格式化工具,而且还可以运行足够长的代码行以离开屏幕和单行 if 语句和其他如果该类别中的格式违规有助于增强文件中不太重要的代码和更重要的代码之间的对比,那么它是受欢迎的。不要对javascript/classes.js或javascript/assets.epk中的任何内容进行更改stable-download/。当合并拉取请求时,作者会自己重新编译。
作者
SummerGoro
下载
55,087
查看
55,087
首次发布
最后更新

评分

3.00 星 2 次评分

SummerGoro 的其他资源

最新更新

  1. 22w26b

    1.8皮肤

最新评价

下载链接打不开404
真正的强大,来源于无所不在,就像这个游戏一样,网页运行,重回2012
后退
顶部 底部