The Melancholy of Right 31, part 2
I guess I could write up how I coded the thing as well. (The thing being my game, also time is shown from 00:00 being the beginning of Ludum Dare. Add 4 hours to get the time in my timezone)
Beginnings:
A day or two before the Ludum Dare I realized i’m going to my grandmas, which meant no PC. I was, therefore, stuck with an Asus EEE Pad Transformer – a tablet running a Tegra 2 clocked at 1.2GHz/core. It also had two cores.
Thankfully, someone fixed the build of Ubuntu available for it to support the touchpad, making work on it a few times easier. Granted, the driver was quite experimental, but I used it anyway.
After fixing the WiFi issue, I was ready to go.
06:00: Let’s go!
I downloaded the JDK, then XChat and Pidgin. Configured everything so I could easily and effortlessly work. I also set up scrot to take screenshots every minute. On this part, no problems appeared.
06:50: Coding!
First, I wrote the basic canvas code. Next I added scaling for it (I decided lo-res pixelart is easy enough to draw for me.). It scaled from 160×128 (the resolution of the game) to 640×512 (sorry, VGA screen owners, you’re out of luck).
Next, I drew the tiles. I decided they’re going to be 16×16, creating a tile resolution of… 10×8. Yes. That made everything easier.
Then, I created the code to load tiles.png and render it from an array. Good.
07:30
After a while, I added code to make it scrollable. After a few bugfixes, it worked. By 08:40 into the LD (I had breaks, mind you) I drew and rendered the player properly. Finally, I coded a simple mapgen (whose general concept stayed up into the final).
08:45
Until 09:30, i was preparing mencoder/ffmpeg for timelapse rendering. Then I took a break. Up to 10:20 i was busy IRCing and IMing, as well as replying to people on /compo. Then, another break.
11:00
At this moment, I started adding physics for the player. At 11:45 I was improving the mapgen code. Then, mostly community activity from 11:50 to 12:30. Finally, another break.
12:50
I tried setting up the microphone so I could live stream. That failed (stupid buggy drivers). At 13:00 I was designing the enemy “bug” graphic. By 13:40 they kind of worked. Major IM/IRC activity until 14:20, then a break.
From there, I forgot to timelapse, but IIRC i was improving enemy/player physics code.
16:20
Code/IRC intertwinned until 17:00. Then I released the first beta (of mostly working singleplayer). I showed it off to people, finding bugs, chatting, procrastinating and fixing a bug until 17:45.
SLEEP
(remember, it was 21:45 in my timezone!)
27:07
I’m up and running again! Time spent chatting with GreaseMonkey and coding until 27:25, after which I went fully into coding mode. At 27:45 i released another beta on IRC, because why not? I spent time discussing it with people until 27:53. Then, EARLY MORNING LUCKY STAR WAKEUP SCHEME
28:15
Until 28:35 I was bugfixing. Then, I designed the “story” title board until 28:50, at which point it was in the game. Then I started work on wraparound and called off singleplayer as complete. Mostly chatting until 29:30, after which I rendered the first part of my timelapse (on an ARM tablet, in “high” quality!) and uploaded it to YouTube.
30:30
Hardcore mutliplayer Googling/coding with minor IRC. (I had some knowledge on how to code multiplayer right from a sandbox game, 64pixels, that I made in 2010-2011.) At 31:00 I took another break.
33:00
By then I had multiplayer about 50% done. But enemies were a LAGFEST. Too many packets, even for loopback :< Tried fixing until 33:20, then IRC. Fixing/IRCing until 34:15, then break.
34:30
Screw enemies, I was trying to get block throwing work right. Of course, I couldn’t, because ENEMIES ATE ALL THE BANDWIDTH (and CPU). Then, IRC from 35:00–35:10 and I was forced to go outside for 3 hours.
38:10
THE PERFECT IDEA – I made the client do enemy movement prediction! Sure, I had to throw out random movement but IT WORKED! Multiplayer was closer to being completed than ever. Hardcore fixing until 39:10.
40:00
Hardcore fixing/online testing until 42:00 ON MY OWN, FAST COMPUTER. Yay!
42:30
I realize I made a fatal bug after release. Can’t sleep.
48:30
I wake up, realize I can’t fix the bug anymore. Major depression until 49:50, including crying and loss of sanity.
50:10
PoV saves the day, telling me crash bugs are fixable. Attempting to fix a few (with lots of breaks) until…
57:30
I fixed all but one, released a “fixed version”, then stopped it.