Modded Minecraft (try All the Mods 3 on the twitch client, or (formerly my modpack) Resonant Rise)
Challenge Pack Modded Minecraft (Currently Popular: Age of Engineering, Forever Stranded, Sky Factory 3)
Factorio
Dwarf Fortress
Modded Dwarf Fortress Masterwork
Poschengband & Tome4 represent the pinnacle (to me) of classic Roguelike design.
Risk of Rain
Endless Legend
Endless Space 2 (Amplitude releases a consistent and growing world of fantastic games with amazing and long-lived content releases).
(Just give Zachtronics all your money and take all their games, but in a particular order:)
Shenzen I/O
TIS-100
Spacechem
Infinifactory
Cities: Skylines (Paradox Interactive publishes does this and the next few, they're very good)
Europa Universalis 4
Stellaris
Great, thoughtful, engaging games are out there if you want them. Sadly, most people are filthy casuals now.
Zachtronics games in particular stand out as turning real world thinking and skills into fun games.
Things like TIS-100 and Shenzen I/O confuse me. Why would I spend time learning some esoteric assembler that exists no where else, when you could take that same time and learn an actual assembler?
I really, REALLY wish they had done something really clever, like targetted AVR opcodes or something for their vCPU. That'd make it so not only do you get to have fun, but you learn a marketable skill in the process!
That's one of my major complaints about most of the "programming" games I've seen, in that most of the time, if I'm going to spend time writing code, I'd rather just hack on one of my projects then play a game with no real end-product. At least with personal projects, you wind up with an actual app at the end.
I did enjoy Spacechem and Infinifactory, though I didn't finish each before becoming bored.
------
TIS-100 and Shenzen I/O are theme park training grounds where a solution is guaranteed to exist. For education or for people lacking confidence, that has appeal. Also, I _wish_ I had hardware like the TIS-100.
So it's really nothing like real coding. Highly recommended though! Especially Shenzen.
ST: MOV X1 ACC
TEQ ACC 1
+ JMP ST
MOV X1 X2
SLP 1
Now go back and optimize your solutions! :)Fully agreed. I own TIS-100 but never saw the appeal. I can write actual programs in real-world programming languages that accomplish something, thank you!
This is why I found Factorio infinitely more engaging: theme matters! The game is still an assembler/automaton, but disguised as a sci-fi RTS game. By the time you realize you're actually programming, it's too late and you're having lots of fun conquering an alien planet.
I think it's really more for people who don't realize they're learning an assembler. Also, it's less daunting than a real assembler because it's so much simpler.
I'd also add that a large segment of their player base likely has programming experience, yet no experience in assembly.
I love these games, and I can program (and have shipped to prod) in over a dozen languages including Erlang, Haskell, C++, C, Common Lisp, Java, Clojure, Scala.
What you're saying is nonsense. Practice in programming is practice in programming. If we wanted to, we could make the TIS-100 system real for embedded computing and I bet it'd be popular with some instruction extensions.
I did an annex course at a local middle school with TIS-100 to teach kids that programming is fun. It went over well.
I have a still-relevant tutorial on Dwarf Fortress, SpaceChem, and over a hundred hours of very technical modded minecraft play.
I make this recommendation reluctantly as I despise their DLC practices, but those games are pretty great and fulfill an underserved niche. If you do decide to play them - I'd try out the base game before considering DLC, there's just way too much.