Bristleback, shoot, attack, then turn back toward enemy
Presented by xmzhang1
Ratings (show detail)
Day five screenshot.
Day two entry.
My idea of a game is to create Player vs simple AI duel. The idea is for Player to be placed on a planet. To beat the enemy he has to shoot it on his own piece of space rock with homing misslies, and avoid being shot by it. The idea is that they can hide in the shadow of their planets, avoiding hostile missles and leaning out when it's safe (they are behind everything ;) ). If I have some spare time I would propably add a Sun in between, to have another thing to hide behind and to have something to gather resources from.
As you can see I'm using some placeholder graphics now just to save some time to code the logic (there are also some blending problems that I will hopefully resolve later). I'm well aware that the game won't propably be pretty, since a prefere to spare more time on mechanics than the art. I'm planning to create some simple stylized sprites to represent the game objects. Right now there are just these vessels running on plannets (enemy is making circles), the rotating planets and homing missles that player can shoot at the enemy.
One thing that I've decided to do is to use Entity-Component-System pattern here, to create more reusable and less buggy code. The idea is that I can put different game objects together by (re)using already created components.
Tomorrow I will hopefully finish collision system and start making some real game mechanics. The biggest issue is time, I can only spend few hours after work, so I will have to cut anything that can give mi few hours more on the coding features.
Cheers and happy coding :)
Day three entry.
On day three I've been able to add few must-have feature. After collision fix, I've made the enemy shoot missles at the player too. Both player and enemy now have their HP tracked and displayed on the screen. It took me some time to create a text component, propably more than it should but it's there. Next, I'm planning to add a game-over-and-restart message, and make the game actually be restartable. Then maybe some AI, at the moment it's so simple it almost hurts. Before art rework (and adding audio) I also need to make the vessels rotate with the planet, if they are not moving by input/AI.
As a today's final note: I'm starting to think that I may actualy be able to make this work on time ;)
Day four entry.
Hello. Today I've managed to rework my code a bit and to add a game over pausing/restarting option. It would be probably better if I would do it at the beginning. And that would be it. The other ~2.5h I had I've spend on trying to generate py2exe/cx_Freeze build. I thought it would be a good idea to make a build as early as possible to avoide possible epic failure at the end of the challange. I had multiple issues, it was terrible experience but I'm happy it's done. If someone also have problems with py2exe, I can elaborate on my solutions in comments.
Anyway, it would be better to spent this time on the actual game, but at least I will not fail uploading build on the last minute :) Cheers.
Day five entry.
This was a nice evening. I've started with some mechanics improvement, like fixing vessel on the planet surface, so it rotates with it. It's quite a shame I can't do some transform parenting here, but there is no time for it. Also, I've added collider abstraction, so now planets have circle colliders. But what I'm most happy with today is that the graphics are now finished. There was not that much of it, but still... :) Tomorrow I will add some audio, then improve AI, at least that's the plan.
Few things about sprites. Those were heavily inspired on stuff from the net, not my own concepts. But they were made from scratch in Blender, and with no texturing to save some time.
Final submission sent.
I've just sent the final package containing the project and Windows build. I won't have more time to work on it today.
I'm pretty happy with the game, except the sound. Today I thought it would be nice to have a PvP in the game. Awesome thing was that adding it was just switching AI component with PlayerInput component on the second vessel. If my game state management was not total crap until then, the whole feature would take me like a half an hour. In such moments you appreciate time spent on the framework.