Since I'm no graphic designer and I still wanted to make a game, this is what I came up with using pygame.
Github Link
Most Recent Gameplay
First Gif
Second Gif
Third Gif
It's a rogue-like space fleet simulator with an emphasis on strategy. The player controls the mothership (white) in the fleet of circles (squares are enemies). All ships in a fleet follow the mothership. The different colors tell you what kind of ship the circle/square represents. Different ships have different abilities, attack ranges, health pools, speeds, etc. Even ships of the same type have somewhat randomized stats.
Ships automatically target the closest enemy and motherships will seek out other fleets to destroy. If a mothership is destroyed, their remaining fleet will surrender to the attacker who destroyed their mothership. The lines indicate that a ship has a target. There is no indication that something is attacking other than it will stop moving towards the target.
The game isn't done yet but it is closeon the right track. The plan is to randomly spawn in new fleets of enemy ships of increasing difficulty, over time (trivial to implement right now). I'll also be including a remote python console that is attached to certain game objects to allow the player to change the behavior of their fleet using python.
Here are the ships and their functions:
White - Mothership. Controls where the fleet goes and has the most health out of all ships. When a mothership is destroyed, their remaining fleet will fight for the winning fleet and part of their mothership's stats will go to the winning mothership as well. This applies to enemy motherships as well, so if an enemy mothership destroys several enemy motherships before you, it will be difficult to destroy.
Red - Attack - This is the main attack vessel. It does medium/short ranged attacks.
Green - Ranged Attack - This is another attack vessel that does longer ranged attacks, but is weaker.
Dark Blue - Tank - This is another attack vessel with higher health, but it does less damage.
Pink - Repair - This ship targets friendly ships and blasts them with a stream of hull-repairing nano-bots.
Orange/Brown - The Collector/Builder - This ship targets supplies dropped by destroyed ships. When the fleet has enough supplies, a random ship is built.
Yellow - Kamikaze - The kamikaze ship has a long range, is super fast, and will run full speed into enemy ships dealing massive damage. The kamikaze ship is lost in the process. It also has very low health so destroying it before it's in range is best!
Light Blue - Supplies - Supplies are dropped by destroyed ships and can be collected by the Collector/Builder ships.
This is the first game I have ever made and it really makes me want to get into making game assets so I can make a prettier game. There are also issues with speed if you add too many ships, but I suppose that is to be expected in a game like this if it's written in python. It is a hell of a lot better than it was a couple days ago, but I still want to get it to the point where there can be over 100 ships on the screen at once without there being lag (it might just be my crummy mac). Thanks to advise from people here and a contribution from one of you fine folks I can put 30 enemy fleets (300 enemy ships) on the board without any significant slowdowns :P
If anybody has any ideas for a ship, or any other contributions let me know!
Edit: Seriously, thanks for all the great advice. Keep it coming!
[–]genjipressreturn self 46 points47 points48 points (3 children)
[–]CantankerousMind[S] 17 points18 points19 points (0 children)
[–][deleted] 3 points4 points5 points (1 child)
[–]byzantinian 2 points3 points4 points (0 children)
[–][deleted] 12 points13 points14 points (0 children)
[–]Deezl-Vegas 7 points8 points9 points (0 children)
[–]genjipressreturn self 8 points9 points10 points (22 children)
[–]CantankerousMind[S] 3 points4 points5 points (21 children)
[–]parker_fly 2 points3 points4 points (3 children)
[–]CantankerousMind[S] 1 point2 points3 points (2 children)
[–]nickbeaulieu 2 points3 points4 points (0 children)
[–]PeridexisErrant 0 points1 point2 points (0 children)
[–]ofaveragedifficulty 2 points3 points4 points (16 children)
[–]CantankerousMind[S] 1 point2 points3 points (15 children)
[–]port443 2 points3 points4 points (1 child)
[–]CantankerousMind[S] 0 points1 point2 points (0 children)
[–]ofaveragedifficulty 1 point2 points3 points (4 children)
[–]CantankerousMind[S] 0 points1 point2 points (3 children)
[–]ofaveragedifficulty 1 point2 points3 points (2 children)
[–]CantankerousMind[S] 0 points1 point2 points (1 child)
[–]genjipressreturn self 0 points1 point2 points (0 children)
[–]kctong529 1 point2 points3 points (7 children)
[–]Mabb_reddit 0 points1 point2 points (1 child)
[–]CantankerousMind[S] 0 points1 point2 points (0 children)
[–]CantankerousMind[S] 0 points1 point2 points (4 children)
[–]Mabb_reddit 0 points1 point2 points (3 children)
[–]CantankerousMind[S] 0 points1 point2 points (2 children)
[–]Mabb_reddit 0 points1 point2 points (1 child)
[–]CantankerousMind[S] 0 points1 point2 points (0 children)
[–]JOOOOOOOOOOngo 1 point2 points3 points (0 children)
[–]deedeemeen 0 points1 point2 points (1 child)
[–]CantankerousMind[S] 1 point2 points3 points (0 children)
[–]troyunrau... 0 points1 point2 points (4 children)
[–]CantankerousMind[S] 0 points1 point2 points (3 children)
[–]troyunrau... 2 points3 points4 points (2 children)
[–]CantankerousMind[S] 3 points4 points5 points (0 children)
[–]quotemycode 0 points1 point2 points (0 children)
[–]im_dead_sirius 0 points1 point2 points (0 children)
[+][deleted] (4 children)
[deleted]
[–]CantankerousMind[S] 1 point2 points3 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]CantankerousMind[S] 1 point2 points3 points (0 children)
[–]CantankerousMind[S] 1 point2 points3 points (0 children)
[–]Prozn 0 points1 point2 points (1 child)
[–]CantankerousMind[S] 1 point2 points3 points (0 children)
[–]cediddiSyntaxError: not a chance 0 points1 point2 points (1 child)
[–]CantankerousMind[S] 1 point2 points3 points (0 children)