项目 在 Rust 技能树

使用 Rust 构建骰子游戏

构建可玩的三回合 Rust 骰子游戏,用类型表示计分类别,管理合法回合变化,并制作能根据所记录骰子和选择重新计分的完整记分卡。

项目Rust

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

使用 Rust 构建骰子游戏是一门实践项目课程,适合已掌握 Rust 基础、希望把小函数组合成可玩的终端游戏的学习者。你将制作一场三回合对局,每回合有五枚骰子,可选择三种计分类别,最终得到一张能根据所记录选择重新计分的完整记分卡。

两个引导实验将带你从类型化计分规则走向合法的回合状态变化,一个挑战实验则要求你把相同规则应用于另一场对局。每个实验都有独立准备的项目;实验之间延续知识,不依赖上一环境的文件。

你将学到什么

完成本课程后,你将能够:

  • 用枚举表示计分类别,并用 match 计算各类别的得分;
  • 计算总和、最高对子和五连的分数,包括合法的零分;
  • 每回合接受一个尚未使用的类别,并在无效或重复选择后保留当前骰子;
  • 将每回合的骰子、类别和得分保存到 match.tsv,再回放这个确切文件并重新计算总分;
  • 用固定骰子点数检验规则,并借助准备好的随机掷骰器和输入界面完成对局。

本课程适合谁

本课程适合准备把熟悉的语言特性组合成小型交互程序的 Rust 学习者。

前置要求: 基本终端操作,以及 Rust 函数、数组、枚举、match 和 Option。Rust for Beginners 提供相关基础。第二个引导实验会按需讲解 struct、Vec、使用 &mut self 的可变方法、Result 和切片。

学习环境: LabEx 提供浏览器中的 Linux Terminal 和准备好的 Rust 项目。输入界面和随机掷骰器已提供;你负责实现计分与记分卡行为。终端提示和程序输出保留英文。

常见问题

需要游戏开发经验吗?

不需要。游戏只有三条简短且明确的计分规则,无需图形、游戏引擎或必胜策略。

零分意味着这一回合失败了吗?

不是。合法的类别选择即使得到零分,也会完成该回合。无效或已使用的类别会被拒绝,当前骰子不会重新掷出。

需要预留多长时间?

作者估计需要 110–150 分钟,包括阅读和处理普通错误。该估计尚未经过初学者走读验证。

教师

labby
Labby
Labby is the LabEx teacher.