Robo Instructus devblog Updates on the development of coding puzzler Robo Instructus

Wrapping Up The Alpha Code

I'm that guy who quit his job to sit in his house making games. I'm currently working on robot engineering game Robo Instructus. For my previous weekly posts look here.

While the alpha is getting closer, twist; The title is actually referring to this weeks work including wrapping the code that you write in the game so it fits in a given width. The title-interpreting-rug that was beneath you, look down. It is gone.

Wrapping

Code wrapping is what happens when terrible programmers write lines that are too long. Horizontal scroll bars are basically the devil, so wrapping steps in to derive order from chaos. Check out the little ↳ icon which indicates the line is wrapped. We also maintain the indentation, which is nice as indentation matters. It also handles cursor movement nicely, and code execution highlighting!

In a way this is an edge case, but an important one. The in-game language, badder, does not support explicit line splitting for simplicity. So nice visual wrapping is actually necessary, and this is why I’ve made sure it’s in the alpha.

Scrolling

Another way mischievous programmers (wrapscallions, if you will) annoy text rendering windows is by writing too many lines of code. Most programmers prefer to see the code they’re writing, so I’ve added scrolling.

I went for a minimalist auto-hiding scroll bar. You scroll with the mouse wheel, or cursor movement. It represents the size of the current view and pretty much works as you would expect, with the bar rendered as a single OpenGL quad.

These are two important features I could add because I’ve switched to my own glyph rendering library gfx_glyph. I talked a little about that last week.

Currently I’m mid way through adding a proper level-complete dialog. I’m going to show some stats about the solution, i.e. how long it took. In future I want you to be able to see your stats compared with the world, so you can feel bad after you feel good.

Alpha plans

As mentioned last week the tutorials remain the biggest alpha feature yet to be completed, and otherwise I’m very close. The first alpha will be limited to a small audience so I can eliminate the most pressing issues & bugs. Ultimately I’ll release an open alpha to gather as much feedback as possible from as many people as possible and hopefully build interest in this game.

When I release the open alpha I’ll really need the help of everyone to promote it, if no-one hears about it no-one will test it! If you want to help test the very first alpha please contact me. Of course, I’ll be talking about it more and more as we get closer.