About Subi (twitter: @r_tapeloaderror)


Ludum Dare 27

Subi's Trophies

Subi's Archive

Post Mortem – The Ten Ten Seconders

Posted by (twitter: @r_tapeloaderror)
Tuesday, August 27th, 2013 6:37 am

So, my second LD resulted in my first entry. Not bad.

What went right

Personally, I liked the theme. I’m always one to take it more as a game mechanic, so this one was pretty clear while offering a fair number of choices.

I had the game done after the first day. This gave me the second 24 hours to polish, draw, compose and add new features. I spent several hours obsessively tweaking numbers until I could win about 50% of the time, which seemed fair.

What went wrong

After tweaking for hours the girlfriend and I cooked dinner, watched a movie, and killed a bottle of wine. That in itself is not wrong, not at all. I thoroughly recommend it. However, it sort of put the idea of “The game’s done, I could add some graphics and music but would I be really happy with them and there’s another bottle of wine in the fridge oh stuff it let’s just relax” into my head. I need to be more committed. ^__^

Also, despite basing my entry on the engine code for my previous attempt, there was still a fair chunk of tech to write. I mean, if I knew I was going to do a shooter no matter what the theme, I should have written a weapon class ready, right?

I picked a stupid size for the screen (1280×720). Next time, I check it on my laptop before submitting.

Lastly, the browser variance got me. I developed in Chrome, one of the more forgiving browsers, but when my first comment was “It freezes in Safari 6 on a Mac” I thought I’d better check it out. Horrifyingly it ran in NO other browsers (except Opera, which uses the same V8 JS engine as Chrome). Hurriedly researching and fixing a combination of transform, keyboard and audio problems got it running reasonably in all browsers except Safari, in which it still runs at 3-4 FPS instead of the 60 FPS of everything else. Post-compo (and therefore not in the entry version) I’ve played around with different methods but nothing has helped Safari. I also don’t have a Mac, so I’m limited to version 5.1.7 (the latest version on Windows) which doesn’t implement requestAnimationFrame, which is the recommended fix for buffered frames – although that’s not the whole problem. >__<

Still, I'm pretty happy all told. Javascript seems to have stayed in my head despite neglecting it for eight months, and the game itself is pretty fun. If you like bullet hell shooters, you can play it on the web right here, please let me know what you think!

Aaand see you all in four months. 😉

It’s a jungle out there

Posted by (twitter: @r_tapeloaderror)
Sunday, August 25th, 2013 4:43 pm

Having written it in Chrome, I’ve just been doing some bugfixing on my entry for other browsers. IE doesn’t recognise hasOwnProperty, Firefox doesn’t either AND glitches on the “which” syntax, and Safari runs like a dog and crashes on half the breakpoints I set.

Standards. Yeah, right. Give me a microcontroller any day. >__<

I think we’re done here

Posted by (twitter: @r_tapeloaderror)
Sunday, August 25th, 2013 2:07 pm

The girlfriend and I have just killed a bottle of wine between us, so I doubt anything coherent will get added to my entry. The Ten Ten Seconders is probably at as far a point as it’s going to get. Second time, first completion.

The Ten Ten Seconders

Made the same mistake as I did last time of leaving myself too much tech to write, but if I tidy it up I should be good to go for the next LD, so you may get actual graphics next time. But for now, there’s a second bottle in the fridge.

Enjoy! ^__^

The Ten Ten Seconders

Posted by (twitter: @r_tapeloaderror)
Sunday, August 25th, 2013 6:11 am

Explosions in. Check them out.

An interesting optimization tip is that you should not attempt to play this game whilst watching the Belgian Grand Prix in another window. It’ll probably glitch a bit.

The Ten Ten Seconders

Posted by (twitter: @r_tapeloaderror)
Saturday, August 24th, 2013 6:28 pm

You don’t want any clever arty hipster musings on the ephemeral nature of existence.


And it’s RIGHT HERE.

(Explosions and sound in the morning, sleep now)

Current framework

Posted by (twitter: @r_tapeloaderror)
Friday, August 23rd, 2013 1:10 pm

Five hours to go and this place is already beginning to smell of sweat and pizza. Yak. Anyway, here’s my JS framework, now with three extra lunchtimes worth of code in it, bringing the grand total to eight. It’s still pretty barebones, but if you want to sling sprites across the screen (silently) then it’ll do the job. Probably very badly. Apologies for the pointless use of Hungarian notation BTW, it’s a hard habit to break.

