Intro
I’ve had an itch for a while. Well, two itches, it turns out. First, the main itch, is a game idea I want to build out. The second, is to learn the Rust programming language. Turns out, I can use game development as a vehicle to learn Rust (experience has long ago taught me that it’s easier to learn a new language if there is a real-world problem to solve).
So, a game? Yeah. What kind of game? Well, let’s go one step at a time.
To start out with, I need to push the balance towards scratching the Rust itch a bit first. I need to have some idea what the fuck I’m doing :) To get that initial bit of knowledge, I’m going to build a much simpler game than what I ultimately want to build.
The Learning Game
As a game to learn with, I’m going with a classic Pac-Man game. I’ve built this game a few times before in the past (first back in DirectX 5) so this makes it a little easier to do as I’ve already got a sense of the game logic needed. Fewer unknowns to tackle when learning how to use Rust. Though, all that said, I recently implemented this game in my uni graphics class, which was still quite a while ago so I’m likely a little fuzzy on details 😂
Engine
Initially at least, I’ve decided to use a game engine. Previous times I implemented Pac-Man, I just used straight-up raw graphics APIs. Though, looking forward to the larger game I want to build, a more fleshed out engine will likely be a big benefit. Using the simpler Pac-Man game to learn how to use the engine just makes sense to me, even if it may be overkill if considered in isolation.
The engine I’m using is called Fyrox. It is a Rust-native game engine, with support for 3D, 2D; comes with an editor similar to larger engines like Unity or Unreal; and can target multiple platforms, including WASM 😅
The Actual Game
Okay okay okay, but what is the actual game you want to build? Let me start by throwing some keywords at you.
- cozy
- trains
- crafting/production
- sci-fi twist
I feel like I just described a stereotype of interestes (did I mention that I’m trans? 😂). Anywho. I’m envisioning something like Stardew ValleyxFactorio.
So just imagine the former with the style and feel of the latter. Connecting different areas of production to areas of consumption by trains and automation-belts, in a low-stakes adventure that moves at whatever pace you want to play at.
I’m also thinking of multiplayer, but mostly in an Animal Crossing-style “island visitor” type way.