Cobor goes farming by Douwe_Ravers
What is Cobor goes farming
Cobor goes farming is a puzzle programming game.
The goal of the game is to write a program that can perform three challenges within 10 seconds. Although sometimes it is 10 seconds per challenge. The game contains three levels going from easy to medium to hard. The programming language is a assembly like language. Where the key is to manipulate data in the memory array. Which in turn interacts with part for movement, cutting wheat or interfacing with a bridge terminal.
Interested in how it looks in action? Here a showcase video: https://www.youtube.com/watch?v=mvsWIBPiDMY
How does it work?
Build in code editor
Programming is done in the game itself. Left is the programming interface, right is Cobor ready to go.
Using the simple programming language you can alter the data in the memory array. Different parts of Cobor read the data from the array and through this, you can control the robot.

Build in documentation
When programming documentation is key. So a lot of additional info is provided. Although my sleep-deprived ass probably made some stupid mistakes in there as well. For example #3 instead of #2 in this image.

Overview mode
When trying to figure out how the level is configured a top down view of the level is visualized. This is not an image but an actual camera view and thus is in real time and visible when running the code.

Tools Used
- Game engine: Unity
- 3D graphics: Blender
- 2D graphics: Inkscape
- Audio: Audacity
Extra info
This game is very niche. For ICTers or electronics engineers this may look simple but I'm aware that this is not the case for everyone. So here is an additional guide with C# samples converted to Cobor language.

If you don't have time to code everything. You can download the solutions.txt file which contains the solutions to the 3 levels. If you use the windows build you can copy paste, otherwise you will have to type it over. https://drive.google.com/file/d/1CSh2EUW-573SbwzKR4AghUfit_7KIOcm/view?usp=sharing
Look how happy Codor is because you are going to play his game.

Ratings
| Overall | 310th | 3.275⭐ | 22🧑⚖️ |
| Fun | 435th | 2.675⭐ | 22🧑⚖️ |
| Innovation | 105th | 3.69⭐ | 23🧑⚖️ |
| Theme | 431th | 2.975⭐ | 22🧑⚖️ |
| Graphics | 155th | 3.69⭐ | 23🧑⚖️ |
| Audio | 296th | 2.925⭐ | 22🧑⚖️ |
| Humor | 222th | 2.647⭐ | 19🧑⚖️ |
| Mood | 317th | 2.972⭐ | 20🧑⚖️ |
| Given | 22🗳️ | 23🗨️ |
- Fixed the movement issue.
- Altered some text with additional info.
I kind of took a risk making such a specific type of game. Glad you like the graphics. If you really want you can use the solutions file to just copy paste (on windows) or retype (on web) through the levels. Although, that is not really fun I guess :smile:
I can't figure out the third challenge on the second level. The programming isn't the problem, I just can't figure out how to find a path from the cows to the last flag just using the detect part - there isn't anything to purposefully run into, like the barn...
The game is definitely very solid for a 48 hours compo, though. The grass "texture" is fun and all of the models look good. Not to mention, this is quite a complex mechanic to implement in such a short time.
The documentation is definitely better than my jam code's, too. :)
Ahh I never mention that specifically. Trees, bushes, cows, wheat and water are also obstacles. In your case it was a bush. They don't have an icon in the overview mode yet (Lack of time). I will mention this also in the manual :wink:.
Thanks for noticing.
Haha yeah, I though some people would like that.
The graphics are on point and the sound of the engine is very realistic. The build up of the game is perfect as it gives you time to get used to the code. Once you get it, it is actually not that difficult (but maybe this is due to my mathematical and computer science background). It has to be said that the idea of learning a new language in a game is very unique and original, props to that!
A tip for future players is when you send a 1 to the bridge, do it again to recieve the random number .
All by all my favorite game so far
Next year I code a game using this game, hehe.
On a broader note, I think the UI was too big (font, button, text too big), making it hard to use the manual or read objectives. I've seen in the past other game like this (were you program some robot) where the size of the programming stuff is smaller than the presentation of the bot. It's not the case here but the size of the UI makes it feel off.
Great game.
@seshoumara No problem :wink:. Yeah, I kept it fairly simple on purpose. My goal was to introduce people to a assembly like programming environment. If I had more time I would have introduced more and more complex levels. Like a part that takes in the keyboard inputs so you could design your own controller program.
@thebmxeur Yeah my experience comes from PIC programming. So I actually am also used to retrieving a the result from a separate register. I though it was simpler to understand for people with no background. :wink: I fixed the bridge issue. Thanks for noticing. Good to know of the UI. Something I will take with me for the next LD compo :smile:
Also, the UI was really a problem since it blocks the entire screen and you can't even see Cobor. So 90% of the game is just a bunch of large text and black boxes. Real life programming involves mostly typing/reading text, and the pay off comes much later. Most people don't consider that to be very fun. A programming game should focus on the fun parts (the pay off) and minimize the work parts (reading manuals and debugging code).
I think splitting it up into smaller levels with much simpler goals would make this more approachable. Also, get Cobor moving earlier (preferably in level 1) since that's the coolest part of the game. Currently, you can't even do that until you reach level 2 and survive the giant walls of text in between.
But anyways, this is a cool idea. Nice job!
@nobongo Lego robotics competitions sounds very fun indeed. Nice that you liked it.
@ale yes, It was a very difficult balance between writing only what is necessary and at the same time making the manual complete as well. As for the UI I actually did this on purpose with the idea to also support mobile web but that ended up being harder then originally though (keyboard not appearing and such). Thanks for the feedback! If I had more time defiantly more levels which explain the topics would have been implemented.
@kamoe9 Thanks :smile:, but please believe it. It is true :sweat_smile:
@bentglasstube You are right, I actually have no idea why I did not implement that. It was already build in anyway.
@schuster thanks
@ukulelefury Yeah, the disadvantage of a programming game with limited time to design levels :smile: Yeah maybe more incremental challenges should have made the game more approachable. Thanks for the feedback. Glad you liked it.