Week of Awesome III, Part 7: Post-mortem

Published August 19, 2015
Advertisement
This is my final entry about the week of awesome where I look back on the game I created and comment on how I think things went.

I'm quite happy with the speed of the development overall, though there were some hiccups at the start of the competition. At the start of day two I found out that code that is responsible for rendering the meshes sometimes doesn't render them correctly. It took quite a while of fiddling before I found out that the error was with the way I stored the information to render. I used the mesh objects as a dictionary key, which might look quite harmless, except that this means that behind the scenes the pointers of the objects are used which explains why iterating over the dictionary had different results every time.

Another problem factor was Box2D. I don't know if it's the Python port (The SWIG version not the pure Python version) or if the last version of Box2D itself is this buggy but I came across quite a lot of problems. Changing the friction of the rigid bodies didn't seem to be possible, so I ended up multiplying the velocity of each of them by 0.9 each update. Also contact filtering didn't respond to anything, so if the protagonist tried to carry a bone pile he would collide with the bone pile and be pushed away indefinitely. I ended up placing the rigid body of the bone pile off screen when it's carried to fix this.

I also underestimated the difficulty in using sounds but I already wrote about that in part 5.

Fortunately, there was quite a lot that went well. I'm quite happy how easy it is to tweak the levels, it's because the level format is kept really simple and because I implemented a reload button. The reload button is something I usually implement for games with levels. It really speeds up the development of the levels since you can just tweak a value, save the level file and press reload.

The overall atmosphere is also something I think works well. I'm not sure if the colors all work well together and the textures are a little bit lazy (Hey I'm not an artist!) but the fading in and out and the point lights look quite nice. Also the puzzles should be quite fun to solve. So far I've only heard positive things about them.

Lastly I want to talk about some gameplay features that didn't make it. When I was thinking about what kind of puzzles would be possible, back in the first day, I had the idea of being able to kick bone piles. This would then be used to shoot bone piles through gaps where the protagonist wouldn't fit through. Another feature that didn't make it was some kind of mobile threat. I first thought of creating a ghost that would follow a certain looped path but later decided that receding a springing up spikes could also be used to the same effect. This isn't meant to create puzzles involving timed jumps but rather to demonstrate the ability of simply pushing bone piles and how that could be used to solve puzzles.

Lastly I want to reveal the locations of the secret areas in the game. In spoiler tags of course. :)
[spoiler]In the tutorial level, above the hollow tree to the next level.[/spoiler]
[spoiler]In the non-tutorial level, to the left of the large pit of spikes.[/spoiler]
2 likes 1 comments

Comments

ferrous

Those box2d problems are strange, I did not encounter them back when I last used the javascript version, which was admittedly a few years ago.

August 21, 2015 09:42 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement