#wordle #game #cli-game #cli

bin+lib wordle-cli

流行的猜词游戏,作为 CLI 应用程序!用 Rust 编写

2 个稳定版本

1.0.1 2022 年 6 月 16 日
1.0.0 2022 年 6 月 15 日

#894 in 游戏

自定义许可

74KB
464

wordle-cli

crates.io .github/workflows/build.yml .github/workflows/test.yml

wordle-cli 是一个受 wordle 启发的 CLI 猜词游戏,用 rust 编写。

用法

通过执行 cargo run [language] 运行游戏。

如果没有设置 language,则默认为 "en"

通过执行 cargo run --bin import <source-file> <import-language> 运行导入工具。

游戏规则

玩家必须正确猜出字典中随机选择的单词。所有单词都是 5 个字符长。游戏通过着色单个字母来告诉玩家正确的字母位置。

  • 绿色:猜测的字母在正确的位置。
  • 橙色:单词中包含该字母,但位置不同。

当玩家用完猜测次数或正确猜出单词时,游戏结束。之后,会显示一条消息。

设置

.env 文件包含有关数据库位置的信息。

  • DATABASE_URL 指示词典位于指定的 db url

导入

导入工具可以用于扩展单词库。用法:参见用法。

然而,<file_path> 参数的要求如下

  • 文件需要使用 UTF-8 编码
  • 单词需要使用换行符作为分隔符,因为文件是逐行读取的

工具会自动删除重复项和与 5 个字符大小不同的条目,并使用 any_ascii 将 Unicode 字符转换为 ASCII。德语变音符号将得到特殊处理。

数据库

如果您选择设置一个数据库作为字典,请仔细查看 diesel.rs 文档。您需要安装一个可工作的 diesel_cli 才能继续。

步骤 1: 运行 diesel 初始化。

diesel setup

步骤 2: 创建 diesel 迁移。

diesel create dictionary_migration

步骤 3: 导航到 res/db 文件夹。

create.sqldrop.sql 应该被放入 diesel 迁移的 up.sqldown.sql。这些文件被排除在 crate 之外。

步骤 4: 将您的字典导入数据库。

cargorun --import --source-file=dictionary.txt --import-language=en

Et voilà! 享受更多功能。正确猜出的单词将在数据库中被标记为 guessed,不会再次显示。当天随机选择的第一个单词将在同一天启动游戏时重复出现,直到成功猜出。

依赖项

~38MB
~613K SLoC