An open API service indexing awesome lists of open source software.

https://github.com/jerrywingsky/-necropuzzles---a-turn-based-8-bit-puzzle-stealth-survival-game

As part of my Group Project, our team developed a Java-based 8-bit pixel art game titled "NecroPuzzles", which challenges players to escape a zombie-infested building using puzzle & stealth mechanics. This game promotes critical thinking & decision-making as players must navigate traps, avoid enemies, and solve level-based puzzles.
https://github.com/jerrywingsky/-necropuzzles---a-turn-based-8-bit-puzzle-stealth-survival-game

advanced-programming java javafx

Last synced: about 2 months ago
JSON representation

As part of my Group Project, our team developed a Java-based 8-bit pixel art game titled "NecroPuzzles", which challenges players to escape a zombie-infested building using puzzle & stealth mechanics. This game promotes critical thinking & decision-making as players must navigate traps, avoid enemies, and solve level-based puzzles.

Awesome Lists containing this project

README

        

# "NecroPuzzles" Game ๐ŸŽฎ

๐Ÿ“„ Licensed under CC BY-NC 4.0 โ€” For educational & non-commercial use only.

## Overview โœจ

**NecroPuzzles**, a retro-styled 8-bit stealth puzzle game where survival is your only mission. Navigate through a deadly facility swarming with zombies, dodge traps, and outsmart the undead to escape. With four levels of increasing difficulty, dynamic pixel art, and immersive sound effects, **NecroPuzzles** delivers a thrilling mix of strategy & suspense. Whether you're unlocking doors, avoiding spikes, or planning your next stealthy move, every step counts. Victory awaitsโ€”but only for the clever & the strongest. Good luck, and may the best player win.

## "NecroPuzzles" Gameplay Mechanics ๐ŸงŸ
**1. 1๏ธโƒฃ Start Up**

- The game starts at a **Main Menu** screen.
- It contains the **New Game** button, which is where users will play the game from the start.
- The **Level Selection** button, which is where users will select any levels from 1-4.
- The **Quit** button, which will exit the system, ending the application.


Image


Figure 1: Main Menu Screen

**2. ๐ŸŽš๏ธ Level Selection**

- Player can choose any level to start from, it can be level 1 or level 4. Each with increasing difficulty & unique map designs.


Image


Figure 2: Game Level 1


Image


Figure 3: Game Level 2


Image


Figure 4: Game Level 3


Image


Figure 5: Game Level 4

**3. ๐Ÿ“ˆ Difficulty**
- Each level is harder than the last (zombie placement, traps, etc).
- Players can pick any level from the **Level Selection** menu.

**4. โธ๏ธ Pause**
- Pressing `ESC` opens a pause menu with options: **Resume**, **Restart**, or **Back to Menu**.





Figure 6: Pause Screen

**5. ๐Ÿ Win**
- Escape through the door while avoiding zombies = Victory Screen.
- Options to **Next Level** or **Quit** are shown.





Figure 7: Win Screen

- After beating the last level, a special **Thank You Screen** is shown.





Figure 8: Thank You Screen

**6. โŒ Lose**
- Touching or being detected by zombies = Death Screen.
- Options to **Restart** or **Quit** are shown.





Figure 9: Death/Lose Screen

**7. ๐ŸŽจ Retro Pixel Art**
- Custom 8-bit art for characters, environments, and menus to give nostalgic visuals.

**8. ๐Ÿ”Š Sound Effects**
- Dynamic background music & sound effects enhance the experience.

## How to Play ๐ŸŽฎ
- Use the **A**, **W**, **S**, and **D** keys to move your character.
- Avoid zombies & traps like spikes to go to the next level.
- Press buttons to deactivate traps.
- Reach the exit door to win the level.
- Press `ESC` to pause the game.
- Failing to avoid zombies = Game Over.

## Coding Information ๐Ÿ› 
Frontend:
- JavaFX (`Stage`, `Scene`, `JButton`, `Label`, `Button`, `EventHandler`, `MediaPlayer`, etc).
- Custom 8-bit pixel art for UI & entities (`Player`, `Zombies`, `Buttons`, etc).

Backend:
- Java (`if-else`, `switch`, `ArrayList`, `try-catch`, etc).
- Object Oriented Programming (OOP) Concepts (`Classes`, `Inheritance`, etc).
- Entity Management using `gamePanel`, `Level`, and `Entity` class structure.
- Handling all the data & levels using `Array`.

## Contributors ๐Ÿ‘ฅ
1. Jerry Wingsky ([@jrywsky](https://linktr.ee/JerryWingsky))
- Menu & Level Selection Codes.
- Victory & Death Screen & Codes.
- Debugging the Code.
- Proofreading All Documents & Codes.

2. Kelvin ([Kelvin](https://github.com/posturecheck))
- Pause Screen.
- Debugging the Code.
- Proofreading All Codes.

3. Ricky Tanuarta ([Ricky](https://github.com/mrtanuarta))
- Zombie Codes.
- Button & Spike Codes.
- Level Loader Codes.
- UI Screen Integration.
- Major Debugging in UI Screens & Entities.
- Game Sound Implementation.

4. Eins Herbert Takawijaya Tee ([Eins](https://github.com/Estody))
- Map & Level Designer.
- Asset Artist
- Player, Tile, Moving, and Hitbox Logic.