在本指南中,我们将向您展示如何在树莓派上安装和运行 Minecraft 。
![]()
您将安装专门为树莓派构建的 Minecraft 的特殊版本。这个版本的 Minecraft 被称为”** Minecraft Pi Edition **”。
该版本比当前的 Minecraft 版本要旧得多。但是,它有一个优势,那就是它是完全免费的。另外,此版本的 Minecraft 还带有一个 Python 库,该库可让您与游戏世界互动。
关于仅为树莓派构建的 Minecraft 版本,您应该了解一些事情。
1. 它使用旧的游戏世界格式,这意味着世界的最大大小为 256 个方块 x 256 个方块 x 128 个方块。
2. 游戏模式仅具有创造力,因此该版本的 Minecraft 中没有制作技巧
3. 这个版本没有小怪
尽管有这些缺点,但仍然可以在树莓派上试用 Minecraft ,这是一个有趣的版本。通过使用 Python 与游戏世界进行交互,这也是探索编程的一种好方法。
如果要为零售版本的 Minecraft 运行服务器,请确保查看我们的 Minecraft 服务器指南。
设备清单
这是我们为在树莓派上安装 Minecraft 的本教程推荐的设备列表。
推荐的
树莓派 1、 2 、 3 或 4
Micro SD 卡
电源
Ethernet Cord 或 * WiFi dongle (Pi 3 和 4 具有内置 WiFi)
可选的
- 树莓派外壳
为树莓派安装 Minecraft
在本节中,我们将向您展示如何将 Minecraft Pi Edition 安装到您的树莓派。
1 幸运的是,Minecraft Pi Edition 已在 Raspbian 软件包存储库中提供。
我们需要做的第一件事是通过运行以下命令来更新和升级所有现有软件包。
sudo apt update
sudo apt upgrade2 更新软件包后,我们现在可以继续执行本指南。
运行以下命令以将 ** Minecraft Pi Edition ** 安装到您的树莓派。
sudo apt install minecraft -pi该命令将同时安装 Minecraft 和与其交互所需的 Python 库。
在树莓派上运行 Minecraft
在树莓派上运行 Minecraft Pi Edition 是一个简单的过程。
1 要启动 Minecraft ,您需要点击左上角中的树莓派图标。
![]()
2 接下来,您需要将鼠标悬停在”** Games “子菜单上,然后单击” Minecraft Pi **”。

3 您现在应该在树莓派上加载了 Minecraft Pi Edition。
要开始游戏,您需要做的就是单击” 开始游戏 “按钮。

4 在下一个菜单中,您需要通过单击” 创建新 “按钮来创建您的第一个世界。

5 一旦世界完成生成,您便会立即生成。

在下一节中,我们将展示如何使用 Python 操纵游戏世界。
通过 Python 与 Minecraft 进行交互
Minecraft Pi Edition 最酷的功能之一是它内置的 API 。
在本节中,我们将向您展示如何使用 Python 与 Minecraft Pi Edition 进行交互。
如果您想在继续之前对 Python 有更好的了解,请务必查看我们的 Python 入门指南。
1 首先创建一个非常简单的 Python 脚本。
在此脚本中,我们将向正在运行的 Minecraft 客户端发送消息。
使用终端,我们可以通过运行以下命令开始编写 Python 脚本。
vim minecraft .py2 要启动此脚本,我们必须首先导入 Minecraft Python 库。
该库是我们将用来与游戏客户端进行交互的库。
添加以下行以从 mcpi 库中导入 minecraft 模块。
从 minecraft 导入 mcpi 3 导入模块后,我们需要创建与游戏客户端的连接。
我们通过使用 minecraft 库 Minecraft .create () 函数并将结果存储在名为”mc” 的变量中来实现。
mc = minecraft.Minecraft.create()4 使用我们存储在 mc 变量中的对象,我们可以调用游戏客户端。我们将在示例中使用的函数是.postToChat (“TEXT HERE”) 函数。
此功能允许我们执行的操作是将文本发布到聊天中。
mc.postToChat("Hello World")这段代码是与树莓派上的 Minecraft 进行交互的最简单方法之一。
5 您的代码的最终版本应该看起来像我们下面的代码。
从 minecraft 导入 mcpi
mc = minecraft.Minecraft.create()
mc.postToChat("Hello World")输入代码后,请按 CTRL + X,然后按 Y ,再按 Enter ,保存文件。
5 让我们继续,现在运行我们的 Python 小脚本。
python3 minecraft.py运行脚本后,您应该会在游戏中看到文本”** Hello World **”。

Minecraft Python API 的各种功能
在本节中,我们将探索可用于从树莓派与 Minecraft 进行交互的其他一些功能。
查找播放器的位置
使用 Minecraft Python API,我们可以检索播放器的 ** x , y 和 z ** 位置。
要找到位置,我们可以在 Python 中使用以下行。
pos = mc.player.getPos()pos 变量现在将存储玩家的位置。您可以使用 pos .x,pos.y 和 pos .z 访问这三个位置。
如果您希望将位置存储为三个单独的变量,那么也可以通过以下操作来实现。
z,y,z = mc.player.getPos()此方法利用 Python 的拆包功能将值提取到我们的 x ,y 和 z 变量中。
传送玩家
您还可以通过使用 API 来传送玩家。
为此,我们将使用 player .setPos (x,y,z) 函数。
在下面,您可以看到我们如何同时使用.setPos (x,y,z) 和.getPos () 函数在游戏世界中垂直传送玩家 50 个方块。
x,y,z = mc.player.getPos()
mc.player.setPos(x,y + 50,z)使用这两个功能运行脚本后,您应该看到播放器出现在空中,然后掉到地上。

