包含关键字 Minecraft 的文章

今天更新发现了这个问题,使用LinuxGSM更新到1.21后
执行java -Xmx6144M -jar ./minecraft_server.jar nogui
错误: 加载主类 net.minecraft.bundler.Main 时出现 LinkageError

    java.lang.UnsupportedClassVersionError: net/minecraft/bundler/Main has been compiled by a more recent version of the Java Runtime (class file version 65.0), this version of the Java Runtime only recognizes class file versions up to 61.0

意思是本机的JDK版本比游戏二进制文件版本编译所用的版本低了,Debian12默认OpenJDK版本是17对应class file version 61,65对应的应该是OpenJDK21,所以我得去手动安装OpenJDK21+

解决方案

wget https://download.java.net/java/GA/jdk22.0.1/c7ec1332f7bb44aeba2eb341ae18aca4/8/GPL/openjdk-22.0.1_linux-x64_bin.tar.gz
tar xvf openjdk-22.0.1_linux-x64_bin.tar.gz jdk-22.0.1/
sudo mv jdk-22.0.1/ /usr/local/jdk-22
sudo nano /etc/profile
添加:

setting jdk22 shehl path

export JAVA_HOME=/usr/local/jdk-22/
export PATH=$JAVA_HOME/bin:$PATH
保存
source /etc/profile
java --version

如果你完全按照我的操作进行那就得到如下输出

openjdk 22.0.1 2024-04-16
OpenJDK Runtime Environment (build 22.0.1+8-16)
OpenJDK 64-Bit Server VM (build 22.0.1+8-16, mixed mode, sharing)
现在可以返回启动mc服务器了。
cd ~ && ./mcserver monitor

后记

难怪https://linuxgsm.com/servers/mcserver/ 上Minimum Recommended Distrosy要求Debian13
其实就是因为Debian12 官方仓库的JDK最高已经锁死17了。

本作品含有大量主观元素,请注意分辨我对主客观的提示性表述。

客观事实:

1.一个中国人在中国大陆不使用专有软件(支付宝,微信等)几乎寸步难行。
2.许多中国网民日常社交娱乐依赖专有软件或服务(抖音Tiktok,B站BiliBili等社交媒体)
3.你身边的许多人依赖专有软件并由于没有更自由的替代品或替代品使用成本过高无法更换,这迫使你不得不使用专有软件。

我如何想和实践?

我对不同的软硬件服务排序如下:
自由>开源>专有 其中对于三个选项之一我还会进行细分:服务质量良好,体验更佳 > 服务质量差,体验糟糕

我希望自己和身边的人能更多的使用自由软件,或者至少是开源软件。但是我不会也不可能强迫任何人使用自由软件,我倾向于向他们安利我正在使用且体验良好的软件。
而我自己实际生活中会使用很多自由软件,也会使用大量专有软件或服务。(包括单不限于微信QQ支付宝)
受我推荐的软件会被简单的列举在下面(我会考虑不定时的调整这些例子)

操作系统

Debian 这是我正在频繁使用的,不管是本地PC还是服务器。

输入法

fcitx5-android
中州韵输入法引擎RIME及其在各个平台的衍生品

浏览器

Chromim及其自由的衍生品(我想这个不必多说,没有中国人能在生活中与Chromium解藕。)
via(一款使用Webview的专有软件)

图片制作与处理工具

GIMPKrita 这俩更不必多说,后者甚至本身就受到许多国内创作者喜爱。

视频相关

OBS Studio
Kdelive
前者多好使都不需要解释,后者我用的并不是特别多但是也绝对可堪一用。

游戏娱乐

很多好游戏都不是自由的,也不是开源的,但是大家就是爱玩他。
平台方面,Steam当之无愧。这是为数不多甚至可能是唯一一个在坚持分发Linux发行版兼容游戏的大平台。
游戏:
像素地牢 pixel-dungeon 还有他的衍生品:破碎的像素地牢Shattered Pixel自由且免费,而且确实好玩。
CSGO 这是一款专有软件但是我相信大部分FPS爱好者都不会拒绝他。
但是我必须强调一点,他的现行版本CS2截至发文时仍然在Linux下优化不佳,特别是Wayland环境下卡顿严重。
Minecraft 我的世界 ,我推荐他不是因为他多好玩,是因为确实普遍受欢迎,但是最近官方的一些更新活动我不喜欢=-=。
我还在玩很多基于起源引擎的游戏,比如地狱已满No More Room In The Hell,僵尸恐慌 源起Zombie Panic! Source,BrainBread2.
Unity3D的游戏也有在玩但是鉴于其所用的引擎各种作妖直接不推荐了,建议开发者转去用Godot。
Hue 这是一个有趣的色彩闯关游戏,适合休闲娱乐。

