chrisp

LD11

Time management? You can’t handle the time management!

Hi there. My name is Chris, I’m the guy responsible for this game, and this is my first Ludum Dare ever. I’m going to use a library which I haven’t touched for literally years (pygame), in a language which I hardly ever use (Python). I only decided to enter half an hour ago (after the contest started – yes, I’m that hardcore), so I’m completely unprepared.

No matter. I’ve probably got pygame installed… do I? Oh yeah, I do. That’s good. So… how does one use this, again? Meh. I’m sure there’s a tutorial on the net somewhere.

Did I mention that I’m going to a party tomorrow? That will take up pretty much the whole day, and mean that I probably won’t be up and functional before noon the day after, which is the deadline. So I only have tonight available, and it’s currently 6pm here. Factoring in an hour for dinner and assuming a responsible bedtime of 10pm, that means I have… three hours.

Hmm. Oh well. At least there’s crap-all on TV.

Maybe I should stop typing English and start typing code right about now.

Any second now….

…wait for i

Tags: day1, journal, ohmygodimgoingtodie, time, unprepared

Comments

19. Apr 2008 · 05:24 UTC
Good luck!

This-is-not-Sokoban: Screenshot!

In just over an hour, including player movement. Not too bad. (Although I’ve spent like 10 minutes on this post. Gah!) I’m going to have a dinner break now, and then spend my remaining 2 hours on actual gameplay.

Work-in-progress screenshot of my game

I know, I know, it’s ugly as sin. My artistic skills are, uh, minimalist. The character at least definitely needs work.
The gameplay currently consists of moving left and right until you get bored. A Sokoban-ish clone with gravity is the planned gameplay. E.T.’s Ugly Twin here will be able to lift blocks above his head and place them down, either to make his way to the exit (by building piles / filling in holes) or to crush monsters. Because, as everyone’s favourite anti-games lawyer idiot knows, no game is complete without at least a little bit of ultra-violence

Minimalism is present in at least the following ways:

  • Colour palette (totally monochrome, baby!)
  • My artistic skills
  • Pixels (all sprites are 12×12 pixel art)
  • Squinting required (the sprites are resized up to 48×48 pixels so that they’re visible to the human eye)

There are others, but I’ll leave them up to you to guess!

Tags: dinner, screenshot

Playable!

Here’s what I have so far, in source code form. I can’t be bothered packaging it up properly right now, so you will need Python and pygame to run this:

Click to download

How to play:

  • Goal: Reach the exit
  • Left and right move
  • If you’re not holding anything, spacebar picks up crates from in front of you
  • If you are holding something, spacebar drops it in front of you
  • Don’t touch enemies
  • Enemies die if you drop a crate on them
  • Press a digit 1…9 to skip to a level.

If you die, the game will quit. If you win the game, it will also quit. If you’re running from a console it’ll tell you which was which, but otherwise you have to guess! Just my way of fighting back against the evil GUI oppressors.

If you need to restart a level (either ‘cos you got stuck or died), quit the game, restart it, and press a level skip button. I’ll code in a restart level feature later, don’t worry…

Obligatory screenshot follows. The Anonymous Game Hero (he isn’t E.T.’s Ugly Twin any more, I redrew him more simply – I mean, more minimalisticly!) is shown here holding a crate, waiting for the Not-So-Big Bad to wander over and offer itself up for a squishing.
Another work-in-progress screenshot of my game; much more progressed this time

Incidentally, and coincidentally, this game scores highly on the time-to-crate index.

Tags: playable, screenshot

Comments

19. Apr 2008 · 10:47 UTC
Hah, I love the minimalist graphics! It reminds me of pre-16 bit games.
saluk
19. Apr 2008 · 12:18 UTC
Level 7: impossible, or imPOSSible? Pretty fun game! You are practically finished.

Things on Top of Other Things

screenshot-pygame-window-1.png

Minimalist game. Few pixels. Few words.

Download.

Windows, run executable. Ignore errors. They claim fatality. They lie.

Others, need python, pygame. Run python main.py

Tags: final

Comments

Alex
21. Apr 2008 · 05:42 UTC
Try this level:
ChrisP
21. Apr 2008 · 06:49 UTC
You… you… just haxx0red my game mechanics.
Alex
21. Apr 2008 · 08:21 UTC
Here’s another one:

(If you’re stuck on my previous level try this one, it might give you a hint.)
Alex
21. Apr 2008 · 09:02 UTC
Think quick!
Dathgale
21. Apr 2008 · 22:19 UTC
I really like that custom level with the monster on top of the exit. I wish more games went outside of the box like that.

LD12

[FAILURE] Box Wars 2: Attack of the Boxes

So here’s what I have. It’s written in Flex, uses Box2D for physics, and is REALLY REALLY LAGGY. I have it open in another tab and Firefox 3 is updating the text in this edit field at about 2 fps.

The boxes are attacking! At 2 frames per second!

This is Box2DFlash’s debug rendering – I haven’t had time to implement my own – hence lack of graphics and colours and general prettiness. The grey boxes around the edge are enemies; they spawn every 2 seconds from either the left or the right. The slightly larger grey box in the middle is the player. The circles are bullets shot by the player. They don’t do damage (the boxes cannot be killed!) but they do force the enemy boxes back. Each box jumps vaguely in the direction of the player every second or so.

The idea is that the boxes are attacking and you have to push them down to prevent them from touching you. But since you can’t kill them, eventually the whole screen piles up with boxes and you inevitably die.

The boxes were supposed to have smarter AI, and intentionally build towers of themselves rather than just stupidly launching themselves towards you, but that’s obviously not going to happen in time. The other flaw in the plan is that it’s REALLY REALLY LAGGY.

It’s kinda almost fun to play around with, being a physics simulation, but there are too many problems (too laggy, needs proper rendering, too laggy, bullets need to die on impact, need limited ammo and ammo drops, too laggy, need health and dying, needs survival timer, too laggy, needs sound) and too little time to fix them – I have to go to bed now for university tomorrow, and although the deadline is 1pm local time I won’t be able to work on it tomorrow at all. Even if I did fix everything in time, I’m not convinced it’d be a fun game. So I guess I’m calling this one quits.

I’ve failed! Hope you all have better luck!

LD17

Let’s do this thing!

Greetings. I thought this was my fourth LD, but after looking back it must be my third. Apparently I can’t count. I don’t even know who I am anymore.

Assuming this is my third time, that leaves the score so far at 1-1: I finished LD11 with a half-decent entry, and bombed out on LD12 due to too much time spent trying to make my unfamiliar dev environment work (for the record, Flex can go die in a fire).

Back with a vengeance, and this time I’m planning to eschew Flash in favour of trusty old C++. Madness? Or… genius?

See, C++ has a few advantages.

  • Every library on the planet (that I care about) works with it out of the box. (Unlike D, and everything Flash.)
  • The tool support, in the form of Visual Studio, is unparalleled. Unless you count .NET, but there’s no way I’m learning C# as part of Ludum Dare. I made that mistake already with Flex.
  • I’m using it at work now – to make games, no less! w00t! – so I’m a lot more familiar with it than in previous LDs.
  • The compiler has strict error-checking. I used to hate this, but after further experience with Python I’ve seen the light. I like having my mistakes caught early!

Will probably use Irrlicht or SDL as my main platform, depending, and I have all the usual suspects for content generation in mind: GIMP, Inkscape, sfxr, Audacity, maybe Blender if I get ambitious (hate the old interface – might try the beta).

Wait, Islands? Really? Bah humbug. First priority: Take a walk and brainstorm.

Comments

hdon
24. Apr 2010 · 00:21 UTC
me too

Introducing Island Repair Man

So I dicked around with crossing the theme with Pretentious Art Game and doing something about “people as islands” and making connections between them (d’awww), but I wasn’t able to come up with mechanics which reflected the idea I was trying to get across while also sounding like fun.

So I tweaked the mechanics a bit and ended up with this concept: Island Repair Man! Your floaty island in the sky has been broken apart by an attack of Giant Flying Island Rodents, or something like that, and it’s your job to rope it back together.

So far I have a glorified molecular dynamics system / particle simulation. Now with added verlet. Woo.

islandrepairman1

The white bits are the island pieces which you’ll have to jump between and thus rope together, and the spiky red bits are Generic Bad Guys to avoid. They repulse each other with inverse-square forces so everything floats around and makes a nice dynamic playfield. Now that I’ve changed themes I should probably swap out the art; but gameplay comes first!

