Hi all. Oleg from Luden.io is here. Our new game Craftomation 101 is now officially available on Steam in the form of a demo. Scroll down for the long story about development, big ideas, huge plans, and tiny robots.
It is a craft automation game about funny programmable robots CraftoMates who can move, eat, and craft things needed to terraform a frozen planet.
With this game, you can learn or teach programming and system design basics in a fun way. You can play the game for free in your web browser and add it to your Wishlist on Steam. Chromebooks are also supported.
We release an update every 2 weeks and host an informal stream with developers every Friday on our Discord. Stop by and say hi, we’d love to chat and read all the feedback you want to share.
How It Started
Technically, it all started when one of us (not me) tried to create a piece of javascript to try all the craft combinations in one really nice web game. But it’s too silly to be the reason for creating a whole game (okay it was me and I was kinda close to succeeding with this javascript).
The other piece of this puzzle was in a huge spreadsheet with feedback from players of our previous game while True: learn(). A lot of players asked us to add more “real programming” in our next games.
Another thing we were inspired by was an amazing article Artificial Living Plants by Edward F. Moore (1956). It was dedicated to using self-replicating machines for resource mining and production (not just on Earth, but on other planets as well). Additionally I was shocked by the idea of Freeman Dyson who proposed using self-replicating machines to deliver ice from Enceladus to Mars to help with terraforming.
It all lead us to brainstorming: what kind of game could demonstrate all those amazing concepts, while showcasing programming as a really useful tool for automating various systems, small or huge?
To be honest, “self-replicating programmable robots used for terraforming” sounds really charming, inspiring, and awesome to us. We simply had to try and make this concept into something playable!
Self-replication
The work began in early 2021, as our artist Alex started making sketches, while Dima and Ivan were getting familiar with the Defold game engine (read below) and how it works with Spine animations.
But the real push for us was Ludum Dare 48, which happened in April '21. This online event suggests participants to develop their games in 48 or 72 hours sprints, and we at Luden.io have a long lasting tradition of participating in it.
After a short brainstorm, we decided to make a game about mining resources and investing them into something - something cool, like building a rocket! So we’ve piled up some premade art assets, ideas that could be implemented in a short period of time, and a lot of coffee - and made it into a prototype.
That was a glitchy, but fun little game. After reading 30+ cheerful comments with tons of kind words and meaningful feedback, we thought that the concept was worth working on.
Development
As you might already know, our studio is focused on educational games, which implies lots of discussions with educators. You wouldn't believe how many times in the last 8 years I had to tell educators that, alas, they can’t use our games with Chromebooks (the most popular computer in the classrooms of the US), because our game engine doesn’t support them.
That’s how we ended up with a new game engine - Defold - which is super fun to use and supports web platforms, including Chromebooks.
We’ve launched a pre-alpha on itch.io which was quite helpful because players could instantly start playing the game and providing lots of feedback, ideas, and unexpectedly good ratings (which was tremendously inspiring for us, thank you!)
We wanted to an intuitively comprehensive game, which is why the crafting system was extremely simple - you just combine two objects to produce a new one. Hit Stone with another Stone to get a Spark. Hit Spark with Coal and get a Fire. Fire and Water make Steam…
But what about that automation part? We needed someone who would clash the objects together for us. It would have to be able to pick up an object from a particular place, hold two objects in two hands and combine objects to create the new one. We've asked our artist to try and envision such a creature. The first results looked… peculiar:
Another challenge for us was to make it easier for players to select a particular place on the map for programming purposes. So we’ve started with chess-like map visuals.
Command Stack
The first implementation of the programming part was inspired by Assembler. Adding commands one after another, executing them one by one - that was quite playable.
But as the game started growing, it became much more complicated to create loops and if statements keeping all the code in stack format.
Visual Programming
By the summer of 2021, we decided to make an experiment with visual programming. We’ve already worked with systems like this in Unreal Engine's blueprints and that was really cool. That was one of the main reasons to make visual programming systems the base for while True: learn() but… But it wasn’t an actual programming environment, more like a sandbox for puzzles.
When our programmer Dima uploaded the very first version it became clear that visual programming was much better than the command stack format. What was even cooler, it allowed us to expand the coding part with functions, libraries, custom nodes, and all the stuff programmers like.
The Goal
With the concept, the workfield and the character in places, our next question was: what is it all for? We started with resource mining cycle: load a bunch of elements into a rocket and it will return with a reward - new programming modules for your robots.
Later, when we implemented all the basics we finally got to the initial idea of using robots for terraforming. So now your goal was to terraform the planet - melt the ice, create an atmosphere, plant trees and set up the production of food and water to make the planet habitable.
Trees, food production, and buildings - were to be created the same way as basic elements or robots: by clashing the basic elemets. It could be done manually or by programming a robot to do that.
Melting The Ice
Eventually we eneded up with a concept of melting the ice on the planet's surface. In the beginning, the rocket melts snow and ice around the landing zone, but after that the players were on their own… well, almost!
In order to expand, players must place fires and keep them alive. If they went out, the land around them would start to freeze back. Should the players decide to stick to manual crafting, the process would quickly turn into micromanagement hell. Not good… Enter the CraftoMates!
In the current version of the game, you start with only one robot because the rocket can’t carry more. But once you get around the crafting system and the basics of visual programming, you'll be able to build a gang of tiny workers! Heck, you could even make robots make more robots, if you're smart and patient enough!
The Future
The game is coming to Early Access later in 2022. Our roadmap is public and waiting for your suggestions, you can find it on our Steam page. We release an update every 2 weeks and host an informal stream with developers every Friday on our Discord. Stop by and say hi, we’d love to chat and read all the feedback you want to share.
You can support us with this limited-time Pay What You Want offer and buy the soundtrack and exclusive art pack for any price you want from $0.01 to $99.99+.
Other than that... Have fun!
Best wishes, Oleg Chumakov Head of Luden.io
How To Get More Involved
It probably sounds silly but - play the game (web version can be found here) and share your impressions with us.
You are always welcome to share your feedback, bug report, or feature request via the form.
We're making final arrangements before a certain event on Steam (wink-wink, nudge-nudge), which implies some game polishing, bug fixing and visuals updating. For example, have you seen our newest trailer yet?
As for more technical details and gameplay features, we've been busy as well:
Version 0.37 Released!
New command: Return, which brings your program back to Idle state
Craftomates can now consume food if any of their hands is free (previously they would eat only if their left hand was free)
Updated animation: more smooth moves!
Added sounds for the Command Center
Fixed the bug which occasionally made Craftomates think that they've finished executing a program (while in reality they were not finished)
Fixed the bug which prevented the game from saving when a saved game file exceeded certain size
Credits added to the main menu, celebrating both the devs and our most active community members
And if you don't feel like downloading anything, you are free to play it the old way:
This update is important to us, as it brings a bunch of new and handsome features to Craftomation 101! Without further ado...
Version 0.35 Is Released
Research tree: get points for completing objects at the Command Center and unlock new commands for Craftomates
New commands: directed pick and directed drop - same as your regular pick and drop, but now you can specify which hand of a Craftomate an item goes to
New command: compare checks whether a Craftomate is holding same or different items in each hand. Further commands are exectued depending on the comparison result
Small resource deposits reworked: they now contain smaller amounts of items and have more visual degrading stages
Upgraded visuals for Sand, Coal Dust and Spark
Each Craftomate now has 2 animations for picking, dropping, mixing and eating items. Those animations are played randomly, making the game more visually pleasant
Upgraded visuals for frozen Rocket
We're dying to know how you like all those things, and you can check them out right now: