This Cellule Life
August 21, 2020
We made a Rust/Wasm Game called CelluleLife.
We briefly considered Go but were deterred by the bundle size overhead due to having to ship a GC. It turns out tinygo would have alleviated these concerns but we didnt see it at the time.
A couple key takeaways about Yew:
Yew felt very similar to an Angular app mixed with React jsx-style rendering via the html macro.
The Agents felt like a nice clean way to share state among pages and components that felt very much like Angular Services.
I didn't need to dive too much into how we do multi-threading but knowing that its available for me to optimize with later is comforting.
The game turned out pretty good. It is a gamification of Conway's Game of Life. Basically, you pick a starting seed. Then you modify it as much as you like and that amount of modifications is the high score list you would be fighting to get onto.
The goal is to have the longest life before reaching equilibirium. The amount of cells left alive end up being a tie breaker. So, if you modify a seed 3 times, you will be trying to get more steps than other people who only did 3 modifications.
Not the most exciting game, but it is suprisingly addictive.