Rifter
This is my version of 2D Shooter project.
I added many gameplay related features including:
- Alternative fire that goes right through enemies and some elements of environment and lets you teleport to its position. Projectile has fixed travel distance and deals periodic damage to every enemy it touches.
- Teleporting when projectile is not on screen was not convenient so I added a stylized minimap, that looks like a submarine radar. For stylistic purposes positions of the enemies on the minimap are only updated once a second (when they are being detected by scanner).
- I added a few new enemies with interesting behavior:
- Small ships called "boids" are always chasing the player, they gather in groups while keeping the distance from each other and can even avoid some obstacles like asteroids or planets. When creating them, I used the boids algorithm, which simulates the flocking behaviour of birds.
- "Smart shooters" are aggressive ships that will chase the player and periodically shoot in his direction. If they can't find a simple way to get to the player they will teleport to some point close to him. They are vulnerable while teleporting animation plays, which lets player bait the teleport and then deal high damage to them.
- "Planet shooters" are moving in the same direction around the planet and shooting up periodically. If the player is in the "line of sight" of planet shooter its fire rate greatly increases.
- Finally there are "summoners". This large ships stay in one place and periodically summon waves of boids around them. Summoner will change its appearance slightly if it is about to summon.
- All enemies have unique on hit and death effects.
- I also added different environment elements like space garbage, through which only a teleport projectile and boids can pass, or lasers, which will deal damage to player or enemy if they touch them.
This game has 3 levels first of which acts as a tutorial. If you find some levels to be too hard, you can make your ship invulnerable by pressing "q" (another press will turn invulnerability off).
Although Rifter is not a finished product, I still hope you enjoy playing this game, at least half as much as i enjoyed making it.
Credits:
Created by Andrey Igo.
Here I would like to list some resources and software I used in case anyone is interested:
- I used Aseprite for all the enemy and enviroment sprites I added. It's a simple but powerfull pixel-art tool that's really easy to pick up. (keep in mind that it's not free though)
- I am sure there are a lot of tutorials on how to make custom minimap in Unity, I followed this one https://blog.theknightsofunity.com/implementing-minimap-unity/. It's really simple and doesn't involve any coding at all.
- Boids alghorithm is also a popular topic and there are a lot of materials on the Internet about it. Though if you decide to try it be aware that implementing it into your game takes some coding and experimentation, before boids start to move roughly like you want them to.
Leave a comment
Log in with itch.io to leave a comment.