16 个版本
0.6.1 | 2023 年 3 月 18 日 |
---|---|
0.6.0 | 2022 年 5 月 1 日 |
0.5.2 | 2022 年 1 月 1 日 |
0.5.1 | 2021 年 7 月 17 日 |
0.2.0 | 2019 年 11 月 30 日 |
在 算法 中排名 #967
用于 rlifesrc
180KB
3.5K SLoC
rlifesrc-lib
Rust 生命搜索,或 rlifesrc,是一个用 Rust 编写的生命游戏模式搜索器。
该程序基于 David Bell 的 lifesrc 和 Jason Summers 的 WinLifeSearch,使用 Dean Hickerson 发明的算法。
与 WinLifeSearch 相比,rlifesrc 仍然较慢,并且缺少许多重要功能。但它支持非全总态生命游戏和世代规则。
这是 rlifesrc 的库。还有一个带有 TUI 的 命令行工具 和一个使用 WebAssembly 的 网络应用。
您可以在此尝试网络应用 这里。
有关此包发布的版本文档,请访问 docs.rs。GitHub 上还有 未发布版本的文档,其中包含私有函数和方法。
示例
找到 25P3H1V0.1 舰船。
use rlifesrc_lib::{Config, Status};
// Configures the world.
let config = Config::new(16, 5, 3).set_translate(0, 1);
// Creates the world.
let mut search = config.world().unwrap();
// Searches and displays the generation 0 of the result.
if let Status::Found = search.search(None) {
println!("{}", search.rle_gen(0))
}
搜索结果
x = 16, y = 5, rule = B3/S23
........o.......$
.oo.ooo.ooo.....$
.oo....o..oo.oo.$
o..o.oo...o..oo.$
............o..o!
依赖
~1.9–3.5MB
~70K SLoC