this post was submitted on 22 Jun 2025
1 points (100.0% liked)

Papertronics

51 readers
1 users here now

Sudoku for the digital age. A community to come up with and solve together Zacktronics-like games that can be solved only with a pen and a piece of paper (Zachtronics-like games are engineering-oriented puzzle video games and programming games).

founded 1 month ago
MODERATORS
 

Game Description:

PaperBugs is a puzzle where you control bugs on a grid by writing a simple program. Each bug executes the same program step-by-step to reach their targets. The key challenge is that ALL bugs run the SAME program simultaneously!

Puzzle:

Available instructions:

  • MOVE - move forward one cell
  • LEFT / RIGHT - rotate 90 degrees
  • IF FLOWER - execute next line only if flower ahead
  • IF EMPTY - execute next line only if path clear
  • IF WALL - execute next line only if wall ahead
  • IF GEM - execute next line only if gem ahead

Board:

Legend:

  • Flower (blocks movement)
  • Gem (collectable)
  • Wall (blocks movement)

Goal:

Write a single program that guides both bugs to collect gems and reach their targets safely.

you are viewing a single comment's thread
view the rest of the comments
[–] Wrufieotnak@feddit.org 0 points 1 month ago* (last edited 1 month ago) (1 children)

If I understand your output correctly, you missed the two steps with the IF statements. Or rather, I wrongly wrote it directly after the IFs, since the instruction stated "the next line"

So here is the revised version:

MOVE

MOVE

MOVE

LEFT

IF FLOWER:

RIGHT

RIGHT

RIGHT

IF FLOWER:

lEFT

LEFT

MOVE -> should have reached the goal

Also, shouldn't they have collected the gems when walking over them?

[–] blueberry@feddit.org 0 points 1 month ago (1 children)

You are right. My bad. Congratulations :)

[–] blueberry@feddit.org 1 points 1 month ago* (last edited 1 month ago)

Here the correct walk-through:

MOVE: MOVE: MOVE:

[T1][B1][F][B2][T2]
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]

LEFT:

[T1][B1][F][B2][T2] (B1 and B2 face left)
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]

IF FLOWER: RIGHT

[T1][B1][F][B2][T2] (Only true for B2; B2 now faces up)
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]

RIGHT

[T1][B1][F][B2][T2] (B1 faces up, B2 faces right)
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]

RIGHT

[T1][B1][F][B2][T2] (B1 faces right, B2 faces down)
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]

IF FLOWER: LEFT

[T1][B1][F][B2][T2] (Only applies for B1; now faces up)
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]

LEFT

[T1][B1][F][B2][T2] (B1 faces left, B2 faces right)
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]

MOVE

[B1][  ][F][B2][T2]
[ ][G][ ][G][ ]
[#][ ][#][ ][#]
[ ][ ][F][ ][ ]
[F][ ][ ][ ][F]