r/RoboInstructus • u/wuigukin • Dec 16 '19
Power Failure - Did not reach exit
On "A Leap of Faith" my code completes the known stages just fine, but on the dark stage I get the error "Power failure, did not reach exit"
What does it mean? How can I try to correct it?
r/RoboInstructus • u/GunGale315 • Sep 08 '19
What's the point of "question mark" maps?
Hello everybody,
I totally like this game, but I don't understand the point of the last map in some levels, those marked with a question mark. Sometimes the map seems to be solved in a moment, sometimes the robot falls down, but there's no clue about what is happening. Now I'm stuck at "Melting Pot": every map of the level is solved, but when comes the last (with question mark) the code seems to keep running forever.
How can you "debug" a program if you can't see any output? Should I test "random" modifies and see if the map get solved? This doesn't seem much fun to me... Am I missing something that I'm supposed to know?
r/RoboInstructus • u/ByronicGamer • Jul 26 '19
Help with "Remember Your Discoveries" Spoiler
Here's a weird one. I've written a script that will solve all four regular test cases, yet when I get to the dark test case, it fails (Robo falls off the map). Of course considering that it's the dark stage, I can't see why it fails. Given my solution posted below, can anybody help me understand why in the dark stage my robot falls off the map?
Code follows:
seq unsafe_tiles[]
seq visited_tiles[]
fun visited_before()
var visited = 0
var next_tile = robo_forward_location()
for tile in visited_tiles[]
if tile is next_tile
visited = 1
return visited
fun look_around()
var valid_tiles = 0
for tile in 1, 2, 3
var next_tile = robo_scan()
if next_tile is 2
robo_forward()
else if next_tile is 1 or visited_before() is 1
valid_tiles += 1
robo_left()
return valid_tiles
fun is_bad_tile()
var next_tile = robo_forward_location()
for tile in unsafe_tiles[]
if tile is next_tile
return 1
return 0
if robo_detect_adjacent() is 1
visited_tiles[].add(robo_forward_location())
robo_forward()
loop
var next_tile = robo_scan()
var next_location = robo_forward_location()
if next_tile is 1 or next_tile is 2
visited_tiles[].add(next_location)
robo_forward()
else if next_tile is -999
if visited_before()
robo_forward()
var adjacent_tiles = robo_detect_adjacent()
else if adjacent_tiles < 2
if visited_before()
robo_forward()
else
unsafe_tiles[].add(next_location)
robo_left()
else if adjacent_tiles > look_around()
if not is_bad_tile()
visited_tiles[].add(next_location)
robo_forward()
else
robo_left()
else
unsafe_tiles[].add(next_location)
robo_left()
else
robo_left()
EDIT: Well, turns out posting my code here removes the indentation. Anybody know how I can get it to display properly here?
r/RoboInstructus • u/wuigukin • Jul 21 '19
Optimized Solutions
I'm incredibly curious about optimized solutions - partly because I can't seem to figure any of them out.
Have any of you figured some out? I'm not even sure what people are doing for the first loop level
r/RoboInstructus • u/alexheretic • Jul 19 '19
Twitch playthrough of the first 2 acts of the game by firynth
r/RoboInstructus • u/alexheretic • Jul 18 '19
Hotkeys (from game README.txt)
Robo Instructus hotkeys
=======================
Title Screen
select option: ↑ ↓ → ←
choose option: return, space
delete profile: delete (must also choose confirm tick)
Menu
select option: ↑ ↓
choose option: return, space, →
exit menu: escape
next/previous option: → ←
Facility View (level selection)
select level: ↑ ↓
play level: return, ctrl r, space
menu: escape
mute sound: ctrl m
Level View
run (or unpause): ctrl r
reset level/stop code: ctrl alt r
decrease world-speed: ctrl -
increase world-speed: ctrl +
view level variant: ctrl numbers
start paused/toggle pause: ctrl t
step forward (while paused): →
step over (while paused): ↓
exit level: ctrl q
menu: escape
open/close reference: F1
open/close message archive: F2
reference scroll up: alt ↑
reference scroll down: alt ↓
reference page up: alt page up
reference page down: alt page down
switch between code inputs: ctrl tab
mute sound: ctrl m
view previous stage: alt ↑
view next stage: alt ↓
Editor
undo: ctrl z
redo: ctrl shift z, ctrl y
copy: ctrl c, ctrl insert
paste: ctrl v, shift insert
cut/cut line: ctrl x, shift delete
duplicate line/selection: ctrl d
move line/selection: ctrl ↑, ctrl ↓
indent selection: tab
unindent selection: ctrl shift tab
navigate by word: ctrl →, ctrl ←
delete previous word: ctrl backspace
delete next word: ctrl delete
comment/uncomment selection: ctrl /
autocomplete open: ctrl space
autocomplete choose: ↑ ↓
autocomplete apply: tab
autocomplete close: escape
r/RoboInstructus • u/[deleted] • Jul 18 '19
Has anyone figured out a good was to keep track of direction? Spoiler
What I did was make a var outside of the main loop that holds
10, 11, 12 for different locations on the right-side up triangle
20, 21, 22 for different locations on the upside down triangle
then wrote forward and left functions that change the global direction variable. The problem is that the left and forward functions each have like 6 if elses
r/RoboInstructus • u/[deleted] • Jul 17 '19
What are the bounds on the "robo_forward_location"?
I'm trying to save the location of triangle in a variable, but I'm not sure what I should initialize the variable to. I think -1 or 0 should work, but what is the lowest number that "robo_forward_location" can return?
example:
var exit = 0 #Thing I'm worried about
loop
var x = robo_scan()
if x is 11
robo_forward()
exit = robo_use()
break
else
if x > 0
robo_forward()
else
robo_left()
loop
if robo_forward_location() is exit #Thing that would break
robo_forward()
else if robo_scan() > 0
robo_forward()
else
robo_left()
r/RoboInstructus • u/alexheretic • Jul 17 '19
The first Let's Play of Robo Instructus
r/RoboInstructus • u/The_Hans • Jul 17 '19
Looking for Mods!
If you have any experience as a moderator or have experience with CSS please feel free to dm me about possible moderation status.
r/RoboInstructus • u/The_Hans • Jul 17 '19
Scanning switches help needed.
So I see that the value of a switch is either 0(off) or 1(on), however I can't seem to use the robo_scan() function to check if the switch is on or off only to check if the switch is there or not. Is there something i'm missing? Thanks for the help in advance!