Speaking of frameworks, a friend of mine has a site up in which he describes several easy ways to make games and urges people to do so. Apparently he keeps getting emails from people telling him that you can’t write a really good game until you learn to program. I’ve been in and around the games industry for nigh on twenty years and I don’t think I’ve ever worked with a designer who could program so much as a microwave. That’s what me and the other programmers were there for. I currently have bug-all idea how to make a good game, but if you tell me how I can make a computer do it.

I, personally, don’t like things like Unity. That is to say I don’t like using them. I don’t like black boxes, or the idea that if I find a problem I can’t fix it because I don’t have access to the code. Such control freakery is perfectly acceptable amongst engineers. But to suggest that someone who doesn’t have an obsessive need to know how something works shouldn’t use it either is just idiotic.

And having said that I will now enter a one-man game making compo. Irony’s a bitch. 😉

Second Go

Posted by (twitter: @r_tapeloaderror)
Monday, August 19th, 2013 1:03 pm

I’m in. Hope someone sees this as the login seems to have gone funny and is convinced I’m not logged in, even as it lets me post this. 😉

Language: Javascript. It would be C++, but technically my employer owns anything I write in C++, so meh.
Libraries: My own framework.
IDE: Notepad++ & Chrome.
Music/Sound: Goldwave + MilkyTracker.
Art: Manga Studio / PS CS2.

I’ll post up the framework I’m working on on Friday, but as it’s the result of precisely five lunchtimes worth of Javascript experience, I wouldn’t advise anyone else using it. Plus, I’m a real OOP whore, and Javascript’s take on inheritance makes me cranky, you’ll hate it.

If this post sounds familiar, you’ve clearly been stalking me since last year.

mov in, towel

Posted by (twitter: @r_tapeloaderror)
Sunday, December 16th, 2012 2:49 am

Time to admit defeat, I’m not going to make it.

The major reason was I gave myself too much tech to write. In fact, if I’m going to be honest, I prefer tech writing to game writing (I’m not a fan of things like Unity, I think they hide too much away, so you end up learning the tool, not the method). The minor reason is that I wasn’t mad keen on the theme. I had two themes from the final round on my “Please don’t let these win” list, and one of them did. Ah well, better luck next time.

If you’re interested, the concept for “Hell is Other People’s Bullets” was that you would control the enemies in a vertical shmup in a similar manner to an RTS game. Things would be pretty frantic as, of course, the AI-controlled player could one-hit-kill most of your units. The beauty of the idea was that level design was more-or-less not required (however, I can see that seriously affecting the longevity of the game). And naturally the end-of-level boss would be the Enormous Mutant Star Goat from H2G2. :)

I got as far as having the player dodge bullets in a reasonably convincing manner, but I wasted too much time finding a bug that turned out to be caused by passing by reference rather than value (showing my Javascript inexperience there). I flat-out won’t have time to finish any graphics or music to my satisfaction, so I think it’s best I leave it while I’ve still got some Sunday left. I shall remember to have less coding to do next time.

However, that’s not to say I didn’t achieve the goal I set myself. I learnt Javascript, and I found a lot of the pitfalls inherent in web programming. I’m going to carry on with this framework for the next LD. I want to sort out proper pixel collision and look more into database access so I can have data files other than textures.

I’m reasonably happy, and now I’m going to do some gardening.

Personal library code

Posted by (twitter: @r_tapeloaderror)
Friday, December 14th, 2012 3:47 pm

As I promised earlier, here’s the framework I wrote to use for Ludum Dare #25. It’s the result of precisely five lunchtimes worth of Javascript experience, so I wouldn’t advise anyone else using it just yet. However, it _is_ free to use, but if you do I’d appreciate a credit. You’ll want someone to take the blame anyway.

NM JS Framework 14/12/12

I promise not to work on it for another three hours ten minutes.

Right, IRC, then bed.

I’m in

Posted by (twitter: @r_tapeloaderror)
Wednesday, December 12th, 2012 4:43 pm

We’ll see if I regret this later. :)

Language: Javascript
Libraries: My own framework.
IDE: Zeus editor + Chrome.
Music/Sound: Goldwave + Milkytracker.
Art: Manga Studio / PS Elements.

I’m a first-timer, and I’m using this to force myself to learn Javascript.

I’ll post up the framework I’m working on on Friday, but as it’s the result of precisely five lunchtimes worth of Javascript experience, I wouldn’t advise anyone else using it. Plus, I’m a real OOP whore, and Javascript’s take on inheritance makes me cranky, you’ll hate it.

Being in the UK, I get to know the theme at 2AM on Saturday from my perspective, so my design technique is going to be to find out the theme then go to bed. Hopefully I will then dream the perfect design, preferably for a shmup of some kind. :)

[cache: storing page]