I’ve added the coins and a basic scoring system yesterday. It was a really quick job which took maybe half an hour to do, and instantly it made the game a bit more fun. For now, the coins are pretty small, and so their hitbox is small as well. This results in coins being collected only when the player’s hitbox (which is even smaller, just a few pixels at the character’s feet) collides with them, so you can jump on a tile with a coin and then jump back without collecting the coin lying on the tile.
Changing this behavior is not a problem at all, and I kind of like it, as it presents a choice (however insignificant it might be) - do I grab all the coins and risk running into a lava tile? Or do I play it safe and wait for a coin in a better place? Still, it’s a thing that needs to be tested for sure and I’ll have to get some people to play it.
I’m learning to make better graphics as well. I have this nice small program called PyxelEdit, which has it’s small quirks here and there (and rightly so, being an early version), like the save dialog not closing automatically after saving the file - but it’s very compact and pretty easy to use. I like it better than using Photoshop to do stuff, which for a game that’s at its core only 240 x 160 pixels is just like trying to hit a mosquito with an orbital strike.
Anyway, I’ve started with making some better sidewalk tiles. I added some perspective to them and I made three different tiles to break up the monotony. Suddenly, this is already looking better than the prototype. This required adding some more code though - first to spawn the tiles with a little offset, and second, a little more complicated, to force ImpactJS collision system to use a prepared polygon for mouse checking rather than the tile’s bounding box.
While I was at it, I’ve changed the sidewalk borders as well, since they were pretty ugly. I made some lamp posts as well to be in the background and worked on the interface a bit. Nothing too fancy, but not very ugly either. Still requires more work, which I will probably do today.
I still have to finish up the graphics. This includes making all the player animations, which I have never done before.
I’ve also had a brilliant idea that will make me do even more work for a small personal project. Sooo… since the game’s pretty much the same each time you play it, how about a set of different levels? But… Making new levels is quite a lot of work, so I should just add some random weather effects (these are pretty easy to make) and grab the player’s current time of day to set an appropriate tileset for at least day and night. That should make the graphics (if done well) more interesting. I thought about grabbing the date as well and doing seasonal tilesets, but a) it’s even more work and b) it’s May and I don’t think many people would play this game in a few months, so nobody would ever see it anyway. So yeah, rain and night should be enough.