Skip to content

ageborn-dev/fish-adventures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ  Fish Adventure

A modern, accessible underwater survival game built with vanilla JavaScript. Navigate through various ocean depths, collect stars, and survive against increasingly dangerous sea creatures.

Fish Adventure Logo

๐ŸŒŠ Gameplay Features

  • Dynamic Stages: Progress through 5 unique environments, each with its own background, music, and challenges:
    • Calm Waters: The perfect place to start your journey.
    • Reef Waters: Watch out for more active marine life.
    • Deep Sea: High pressure and strange creatures await.
    • Storm Waters: Navigate through turbulent currents and lightning.
    • The Abyss: The ultimate challenge in the darkest depths.
  • Unique Enemies: Each creature has its own behavior:
    • ๐Ÿฆˆ Sharks: Aggressive predators that will chase you if you get too close.
    • ๐Ÿ™ Octopuses: They spray ink clouds that can obscure your vision.
    • ๐Ÿ Electric Eels: Watch out for their periodic electric shockwaves.
    • ๐Ÿ‘น Sea Monsters: Giant beasts with powerful special attacks.
  • Power-ups & Progression:
    • Collect โญ Stars to increase your score and advance to the next stage.
    • Pick up โค๏ธ Lives to stay in the game longer.
    • Unlock power-ups to help you survive the harsher depths.
  • Difficulty Settings: Choose between Easy, Normal, and Hard modes to match your skill level.

๐ŸŽฎ Controls

Desktop

  • Arrow Keys: Move the fish

  • P: Pause / Resume game

  • R: Restart (when game over)

  • 1, 2, 3: Quick difficulty selection

Mobile

  • Virtual Joystick: Drag to move the fish

  • โธ๏ธ Button: Pause game

  • โš™๏ธ Button: Settings and difficulty

โ™ฟ Accessibility

Fish Adventure is designed with accessibility in mind:

  • Screen Reader Support: ARIA labels and live regions for game status.
  • Reduced Motion: Option to disable intensive animations.
  • High Contrast: Clear UI elements and visual feedback.
  • Keyboard Navigation: Fully playable with standard keyboard controls.

๐Ÿ› ๏ธ Technical Details

Built with a modular architecture:

  • Vanilla JavaScript: No heavy frameworks, utilizing modern ES modules.
  • CSS3 Animations: Smooth underwater effects and UI transitions.
  • HTML5 Canvas/DOM: Efficient rendering of game entities.
  • Asset Pooling: Performance-optimized management of game objects.

Project Structure

โ”œโ”€โ”€ assets/             # Game assets (images, music, sounds)
โ”œโ”€โ”€ css/                # Stylesheets
โ”œโ”€โ”€ js/                 # Game logic (ES modules)
โ”‚   โ”œโ”€โ”€ main.js         # Entry point
โ”‚   โ”œโ”€โ”€ entities.js     # Player and enemy logic
โ”‚   โ”œโ”€โ”€ stages.js       # Stage and behavior configuration
โ”‚   โ””โ”€โ”€ ...
โ””โ”€โ”€ index.html          # Main entry file

๐Ÿš€ Getting Started

  1. Clone the repository:

    git clone https://github.com/ageborn-dev/fish-adventures.git
  2. Open index.html in any modern web browser.

    • Note: Since the game uses ES modules, you may need to serve it via a local web server (e.g., using VS Code Live Server or python -m http.server).

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


Developed with ๐ŸŒŠ by ageborn-dev

About

๐ŸŽฎ A high-performance, accessible 2D survival game featuring vanilla JS, modular architecture, and adaptive difficulty

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors