5 个不稳定版本

0.7.0 2024年5月28日
0.6.2 2023年9月9日
0.6.1 2023年4月18日
0.6.0 2023年4月12日
0.5.0 2023年4月12日

#maze 中排名第 4

每月下载 42
用于 tmaze

自定义许可证

38KB
985

TMaze

简单的多平台终端迷宫求解游戏,完全用 Rust 编写

使用 cargo install tmaze 安装并使用 tmaze 运行


Crates.io

Packaging status

Screenshot of in-game

这是什么

功能

  • 响应终端大小
  • 来自 step 的火药桶原声音乐
  • 通过配置文件配置迷宫大小
  • 可配置颜色
  • 各种迷宫生成算法:随机 Kruskal、深度优先搜索
  • 计时器和移动计数器
  • 显示访问过的地点
  • 观众模式,可以飞行并查看游戏板
  • 楼层和 3D 迷宫(这是观众模式的主要用途)

原因

由于我是一个学生,我必须上课,但即使我在听课的时候,我也想做一些比坐着更的事情。此外,当这个项目诞生时,我开始学习 Rust,所以制作某种游戏似乎是有意义的,但鉴于我的笔记本不是最新的,并且我想尽可能轻量级,我决定为终端制作。这也相当酷。

另一个要求是它是多平台的,这样我就可以在任何地方玩。一个额外的优势是,我可以在服务器上玩。

最后,它变成了迷宫求解游戏,因为我根本找不到其他游戏。

致谢和感谢

如何运行

  • 您可以选择以下方式
  • Github 发布版 下载,现在它们使用 GitHub Actions 自动构建
  • 使用您喜欢的包管理器安装
  • 从源代码构建(您需要在系统上安装 cargo)

使用包管理器

Scoop - Scoop 的官方仓库

  1. 确保您已安装 Scoop 的最新版本
  2. 如果您之前没有添加,请使用 scoop bucket add games 命令添加游戏桶
  3. 最后,使用 scoop install games/tmaze

Scoop - Henshouse 仓库

  1. 确保您已安装 Scoop 的最新版本
  2. 如果您之前没有添加,请使用 scoop bucket add henshouse https://github.com/henshouse/henshouse-scoop 添加游戏桶
  3. 最后,使用 scoop install henshouse/tmaze

功能标志

TMaze 使用 cargo 功能来启用/禁用一些功能。在 Github 发布的二进制文件中,它们都是启用的。从版本 1.14.0 开始,所有功能默认启用,应该手动禁用。要禁用它们,请使用 --no-default-features 标志。禁用后,使用 --features <feature1>,<feature2>,... 标志启用您想要的功能。

功能包括

  • hashbrown - 使用 hashbrown 代替 std hashmap,速度更快
  • 更新 - 启用检查更新功能,这在启动时进行,可以禁用(这不会安装新版本)

如何从源代码构建

启用/禁用功能

cargo 命令后添加 --features 以启用功能,例如 updates。要禁用默认功能,例如 hashbrown,请添加 --no-default-features。要启用所有功能,请添加 --all-features

使用 cargo 从 crates.io 安装它

  1. 请确保您已安装 cargo
  2. 运行 cargo install tmaze
  3. 建议您将 ~/.cargo/bin 添加到 PATH,这样您就不需要完整的路径来运行它

或者直接从 Github

  1. 请确保您已安装 cargo
  2. 克隆 GitHub 仓库或将其作为 zip 文件下载,然后解压
  3. 进入该文件夹
  4. 运行命令 cargo run --release 以运行(或者您可以直接构建它,使用 cargo build --release 而不运行它)
  5. 您可以在 ./target/release/ 目录中找到编译后的可执行文件,名称为 tmazetmaze.exe,您可以将它移动或链接到其他位置

如果您喜欢 Docker,您也可以使用它

  1. 请确保您已安装 Docker
  2. 在仓库文件夹内使用 docker build -t tmaze . --tag tmaze 构建镜像,镜像尚未发布在 Docker Hub 上
  3. 然后您有多种实际运行它的选择(当然还有更多)
    1. 只运行一次:docker run --rm -it tmaze
    2. 使用持久存储来配置和保存数据运行它:docker run -it --rm -v tmaze_data:/root/.config/tmaze tmaze
      • 在这种情况下,您可以使用类似 docker run --rm -it -v tmaze_data:/root thinca/vim:latest 的方式编辑配置

依赖项

~2–29MB
~382K SLoC