#maze #multi-platform #terminal #game #solving #configurable #algorithm

bin+lib tmaze

使用 Rust 编写的简单跨平台终端迷宫解决游戏

13 个稳定版本

1.15.2 2024年6月2日
1.15.1 2024年5月28日
1.14.4 2024年4月21日
1.14.3 2024年3月22日
1.12.3 2023年4月21日

47游戏 中排名

Download history 2/week @ 2024-04-28 246/week @ 2024-05-26 179/week @ 2024-06-02 4/week @ 2024-06-09 1/week @ 2024-06-16

833 每月下载量

自定义许可 和可能 LGPL-3.0

3.5MB
5K SLoC

TMaze

使用 Rust 编写的简单跨平台终端迷宫解决游戏

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


Crates.io

Packaging status

Screenshot of in-game

这是什么

功能

  • 响应终端大小
  • 来自 step 的烟花 OST
  • 通过配置文件配置迷宫大小
  • 可配置颜色
  • 各种迷宫生成算法:随机 Kruskal 的,深度优先搜索
  • 计时器和移动计数器
  • 显示已访问地点
  • 观众模式,您可以飞起来并查看游戏板
  • 楼层和 3D 迷宫(观众模式主要用于此)

原理

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

另一个要求是它是跨平台的,这样我就可以在任何地方玩游戏。一个额外的好处是,我可以在服务器上玩游戏。

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

致谢和感谢

如何运行

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

使用包管理器

Scoop - Scoop 的官方仓库

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

Scoop - Henshouse仓库

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

功能标志

TMaze使用Cargo功能来启用/禁用某些功能。在GitHub发布的二进制文件中,它们都已被启用。从版本1.14.0开始,所有功能默认启用,应手动禁用。要禁用它们,请使用--no-default-features标志。禁用后,可以使用--features <feature1>,<feature2>,...标志启用您想要的特定功能。

这些功能包括

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

如何从源码构建

启用/禁用功能

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

使用crates.io中的cargo安装它

  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

依赖项

~10-43MB
~678K SLoC