cBit

LD28

It’s Jam Time!

I’ve been following the ludum dare events for the past two years and have finally decided to participate! I’ll be doing the three day jam since I’m too lazy to put in full effort for two days.

I’ll be programming in C using GLFW to handle all of the cross-platform backend, and a mixture of coffee and unhealthy food for the rest. I like this theme and I have a few initial ideas, but nothing concrete yet. I’ve only made one game before (an asteroids clone), so this is going to be a nice challenge. I’ll be posting updates here and on my dev log, and I will also be putting the code up in a git repo when I start.

 

Good luck everyone!

Idea!

After an hour or so of messing around and setting stuff up, I’ve finally come up with an idea!

My game will be based around escorting one thing to one point in one minute with only one life, one weapon, and one type of enemy (also with only one weapon). I’m thinking that a bullet hell styled game might be a good choice, but I’m not really sure. Any paths you can take are going to be procedurally generated, mainly because I can’t do level design at all, but also because procedural generation is awesome.

Now to start programming!

Progress Update

Completed:

  • Decided on the art style – simple and geometric
  • Done the core graphics and input handling
  • Forgot my tea (brb)
  • Commited and pushed to my git repo
  • Planned out what the enemies and landscape will be like

To-do:

  • Fix the graphics and input handling (they’re a complete mess)
  • Work out how to handle multiple enemies at once
  • Projectiles, collisions, and other physicsy stuff
  • Level generation
  • Fix the bad code (all of it)

Hopefully I’ll be able to fix the terrible code before the evening so I can work on handling all of the enemies and the physics too. I know that actually giving the enemies decent AI is going to take a while, so until everything else is done I’ll just make them move slowly along the gridlines towards the player.

Here’s a screenshot that shows what I’ve done so far:

LD28_1

Progress Report #2

Finished:

  • Building generation and rendering
  • Depth buffer precision issue fixed (moved things further apart)
  • Basic structure for enemy/projectile/buildings
  • Basic rendering for enemies and projectiles

To-do:

  • Collision detection
  • Implement enemies and projectile mechanics
  • Make an enemy AI
  • Fix the shoddy code I use to render the pointer
  • Change around the building gen parameters
  • Add outlines to buildings
  • Add objectives
  • Add ability to see level’s seed
  • Add more obstacles than just big blocks

I’m surprised at how much I got done in 5 hours. I’m thinking that if I can get the collision detection and enemy AI done tonight, then I can implement an (one) objective system tomorrow morning, then use the rest of the day to polish up my code and maybe submit it to the 48 hour Ludum Dare competition. Yay!

Progress can be seen here again

Here is a new screenie:

LD28_2

 

 

Also, watching notch’s livestream is therapeutic…

Progress Update #4

So after a long morning (without caffeine), I’ve somehow managed to fix most of the gameplay elements.

Fixed:

  • AI
  • Collision detection for everything
  • Enemy spawn mechanics
  • Shooting mechanics

Broken:

  • Player rendering

To-do:

  • Fix the terrible rendering code for the cursor
  • Multiplatforming
  • Complete the objective system
  • Add some more variation to the level generation

 

I’m quite happy with what I got done between the last progress update and now. I still need to do a lot, but the majority should be done by tonight assuming that nothing pops up (something will).

As always, update history and progress screenshot:

LD28_4

The red dots are enemies that kill you if you touch them. They continuously spawn around the player and move along the gridlines each in a single direction. They die if you shoot them (the white dots are the projectiles), and they despawn once they get more than 32 (manhattan) blocks away from the player. The objective is a big green square that you have to get onto, and once you do it starts a new round with a new level and faster enemies. I can’t wait until this is an actual, playable game.

I’m also really loving what everybody else has done. Everyone seems to be putting in a lot of work, and it shows in their great looking games/art.

Progress Update #5

Ok, the game looks 90% done right now. All of the other entries look amazing and I can’t wait for them to be finished. Here’s an update on what I’ve fixed broken:

Fixed:

  • Terrible horrible mouse input, rendering, and mechanics
  • Further used the YOGO theme for the controls
  • Some of the collision physics
  • A part of the level generation
  • Instructions

Broke:

  • Some of the collision physics
  • A little bit of the mouse input

To-do:

  • Multiplatformization (is that a word?)
  • Score
  • Countdown from one minute
  • Make the enemy generation better
  • Make the enemies shoot
  • Maybe add one powerup?

 

Github, screenshot:

LD28_5

 

I’m fairly happy with that! :)

Progress Update #6

I’m pretty happy with what I’ve made over these past two days. It’s something that, although missing a lot, is actually a mostly finished game. And in two days too! I’ve never been motivated or commited enough to see something like this to its end before, so the feeling I’m getting from this is amazing. This community is great and the jam has been a blast, so I’ll definitely be participating next time!

What is left to do:

  • Cross-platforming
  • Multiplayer would be really nice and probably possible too, but it makes quite a bit of work to do
  • Fix miscellaneous bugs (collision physics…)
  • UI
  • Powerups? 3 Dimensions? Something to make the gameplay more fun

 

Finally, here is the history of the code (as always), and here is the final screenshot:

LD28_6