The roped-together islands will be constrained to stay at the same distance they were at when first roped together, so you’ll gradually put together a neat-looking structure as you hop from island to island. Hopefully that won’t make anything explode. Verlet integration is supposed to be able to take constraints in its stride, so it should be okay.

More importantly, I have no idea if this will be fun at all; I guess I’ll find out tomorrow. Or rather, later today, as it’s past midnight. How the heck did that happen. Sleepytime, pronto.

Tags: screenshot

Comments

hdon
24. Apr 2010 · 12:30 UTC
I do like inverse square. Be careful with your time stepping. If you step too far when the CPU hiccups, you’ll get all kinds of glitches!
chrisp
24. Apr 2010 · 23:33 UTC
Good tip. I’m using a lazy variable timestep and did notice some hiccuping already. I should switch over to a fixed timestep.

I am a lazy lazy laggard

It’s now time for bed, again, and all I’ve achieved since last night’s bedtime is adding a player object with the ability to jump from “island” to “island” (just pretend the white circles are islands, ‘kay?), and thus create rigid connections between the islands.

Which isn’t nothing. But it’s a lot less than I needed to get done if I wanted this to turn out like a proper game. The cause? I simply haven’t put enough time in today.

islandrepairman2

Here is a screenshot of me (the bluish streaky comety thing) jumping towards the final unconnected island, having knitted four of the islands into a nice solid triangle + one that’s just kind of hanging there. Reaching the unconnected island without hitting any of the red circles is the win condition. Or at least it will be, once I’ve added code to check for that.

It looks a little better in motion… but not a lot better.

Things I don’t have, and should:

  • Game-y elements: Win condition, lose condition, lives counter, level progression
  • Proper physics balancing. Notice how many of the circles are pressed up against the edge? That can make gameplay really annoying sometimes. I need to increase the force that pulls them back into the centre (or solve the issue in another way). But make the centre-pulling force too strong and everything bunches up, making the game impossible to play. And it needs to be able to cope with arbitrary numbers of circles, as that’s the level progression mechanic that I have in mind. Hmm, maybe I should remove the collision between circles, then it wouldn’t matter so much. Would make it look uglier though, especially if I make the graphics less abstract.
  • Graphics that don’t suck rotten eggs.
  • Sound. ANY sound.
  • A public build. Need to remember to statically link the VC++ runtime so more people can run it.

None of this is terribly complicated, but I need sleep now and when I wake up I’ll probably only have about 3 hours to the deadline. 4 at a pinch. Sigh.

