Manufactoria
Give your circuits a workout in this deceptively simple puzzle game of logic that puts you in control of building a machine designed to test robots for defects. Defects like homicidal tendencies. You know, the usual stuff. When you're done, make use of the level editor, because the best way to show you care for someone is to tie their brain into knots.
Read More331 Comments
Um, it says "right click to advance." Right clicking is bad in flash games. How can I get right lick to work in the context of the game and not bring up the flash menu?
[Actually, it says "Press right to advance", so press either the [D] or right arrow key on your keyboard. No clicking there. :) -Dora]
I disagree, reidsb. It's possible to build machines that can handle arbitrarily large inputs. I'm currently waiting out a later level (Android?) where the input is fifty symbols, and I have every confidence my machine will handle it correctly.
...But it's very slow, because the algorithm I implemented runs in the square of the length of the tape, so I need upwards of five hundred steps.
I think this game is super cool.
Here's one way to handle that sort, to think of it the way a programmer might:
Basically, each of the color-switches acts like an If..Then statement. "If blue, Then go here; If red, Then go there."
So, you'll want three switches here. Each one says, "If it's blue, go to the next one. If it's red, loop back to this step. If it's blank, throw it away."
So each of the first two gates is set up so that the only way to reach the next one is to be blue.
The third gate has a different rule on blue: go to the exit.
This help any?
What I've solved so far:
Toast - Just build a belt to the exit
Coffee -
?lvl=2&code=c12:6f3;p12:7f3;c11:9f2;c11:7f3;c11:8f3;
Lamp -
?lvl=3&code=c12:5f3;p12:6f3;p11:7f3;p10:8f3;c9:8f3;c11:6f3;c10:7f3;c9:9f3;c9:10f2;c10:10f2;c11:10f2;c13:6f0;c12:7f0;c11:8f0;
Fish -
?lvl=4&code=c12:6f3;p12:7f3;c11:7f1;c11:6f2;c12:8f3;
Bugs -
?lvl=5&code=c12:4f3;p12:5f3;p11:5f0;p11:6f3;p10:6f0;p10:7f3;p9:7f0;p9:8f3;c9:9f2;c12:9f3;c12:10f3;c10:9f2;c11:9f2;c13:5f1;c13:4f0;c8:9f2;c10:5f0;c9:6f0;c8:7f3;c9:5f0;c8:5f3;c8:6f3;c8:8f3;
Cats -
?lvl=6&code=c12:4f3;c12:5f3;c12:6f3;c12:7f3;p12:8f3;c11:8f0;p10:8f0;c10:7f1;p10:6f1;c10:5f0;c9:5f0;c8:6f3;c8:7f3;c8:8f3;c8:9f3;c8:10f3;c9:11f2;c10:11f2;c11:11f2;c11:6f0;c9:6f3;c9:7f3;c9:8f3;c9:9f3;c10:9f3;c9:10f2;c10:10f2;c11:10f2;c12:10f2;c13:9f1;c13:8f1;c13:7f0;c8:5f3;c8:11f2;c13:10f1;
Bears -
?lvl=7&code=p12:4f3;c11:4f0;p9:6f3;p10:6f2;c10:4f0;c9:4f3;c9:5f3;c8:6f2;i9:7f1;c9:8f3;c9:9f3;c9:10f3;c9:11f2;c10:11f2;c11:11f2;c10:7f0;c8:7f1;c10:5f3;c13:4f2;c14:4f2;c15:4f3;c15:5f3;c14:5f3;c16:6f0;c16:7f1;p14:6f0;p15:6f3;i15:7f5;c15:8f3;c15:9f3;c15:10f3;c15:11f0;c14:11f0;c13:11f0;c14:7f2;
RC Cars -
?lvl=8&code=p12:6f3;b11:6f3;r13:6f3;c11:7f3;c13:7f3;c11:8f2;c13:8f0;c12:8f3;c12:7f3;
Robocars -
?lvl=9&code=p12:7f3;c12:5f3;c12:6f3;c12:8f3;c12:9f3;g11:7f2;y13:7f0;
Stilts -
?lvl=10&code=g12:4f3;p12:5f3;b11:5f2;r13:5f0;y12:6f3;c12:7f3;c12:8f3;c12:9f3;c12:10f3;
Dogs -
?lvl=11&code=p12:6f3;p11:6f0;c11:5f3;c10:6f3;c10:7f3;c10:8f3;c10:9f3;c10:10f2;c11:10f2;c12:5f3;c13:6f0;c11:7f3;c11:8f2;c12:8f2;c13:7f1;c13:8f1;
Andriods -
?lvl=17&code=c12:9f3;c12:10f3;c12:11f3;c12:12f3;p12:3f3;p11:3f3;p13:3f3;c12:4f3;c12:5f3;c12:6f3;c12:7f3;c12:8f3;c12:2f3;p10:3f3;b9:3f2;p14:3f3;r15:3f0;
Rockets -
?lvl=25&code=g12:5f3;p12:6f3;r11:6f2;b13:6f0;c12:7f3;q12:8f0;c12:9f3;
Planes -
?lvl=26&code=g12:5f3;p12:6f3;c13:6f0;b11:6f2;q12:7f0;c12:8f3;c12:9f3;
Tanks -
?lvl=15&code=c12:3f3;p12:4f3;c13:4f1;c13:3f0;p11:4f0;i10:4f6;c11:3f0;c10:3f3;c10:5f3;c11:5f0;p10:6f3;i10:7f5;c9:6f3;c9:7f2;c11:7f2;c11:6f3;c12:7f2;c13:7f1;c13:6f2;c14:6f1;c14:5f2;c15:5f2;c16:5f3;p16:6f3;i16:7f1;c15:6f3;c17:6f3;c17:7f0;c15:7f3;c15:8f3;p15:9f3;i15:10f1;c16:9f3;c16:10f0;c14:10f0;c13:10f0;c12:10f3;c12:11f3;c14:9f3;
Police -
?lvl=19&code=p11:2f4;r11:1f3;b11:3f1;y12:2f0;y10:2f0;c17:11f0;c16:11f0;c15:11f0;c14:11f0;c13:11f0;i12:11f6;c10:11f0;c9:11f0;c8:11f0;c7:11f0;c6:11f1;c6:10f1;c6:9f1;c6:8f1;c6:7f1;c6:6f1;c6:5f1;c6:4f1;c13:4f3;c13:5f3;c13:6f2;c13:7f1;c13:8f1;p14:6f2;c18:6f3;c18:7f3;c18:8f3;c18:9f3;c18:10f3;c8:5f3;q8:6f7;r9:5f2;p9:6f2;b9:7f2;y10:5f2;y10:7f2;g9:2f0;c11:5f2;c12:5f2;i12:7f7;c10:6f2;c11:7f2;c11:11f0;q11:6f1;y12:6f3;c12:8f3;c12:9f3;p12:10f3;b11:10f2;r13:10f0;q12:12f0;g18:11f0;c17:6f2;q15:6f5;c16:6f2;c14:8f2;b14:9f0;c14:10f1;c15:8f2;c15:9f0;c15:10f0;q16:8f2;y16:9f0;c16:10f0;c17:8f3;c17:9f3;c17:10f0;c14:2f3;r14:3f0;c14:4f2;c15:2f0;c15:3f0;c15:4f2;c16:2f0;y16:3f0;q16:4f6;c17:2f0;c17:3f1;c17:4f1;b16:7f1;r16:5f3;c14:5f1;c14:7f3;c13:9f1;c13:3f3;b7:4f2;p8:4f3;r9:4f0;c8:3f3;c6:3f2;c7:3f2;c8:2f3;
Teachers -
?lvl=21&code=p7:4f3;p8:4f3;p9:4f3;p10:4f3;p11:4f3;p12:4f3;p13:4f3;p14:4f3;p15:4f3;p16:4f3;p17:4f3;c12:3f2;c13:3f2;c14:3f2;c15:3f2;c16:3f2;c17:3f3;c17:5f3;c17:6f3;c17:7f3;c17:8f3;c17:9f3;c17:10f3;c17:11f3;c17:12f0;c16:12f0;c15:12f0;c14:12f0;c13:12f0;
Rocket Planes -
?lvl=27&code=g11:6f2;p12:6f3;c12:4f3;c12:5f3;y14:3f3;p14:4f4;g14:5f1;c14:6f2;y15:4f0;g15:5f1;p15:6f6;c13:6f2;q13:4f0;r13:3f3;b13:5f1;y15:7f1;c16:7f3;y16:6f3;c12:7f3;c12:8f3;q12:10f3;b13:10f0;r11:10f2;c16:8f0;c15:8f0;c14:8f0;c13:8f0;c12:9f3;
Spies -
?lvl=16&code=c13:5f0;c12:4f3;p12:5f2;c12:6f3;c12:7f3;p12:8f3;c12:9f3;c12:10f3;c13:7f0;p13:8f2;
Judiciary -
?lvl=20&code=y12:2f0;b6:5f3;p7:5f3;q7:7f2;r8:5f3;c8:6f0;c8:7f2;c9:7f1;c9:6f1;c9:5f1;c9:4f0;c8:4f0;c7:4f3;c7:8f3;q7:9f2;p8:9f2;r8:8f2;b8:10f2;y9:9f2;c9:8f3;c9:10f1;r14:4f3;c14:5f2;q15:4f0;c15:5f2;p16:4f1;c16:5f1;q17:4f2;i17:5f6;b18:4f3;c18:5f0;c15:2f0;p14:2f0;r14:3f1;b14:1f3;q13:2f0;i13:5f4;g13:4f0;c12:4f0;c11:4f0;i10:4f6;y15:3f1;r13:3f3;c7:10f3;c10:9f1;c10:8f1;c10:7f1;g11:2f1;c11:1f0;c10:1f0;p9:2f3;c9:1f3;b8:2f3;r10:2f3;c8:3f2;c9:3f2;y10:3f3;c10:5f2;c11:5f2;c12:5f2;p7:11f3;b6:11f2;r8:11f0;q7:12f3;g8:12f2;c10:6f1;c13:6f1;c14:6f0;b15:6f0;q15:7f2;b16:6f3;p16:7f0;r16:8f1;y17:6f3;c17:7f0;c7:6f3;c6:6f2;q12:8f0;p13:8f1;q14:8f2;b15:8f3;r11:8f3;c15:9f0;c14:9f0;c11:9f2;i12:9f7;c13:9f1;c9:12f1;c9:11f2;c10:11f2;c11:11f2;c12:11f2;g12:10f3;c14:13f0;c13:13f0;p13:11f2;c13:12f2;c14:11f3;i14:12f5;i13:10f0;c17:11f2;q18:10f1;p18:11f2;q18:12f0;b17:12f1;r18:9f0;c16:9f3;c16:10f3;c16:11f2;i15:12f3;c16:12f1;c18:13f0;c17:13f0;c16:13f0;c15:13f1;c15:11f1;c15:10f0;c14:10f0;c17:9f0;
Politicians -
?lvl=22&code=c9:3f3;p9:6f0;p9:7f0;p9:8f0;p9:9f2;p9:10f2;p9:11f2;p9:12f2;p9:13f2;c10:2f0;c10:13f2;c11:2f0;p11:3f0;p11:4f0;p11:5f0;p11:6f2;p11:7f2;p11:8f2;p11:9f3;c11:10f2;c11:13f2;c12:3f0;c12:10f2;c13:3f0;p13:4f0;p13:5f0;p13:6f2;p13:7f2;p13:8f3;c13:9f2;c13:10f2;c14:4f0;c14:9f2;c14:10f2;c15:2f2;c15:4f0;p15:5f0;p15:6f2;p15:7f2;c15:9f2;c15:10f2;c16:2f3;c16:3f3;c16:4f3;p16:5f3;c16:7f3;c16:8f3;c16:9f3;c16:10f3;c16:11f3;c16:12f3;c16:13f0;c12:2f2;c13:2f2;c14:2f2;c15:13f0;c14:13f0;c13:13f0;c9:4f3;c9:5f3;p9:2f0;
Academics -
?lvl=23&code=i9:3f5;c9:4f3;i9:6f0;c9:7f1;b10:4f2;c10:5f1;i10:6f0;i10:7f0;c10:8f1;i11:4f3;q11:5f0;q11:8f0;c12:4f3;p12:5f3;c12:7f3;p12:8f3;c13:4f0;q13:5f2;r13:7f0;q13:8f2;c14:5f3;i14:6f5;c14:7f0;c14:8f1;i11:3f4;c10:2f0;c9:2f3;c10:3f2;y12:2f3;g12:3f3;c13:6f2;c14:9f2;c15:9f1;c15:8f1;c15:6f3;c16:4f1;c16:3f0;c15:3f0;c14:3f0;c13:3f0;y8:5f0;c11:2f0;c11:7f0;c13:9f2;y16:7f2;q8:3f3;q16:5f2;c9:5f0;c15:7f2;c12:6f0;c11:6f0;c8:6f3;c8:7f3;c8:8f3;c8:12f3;c8:13f2;c9:13f2;c10:13f2;c11:13f2;p8:10f3;q8:9f2;q8:11f0;b7:10f2;r9:10f0;p7:4f1;r6:4f2;b8:4f0;c7:5f1;c17:7f1;p17:6f1;r16:6f2;b18:6f0;r17:5f0;b7:3f2;
I'll have to figure out my actual log-in for this and get it working again, been a while since I posted here. I did a pretty ugly one for Mecha:
?lvl=28&code=y12:3f3;q11:5f0;p12:5f3;q13:5f2;c12:4f3;c10:4f2;i11:4f3;c14:4f0;c13:4f0;b11:3f0;c10:3f0;g10:5f0;g14:5f2;b9:5f1;r15:5f1;c9:4f2;c15:4f0;c13:6f3;r13:7f2;c14:7f2;c9:3f0;c8:3f3;c8:4f3;c8:5f3;c8:6f3;c8:7f2;q9:7f3;p10:7f2;r10:6f0;c10:9f0;i9:9f6;c8:9f1;c8:8f1;c9:8f3;c9:6f3;b10:8f3;q15:8f3;c15:7f3;p16:8f2;r16:7f0;b16:9f0;i15:9f6;c14:9f1;c14:8f2;c9:10f2;c10:10f2;c11:10f2;c15:10f0;c14:10f0;c13:10f0;c12:10f3;c12:11f3;q12:6f2;c12:7f3;c12:8f3;c12:9f3;
If anyone comes up with better, let us know. :)
I have a better one for Mecha. It's even nice and symmetrical! =D
?lvl=28&code=g12:3f3;p12:6f7;c12:4f3;c12:5f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;q12:7f7;i11:7f7;i13:7f6;c14:6f1;c10:6f1;r11:8f2;b13:8f0;y11:5f1;y13:5f1;b13:4f0;c10:4f2;c14:4f0;c10:5f1;c14:5f1;r11:4f2;q11:6f4;q13:6f2;
I'm stuck on Officers... It seems so... possible... after Mecha too!
Sorry for double posting, but I didn't see Aegeus' question untill after I posted.
"For RoboBugs, is there a way to make it handle arbitrary length strings?"
I'm fairly sure mine does
?lvl=5&code=p12:4f3;p10:5f3;p14:5f3;p13:7f3;c11:4f2;c10:4f3;p11:7f3;i10:7f6;c9:7f0;c8:7f1;c8:6f1;c8:5f1;c8:4f2;c9:4f2;c13:4f2;c14:4f3;c13:5f3;c13:6f3;i14:7f7;c15:7f2;c16:7f1;c16:6f1;c16:5f1;c16:4f0;c15:4f0;c10:6f3;c10:8f2;c11:8f2;c12:8f3;c12:9f3;c12:10f3;c14:6f3;c14:8f0;c13:8f0;c11:5f3;c11:6f3;
Pretty sure this solution to the Robobugs is capable of any length string:
It should reject any double-color.
?lvl=5&code=p12:4f3;p14:5f3;p13:5f3;p11:5f3;p10:5f3;c13:4f2;c14:4f3;c10:4f3;c11:4f0;c14:6f0;c13:6f0;c10:6f2;c11:6f2;c12:6f3;c12:7f3;c12:8f3;c12:9f3;c12:10f3;
I like this one the best from Zachtronics. Just seems a lot easier to get the hang of than the previous ones.
This was my solution to the bugs level. I think it's about as simple as you can get. That was back when I was going for elegance (i.e., shortly before just making it function became the issue)
?lvl=5&code=c12:8f3;c12:9f3;c12:10f3;p12:4f7;c11:4f3;c13:4f3;c11:5f2;c13:7f0;c12:7f3;p12:6f7;p13:6f7;c12:5f3;c13:5f3;
Man, I just now realized you can flip branches with space. That would have made my life a lot easier...
I had trouble getting the previous solutions to RoboBugs(level 5) to load(all I see is a blank screen), but here's my own which should be capable of correctly processing any size string(including length 0):
?lvl=5&code=p12:4f3;c12:5f3;c12:6f3;c12:8f3;c12:7f3;c12:10f3;c12:9f3;p14:5f3;p15:5f3;p10:5f3;p9:5f3;c11:4f0;c10:4f0;c9:4f3;c9:6f2;c10:6f2;c11:6f2;c13:4f2;c14:4f2;c15:4f3;c15:6f0;c14:6f0;c13:6f0;
I gotta admit; it didn't look like much at first, but after a couple of levels it dawned upon me what a truly beautiful game this is. Just finished Mecha, and I found it to be a real hard and interesting puzzle, without ever feeling like I was doing a boring, brainburning exercise.
And it amused me to read someone say that this game is all about "trial and error" because you don't know what robots are coming in advance! :-D Ha ha. If your solution cannot handle *every possible type of robot*, then it's a crappy solution.
Great game!
Here are a few solutions I'm proudest of.
Robo-children:
?lvl=18&code=g12:2f3;p12:3f3;p15:4f3;p14:6f3;p11:5f3;p10:7f3;c12:4f3;i12:5f5;c12:6f3;i12:7f5;c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c11:3f3;c11:4f3;c10:5f3;c10:6f3;c14:4f3;c14:5f3;c13:6f3;c13:7f3;c11:7f2;c13:5f2;c13:3f2;c14:3f2;c15:3f3;c13:8f2;c14:8f2;c15:8f2;c16:8f2;c17:8f1;c17:7f1;c17:6f1;c17:4f1;c17:3f1;c17:2f0;c16:2f0;c14:2f0;c13:2f0;p17:5f1;q15:2f1;b18:5f0;b9:7f2;r15:6f0;r16:5f2;r16:4f0;
Robo-spies:
?lvl=16&code=c12:6f3;p12:7f3;c12:8f3;c12:9f3;c12:10f3;p13:7f1;p12:5f2;c12:4f3;
Politicians (for any length, not just the ones given):
?lvl=22&code=c12:6f3;c12:7f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;y12:2f3;c12:3f3;p12:4f3;c12:5f3;c11:4f0;p10:4f0;b10:3f3;p10:5f3;r11:5f0;p8:5f0;c9:5f0;b8:4f3;q7:5f0;c7:4f1;c7:3f1;c7:2f2;c8:2f2;c9:2f2;c10:2f2;c11:2f2;
Generals (which is almost exactly a red-blue inversion of my Officers solution):
?lvl=14&code=y12:2f3;g12:3f3;p12:4f3;c11:4f0;c13:4f2;b8:6f2;c9:5f3;p9:6f3;b10:6f1;r14:6f0;c15:5f3;p15:6f3;r16:6f0;c14:4f2;c15:4f3;c10:4f0;c9:4f3;c10:5f2;i11:5f3;c12:5f2;c13:5f1;c13:6f0;c12:6f0;c11:6f1;r8:7f3;p8:8f3;q9:7f3;b7:8f2;r9:8f0;q8:9f0;c8:10f2;c9:10f2;c10:10f2;c11:10f2;c12:10f3;c12:11f3;c12:12f3;c15:7f3;q15:8f3;y14:8f3;b14:9f2;c15:9f2;c16:9f2;c17:9f1;c17:8f1;c17:7f1;c17:6f1;p17:5f1;b18:5f0;r16:5f2;q17:4f2;c17:3f0;c16:3f0;c15:3f0;c14:3f0;c13:3f0;
So could someone explain how to use the level codes that have been posted here? They don't work by entering them into the level editor, and by making a new level, I can see that a level string only describes the I/O and other settings of the level, not the actual component layout.
I've also seen some links where the codes are put after the url to the developer's website in a POST/GET fashion, but that doesn't load the components either. So either way I can't get to see a solution for a particular level.
Hints for rocket planes
You don't need to use yellow marker
You need to mark the end of the string.
you'll need 2 components
one to sort the string
and the other to check the string.If it doesn't match send it back to sorting
if there is a red followed by blue the sorter needs to change them. If there is blue alone it needs to remain there
Great game, but has anyone gotten pasting into the Save/Load box to work on a Mac? I've tried with both Safari and Firefox without any success. There's no mouse cursor, which might be okay since I can still select the existing text, but then hitting Command-V to paste (or even just Delete) immediately dumps me right back into the main game screen with no changes registered. :(
Is there a solution to Judiciary that's not
"Police to make the string look like Seraphim, then Seraphim"? Because I can do that, but 1) I'm not sure I have enough room, 2) I don't want to reconstruct my machines, and 3) that seems like a really poor setup on the part of the level designer. Explanations conceptually, please, I'd prefer to not get "paste the level" responses.
To load/save a solution, open the level and clock on the floppy disk icon.
Here is another solution for Robo-Children:
?lvl=18&code=g12:2f3;r11:4f2;p12:4f7;p14:4f6;b14:3f0;c13:3f0;c12:3f3;c13:4f2;c15:5f1;c15:4f1;c15:3f1;c14:2f0;c13:2f3;c12:5f3;c12:7f3;c12:9f3;c12:11f3;c12:10f3;c12:12f3;q12:6f0;p12:8f7;p13:8f7;p14:8f7;p11:8f7;p10:8f7;b15:8f0;r9:8f2;c15:2f0;b14:5f2;
It essentially...
...replaces a double B with a B and a single R with an R and then does a standard "does B=R" test (from somebody elses solution for an earlier level)
for Androids:
hint:
you should make a cycle which
process two bit at a time:
when they are different, cycle back to the same cycle
when they are the same colour,
write a bit for the corresponding green/yellow colour
when no blue or red left, cycle to green-yellow cycle and vice versa
my example(really cool one):
?lvl=17&code=p12:3f3;p11:3f4;c11:2f2;c12:2f3;c13:2f0;p13:3f6;g11:4f0;y13:4f2;c14:4f1;i14:3f4;c14:2f0;c10:2f2;i10:3f0;c10:4f1;c12:4f3;c12:5f3;q12:6f7;q11:6f0;q13:6f2;c11:5f2;c13:5f0;c14:5f0;c10:5f2;i10:6f0;c10:7f1;c14:7f1;i14:6f4;b11:7f0;r13:7f2;c12:7f3;p12:8f3;b11:8f0;r13:8f2;c14:8f2;c10:8f0;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c9:2f2;i9:3f0;c9:4f1;c9:5f1;i9:6f0;c9:7f1;c9:8f1;c15:2f0;i15:3f4;c15:4f1;c15:5f1;i15:6f4;c15:7f1;c15:8f1;
If anyone wants a challenge, here's a level I designed.
Admirals: Accept binary strings that are multiples of three! Level code:
?ctm=_Admirals;ACCEPT:_With_red_as_0_and_blue_as_1,_accept_multiples_of_3.;bb:*|br:x|:*|brrb:*|rbbrb:x|bbrbbbrbrbrrrb:x|rbrbrbbbrbrbrrrrrrbrbbrbbbrrbbrbrbrrb:*|rbbbbbbbrbrbbrrrrrbrrbrbrbrbrbrbrrrbrr:x;7;3;1;
This would be easy on a larger grid: since the corresponding language is regular, you could make it using only branch nodes, with no writers at all. I've tightened up the dimensions to force you to be elegant.
Mecha is infuriating me! It's dead easy to read the first color, but finding when you've reached the last one is a pain in the neck. I considered trying to reverse the string, which makes it really easy, but I can't find a way to do that, either. The tape is a queue, not a stack, so there's no easy way to do it.
Well I've found the solution to mecha
?lvl=28&code=p12:4f3;c12:3f3;q11:4f0;i11:3f4;y10:4f1;c10:3f2;i13:3f2;c14:3f0;g14:4f1;q13:4f2;c11:5f3;c13:5f3;c9:2f3;c9:3f3;c9:4f3;c9:5f3;c9:6f3;c15:2f3;c15:3f3;c15:4f3;c15:5f3;c15:6f3;c9:7f2;c10:7f2;c11:7f2;c12:10f3;c12:7f3;c15:7f0;c14:7f0;c13:7f0;c12:5f3;c12:6f3;c12:9f3;c12:11f3;q12:8f3;r13:8f1;b11:8f1;r13:6f2;r14:2f2;b11:2f0;b11:6f0;r10:6f0;b10:2f0;r13:2f2;b14:6f2;
insanity, nice! I figured there should be a O(n) solution to Androids, but all the ones I could find ran in O(n^2).
Here's a relatively simple solution to Engineers:
?lvl=24&code=g12:2f3;c9:3f3;c10:3f0;c11:3f0;p12:3f3;c13:3f2;c14:3f2;c15:3f3;c17:3f1;c17:2f0;c16:2f0;c15:2f0;c14:2f0;c13:2f0;c11:2f2;c10:2f2;c9:2f2;c8:2f2;c7:2f2;c7:3f1;c12:10f3;c12:11f3;c12:12f3;c7:4f1;c7:5f1;c7:6f1;c7:7f1;b8:5f2;c8:7f0;c9:4f3;p9:5f3;q9:6f0;p9:7f3;c9:8f2;c10:4f2;b10:5f1;c10:8f2;i11:4f4;c11:5f1;c11:8f2;i12:4f7;i12:5f6;c12:6f3;c12:7f3;c12:8f3;c13:4f2;c13:5f0;c13:8f0;c14:4f2;r14:5f0;c14:8f0;c15:4f3;p15:5f3;q15:6f6;p15:7f3;c15:8f0;r16:5f0;c16:7f2;c17:4f1;c17:5f1;c17:6f1;c17:7f1;c12:9f3;
Yes! Finally! I made a mecha-machine that can take ANY input and put the last symbol in front!
?lvl=28&code=y12:3f3;c9:8f2;b9:9f1;c10:8f2;q10:9f4;c10:10f2;c11:8f3;p11:9f3;c11:10f3;c12:8f0;q12:9f2;c12:10f0;c13:8f0;r13:9f1;q11:11f2;c12:11f3;c11:12f2;y9:5f3;c9:6f2;c10:4f2;q10:5f5;c10:6f2;c11:4f2;b11:5f0;b11:6f2;q11:7f2;c12:4f3;p12:5f3;p12:6f3;y12:7f0;c13:4f0;r13:5f2;r13:6f0;c14:4f0;q14:5f1;c14:6f0;y15:5f3;c15:6f0;
Also, I love this game! Even if I have massive problems wrapping my brain around some of the later problems
@Buttons:
Here's my solution to Admirals. I think it's as about as elegant as you can get.
?lvl=32&code=c12:5f3;c12:8f3;c11:7f2;p12:7f7;p13:7f3;p14:7f7;c15:7f0;c12:9f3;c12:6f3;&ctm=_Admirals;ACCEPT:_With_red_as_0_and_blue_as_1,_accept_multiples_of_3.;bb:*|br:x|:*|brrb:*|rbbrb:x|bbrbbbrbrbrrrb:x|rbrbrbbbrbrbrrrrrrbrbbrbbbrrbbrbrbrrb:*|rbbbbbbbrbrbbrrrrrbrrbrbrbrbrbrbrrrbrr:x;7;3;1;
@Buttons:
My solution to Admirals
?lvl=32&code=c12:5f3;c12:8f3;c11:7f2;p12:7f7;p13:7f3;p14:7f7;c15:7f0;c12:9f3;c12:6f3;&ctm=_Admirals;ACCEPT:_With_red_as_0_and_blue_as_1,_accept_multiples_of_3.;bb:*|br:x|:*|brrb:*|rbbrb:x|bbrbbbrbrbrrrb:x|rbrbrbbbrbrbrrrrrrbrbbrbbbrrbbrbrbrrb:*|rbbbbbbbrbrbbrrrrrbrrbrbrbrbrbrbrrrbrr:x;7;3;1;
@Buttons:
My solution to Admirals
?lvl=32&code=c12:5f3;c12:8f3;c11:7f2;p12:7f7;p13:7f3;p14:7f7;c15:7f0;c12:9f3;c12:6f3;&ctm=_Admirals;ACCEPT:_With_red_as_0_and_blue_as_1,_accept_multiples_of_3.;bb:*|br:x|:*|brrb:*|rbbrb:x|bbrbbbrbrbrrrb:x|rbrbrbbbrbrbrrrrrrbrbbrbbbrrbbrbrbrrb:*|rbbbbbbbrbrbbrrrrrbrrbrbrbrbrbrbrrrbrr:x;7;3;1;
By the way, anyone having luck with
The 3 bonus levels after compleating the normal ones? I got the first, but the second one is killing me!
My solution for Seraphim :
?lvl=29&code=c12:9f3;c12:10f3;c12:11f3;q10:5f0;c10:6f0;r11:4f3;p11:5f4;b11:6f1;p12:5f3;q12:6f0;c12:8f3;r13:4f3;p13:5f2;b13:6f1;q14:5f6;c14:6f2;c12:4f3;p16:6f2;p8:6f0;c8:5f1;c16:5f1;p8:4f1;p16:4f1;r7:4f2;b9:4f0;r15:4f2;b17:4f0;c10:3f2;c11:3f2;c14:3f0;c13:3f0;c12:3f3;g9:6f0;g15:6f2;c8:3f2;c9:3f2;c16:3f0;c15:3f0;c12:7f3;
My solution for Seraphim :
?lvl=29&code=c12:9f3;c12:10f3;c12:11f3;q10:5f0;c10:6f0;r11:4f3;p11:5f4;b11:6f1;p12:5f3;q12:6f0;c12:8f3;r13:4f3;p13:5f2;b13:6f1;q14:5f6;c14:6f2;c12:4f3;p16:6f2;p8:6f0;c8:5f1;c16:5f1;p8:4f1;p16:4f1;r7:4f2;b9:4f0;r15:4f2;b17:4f0;c10:3f2;c11:3f2;c14:3f0;c13:3f0;c12:3f3;g9:6f0;g15:6f2;c8:3f2;c9:3f2;c16:3f0;c15:3f0;c12:7f3;
I don't seem to get these as fast as the rest of you, but when I do get them, I get them tight:
Efficient script for engineers:
?lvl=24&code=g12:2f3;c12:3f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c10:5f1;b11:5f2;q11:6f1;c12:5f3;p12:6f3;r13:5f0;q13:6f5;c14:5f1;c11:4f2;c13:4f0;c12:4f3;g10:6f1;g14:6f1;c10:3f2;c14:3f0;p10:4f1;p14:4f1;c13:3f0;c11:3f2;c12:7f3;
I'll have to post my solutions for them once I get home from work, but to go from Officers to Generals, I changed less than five tiles.
In the meantime, here's my solution to Engineers. It's symmetrical, which is always a bonus. Aegeus, you might be interested in it, as it has a simple (in my opinion) way of checking if you're at the end.
Engineers:
?lvl=24&code=q10:3f2;p10:4f4;q10:5f6;r11:3f3;c11:4f0;b11:5f1;g12:3f3;p12:4f7;b13:3f3;c13:4f2;r13:5f1;q14:3f4;p14:4f6;q14:5f0;c10:2f2;c11:2f2;c14:2f0;c13:2f0;c12:2f3;c12:5f3;c12:6f3;c12:7f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c9:4f3;c9:5f3;c9:6f3;c9:7f2;c10:7f2;c11:7f2;c13:7f0;c14:7f0;c15:7f0;c15:6f3;c15:5f3;c15:4f3;
Figured out Ophanim, finally. The basic idea:
First, run through the loop to delete all initial reds from the first and second half. Put a yellow dot at the start of A (and keep the green dot at the start of B). Then use the solution to Seraphim to check where they first disagree. But instead of throwing out the ones that disagree and keeping the others, throw out the ones that do agree and, for the others, check the lengths of the remaining strings to see which is actually bigger.
That's what I set out to do, anyway. Things got REALLY REALLY CRAMPED, and I could've sworn there was still a glitch in this when I hit the Test button. If there is, though, none of their examples seem to have caught it. Here's my solution (141 pieces!):
?lvl=30&code=y12:2f0;p11:2f0;i11:3f4;b11:1f0;r10:2f0;c10:1f0;c9:3f2;c13:3f1;c13:2f2;p14:2f6;c14:3f1;b14:1f2;r15:2f2;c16:2f2;c15:1f2;c16:1f3;p17:2f6;b17:1f3;r17:3f1;c18:3f3;c18:4f0;c17:4f0;c6:13f2;c7:13f2;c8:13f2;c9:13f2;c10:13f2;c11:13f2;c18:9f3;c18:10f3;i18:11f5;c18:12f3;c18:13f0;c17:13f0;c16:13f0;c15:13f0;c14:13f0;c13:13f0;c12:12f1;p7:11f4;y12:4f3;q13:4f5;c14:4f0;c15:4f0;c16:4f0;p12:5f3;c13:5f2;b13:6f2;c14:5f3;p14:6f3;q14:7f3;r15:5f2;r15:6f0;c15:7f2;p16:5f1;g16:6f1;p16:7f2;b17:5f0;c17:7f2;c18:7f3;c18:2f3;c18:8f3;q10:3f3;c9:2f1;c9:1f0;c8:1f0;c7:1f3;p7:2f7;r6:2f2;b8:2f0;c7:3f2;c8:3f2;c6:7f3;r7:5f2;c7:7f0;c8:4f2;p8:5f1;g8:6f1;p8:7f0;c9:4f2;b9:5f0;b9:6f2;c9:7f0;c10:4f2;c10:5f3;p10:6f3;q10:7f7;q11:4f1;c11:5f0;r11:6f0;c6:8f3;c6:9f3;c6:10f3;c6:11f3;c6:12f3;c12:8f0;c13:8f0;c14:8f0;c15:8f0;g11:9f0;q12:9f1;y13:9f2;c10:9f0;c9:9f0;c8:9f3;i8:10f5;c8:11f0;c7:10f2;c7:12f2;c8:12f2;c9:12f1;c9:10f3;c9:11f2;p10:11f6;b10:10f3;r10:12f1;c11:11f2;c12:11f1;c12:10f1;c14:9f2;c15:9f2;c16:9f3;c17:10f0;i16:10f6;c15:10f3;c15:11f0;c16:11f2;c15:12f1;c16:12f0;c17:12f0;c13:11f0;p14:11f4;p17:11f6;r14:10f3;b14:12f1;g8:8f2;r9:8f2;g16:8f0;c10:8f3;c11:8f0;g12:3f2;
As for the last bonus level... I've got no idea.
Wow! This is an awesome puzzle! And with many different potential ways of completing it, too. The computer geek in me loves it. This game would actually be a great introduction for any computer science class.
I wonder, with enough tiles, could this game engine (in the right solution) be considered Turing complete?
Syntax - you can copy and paste too? How?
Good rule of thumb for most machines, I've found:
the "null" branch of most sorters should either feed back into the beginning or go straight to the end. This is one way to make sure strings of variable length work. A central conveyer right after the beginning of the puzzle should feed null strings to the exit (usually).
@McMasters
The idea for the police to cut in half:
First you mark the end of the tape with green. This will allow you to setup something that processes the entier tape, and after getting to the end (witch you can check by reaching green), you can restart the loop.
First you have to prepare the tape, by placing yellow at the beginning and end. (By marking the end first with green, you'll be able to know when you'r at the "end" of the tape.
Then what you do in each loop, is that you swap the first yellow backwards, and the second yellow forward. (I'm not going to go into details how, but it's not that difficult)
You keep doing this, until both yellows are next to each other, at witch point you found the middle.
Than there's a bit of cleaning up left and your done.
@Button
For Ophanim I cheated.
First I also cut off all the excess reds at the beginning of both halfs, but also as I copied over the rest witch remained after the initial reds, I replaced everything with blue. Then I only checked with of the two is longer. It worked for the test cases, but I guess I should make a proper solution.
And as for the last level
I'm considerably annoyed, as I managed to build an addition machine that works perfectly, except I ran out of room to check if the end condition is met, so it keeps on adding zeroes together.
If anyone is interested in it, here it is:
?lvl=31&code=q8:7f2;q8:9f6;g8:10f3;p8:11f3;c9:8f0;g10:8f0;b11:7f2;q11:8f1;g12:5f3;c12:6f3;c12:7f3;p12:8f3;r13:7f0;q13:8f5;g14:8f2;r15:7f3;c15:8f2;b15:9f1;q16:7f4;p16:8f2;q16:9f0;g16:10f3;p16:11f3;r12:3f3;c12:4f3;b9:2f2;p10:2f3;r11:2f0;b13:2f2;p14:2f3;r15:2f0;c10:1f3;c14:1f3;c9:1f2;c8:1f2;c7:1f2;c6:1f2;c6:2f1;c6:3f1;c6:4f1;c6:5f1;c6:6f1;c6:7f1;c6:8f1;c6:9f1;c6:10f1;c15:1f0;c16:1f0;c17:1f0;c18:1f0;c18:2f1;c18:3f1;c11:3f3;c13:3f3;c13:4f0;c11:4f2;q10:3f3;q14:3f7;c18:4f1;c18:5f1;c18:6f1;c18:7f1;c18:8f1;c18:9f1;c18:10f1;c18:11f1;p15:5f1;r14:5f1;c16:3f1;c16:2f1;p9:5f1;g9:6f1;g15:6f1;c16:6f0;c8:6f2;c8:3f1;c8:2f1;c17:8f1;c17:7f0;c7:8f1;c7:7f2;p8:8f4;r9:7f3;b9:9f1;c6:12f1;b7:11f3;b9:11f3;r9:12f3;c6:11f1;b7:12f3;c9:13f0;c8:13f0;c7:13f0;c6:13f1;c9:4f1;c9:3f0;c15:3f2;c15:4f1;r14:4f2;r16:5f1;b16:4f1;c15:13f2;c16:13f2;c17:13f2;c18:13f1;c18:12f1;b15:11f3;b17:12f3;r15:12f3;r17:11f3;g12:2f3;r8:5f1;r10:4f0;b10:5f1;b8:4f1;c12:9f2;c13:9f1;
I'm having a lot of trouble with the later levels, but I think I've come up with some nice clean solutions to a couple of levels.
Mecha
?lvl=28&code=p15:6f3;r15:7f3;c15:4f3;c15:5f3;p12:3f3;c14:3f2;c15:3f3;i12:5f1;i12:6f5;c12:7f3;c12:8f3;c12:9f3;q12:11f3;c12:10f3;i13:5f2;c14:4f2;c12:4f3;c13:4f2;c14:5f0;c13:6f1;c15:8f0;c14:8f0;c13:8f0;g14:6f1;c13:3f2;b11:11f2;r13:11f0;g16:6f0;y9:6f2;c10:3f3;c10:4f3;c10:5f3;p10:6f3;b10:7f3;c10:8f2;c11:3f0;c11:5f0;y11:6f2;c11:8f2;
Children
?lvl=18&code=p12:3f3;g13:3f0;p10:4f3;g11:4f0;c11:3f0;c10:3f3;y9:4f1;c9:3f1;c9:2f2;c10:2f2;c11:2f2;c12:2f3;c12:4f3;c12:5f3;c12:6f3;q12:7f3;q13:7f3;q11:7f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c10:5f2;c11:5f2;q10:7f3;q14:7f3;g15:7f0;y9:7f2;
Teachers
?lvl=21&code=p12:3f3;c12:4f3;i12:5f5;c12:6f3;c12:7f3;c12:8f3;c12:9f3;c12:10f3;q12:11f3;q11:11f3;q13:11f3;q14:11f3;q10:11f3;q9:11f3;q15:11f3;q16:11f3;q8:11f3;y7:11f2;y17:11f0;y10:5f2;c11:4f3;p11:5f3;c11:3f3;c14:5f3;p14:6f3;c14:7f0;g15:6f0;c13:5f2;c13:7f0;
@Button
Ah I think I found an error in your solution, I can't really tell what exactly is going on, but if you try it out for
blue,red,blue,green,blue,blue,blue
witch would be 5 and 7, it accepts it as correct.
In case people wonder how to test for a specific input:
Click on the wrentch, use the bottons on the right to enter the color pattern, then move the speed slider from 0. (I took a while to figure out)
Did anyone else have problems with Robocats? I haven't seen it mentioned, but it bugged the heck out of me. I finally beat it, but I think my solution is probably much larger than it needs to be. Any bored folks care to take a look? (in the spoiler)
?lvl=6&code=p11:7f0;p12:7f3;c12:4f3;c12:5f3;c8:6f3;c8:7f3;c8:8f3;c8:5f3;c13:7f2;c15:7f1;c15:6f1;c15:5f0;c14:5f0;c13:5f0;c12:6f3;i11:4f3;p10:6f0;c11:6f0;c9:3f0;c8:4f3;p10:5f1;i10:4f4;c10:3f0;c9:5f1;c9:4f2;c9:6f0;c8:9f3;c8:10f2;c9:10f2;c10:10f2;c11:10f2;c12:10f3;c11:8f3;c11:9f2;c12:9f2;c13:9f2;c14:9f2;c15:8f1;c15:9f1;c14:7f2;c11:5f1;c11:3f0;i10:7f6;c10:8f3;c10:9f2;c8:3f3;
Anonymous Guest: Yeah, I knew there would be problems for strings of the same length. I'm surprised none came up.
At any rate, for your partial solution to the final level: I watched it long enough to figure out where the ending condition could go, but not quite long enough to figure out how the darned thing works. Still, it only took a few pieces near the bottom to make it operate correctly:
?lvl=31&code=q8:7f2;q8:9f6;g8:10f3;p8:11f3;c9:8f0;g10:8f0;b11:7f2;q11:8f1;g12:5f3;c12:6f3;c12:7f3;p12:8f3;r13:7f0;q13:8f5;g14:8f2;r15:7f3;c15:8f2;b15:9f1;q16:7f4;p16:8f2;q16:9f0;g16:10f3;p16:11f3;r12:3f3;c12:4f3;b9:2f2;p10:2f3;r11:2f0;b13:2f2;p14:2f3;r15:2f0;c10:1f3;c14:1f3;c9:1f2;c8:1f2;c7:1f2;c6:1f2;c6:2f1;c6:3f1;c6:4f1;c6:5f1;c6:6f1;c6:7f1;c6:8f1;c6:9f1;c6:10f1;c15:1f0;c16:1f0;c17:1f0;c18:1f0;c18:2f1;c18:3f1;c11:3f3;c13:3f3;c13:4f0;c11:4f2;q10:3f3;q14:3f7;c18:4f1;c18:5f1;c18:6f1;c18:7f1;c18:8f1;c18:9f1;c18:10f1;c18:11f1;p15:5f1;r14:5f1;c16:3f1;c16:2f1;p9:5f1;g9:6f1;g15:6f1;c16:6f0;c8:6f2;c8:3f1;c8:2f1;c17:8f1;c17:7f0;c7:8f1;c7:7f2;p8:8f4;r9:7f3;b9:9f1;c6:12f1;b7:11f3;b9:11f3;r9:12f3;c6:11f1;b7:12f3;c9:13f0;c8:13f0;c7:13f0;c6:13f1;c9:4f1;c9:3f0;c15:3f2;c15:4f1;r14:4f2;r16:5f1;b16:4f1;c15:13f2;c16:13f2;c17:13f2;c18:13f1;c18:12f1;b15:11f3;b17:12f3;r15:12f3;r17:11f3;g12:2f3;r8:5f1;r10:4f0;b10:5f1;b8:4f1;q12:12f6;q12:9f6;q12:10f6;c13:9f1;c13:10f2;c14:10f1;c14:9f1;p12:11f3;r13:11f0;b11:11f2;
The beautiful thing here is, if I'm not mistaken, you could modify this just a little bit to get a subtraction machine, which also functions as a (much nicer) solution to the penultimate level!
This game is incredible! It almost deserves a place next to The Codex, and that's saying a lot.
I find the later levels incredibly difficult, but I did only just find out that an item can enter a divider from the side; wow - what a difference!
By the way, @amy (long way back); this game is nothing like RoboRally to me. Sure it has the same elements (conveyor belts, robots, humor), but there's a completely different goal, challenge, and rule system. This game isn't a race in any sense of the word.
A solution for robomecha. I think that this might be optimal in both space and time; it's definitely the smallest and fastest solution posted here so far.
?lvl=28&code=g12:3f3;b11:4f2;r13:4f0;c12:10f3;c12:11f3;q13:5f5;q11:5f1;c10:5f3;g10:6f2;b11:6f2;c12:4f3;p12:6f3;q12:7f6;r13:6f0;c14:5f3;g14:6f0;p12:5f3;c12:8f3;c12:9f3;
Has anybody thought of a way to prove optimality?
I like the idea of using this game as a teaching tool. Here's a problem for y'all to ponder.
Consider the rule, "ACCEPT: Number of reds + number of blues = number of greens + number of yellows," where the input tape can comprise any finite string of those four colors. Can you make a machine that obeys this rule?
You people are all hallucinating or something if you think you solved the stupid lamp level.
yes, it's obvious WHAT you have to do, but not HOW to do it.
there isn't enough space on the board for what you need to do. I've tried about 16 or 20 different combinations and there's just no way. I hate this game. Worse than the stupid Codex.
@Butons
Bravo! Nicely done! I'm not totally sure how does that fix of yours work, but it does!
Anyway, in case you're interested, here's how the addition works:
I start off by adding a third segment to the tape with an initial red, that is zero. This is where the sum will be stored.
If you look closely, you'll see that the main loop branches off in two directions, than that into two again, and two yet again.
The first branching direction is determined by the last color of the first tape segment (first number).
The second turning is determined by the last color of the second tape segment (second number).
The final is determined by the first color of the third segment (the sum).
So the information of what these three colors are "stored" in the current location on the board. And all we have to do now, is add these three togeather, and write it to the front of the sum.
The last colors we read from the first and second number are discarded (not written back). If one of the number segments is empty, it's treated as zero. Finally if both are empty, we can finih up.
Also for the idea to use it for Ophanim, I though of that as well.
?lvl=30&code=q8:7f2;q8:9f6;c9:8f0;g10:8f0;b11:7f2;q11:8f1;g12:5f3;c12:6f3;c12:7f3;p12:8f3;r13:7f0;q13:8f5;g14:8f2;r15:7f3;c15:8f2;b15:9f1;q16:7f4;p16:8f2;q16:9f0;r12:3f3;c12:4f3;c9:1f2;c8:1f2;c7:1f2;c6:1f2;c6:2f1;c6:3f1;c6:4f1;c6:5f1;c6:6f1;c6:7f1;c6:8f1;c6:9f1;c6:10f1;c15:1f0;c16:1f0;c17:1f0;c18:1f0;c18:2f1;c18:3f1;c11:3f3;c13:3f3;c13:4f0;c11:4f2;c18:4f1;c18:5f1;c18:6f1;c18:7f1;c18:8f1;c18:9f1;c18:10f1;c18:11f1;p15:5f1;r14:5f1;c16:3f1;c16:2f1;p9:5f1;g9:6f1;g15:6f1;c16:6f0;c8:6f2;c8:3f1;c8:2f1;p8:8f4;r9:7f3;b9:9f1;c6:12f1;c6:11f1;c9:13f0;c8:13f0;c7:13f0;c6:13f1;c15:13f2;c16:13f2;c17:13f2;c18:13f1;c18:12f1;g12:2f3;b10:5f1;b7:12f3;g8:11f3;p8:12f3;g16:11f3;p16:12f3;r17:12f3;c7:8f3;c7:9f3;c7:10f2;c9:10f2;c12:11f3;c12:12f3;i8:10f7;c17:8f1;c17:7f0;c10:10f3;c10:11f2;c11:11f2;q12:9f3;c13:9f2;c14:9f3;p14:10f3;q14:11f7;p13:11f4;c13:12f0;c10:4f0;c8:4f1;c14:4f2;c16:4f1;r9:12f3;b8:5f1;b16:5f1;c15:4f2;c9:4f0;r15:12f3;q10:1f3;q14:1f7;c11:1f3;c11:2f3;c13:1f3;c13:2f3;c16:10f3;c15:10f0;
It's not exactly a substraction
This time the third segment that's used as the sum in Metatron consist only of one color. Red for indicating A B.
The basic is same, take each of the last colors of the numbers, and the previous comparison. Based on these information, it's easy to decide the new comparison. And than you just have to handel when one of the numbers run out.
I'm not totally sure how does that fix of yours work, but it does!
Ah, simple: to get to the red-blue branch near the very bottom, the robot has to pass through three consecutive green branches, which means the tape had three consecutive green dots. This happens exactly when you've finished reading both numbers. The three extra conveyer belts are for the times when the robot had just two consecutive green dots: in those cases, we apologize for wasting its time and send it back to where it belonged in the main loop. The blue-red branch with the writers is just to get rid of that pesky green dot at the end without erasing all the hard work we did.
See, now the Bugs level is one of the reasons why this sort of game makes me angry.
There's no way to create a machine in the limited space that rejects ALL sequences of identical colors, and also handles sequences tapes of any length. All of the solutions posted have one of these two flaws.
In other words, you can't craft the solution until you've seen the possible inputs, and selected a solution that will fail for an input that is not provided.
Fail. Not liking it.
I apologize. I didn't search the comments enough to find the proper Bug level solution.
Way too hard, and not enough instructions, especially for Stilts.
They tell you "you can only write to the end of the tape!", then say "Hey, go ahead and write to the beginning of one", with no further instruction. Grrrrrrrrrrr.
JIGuest - Here is my bug level solution, which I'm pretty sure will work for a string of any length - if a color repeats, it gets dumped, otherwise it cycles until it reaches the end of the tape and then goes to the exit.
?lvl=5&code=p12:4f3;c12:6f2;i13:6f3;c14:6f3;c14:5f3;c14:4f3;c13:4f2;p14:7f3;c13:7f1;c13:5f0;c12:5f0;c12:7f1;p11:7f3;c11:4f3;c11:5f3;c11:6f3;c11:8f2;c12:8f3;c13:8f0;c14:8f0;c12:9f3;c12:10f3;
Streamlined my Children solution, fastest time is 2:41
?lvl=18&code=p12:3f3;g13:3f0;c12:2f3;c12:4f3;c12:5f3;c12:6f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;q10:12f3;q11:12f3;q12:12f3;q13:12f3;q14:12f3;c12:7f3;q9:12f3;q15:12f3;q8:12f3;q16:12f3;c10:3f3;c10:4f3;c10:5f2;y11:2f2;p11:3f0;g11:4f1;c11:5f2;y6:12f2;g18:12f0;q7:12f3;q17:12f3;
@ENRAGED: Here, try this:
?lvl=3&code=c12:9f3;c12:8f3;p14:8f3;c15:8f0;c11:6f2;p12:6f1;p14:6f2;c14:5f3;c12:5f3;c13:6f2;c14:7f3;c13:8f0;
You can see there are three comparators. When each comparator sees a red symbol, the conveyor belt just pushed the robot back into the comparator again. Three blue symbols are enough to move the robot to the exit; if you run out of symbols, the comparators spit them out.
@ENRAGED a little less:
Since the tape loops around, the easiest way to write to the beginning of the tape is to
Write a green symbol at the end of the tape, then read and write back all the reds and blues until you see something that's not red or blue. At this point, your green symbol will be at the beginning of the tape.
Example: ?lvl=10&code=g12:4f3;c12:8f3;c12:9f3;c12:10f3;b11:5f2;p12:5f3;r13:5f0;c12:7f3;c12:6f3;
@JIGguest/hotdog: Here's a simpler solution to Robo-Bugs:
?lvl=5&code=c12:8f3;c12:9f3;c12:10f3;c11:4f3;c13:4f3;p12:4f3;p11:7f3;p12:7f3;c11:8f2;c11:5f3;c11:6f3;c13:5f3;c13:6f0;c12:6f3;
The two comparators at the bottom just check for an alternating RBRBR... or BRBRB... sequence (if you ever see RR or BB, then the robot will get spit out one of the sides), and the comparator at the top just determines which of the two comparators the robot gets shoved into.
This works for any sequence, regardless of length.
Parse - here is my solution for Engineers, it is faster, but requires more parts.
?lvl=24&code=c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c12:3f3;p12:4f3;c12:5f3;c12:6f3;y12:2f3;c12:7f3;c14:2f0;c13:2f0;c14:7f0;c13:7f0;r13:3f3;c13:4f2;b13:5f1;q14:3f0;p14:4f2;q14:5f4;c15:4f3;c15:5f3;c15:7f0;c15:6f3;c10:2f2;c11:2f2;c9:4f3;c9:5f3;c9:6f3;c9:7f2;q10:3f6;p10:4f0;q10:5f2;c10:7f2;b11:3f3;c11:4f0;r11:5f1;c11:7f2;
Yeah, I won't be finishing this one.
My brain just does not bend in the neccessary ways.
Everything past the 2nd branching is way unnecessarily hard.
Specifically, I probably could figure out some of the remaining levels, but doing so would simply cease to be fun and be a product only of frustrated rage. It's just too much.
Plain language Android hint:
Go through the whole stack and remove one blue and one red. If there isn't at least one of each, kick it to the floor. Repeat until all gone.
More in-depth hint:
Is it blue? If blue, go through the stack replacing every other blue with a green until you hit a red. You've now stripped out one of each. Now go through the rest of the stack replacing blues with greens and greens with yellows. Great. Now you've got a green/yellow version of the original, minus one matched pair...
My solution for Androids (2:46, 49) - handles any length input (trade elements for speed)
?lvl=17&code=p12:4f3;p11:4f3;p10:4f3;p9:4f3;p8:4f3;p13:4f3;p14:4f3;p15:4f3;p16:4f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c8:3f2;c10:3f2;c9:3f2;c11:3f2;c13:3f0;c14:3f0;c15:3f0;c16:3f0;c17:3f0;c7:3f2;b7:4f1;r17:4f1;c12:3f3;g12:2f3;q12:5f0;p12:6f3;c12:7f3;c9:6f0;c8:6f0;c16:6f2;c18:6f1;c18:5f1;c18:4f1;c18:3f0;c6:3f2;r13:6f2;b11:6f0;g10:6f0;g14:6f2;c7:6f0;c15:6f2;c17:6f2;c6:4f1;c6:5f1;c6:6f1;
I shaved off 10 more seconds with this monster...
?lvl=17&code=g12:2f3;c12:3f3;p12:4f3;i8:3f7;i6:4f0;i6:5f0;i6:6f0;i6:8f0;i6:9f0;i6:10f0;i6:11f0;i6:7f0;i18:4f4;i18:5f4;i18:6f4;i18:7f4;i18:8f4;i18:9f4;i18:10f4;i18:11f4;c18:3f0;i17:3f2;i7:3f3;c6:3f2;q12:5f6;c6:12f1;c18:12f1;p11:4f3;p10:4f3;p9:4f3;p8:4f3;p7:4f4;p7:5f4;p7:6f4;p7:7f4;p7:8f4;p7:9f4;p7:10f4;p7:11f4;c7:2f2;c8:2f3;p13:4f3;p14:4f3;p15:4f3;p16:4f3;p17:4f6;p17:5f6;p17:6f6;p17:7f6;p17:8f6;p17:9f6;p17:10f6;p17:11f6;c9:3f2;c10:3f2;c11:3f2;c13:3f0;c14:3f0;c15:3f0;i16:3f6;c17:2f0;c16:2f3;p8:11f1;p16:11f1;p15:11f4;p9:11f6;p9:7f6;c8:6f3;c8:7f2;c7:12f2;c9:12f0;c8:12f1;c16:12f1;c17:12f0;c15:12f2;c16:7f0;c16:6f3;p15:6f1;p9:6f1;c10:13f0;c9:13f0;c8:13f0;c7:13f0;c6:13f1;c18:13f1;c14:13f2;c15:13f2;c16:13f2;c17:13f2;p12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;b10:6f3;r14:6f3;p15:10f2;p15:9f2;p15:8f2;p15:7f4;p9:8f0;p9:9f0;p9:10f0;i10:11f7;i14:11f6;c10:12f3;c14:12f3;i10:7f5;c10:8f3;c10:9f3;c10:10f3;i14:7f1;c14:8f3;c14:9f3;c14:10f3;b11:8f3;r13:8f3;g11:9f0;g13:9f2;c12:6f3;c12:7f3;
Andy and Cauchy: Are you sure the entire level code is getting copied/pasted properly into the game?
Have you tried typing it out manually by hand instead of copy/pasting just to see if the problem is with the copying and pasting?
What browser are you using? Perhaps your browser is inserting extra (invisible) characters that the game chokes on?
Just some things to consider. I hope that helps.
I think this game was less inspired by robo rally than by a Turing Machine.
We have the tape, with the tape alphabet of yellow, green, blue and red of which red and blue make up the input alphabet, and the finite automaton with the state being the tile the test piece is on. Therefore, we naturally have the start state and the accepting state, while all tiles without any machinerie on them are formely end-states that we would not call accepting state.
Have a look at the wikipedia page and see if you can find the resemblance. You will then have managed a very fundamental concept of computer science!
Hi all, I couldn't find a better way to tell people about this, but I have found what I believe to be a perfect solution to the robocats one. Apologies if people have come up with this before, but I didn't read through all 303 comments.
Essentially have 3 splitters. 2 of them to check whether there is 2 blues, if not, the reds go back to the start, and the blanks get dropped.
On the second splitter, this goes to the third splitter. To go on a conveyor belt, this has to go out the blank, if it is a blue it gets fed back to itself (Remember it has just come from a blue), and if it is a red, it goes back to the start.
Here is the code for it:
?lvl=6&code=p12:5f3;c14:7f1;c14:6f1;c14:5f1;c13:4f0;c12:4f3;c13:5f1;c11:5f3;c14:8f1;p12:8f3;c13:8f2;c11:6f3;c11:7f2;c12:7f3;c11:8f0;p10:8f4;c10:9f2;c11:9f1;c9:8f3;c9:9f3;c9:10f3;c9:11f2;c10:11f2;c11:11f2;c14:4f0;c10:7f1;c10:6f1;c10:5f1;c10:4f2;c11:4f2;
Here's what I thought would be a simple little puzzle: Skittles - Accept only strings with one of every color.
Simple right? Except my solution wound up taking the whole board. (And looking a lot like a Space Invader.)
Here's the code:
?ctm=Skittles;Accept_only_strings_with_one_of_every_color.;bryg:*|gryb:*|rygb:*|:x|byrrg:x|bygyr:x|brg:x|yrb:x;13;3;0;
Hi all... Am I the only one who realised that you can build conveyor "crossings" by pressing SHIFT ONLY WHEN I finally became stuck on Megatron? (facepalm...) Before I had always thought that this game requires you to build redundant mechanisms because there was no "crossing" functionality...
That was a sideword, but I've totally enjoyed this game from start to end. I'm still trying some of the challenges suggested in the discussion, but first my own suggestion... how about try rebuilding your solutions WITHOUT a single bridge? :D
This solution for robochildren evaluates very quickly, I believe a similar approach can be used on some other levels of the same type.
?lvl=18&code=p12:4f3;p11:4f3;p10:4f3;p13:4f3;p14:4f3;c12:5f3;c12:3f3;g9:4f1;y15:4f1;c15:3f0;c14:3f0;i13:3f6;c9:3f2;c10:3f2;i11:3f7;q10:7f7;q11:7f7;q12:7f7;q13:7f7;q14:7f7;r15:7f1;b9:7f1;c12:6f3;c15:6f0;c14:6f0;c13:6f0;c11:6f2;c10:6f2;c9:6f2;c12:8f3;p12:9f3;c11:9f0;c10:9f0;c9:9f0;c8:9f1;c8:8f1;c8:7f1;c8:6f1;c8:5f1;c8:4f1;c8:3f1;c8:2f2;c9:2f2;c10:2f2;c11:2f3;c16:2f0;c15:2f0;c14:2f0;c13:2f3;c13:9f2;c14:9f2;c15:9f2;c16:9f1;c16:8f1;c16:7f1;c16:6f1;c16:5f1;c16:4f1;c16:3f1;c12:10f3;c12:11f3;
I just beat Manufactoria. The penultimate level, Ophanim, nearly kicked my ass, and I thought Metatron was going to. . . until I built:
?lvl=31&code=c11:2f0;c10:2f0;p9:2f0;b9:1f3;r9:3f1;q8:2f6;g8:3f0;q13:3f3;g13:8f2;b13:9f2;y14:6f3;q14:8f7;p14:9f5;q15:4f5;q15:6f3;y15:8f2;r15:9f0;c16:3f2;c16:5f0;c16:7f2;c16:8f2;c17:5f0;c17:8f1;c7:3f0;y12:2f0;c12:3f1;p15:11f2;q16:11f0;y8:1f3;y16:10f2;r15:10f3;g16:12f1;b15:12f1;c17:10f2;c18:8f1;c18:7f1;p15:5f4;p13:4f1;b14:4f0;b15:7f2;r14:7f3;r12:4f2;y18:10f1;c18:6f1;c18:5f0;c18:4f3;c18:3f3;c17:3f2;c17:7f2;r16:4f2;b16:6f2;g17:6f1;g17:4f3;c18:9f1;r14:11f2;g14:12f1;r15:3f2;g6:3f3;c6:4f3;c6:5f3;c6:6f3;c6:7f3;c6:8f2;c6:9f1;c6:10f1;c7:5f3;c7:6f0;y7:7f3;c7:8f2;y7:9f1;c7:10f0;c8:5f0;r8:6f0;r8:7f0;c8:8f2;b8:9f0;b8:10f0;r9:4f2;g9:5f0;c9:6f0;q9:7f5;p9:8f2;q9:9f3;c9:10f0;p10:4f7;q10:5f1;b10:6f1;g10:7f1;b11:4f0;y11:5f0;r11:11f2;p12:11f7;q12:12f5;b13:11f0;c13:12f2;i10:9f7;c11:9f3;c11:10f3;c10:8f3;c10:10f3;q10:11f7;c9:11f0;c6:11f2;p7:11f3;q7:12f5;c8:12f2;c8:11f0;p10:12f3;b9:12f2;r11:12f0;p11:13f1;q10:13f1;
112 parts, which is reasonable enough. . . but it runs in 16666:40. That is not a typo. I spent about five minutes watching the test case go at max speed. For some reason I find this hilarious. It works, flawlessly, for arbitrary input, but it does some seriously inefficient stuff to do so. I never bothered stripping off initial reds; if I could squeeze that in, the speed would improve to a sane value, because most of the slowdown comes from adding extra initial reds and looping through them.
For Robomecha this seems to be the best optimization for time that I can think off, and it doesn't require too many extra parts
24parts average 64 time units
Trick that I see is take a guess at what color will show up. So guess blue and half the time you will be able to skip writing out the string a second time to get the last item to the front
?lvl=28&code=g12:3f3;b12:4f3;p12:6f3;q13:6f5;r13:5f0;c12:5f3;c12:9f3;c12:10f3;c12:11f3;q11:6f1;b11:5f2;c10:6f3;c10:7f3;c10:8f3;b13:9f1;r13:7f3;p13:8f4;q12:8f0;q12:7f7;p11:7f3;c11:9f2;c10:9f2;g14:7f0;p14:6f2;
After trying the different puzzles you start to see lots of nicer ways of doing things.
Here is a minimized version of serap which is still quiet fast.
(25.94 ave : 23 parts)
?lvl=29&code=c12:4f3;c12:9f3;c12:3f3;p12:8f3;c12:5f3;c12:7f3;g12:6f3;q12:10f0;q12:11f0;p10:6f1;c10:7f1;q10:8f4;c11:6f2;r11:7f3;p11:8f4;b11:9f1;c13:6f0;b13:7f3;p13:8f6;r13:9f1;p14:6f1;c14:7f1;q14:8f2;
trying to read more than one part at a time doesn't seem to speed things up as it has to travel too far to do more checks
I solved all the way through level 30 (Ophanim) without knowing about BRIDGES!! I thought "bridging" meant something like in paint programs where you can click in one spot, then shift-click far away and it draws a line between them. It didn't work so I gave it up and kept solving.
I was despairing of ever solving level 31, but now I know I'll be able to do it!
I found an elegant solution for Mecha if anyone needs it.
?lvl=28&code=c12:4f3;p12:5f7;q10:5f0;q14:5f6;c9:5f1;c9:4f2;c10:4f2;c11:4f2;c13:4f0;c14:4f0;c15:4f0;c15:5f1;r11:5f0;b13:5f2;c12:7f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;c7:8f3;c7:9f3;c7:11f2;q8:8f5;c8:11f2;c9:7f3;c9:8f3;p9:9f7;c9:11f2;q10:8f1;c10:11f2;c11:8f3;c11:9f3;c11:11f2;c16:9f1;c14:9f1;c15:8f3;c15:7f3;c17:8f3;c17:9f3;c13:8f3;c13:9f3;c17:11f0;c16:11f0;c15:11f0;c14:11f0;c13:11f0;p15:9f3;c8:9f1;c10:9f1;y10:6f0;y14:6f2;r8:7f2;b10:7f0;q14:8f5;q16:8f1;r16:7f0;b14:7f2;r9:6f3;b15:6f3;c7:10f3;c11:10f3;c13:10f3;c17:10f3;p12:3f3;g13:3f2;g11:3f0;b10:3f0;r14:3f2;c9:3f3;c15:3f3;c11:6f3;q12:6f3;c13:6f3;c11:7f3;c13:7f3;
I'm pretty sure I have a working solution to "Robomecha" but the Malevolence Engine doesn't seem to think so. Thoughts?
?lvl=28&code=g12:3f3;c12:5f3;p12:6f3;c12:4f3;c10:5f3;c11:4f2;q11:5f1;b11:6f1;r13:6f1;q13:5f5;c13:4f0;c14:5f3;y10:6f3;b10:7f2;r14:7f0;y14:6f3;c11:7f2;c13:7f0;c12:7f3;p12:9f3;c12:8f3;q13:9f2;q11:9f4;c10:9f1;c14:9f1;c11:10f2;c13:10f0;c12:10f3;c12:11f3;b10:8f2;r14:8f0;c11:8f2;c13:8f0;
Hi everyone. I want to show You my two solutions to androids (4:23,27) - I think it's smallest working machine (I'm not sure it's always work, but it passes tests) and (6:27,28). Sorry if somebody was first with this.
(6:27,28)
?lvl=17&code=c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c10:2f2;y10:3f1;c11:2f2;p11:3f7;c12:2f3;p12:3f7;c13:2f0;p13:3f7;c14:2f0;g14:3f1;c12:7f3;c12:6f3;q12:5f7;b11:5f2;r13:5f2;q14:5f6;r14:4f3;b14:6f1;c15:5f1;c15:4f1;c15:3f1;c15:2f0;c12:4f3;
(4:23,27)
?lvl=17&code=c12:8f3;c12:9f3;c12:10f3;c12:11f3;c12:12f3;c10:2f2;y10:3f1;c10:5f2;b10:6f1;c11:2f2;p11:3f7;c11:5f2;q11:6f7;c12:2f3;p12:3f7;c12:4f3;c12:5f3;q12:6f7;c13:2f0;p13:3f7;c13:5f0;q13:6f7;c14:2f0;g14:3f1;c14:5f0;r14:6f1;c12:7f3;
I'm sorry but many of the solutions (I didn't check them all out) for Androids! will fail the random tests if you repeat the runs a few times. The pass scenario isn't the same number of reds as blues... but some number of blues followed by the same number of red AND there can be multiple sets of these (ex: BRBBBRRRBBRR). Try the idea below...
?lvl=17&code=c11:5f2;c12:6f3;p10:6f5;b9:6f2;r11:6f0;q10:5f5;g12:5f3;c12:4f3;c12:10f3;p10:7f4;b10:8f1;c11:7f0;p12:7f3;c12:8f3;c12:9f3;
I believe I have found a solution to Robocat which works with both even and odd blue.
Include the beginning ? mark...
?lvl=6&code=p12:4f3;p11:4f3;p10:4f0;c10:3f3;c9:4f3;c9:5f3;c9:6f3;c9:7f3;c9:8f3;c9:9f3;c9:10f3;c10:11f2;c9:11f2;c11:11f2;c13:4f0;c10:5f3;c10:6f2;c11:6f2;c12:6f2;c13:6f2;c14:6f1;c14:5f1;c14:4f0;
Could more people just post hints please, instead of level codes? I'd really like to be able to find my own solution but sometimes need help with how the mechanism might work. I don't want to just be given a solution that I'm not even building. I could post a few, but some of these even seeing the solution run in front of me I don't understand how it works.
Here's the way I did the robo-cat level correctly:
For Robo-planes:
First off, have the machine print green. Then, set up a branch that reads red without doing anything, and reads blue, then reprints it. After each reading of either red or blue, check for the green dot. If it's read, then that's the end; send it to the accept bin. If not, loop it back to the R/B branch. Make sure it only touches the green writer when it first comes out by putting a conveyor in between the green writer and the R/B branch. Be sure to account for blank strips by placing a green reader on the null side of the R/B branch, and directing the green read to the accept bin.
Leave a comment [top of page]
Walkthrough Guide
(Please allow page to fully load for spoiler tags to be functional.)
I've been yearning for a hint-through / concept-through walkthrough for this game, rather than copy-and-pasting solutions over my own work. So, here's a descriptive walkthrough for the ones I've solved thusfar. (Credit given when I didn't figure out the solution myself.)
Robo-Fish:
You want a string with no red, and the only way to get there is to have it look at every dot. Set up a conveyor belt with a branch whose directions are, "If you see a red, dump the string. If you see a blue, send the string backwards and keep looking. If you see nothing, it means the whole string has been checked and there weren't any reds, so accept it."
Robo-Bugs:
Your first branch should divide strings into two categories: strings that start with red, and strings that start with blue. Set up a Figure-8 loop of sorts, made of two branches, one of which rejects reds but keeps blues in the loop, and the other of which rejects blues but keeps reds in the loop. Set up your initial branch so that strings starting with red are checked on the reject-red branch first, and strings starting with blue are checked on the reject-blue branch first. Achieving a null string means the robot passes, so send the branches' nulls to the finish.
Robo-Cats:
Here's the two best hints I can give you:
1. If, on any of your splits, you see a red, send the string back to the beginning.
2. The solution I found has a flaw: it will accept strings that end in even numbers of blue, but erroneously reject strings that end in odd numbers of blue above 2. The only passing test cases presented end in 2 or 4 blue dots, so mine works for the game's sake, but I don't have good advice on a flawless solution.
RC Cars:
Don't make this harder than it is. Make a branch to check the first symbol. Write that symbol. Send it out the door.
Robocars:
Set up a conveyor belt leading to a branch: blue dots get a green punch and get sent back to the beginning; red dots get a yellow punch and get sent back to the beginning; nulls mean that only green and yellow remains, so send it out the door.
Robostilts:
Punch a green dot first thing. Set a splitter make two little loops: if you see a blue, punch a blue; see a red, punch a red; in both cases, send it back to the same branch after punching the dot. Eventually, it'll get back to the green dot and register a null; give it a yellow and send it on its way.
Robobears:
Divide the board into two big halves: Starts with Red, Starts with Blue. On each half, set up loops: if you see the starting color, go to a branch that sends nulls to the finish. If you see the opposite color, go to a branch that sends nulls to the trash. On both of those "deciding" branches, if any other color is seen, go back a branch and keep checking. Be sure to account for one-dot strings.
Milidogs:
Odd numbers will always end in a blue dot, right? So make a machine that only accepts strings ending in a blue dot. If you solved RoboCats, you can solve this.
Androids, hints courtesy insanity and Sam Dulmage:
insanity's explanation:
You should make a cycle which
process two bits at a time:
When they are different, cycle back to the same cycle.
When they are the same colour,
Write a bit for the corresponding green/yellow colour.
When no blues or reds are left, cycle to the green-yellow cycle and vice versa.
Sam Dulmage's explanation:
Go through the whole stack and remove one blue and one red. If there isn't at least one of each, kick it to the floor. Repeat until all gone.
In other words: Is it blue? If blue, go through the stack replacing every other blue with a green until you hit a red. You've now stripped out one of each. Now go through the rest of the stack replacing blues with greens and greens with yellows. Great. Now you've got a green/yellow version of the original, minus one matched pair...
Roborockets:
First off, mark the end of your string with a green dot. Then build a bizarro-world version of Robostilts: see a red, punch a blue. Loop the string through this branch until it sees null (which is actually the green, of course), then send it through one last green/yellow branch to strip off the green dot and send it out the door.
Roboplanes:
Don't make this harder than it is: you should only need to place seven tiles to complete this, and two of them are only conveyor belts to reach across the board. Mark the end of the string with a green, then make a branch that punches blue when it sees blue, and just conveyors back to the branch when it sees red. Once the red/blue branch sees the green as a null, send it to a yellow/green branch to ditch the green dot and send it off.
Robomecha:
Think of this in three tasks, that must be accomplished in order:
1. Figure out the last color.
2. Stamp that color.
3. Stamp the rest of the string behind it, but without stamping the last color a second time at the end.
First of all, mark a green dot so you know where the string ends. Then, send the string through a red/blue branch that will divide your workspace into two halves. Each side of the branch should re-stamp the dot removed, then check for the green dot. If it doesn't see the green dot, send it back to the original branch to try again. If it does see the green dot, hooray! It's just finished the string! Mark that spot with a yellow dot, then stamp the same red/blue color it just stamped a second time--after all, that was the last color, so now you're stamping it as the first color.
Now, onto step 3: rewriting the string with the last color removed. Make a red/blue branch similar to the original one, except this time, check for the yellow dot before re-stamping the dot removed by the branch. When it sees yellow, follow the yellow dot road (sorry) to the finish.
Soldiers:
This one is really most beautiful if you do the math. This is the 8x multiplication table, in binary:
1 x8 = 1000
10 x8 = 10000
11 x8 = 11000
100 x8 = 100000
...and so forth. You see the pattern, right? Isn't that cool?
Oh fine. Anything in binary, multiplied by eight, simply adds three zeros to the end. And three reds and send it out the door.
Robotanks:
Step 1: Set up a loop to strip off any leading reds. They're meaningless; the number 00001 is the same as just 1. Once it hits a blue, proceed.
Step 2: Anything in binary that is greater than 15 will necessarily have five dots. We don't care what those dots are, since we already made sure that the first one is a blue. Set up branches that allow anything non-null to proceed, and anything null to get dumped, until five dots have been processed. (Don't forget: you already stripped off one blue dot when you were checking for leading reds.) After your branches have seen five dots, send them home--you don't even need to look at the rest of the string to see whether there are more dots left.
Robospies (elegant solution courtesy buttons):
Like in Robotanks, strip off any leading reds first.
Like Soldiers, this puzzle is elegant once you look at the math. This is the 4^ table in decimal:
4^1 = 4
4^2 = 16
4^3 = 64
4^4 = 256
4^5 = 1024
And here it is in binary:
4^1 = 100
4^2 = 10000
4^3 = 1000000
4^4 = 100000000
4^5 = 10000000000
See the pattern? A one, followed by an even number of zeros. Isn't binary cool? If this isn't enough of a hint:
The rules you need to set up are:
Once you see that first blue, there cannot be any others. See a second blue, dump the string. Also, there must be an even number of reds, so if you see a red, immediately check for a second red. If there's not one, dump it.
Anything that passes these two rules passes.
I'm not able to speak to how to solve the remaining puzzles--I'm stuck on them too. :-)
Posted by: scottique | May 21, 2010 3:42 PM
Ok, I thought it was about time I posted some more of my solutions. With these I've tried to keep the number of parts as small as possible, rather than go for fastest time.
My solutions should work for all valid inputs but if they contain bugs, or you have more efficient solutions, then please post a response.
The solutions that are missing from the list are ones where I couldn't improve on the versions already posted by others.
Each level has the time and part count given as well as the full solution.
Androids
(0:38, 12)
?lvl=17&code=c12:4f3;c12:10f3;i12:7f5;p12:8f3;c12:9f3;c12:5f3;g12:6f3;r10:7f2;q11:6f3;p11:7f1;p11:8f4;b11:9f1;
Robotank
(0:39, 28)
?lvl=15&code=c13:3f0;p12:3f5;c10:4f2;c11:4f3;c12:5f3;i11:3f1;c10:2f2;c11:2f3;i11:5f5;c10:5f2;c10:6f1;c12:6f2;i13:6f7;c14:5f0;c13:5f3;c13:7f3;c14:7f0;i13:8f1;c14:9f1;c14:8f0;c12:8f3;c12:9f3;c12:10f3;c12:11f3;p14:6f2;p10:3f4;p11:6f3;p13:9f7;
Robo-children
(2:06, 22)
?lvl=18&code=c12:11f3;g12:3f3;c12:4f3;p12:5f7;b13:5f0;g12:6f3;c10:4f2;c11:4f2;q12:7f7;i11:7f3;p12:9f3;c12:10f3;p11:9f4;b11:10f1;p13:9f6;r13:10f1;c13:8f0;i12:8f6;r10:5f1;i11:5f2;c11:8f1;c11:6f1;
Police
(2:53, 39)
?lvl=19&code=q11:5f5;r11:6f2;r11:11f2;g12:5f3;p12:6f7;y12:10f3;p12:11f7;q12:12f6;b13:6f0;b13:11f0;p12:3f3;b11:3f2;y12:4f3;r13:3f0;y12:2f3;q12:7f4;y11:7f0;q8:6f6;p8:7f0;q8:8f2;b9:6f3;c9:7f0;r9:8f1;i10:7f2;y8:5f1;c8:4f2;c9:4f2;y8:9f2;r10:6f1;c9:9f2;c10:9f1;c10:8f1;b10:4f3;p10:5f6;r11:8f1;p12:8f7;c13:7f0;c12:9f3;b13:8f1;
Teachers:
(1:01, 22)
?lvl=21&code=c12:9f3;c12:10f3;c12:11f3;c12:12f3;p12:8f7;c12:2f3;c12:3f3;p14:8f2;c13:8f2;b14:9f1;g12:5f3;c12:6f3;c12:7f3;c13:5f0;r13:7f2;c14:5f0;p14:7f1;q15:5f1;p15:6f1;c15:7f1;b16:6f0;c12:4f3;
Officers
(2;13, 27)
?lvl=13&code=c12:2f3;c12:6f3;p12:7f7;q11:7f5;r11:6f2;q13:7f1;b13:6f0;y14:7f1;b10:7f3;b13:8f3;c12:10f3;c12:11f3;b14:6f1;p13:9f4;r13:10f1;p14:5f4;q13:5f1;y12:4f3;g12:5f3;c12:3f3;c12:12f3;q12:9f0;q12:8f7;c11:9f2;p10:8f7;r11:8f0;c10:9f2;
Judiciary
(3:21, 62)
?lvl=20&code=p9:10f1;g9:11f1;c9:12f1;r10:9f3;p10:10f2;b10:11f1;q10:12f7;q11:10f7;b11:11f3;p11:12f0;r11:13f1;c12:9f3;y12:10f3;c12:11f3;p12:12f3;q13:10f3;r13:11f3;p13:12f2;b13:13f1;b14:9f3;p14:10f0;r14:11f1;q14:12f3;p15:10f1;g15:11f1;c15:12f1;y12:2f3;q7:6f6;p7:7f0;q7:8f2;y7:9f2;b8:6f3;c8:7f0;r8:8f1;c8:9f2;b9:4f3;p9:5f6;r9:6f1;i9:7f2;c9:8f1;c9:9f1;q10:5f5;r10:6f2;y10:7f0;r10:8f1;y11:4f3;g11:5f3;p11:6f7;q11:7f4;p11:8f7;q11:9f1;b12:6f0;c12:7f0;p12:3f3;b11:3f2;r13:3f0;c12:4f0;y7:5f2;b8:5f2;b12:8f2;q13:8f1;c13:7f0;
Politicians
(0:39, 30)
?lvl=22&code=c12:10f3;c12:11f3;c12:12f3;p12:8f7;c12:9f3;i13:8f3;p14:8f6;r10:7f2;p11:7f1;p11:8f0;r11:9f1;i12:7f5;c12:2f3;p14:9f3;r15:9f0;c13:9f1;c13:7f1;p14:7f1;b15:7f0;r11:4f3;c11:5f2;g12:3f3;i12:4f1;i12:5f5;q13:3f1;p13:4f1;c13:5f1;b14:4f0;c12:6f3;c13:6f1;
Academics
(3:20, 31)
?lvl=23&code=y12:2f3;b10:5f1;y10:6f1;q10:7f0;b11:6f3;p11:7f0;r11:8f1;b11:10f2;c12:3f3;c12:4f3;c12:5f3;g12:6f3;p12:7f3;c12:8f3;q12:9f2;p12:10f3;q12:11f0;b13:6f3;p13:7f6;r13:8f1;r13:10f0;r14:5f1;y14:6f1;q14:7f6;c12:12f3;p10:4f2;r10:3f3;q11:4f5;q13:4f1;p14:4f0;b14:3f3;
Generals
(1:02, 23)
?lvl=14&code=y12:2f3;g12:3f3;p12:5f3;c12:4f3;q11:5f5;b11:4f2;q13:5f1;r13:4f0;r10:5f3;c12:6f3;c12:7f3;c12:8f3;c12:9f3;c12:10f3;c12:11f3;q12:12f0;y14:5f1;r14:4f1;p14:3f0;q13:3f1;p10:6f6;b10:7f1;c11:6f2;
Ophanim
(0:30, 58)
?lvl=30&code=q11:12f4;q11:13f3;c12:6f2;r12:7f1;c12:8f3;c12:9f3;c12:10f3;c12:11f3;i12:12f1;c13:6f2;p13:7f1;q13:8f1;c13:11f3;p13:12f0;c13:13f1;y14:6f2;b14:7f1;c14:8f0;r14:9f1;q14:10f6;g14:11f1;c14:12f0;b15:5f3;p15:6f6;r15:7f1;c15:8f0;r15:9f3;p15:10f4;b15:11f1;p15:12f7;q16:6f6;g16:7f3;i16:8f6;c16:9f3;p16:10f7;q16:11f0;p16:12f3;c17:8f0;b17:9f3;p17:10f6;r17:11f1;p17:12f7;c18:8f0;b18:9f1;q18:10f0;g18:11f1;p11:6f7;c11:7f3;c11:8f2;c10:6f2;g11:5f3;q11:4f6;p11:3f7;b12:3f0;r10:3f2;g11:2f3;p12:2f5;c13:2f0;
Metatron
(1:12, 70)
?lvl=31&code=b11:6f2;q11:7f1;c12:6f3;p12:7f3;r13:6f0;q13:7f5;g14:7f2;c15:7f2;q16:6f4;q16:8f0;c12:5f3;g12:2f3;g12:4f3;q11:4f3;q13:4f7;q7:6f2;q7:8f6;c8:7f0;p16:7f6;r15:8f1;b15:6f3;g16:5f1;b14:3f3;p14:4f0;r14:5f1;c17:7f3;c17:8f0;r12:3f3;c16:4f0;g9:7f0;i10:7f2;c10:4f2;c14:8f1;p15:4f4;b15:5f0;r15:3f0;g16:9f0;i14:9f2;i12:9f6;p7:7f4;c6:7f1;c6:6f2;r8:6f3;b8:8f1;g7:5f1;c7:4f2;p8:4f6;r8:5f2;b8:3f2;p9:4f2;b9:5f1;g7:9f2;c8:9f2;b9:9f2;c10:5f1;p10:9f5;r11:9f0;r9:3f3;q12:8f6;q12:10f6;p12:11f7;r11:11f2;b13:11f0;q12:12f6;c13:9f0;c15:9f0;c10:8f1;c10:6f1;c13:10f2;c14:10f1;
Posted by: Automaton | May 28, 2010 10:35 PM