Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hwstradling/berzerk
Top-down 2d shooter game based loosely on Berzerk(1980)
https://github.com/hwstradling/berzerk
game-development-patterns unity unity2d
Last synced: 29 days ago
JSON representation
Top-down 2d shooter game based loosely on Berzerk(1980)
- Host: GitHub
- URL: https://github.com/hwstradling/berzerk
- Owner: HWStradling
- Created: 2022-03-03T09:11:46.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-12-07T15:46:36.000Z (about 1 month ago)
- Last Synced: 2024-12-07T16:28:33.020Z (about 1 month ago)
- Topics: game-development-patterns, unity, unity2d
- Language: C#
- Homepage:
- Size: 6 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Berzerk (Project Revival - Work in Progress)
This is a **top-down shooter** game made with unity engine.
It is loosely based upon the arcade game 'Berzerk' developed in 1980 by Alan McNeil.
The project was originally a university coursework i developed from scratch to demonstrate a number of different game development patterns,
however I think, given some tweaks and polishing, it could be an enjoyable little game.## Project Status:
I've revived this project after shelving it for a while., I have fixed some simple bugs, found more, and have planned some new features and tweaks.
## Current Features:
### Player:
- Partial Berzerk style coupled movement and aiming direction (aiming allowed in faced direction).
- Player can switch between multiple weapons.
- Facilitates movement inputs and sprinting with corresponding directional walking and running animations.
- Berzerk style slow projectile but using weapons, each weapon has different firing characteristics.
- Delayed healing functionality with animations and a three life respawn mechanic. I used the observer pattern with unity events for decoupling.### Enemy:
- Basic Enemy AI utilising randomised patrol patterns and last known location player detection.
- Enemy combat utilises Berzerk style slow projectiles.
- Multiple enemy types with modifications to speed, attack delay, and max health.### Pickup System:
- Multiple pickups in the form of equipable weapons.
- Pickups stored in a player inventory.### Achievements Queue:
- Singleton based unity event queue for decoupling the triggering event from displaying the notification.### Save System:
- Serializes and stores the players inventory, max level reached, and unlocked achievements.### UI:
- Basic UI with a health bar, save and exit butttons, an animated text window to display achievements, icons to display the unlocked and currently equipt weapons.### Menu System:
- Basic menu system including an options page to change the music volume, switch profiles, and to display achievements and unlocked levels.## Planned Fixes/Improvements:
- Fix buggy options menu and modify animations for better UX.
- Couple chosen volume with player profile/saves.
- Allow custom profile creation and rework profile UI dropdown element population on options page.
- Modify the achivements window to display input validation and other notifications.
- Decouple movement and shooting (while Berzerk-like, it gives a clunky gameplay experience).
- Rework gun animations to function with decoupled movement&shooting.
- Generally improve game feel, faster player/enemy movement speed, tweak projectile speed, tweak sprinting speed, modify strafing logic.