Home
Swarm is a terminal-based 2D programming and resource gathering game. Program your robots to explore the world and collect resources, which in turn allows you to build upgraded robots that can run more interesting and complex programs. Check out the installation instructions, join the Discord server, take a look at the wiki, or see how you can contribute!
Features include:
- Practically infinite 2D procedurally generated worlds
- Simple yet powerful statically typed programming language based on the polymorphic lambda calculus + recursion, with a command monad for describing first-class imperative actions
- Editor support with syntax and error highlighting via LSP
- In-game tutorial
- A classic open-world mode, in which you start with the ability to produce only very basic, limited robots; collecting resources allows you to bootstrap your way into programming more sophisticated robots that can explore more of the world, set up automated production pipelines, and unlock additional language features.
- A large collection of standalone scenarios, challenging you to use your ingenuity and programming skill to complete specific tasks using only the given resources or language features.
Community
Check out the COMMUNITY page for ways to connect with others in the community.
If you want to contribute, you’re most welcome! There are many ways to contribute, regardless of your Haskell expertise. For example, even someone with no Haskell experience whatsoever could still help with game design, playtesting, and creating challenges and scenarios. Check out CONTRIBUTING for more specific information about ways to contribute.