Just thought I'd share a cool find on Steam. The Farmer Was Replaced is a programming game where you control a farming drone, telling it to plant and harvest crops, add water and fertilizer, etc.
It starts with simple loops and grids, but gradually gets more challenging because different crops have their own rules. For example:
* Trees can't be surrounded by immediately adjacent trees
* Individual pumpkins can grow together into one bigger megapumpkin, giving you the cubic output of the contiguous block as a whole, but only if the individual pumpkins don't die first
* Sunflowers need to be harvested from largest to smallest in order, but the drone can only scan one tile at a time. You have to write a pathfinding algorithm to scan them all after a planting round, remember their order, and harvest them backward, then replant and rescan.
As a JS web dev, I found the game a good way to learn basic Python (I've come to really hate semantic whitespace...) as well as basic visual/spatial programming. I have zero knowledge of pathfinding & traveling salesman algorithms, for example, and this is a great excuse to learn them!
I'm not affiliated with the game in any way, just really like it.
Heh, there's been SO many times I wanted to do that in those kind of games. My GF likes Stardew Valley, but the whole time I was just like "man, I want to wire up some circuits and automate this whole thing like Factorio". Probably missing the point of Stardew :) But this definitely scratches that itch.
There's also a whole sub-genre of similar factory production games (like Factorio and Dyson Sphere Program and so many others in that list). But this game is pretty unique in that it lets you write actual code instead of putting together graphical "logic block" elements (splitters, conveyers, etc.)
The graphical games are useful for teaching logic and thinking in terms of functions (inputs and outputs). But to learn real programming, it's nice to be able to see the actual keywords. 7 Billion Humans and Scratch at least have that.
11 comments
[ 3.2 ms ] story [ 36.6 ms ] threadIt starts with simple loops and grids, but gradually gets more challenging because different crops have their own rules. For example:
* Trees can't be surrounded by immediately adjacent trees
* Individual pumpkins can grow together into one bigger megapumpkin, giving you the cubic output of the contiguous block as a whole, but only if the individual pumpkins don't die first
* Sunflowers need to be harvested from largest to smallest in order, but the drone can only scan one tile at a time. You have to write a pathfinding algorithm to scan them all after a planting round, remember their order, and harvest them backward, then replant and rescan.
As a JS web dev, I found the game a good way to learn basic Python (I've come to really hate semantic whitespace...) as well as basic visual/spatial programming. I have zero knowledge of pathfinding & traveling salesman algorithms, for example, and this is a great excuse to learn them!
I'm not affiliated with the game in any way, just really like it.
Though in this case, having a more descriptive title & body text hopefully helps people know WHY this is interesting.
[0]: https://www.protondb.com/app/2060160
Someone in the Steam forum said it may also work with Whisky, but there seems to be issues with saved games that way?
I'm also trying to get the dev to add it to GeForce Now.
But yeah, a native Mac/Linux client would be great.
There are also a bunch of other similar games on this list: https://github.com/arcataroger/awesome-engineering-games?tab... (disclaimer: I maintain it, but it's a community effort)
I think 7 Billion Humans might be easier to get into, since it's a drag and drop visual code builder GUI: https://store.steampowered.com/app/792100/7_Billion_Humans/
It's similar to Scratch: https://scratch.mit.edu/
And of course there's Roblox: https://create.roblox.com/
And Fortnite: https://www.fortnite.com/create?lang=en-us
-----
There's also a whole sub-genre of similar factory production games (like Factorio and Dyson Sphere Program and so many others in that list). But this game is pretty unique in that it lets you write actual code instead of putting together graphical "logic block" elements (splitters, conveyers, etc.)
The graphical games are useful for teaching logic and thinking in terms of functions (inputs and outputs). But to learn real programming, it's nice to be able to see the actual keywords. 7 Billion Humans and Scratch at least have that.