The worst part is that I don’t even care that much. So unmotivated. LD was supposed to solve that problem. :-(

Comments

chrisp
25. Apr 2010 · 10:52 UTC
“Solved” my physics problem using ghost copies of the circles, but that creates a nasty performance problem. Release mode and reducing the FPS helps, but now my physics is all out of whack. I thought I was being framerate-independent, but I guess not.
chrisp
25. Apr 2010 · 11:03 UTC
Set back up to 60 FPS and performance is magically okay now. Not sure how I managed that. Oh well. Gift horse, mouth. Maybe I can pull this off tomorrow after all. It may not be pretty, but there’s a game in there somewhere. Maybe even a good one!

Holy shit you guys

Two hours left! And I’ve got all that stuff I mentioned in my last post to do still.

code faster

I have a game, sort of!

The island has broken apart into white glowing pieces in a freak storm of spiky red things! Chaos! Calamity! Climate change! Who shall save us?

Have no fear, brave citizens! ISLAND REPAIR MAN is here!

islandrepairman3

Golly gosh! Thanks, Island Repair Man!

In about 1.5 hours I have added a level counter, lives, level progression, and win/lose mechanics. Which means I kind of have a game now! Not a particularly good one, but beggars can’t be choosers.

The list from my last status update, with done stuff crossed out:

  • Game-y elements: Win condition, lose condition, lives counter, level progression
  • Physics working better (still chugs on later levels but TOO BAD SO SAD)
  • Graphics that don’t suck rotten eggs.
  • Sound. ANY sound.
  • A public build. Need to remember to statically link the VC++ runtime so more people can run it.

45 minutes left. Better push out a build before its too late! Polish is for schmucks, and people with more than 45 minutes to finish their game.

Whew!

Well, that’s over. Tried to add a title screen and almost made it, but I’m over by a few minutes so I won’t count it. Even though I fixed a bug where you pretty much always die when starting level 5, which would have been really nice to get in the upload. :<

On the plus side, I did technically finish! If I hadn’t been so lazy, it might even have gotten “properly done”.

Ah well. Congrats to everyone else who finished!

Comments

chrisp
26. Apr 2010 · 00:15 UTC
Hmm. I just read that bugfixes are allowed. And I did add the title screen before the time was up (scouts honour!)… so screw it, new build coming 😛

LD19

Someone definitely has to work the space shuttle in there somehow

I actually do have a bunch of ideas, I just don’t like any of them enough yet!

Here is some of my brainstorming, in case anyone would like some.

Plus a bunch of TV programs. Also, apparently just about every music album ever made.

Yes, all my ideas do come from Google Images and Wikipedia, why do you ask :'(

Tags: motivation

Comments

aus_mike
18. Dec 2010 · 01:55 UTC
A game about all the things called ‘discovery’

You start by turning on the vacuum cleaner, then get on the horse, ride it to the car, drive it to the space shuttle, go into space.
18. Dec 2010 · 02:09 UTC
Discovery, or Very Disco? I’ll leave it up to you to decide.
AD-Edge
19. Dec 2010 · 00:59 UTC
Check out my posts, you no longer have to cry! Im working on a space shuttle discovery game for the contest right now. Ive seen a couple of others as well.

LD20

Red/Yellow/Blue is not a useful colour model

Yeah, I know. We were LIED TO at preschool. Childhood: destroyed. :-(

My idea: You are a nurse at a hospital for solo adventurers. It’s dangerous to go alone, but they went anyway, so now they’re sick. Each one has a different illness, represented by a different colour. In true homeopathy style (hey, it is a fantasy universe), to cure an illness of a particular colour you must make a potion of that colour, by mixing primary colours together.

Since potion colours are caused by pigments (SCIENCE!), a subtractive colour scheme is called for – namely, CMY. I wanted to use Red-Yellow-Blue, but it doesn’t actually work in practice. Sadness.

Here’s what I have so far: Playable Demo (requires Unity Web Player)

 

What do you reckon - graphics award is in the bag, yeah?

Click boxes to go there. You can visit the grey box to pick up a (weirdly-spherical) flask, and then visit the cyan, yellow, and magenta boxes to fill it with colours. Colours mix together quasi-correctly (I cheated and scaled them, so that one of the CMY channels is always at 100%, to make mixed colours look more vibrant).

The other rectangle thing will be a bed, eventually.

Playable Demo (requires Unity Web Player)

To-do list:

  • Patients with semi-randomly-coloured diseases
  • Patients have a sickness bar that starts at 50% and fills up over time.
  • Using a correctly-coloured potion on a patient will decrease the sickness bar. The closer the pigment, the bigger the decrease. Completely wrong potions will INcrease sickness.
  • Patients die when sickness bar is full
  • Patients survive (disappear and +1 score) when sickness falls to zero
  • Clicking queues up movement orders. Right-clicking clears the queue.
  • Tables to put WIP flasks down on.
  • Graphics
  • Sound
  • Animations?
  • High score list?

Oh boy. Less posting more coding.

Tags: demo, progress, screenshot

LD21

Cyan Teddy Bear!

I was hoping that I’d be inspired to think of an all-new game idea based on the theme, but unfortunately I couldn’t come up with anything interesting.

So, I’m resorting to my usual LD plan, which is to make one of my existing game ideas: a top-down, tile-based, turn-based, Thief-alike with a squad.

Here’s some programmer art! Say hello, Teddy:

ART

ART

In a desperate bid to introduce something that I hadn’t already thought of, I’ve decided to make all the characters teddy bears, differentiated using texture swaps. The above is the result of an afternoon spent bending Blender to my iron will, imported into Unity with a toon shader chucked onto it for the hell of it.

The real teddy is sitting on my desk. Reference, you know.

Now I just have to: write a way of making levels that’s less tedious than piecing together Unity scenes, make some level art, add some turn-based tile movement with multiple player-controlled characters, add a GUI to select characters / end the turn, write some AI guards to detect/hunt/kill the players, make it possible to win, make one fun level, tweak game mechanics to maek gaem betar, make more fun levels, add sound effects and music, and add a title screen and menus.

Comments

chrisp
20. Aug 2011 · 06:50 UTC
Of course, there are some pretty good ideas coming out. Maybe I’m just unimaginative!