2048 Unicorn Frustration

Note: this is a post from late 2014 dug up from some old blog archive. Kept intact for historic purposes.

So now I have been doing Computer Science for two months at KU Leuven. I’m not sure if that will work out, but we’ll see.

One of my first semester courses is “Informatica Werktuigen” = Tools for Computer Science. In this rather practical course without exam we’ve already seen a wide range of subjects, like how to make a CV in Latex, or how to use Git in Linux. But we would also take brief a look at two programming languages: Visual Basic .NET & C++.

We learned about VB.NET’s syntax in an 2h lecture three weeks ago, with a few examples. I, just as everyone else in the room, was a little distracted, because getting taught theory like that is a bit boring.

A week further we had an exercise session, in which we had to make simple “Hello World” or “Click to change font” programs. Next week there was a course of debugging in VB.NET. I overslept that day so I missed it.

And then this week we got a task: “Make 2048 in VB.NET”

Wut? I’ve never ever made a game, let alone programmed anything serious.

Loads of students immediately started programming at home, and during this week, they were going nuts telling about how hard it was to make the task. I just couldn’t start, because I have a Chromebook with Linux at school in the week, so no Windows (I’ve tried virtualizing, doing a native install, but no, no Windows.) So my parents brought my Windows PC from home Thursday.

Eventually I only had time this weekend to work on it. And man I did. The whole weekend, like around 20h in total. It’s very frustrating to create the most sophisticated program I’ve ever written in a language that I barely know. I’ve wasted so much time by misunderstanding the VB.NET syntax. But it’s also rewarding to realize that I’ve just programmed a clone of 2048, you know, a game that is immensely popular. Also the way they let us figure it out on ourself sucks on one side, but on the other side, this is a good way to learn. If just they had given more time or more tips…

So, after hours of syntax googling, it’s here: 2048 Unicorn Edition. Yes. I took the line = “You can also be a little more creative and design your own lay-out.”

in the task to heart. I hope my teachers will think it is as bad-ass as I think it is. I mean, come on, look at it. This game even has a socially relevant message (which came unintenionally out of the badassnes).

You can download it here, from my Dropbox. (Sorry, it’s in Dutch)

It’s a Windows .exe, but it kinda works on Linux (best with Mono runtime & the mono-vbnc packages, Wine is extremely slow on this one). I don’t know (can’t test now) if it works in some way on Mac OS X.

Once, if I have time and if I feel like it, I could make a version 2, with this or this soundtrack (OR BOTH! :D) & some problems resolved. I just think that would certainly not be appreciated by the teachers.

Short explanation:

Protip: a restart with the same raster gives you another background! Find the relation with the first one.