硬件架构方面

RISC-V>LoongArch>X86/AMD64=ARM
说实话,前俩对于普通用户都几乎等于没生态,但是如果发展符合预期我会优先考虑。
(Debian13将首次支持LoongArch)
显卡不说了,除了AMD,Nvida,摩尔线程那屈指可数的几家压根就没得选

开发工具

VSCode 不必多言,但是我在Debian上使用的是vscodium
别的好像也不需要推荐吧?需要的自然会找到。

社交通讯媒体

Typecho:你正在看到我使用Typecho发布的文章😁
Matrix:在安卓上使用SchildiChat客户端, Matrix是一个去中心化的即时聊天工具,具备良好的点对点加密通信能力。
Mumble:自由且好用的语音聊天工具,可以很方便的自建服务器(支持IPv4和IPv6)在安卓上我使用Mumla客户端。
Mastodon:在安卓上使用Tusky客户端,Mastodon是一个去中心化的类似Twiter/微博的社交媒体服务项目。
Youtobe:这是专有服务,但是我认为这比BiliBili推送给我的垃圾视频更值得我看。听说最近也有自由的去中心化实现?

我选择了Docker部署,因为我不打算继续接触宝塔。

主要坑点:

  1. 在没有更改端口的情况下,默认你必须在防火墙放行23333和24444端口

    当然,出于安全考虑我选择了反代默认端口。
  2. Docker里默认没有Java环境,你必须先在面板里选择构建一个新的JDK17镜像作为运行环境再构建服务器实例。

    因为JAVA环境在容器里,所以进程启动方式选择虚拟化容器并设置端口绑定端口25565:25565/tcp (你想换非默认我没意见,我自己还加上了UDP)
  3. 第一次启动服务器后,你需要手动编辑官方服务端生成的EULA文件把否改为是再重新启动服务器。(不会有人写中文“是”吧?xd)

    MCSM提供了快速的编辑选项,但是我是第一次用这个面板,还没摸索到那里就直接手动改好文件了。

这好像是我第一次在自己的设备(云服务器)上开服务器?

其实我只是不想浪费2c2g4m的服务器罢了=-=,毕竟挂博客没多大占用。不然我就在NAS上开再内网穿透了。

服务器地址:xfox.fun 端口默认25565,懒得搞SRV了

2024年更新:
服务器使用LinuxGSM部署在NAS上,IPv6直连:v6.home.xfox.fun

我懒得追究具体原因了,因为今天Mint21下用兼容层玩CSGO连不上官匹服务器,后续在Mint21和Windows10下进行了数次重新下载。还因此导致CSGO所在分区损坏(结果就是Mint21开机自动跳转到救援模式,我寻思双系统的Steam下载CSGO都提示磁盘损坏,多半真坏了,就去fstab把挂载GOGO的分区那行先注释掉了)接着systemctl reboot就顺利开机,损坏的分区最终不得不去WIndows下chkdsk D: /f 修了一遍(几秒钟就完解决了,无语)。
修好了,玩的兴致也没了。想了想自己的大目标,干脆别玩了,双系统均卸载掉Steam和游戏。懒橘子和BF1稍后也卸载掉,玩不痛快不如不玩,学学文化课,累了干点别事的陶冶情操得了。
这近期不打算玩了FPS了,最多偶尔有兴致了网页登录领个免费游戏。
Minecraft留着偶尔去养老放松吧,诸位晚安。

PS:无语,卸载烂橘子和BF1的时候烂橘子卸载程序卡死了,只能手动删,结果发现E盘的Steam库里也有一些异常文件,

PS C:\Users\xfox> chkdsk E: /f
文件系统的类型是 NTFS。
卷标是 DATA。

阶段 1: 检查基本文件系统结构...
  已处理 114944 个文件记录。
文件验证完成。
 阶段持续时间 (文件记录验证): 463.96 毫秒。
  已处理 1 个大型文件记录。
 阶段持续时间 (孤立文件记录恢复): 0.00 毫秒。
  已处理 0 个错误的文件记录。
 阶段持续时间 (文件记录检查错误): 0.25 毫秒。

