It's so nice getting comments praising your game, especially when it's your first time in Ludum Dare. Thank you to everyone praising me, and especially to those giving me advice as well. This comment in particular made my day:
__Hey don’t be so hard on yourself, this is a pretty good base for a game! I actually liked the graphics, and you had some interesting ideas for enemy types. There wasn’t a connection to the theme, but that’s only one category in the competition. Anyways, it’s good to identify the challenges you had and what kept you from achieving your goal. Next time, you can look over that list and try to make it a little bit shorter.
In my experience, the best way to get a game done in 48 hours is to pick a solid design as quickly as possible. I always spend the first few hours drawing detailed sketches of how I want the final product to look, and try to get it as complete as possible before I write a single line of code or open GIMP. Even if it feels like you’re spending too much time coming up with an idea, you’ll likely waste more time later by not having one. Once you have sketches/concept art/etc, spending the remaining hours actual building the game becomes a lot easier. I also create an “asset manifest”, which is a concrete list of every sprite/sound effect/features I predict I’ll need for the final game. With more experience, you’ll gain a stronger sense of what you can/can’t realistically complete within the time limit.__
Also, and I know I seem bad for advertising my game after that, but please check out my game at https://ldjam.com/events/ludum-dare/40/9-lives. Again, thanks to everyone for their support.