设置块
该 API 还具有在游戏世界中操纵方块的功能。
为此,您将需要使用 mc .setBlock (x,y,z,blockID) 函数。
使用此功能可以将指定位置的块更改为指定的块。
在此示例中,我们可以使用以下代码将石块放置在距玩家当前位置 1 个”x” 位置的位置。
x,y,z = mc.player.getPos()
mc.setBlock(x + 1,y,z,1)运行此代码后,应该会看到一个石块出现。您可能需要旋转相机才能看到它。

如果您对可以使用的不同块 ID 感兴趣,请向下滚动,因为我们列出了 Minecraft Pi 版本中支持的所有块。
设置多个块
也可以通过使用 mc .setBlocks (x0,y0,z0,x1,y1,z1,blockID) 函数一次设置多个块。
该函数为位置采用六个不同的参数。
第一组位置 (“x0”,”y0” 和”z0”) 定义了区域的起点。第二组位置 (“x1”,”y1” 和”z1”) 定义了区域的终点。
使用此功能,可以将区域设置为特定的块类型,例如,创建一个巨大的石块。
在下面的示例中,我们将向您展示如何使用 mc .setBlocks () 函数创建 5x5x5 的立方体。
x,y,z = mc.player.getPos()
mc.setBlocks(x + 1,y + 1,z + 1,x + 6,y + 6,z + 6,1)运行这两行代码后,您应该看到播放器附近出现一个巨大的石块。

如果您想快速制作大型对象,此 API 函数非常有用。
检索块的 ID
就像可以设置一个块一样,您还可以在特定位置检索一个块的 ID 。
为此,您可以使用.getBlock(x,y,z) 函数。该函数将在指定位置检索块的 ID 。
例如,您可以使用此功能来检查播放器当前处于什么位置。
x,y,z = mc.player.getPos()
blockID = mc.getBlock(x,y-1,z)
打印(blockID)此功能非常有用,因为您可以根据播放器站立的障碍来编程行为。
Minecraft Pi Edition 区块 ID
在下面,您可以看到 Minecraft Pi Edition 中可用块的 ID 列表。
| 常量名称 | 块 ID |
|---|---|
| 空气 | 0 |
| 石材 1 | |
| 草 2 | |
| DIRT | 3 |
| 鹅卵石 | 4 |
| WOOD \ _PLANKS | 5 |
| 蓝宝石 | 6 |
| 基岩 | 7 |
| WATER \ _FLOWING | 8 |
| 水 | 8 |
| WATER \ _STATIONARY | 9 |
| 熔岩 \ _FLOWING | 10 |
| 熔岩 | 10 |
| LAVA \ _STATIONARY | 11 |
| 沙 | 12 |
| 坟墓 | 13 |
| COAL \ _ORE | 16 |
| 木材 | 17 |
| 叶 | 18 |
| 玻璃 | 20 |
| LAPIS \ _LAZULI \ _ORE | 21 |
| LAPIS \ _LAZULI \ _BLOCK | 22 |
| 砂岩 | 24 |
| 床 26 | |
| 蜘蛛网 | 30 |
| GRASS \ _TALL | 31 |
| 羊毛 | 35 |
| FLOWER \ _YELLOW | 37 |
| 花 \ _CYAN | 38 |
| 蘑菇 \ _BROWN | 39 |
| 蘑菇 \ _RED | 40 |
| GOLD \ _BLOCK | 41 |
| 铁 \ _块 | 42 |
| STONE \ _SLAB \ _DOUBLE | 43 |
| STONE \ _SLAB | 44 |
| BRICK \ _BLOCK | 45 |
| TNT | 46 |
| 书架 | 47 |
| MOSS \ _STONE | 48 |
| OBSIDIAN | 49 |
| 火炬 | 50 |
| 火警 51 | |
| 楼梯 \ _WOOD | 53 |
| 胸 54 | |
| DIAMOND \ _ORE | 56 |
| DIAMOND \ _BLOCK | 57 |
| CRAFTING \ _TABLE | 58 |
| 农田 | 60 |
| 农田 \ _INACTIVE | 61 |
| 农田 \ _INACTIVE | 61 |
| 炉 \ _ACTIVE | 62 |
| 门 \ _WOOD | 64 |
| 梯子 65 | |
| 楼梯 \ _COBBLESTONE | 67 |
| DOOR \ _IRON | 71 |
| REDSTONE \ _ORE | 73 |
| 雪 | 78 |
| ICE | 79 |
| SNOW \ _BLOCK | 80 |
| 仙人掌 81 | |
| 黏土 82 | |
| 糖 \ _CANE | 83 |
| 围栏 | 85 |
| GLOWSTONE \ _BLOCK | 89 |
| BEDROCK \ _INVISIBLE | 95 |
| STONE \ _BRICK | 98 |
| 玻璃 \ _PANE | 102 |
| 瓜 | 103 |
| FENCE \ _GATE | 107 |
| GLOWING \ _OBSIDIAN | 246 |
| NETHER \ _REACTOR \ _CORE | 247 |
如果您想了解有关 Minecraft Pi Edition Python API 的更多信息,则可以查看我们的 Minecraft API 参考指南。本指南向您展示了 API 公开的所有功能,并说明了它们如何工作。
希望在本教程的这一点上,您现在已经成功将 Minecraft 成功安装到树莓派
您现在还应该了解如何利用 Minecraft Pi Edition 可用的 Python API。
如果您在本教程中遇到任何问题或有任何反馈,请与我联系。