阶段 2: 检查文件名链接...
删除了目录 13AA7 中的无效文件名 c: (FCE5)。
由于其所有文件名都无效,文件 FCE5 已被孤立。
Windows 将在孤立恢复阶段中恢复该文件。
正在更正文件 FCE5 中的少数文件名错误。
删除了目录 13AA7 中的无效文件名 z: (14002)。
由于其所有文件名都无效,文件 14002 已被孤立。
Windows 将在孤立恢复阶段中恢复该文件。
正在更正文件 14002 中的少数文件名错误。
  已处理 48 个重新解析记录。
正在删除文件 13AA7 的索引 $I30 中的索引项 c:。
正在删除文件 13AA7 的索引 $I30 中的索引项 z:。
  已处理 115968 个索引项。
索引验证完成。
 阶段持续时间 (索引验证): 189.89 毫秒。
CHKDSK 正在扫描未编制索引的文件以便重新连接到其原始目录。
  已扫描到 2 个未索引文件。
  已将 0 个未编制索引的文件恢复到原始目录。
 阶段持续时间 (孤立文件重新连接): 0.00 毫秒。
CHKDSK 正在恢复剩余的未索引文件。
  已将 2 个未编制索引的文件恢复到回收箱。
    回收箱位于 \found.000

 阶段持续时间 (孤立文件恢复到回收箱): 0.00 毫秒。
  已处理 48 个重新解析记录。
 阶段持续时间 (重分析点和对象 ID 验证): 0.97 毫秒。

阶段 3: 检查安全描述符...
正在从文件 9 的索引 $SII 删除带有 Id 11D 的一个索引数据项。
正在从文件 9 的索引 $SDH 删除带有 Id 11D 的一个索引数据项。
正在从文件 9 的索引 $SII 中清除 16 个未经使用的索引项。
正在从文件 9 的索引 $SDH 中清除 16 个未经使用的索引项。
正在清除 16 个未经使用的安全描述符。
安全描述符验证完成。
 阶段持续时间 (安全描述符验证): 3.02 毫秒。
  已处理 512 个数据文件。
 阶段持续时间 (数据属性验证): 0.21 毫秒。
正在更正主文件表(MFT) BITMAP 属性的错误。

Windows 已更正文件系统。
无需采取进一步操作。

总共有  118670519 KB 磁盘空间。
3705 个文件中有    2885112 KB。
515 个索引       1584 KB。
坏扇区          0 KB。
系统正在使用     184543 KB。
日志文件占用了      65536 KB。
磁盘上  115599280 KB 可用。

每个分配单元中有       4096 字节。
磁盘上共有   29667629 个分配单元。
磁盘上有   28899820 个可用的分配单元。
总持续时间: 677.36 毫秒 (677 毫秒)。

我在Linux.cn的一篇文章里找到了这个游戏,试玩了一下略微简陋,但是总的来说感觉还不错。
官网:http://www.minetest.net/ 官方Wiki:https://wiki.minetest.net/Getting_Started/zh-hans
有个小插曲,中文文档里对GNU/Linux安装是这么描述的:sudo apt get install minetest,显然少了个"-",我就跑去IRC里提Bug了,现在已经改为:sudo apt install minetest,这是我今年正经捉的第一个小虫子,也是第一次主动成功使用IRC和别人用英语交流。

兑现承诺:和朋友分享这个游戏

sendpix0.jpg
截图_2021-12-19_03-33-35.png

- 阅读剩余部分 -

 今天Windows平板开机发现“网易云UWP”有更新,接着......更新报错要求必须设置“新的应用安装位置为...”并安装在系统分区,凸(艹皿艹 ),之前我的UWP应用都安装到TF卡了,(32G emmc怕不够啊)。接着发现Windows提供了软件迁移的选项,然后就把网易云UWP移动到了C盘(Minecraft和极速狂飙9还在D盘也就是TF卡里),接着正常更新=-=

- 阅读剩余部分 -

前言:本文所讲的是利用我已经修改好的Docker镜像完成我的世界基岩版服务器部署。如果你有能力自己在Ubuntu下完成就自己在Ubuntu下解决依赖库等问题部署好,不要说我为什么要多此一举让新人接触Docker。
Docker安装其实是有很多坑的,但是我会让你用宝塔一键解决,那就没什么难度了,有爪就能跟着走下来。

- 阅读剩余部分 -