Defense 2160 BC by TheMonsterFromTheDeep
Hey -- I already have twenty ratings. Instead of rating this game, try rating some other game that doesn't yet have enough to be ranked. Thanks!
Defense 2150 BC is a tower-defense game with the added twist that, if an enemy destroys one of your towers, they steal the abilities from it.
Instructions
Controls: Move Camera: WASD Place / Destroy towers: Left click Scroll through towers: Scroll wheel
Towers can only be placed next to already-existing towers. You are awarded money with which to purchase towers every time you kill and enemy and at the end of each wave. There are 34 waves to beat to win; I have no idea if this is doable.
There are 5 tower types: - Shield: High health, does no damage. - Bow: Shoots piercing, low-damage projectiles. - Cannon: Shoots high-splash-damage projectiles. - Smasher: Smashes enemies that walk inside it; some art smart enough to avoid it. - Spear Trap: Damages enemies above it; as such, it only is useful against flying enemies.
These instructions are also present in an in-game help menu.
Credits
As this is a compo game, I am obviously responsible for all the game logic / art / music.
This game is built using two libraries, as a result of shoehorning one in during the competition. The two libraries in question are GLFW and SDL2.
The font used on the Help, Win, and Lose screens is Laconick-NormalA by Nick Curtis.
Versions
I'm pretty sure that the Windows version works. (I tested it by clearing out my PATH and copying DLLs until it ran successfully). If it doesn't work, please say so.
~~I should be uploading a Linux build soon.~~ (Probably not going to happen).
I probably won't upload a Mac build unless I can find a way to build for Mac on Linux / Windows.
Other
Note that this game is built using a few custom tools and libraries, including both jot, which unceremoniously shoves images into a C file, so that they are "packed" into an executable, and zgcl, which is a C library that halfheartedly implements a generic std::vector-like interface.
Ratings
| Overall | 325th | 3.405⭐ | 24🧑⚖️ |
| Fun | 277th | 3.429⭐ | 24🧑⚖️ |
| Innovation | 304th | 3.25⭐ | 23🧑⚖️ |
| Theme | 508th | 3.024⭐ | 24🧑⚖️ |
| Graphics | 245th | 3.524⭐ | 24🧑⚖️ |
| Audio | 242th | 3.19⭐ | 24🧑⚖️ |
| Humor | 406th | 2.421⭐ | 22🧑⚖️ |
| Mood | 230th | 3.289⭐ | 22🧑⚖️ |
| Given | 35🗳️ | 26🗨️ |
Edit: It works fine with software OpenGL (https://github.com/pal1000/mesa-dist-win/releases) although it crashed the first time I tried to start a new game. Also, it works fine under Wine.
Perhaps I shouldn't be using OpenGL if I don't have the means to debug it. :P But it has worked for me on my computer, my brother's computer, and my animation teacher's computer, so at least it isn't entirely broken.
But maybe I am using something that is too high level.
Creating an array of simple arrow shooters seems to be way too effective to bother with the other blocks though, am I missing something?
The audio and art were really nice and helped in creating a nice mood. Good work :)
Right now the main problem is that I don't need to use all tower types I can just use mainly bow towers and cannon towers and I will win the game. Also, although it has a bit of a learning curve, once you get it you can put two columns of cannons and nothing can get past the very first couple of steps. And the difficulty doesn't seem to increase I don't know why. I have actually been writing this now for a couple of minutes and the game is running in the background and I'm still winning :D
But regardless of all that, I would like to commend the great work you did in this game which I really enjoyed playing. Actually, one of the best five games I played in this LD. Congratulations :)
You even implemented a tutorial, nice! Just a bit shorter would be better I think.
The gameplay ended up being too easy, but I know it can be tough to fit in the time to balance difficulty during the compo.
In terms of gameplay though, it is tough to equilibrate a tower defense in such a short time. I have built a wall of arrows, and simply nothing managed to touch me, so I haven't witnessed the creatures stealing my abilities. But the idea is very interresting though.
A few other potential points of improvement:
- It is possible to place towers underneath the money HUD in the top right and then it's unclear what you have there.
- The game could use a bit of balancing, but from the comments above it's obvious that it's understood that balance is really hard to do during LD timeframe :)
- Some form of Wave Counter would be nice to know how far I've gotten in the game :)
A couple of suggestions. First, the HUD probably doesn't need to be always showing, and it actually covers part of the usable game area, so there should be a way to hide it (or rather, keep it auto-hidden with a way to show it). Also, perhaps spawn enemies not too far offscreen, or keep them invincible until they reach the edge of the screen? That way you can't overpower them before they even show up to the player. Oh, and making the towers and enemies smaller would allow the screen to fit more stuff, and you could see enemies for longer, which I think would add to the game.
On a side note, congrats on using C. It's a great language but a handful for making games, especially on a limited timeframe! Though I didn't like the choice for a font, it was hard to read for me.
Oh, and the art for the towers was really cool! I like how they are all in-context with the Egyptian theme, but also nicely animated to perform their attack. Awesome work!
Thanks for all the great feedback. I agree with respect to the UI -- did not think about it at all during the jam.
As it turns out, C is not really all that hard to use for a game jam. I put together a component-based game library, and writing the components themselves in C really is not very difficult, because C supports most of the features you need (i.e. basic imperative programming). On top of that, I also have a generic list library that I use, and that is enough to basically accomplish everything I need to do.
And yes, the animations are probably my favorite part of the game. I'm still far from a great pixel artist, but I am trying to improve, and doing all these animations was super fun and super rewarding.
At first I kept losing but once I figured out the dominant strategy of using arrows and cannons, I soon had a screen full of cannons and lots of money which seems pretty much invincible so I didn't bother to wait for all the 34 waves to pass.
It would be interesting to see how such mechanics of power escalation can be tweaked and maintained for longer term play, instead of spiraling toward either certain defeat or certain victory like the current state of the game.
Nice work! ^^