#教程 #竞技场 #生锈 #学习 #

程序+库 rusty_sword_arena

用于在 Rust 中制作游戏客户端的半天 Rust 教程的库/仓库

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 游戏开发

MIT 许可证

295KB
1.5K SLoC

Build Status

生锈之剑竞技场: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