24 个版本 (10 个稳定版)
2.0.0 | 2020年2月29日 |
---|---|
1.3.3 | 2019年11月20日 |
1.3.2 | 2019年7月5日 |
1.0.1 | 2018年7月18日 |
0.5.1 | 2018年7月14日 |
#468 in 游戏开发
295KB
1.5K SLoC
生锈之剑竞技场:Rust 快速入门
这是 OSCON 2019 半天教程的配套仓库。(OSCON 期间需要的链接在底部的 资源部分)
观看培训本身就是有趣且富有信息的,但如果你真的动手实践并进行编码,你将学到更多!这个仓库是为那些准备动手学习的你而准备的。
准备 - 在 OSCON 之前完成以下操作
我使用 macOS,并在 macOS 上开发了生锈之剑竞技场。所有内容 应该 都能在主要的 Linux 发行版和 Windows 上运行。请在 OSCON 之前完成以下准备工作,以便我们专注于学习 Rust。如果你在这页有任何问题,请 立即联系我。
安装 Rust
我们将使用 Rust 1.35.0 或更新的版本用于生锈之剑竞技场。
- 前往 rust-lang.org,点击大黄色
开始使用
按钮,并按照说明为您的操作系统安装 Rust。- 请勿通过其他包管理器安装 rust,因为它将是一个过时的版本。
如果你运行以下类似命令,你应该会得到类似的结果(版本可能更高)。如果你得到的版本低于 1.35.0,请运行 rustup update
来安装新版本。
$ rustc --version
rustc 1.35.0 (3c235d560 2019-05-20)
$ cargo --version
cargo 1.35.0 (6f3e9c367 2019-04-04)
如果你在安装或运行上述命令时遇到任何问题,请在 OSCON 之前 联系我!!!
安装其他依赖项
ZeroMQ 4.1.x 或更高版本用于底层网络。它被抽象化了,所以你实际上不需要处理它,只需确保安装了其库部分,以便 Rust 可以找到它。
在 Linux 上,需要 alsa 开发库来处理声音。
macOS
请确保你已经安装了 Homebrew,然后运行
brew install pkgconfig zmq
CentOS
# czmq-devel is in EPEL (Extra Packages for Linux), so if you haven't installed it, do
sudo yum install -y epel-release
# ...then you can actually install the dependencies
sudo yum install -y czmq-devel alsa-lib-devel
Debian/Ubuntu
运行以下操作并遵循在 ZeroMQ下载文档 中关于Debian/Ubuntu的说明(如果你在Debian 9上没有sources.list
文件,可能需要创建一个/etc/apt/sources.list.d/zeromq.list
文件)。
sudo apt install libasound2-dev
sudo apt install pkgconf
其他操作系统
根据你的操作系统,遵循ZeroMQ下载文档 4.1.x或更高版本的说明。
检查一切是否运行正常
这是重要部分! 按照这些步骤将下载几百个依赖项,这在对OSCON来说非常重要,因为当一百个人在会议期间同时这样做时,IT人员会感到恐慌并责备我。😉 这也将确保你有一个正常的工作环境,这样你就可以在教程期间聆听,而不是尝试让这些东西工作。
- 克隆此仓库(见页面右上角的绿色“克隆或下载”按钮)
- 在终端中,切换到仓库内部并运行
cargo run --bin server
- 它应该会长时间下载和编译,然后你应该会得到一个启动消息和一些统计数据。
- 为了进行下一步,请保持服务器运行!当你准备关闭它时,按
Ctrl-C
- 如果你的防火墙询问是否允许服务器使用网络,请选择是
- 如果发生崩溃或出错,请在OSCON之前联系我!!!
- 为了进行下一步,请保持服务器运行!当你准备关闭它时,按
- 在另一个终端窗口中,切换到仓库内部并运行
cargo run --bin client -- YOURNAME localhost
- 你可以用你的名字替换
YOURNAME
,例如:Nathan
- 由于它与服务器共享所有相同的依赖项,因此它应该编译得更快
- 编译完成后,应该会弹出一个显示手持剑的圆圈窗口
- 服务器应该会提到有玩家连接
- 剑应该指向你的鼠标指针。
- 可以使用箭头键或WASD键移动圆圈。
- 你可以通过点击鼠标或按空格键挥舞剑。
- 通过关闭窗口或按
Escape
键停止客户端。 - 通过在其终端窗口中按
Ctrl-C
停止服务器。 - 如果发生崩溃或出错,请在OSCON之前联系我!!!
如果你在所有这些步骤中都没有遇到崩溃,那么你就为OSCON做好了准备。我们将学习Rust,同时制作自己的类似此参考实现的客户端游戏。✨🎉✨
准备学习
请在OSCON之前做每一件事(有关所有这些的详细信息,请参阅如何学习Rust页面)
- 选择一个IDE(或编辑器),并配置它以支持Rust,并根据你的喜好进行定制
- 选择一个“寻找答案”的地方,如果是论坛、IRC等,请自我介绍或找到你有一个问题的答案。
- 在Rust中尝试做些事情!如果你没有更好的主意,那么就做这个
cargonew message
cdmessage
cargorun
- 编辑
src/main.rs
并更改消息。 cargo run
再次运行以查看你的新消息。
- 查看工具和书籍的描述。
资源
现在你已准备好参加教程了!你将制作自己的类似Rusty Sword Arena的客户端游戏!
依赖项
~23–59MB
~784K SLoC