Welcome to our 2D game, a classic arcade-style game developed purely in JavaScript without the need for any external libraries. This game is a testament to the capabilities of vanilla JavaScript in creating engaging and interactive web-based games.
To start playing the game:
- Ensure you have Node.js installed on your computer.
- Clone or download this repository to your local machine.
- Navigate to the game's directory and run node server.js.
- Open your web browser and go to the URL and port indicated (usually http://localhost:3000).
The primary goal of the game is to score over 100 points. Points are earned by eliminating enemies that appear on the screen using the strike ability. Sharpen your reflexes and strategy to beat the high score!
- Up Arrow: Jump
- Down Arrow: Crouch
- Right Arrow: Move Right
- Left Arrow: Move Left
- ENTER: Strike Attack
This game serves a dual purpose:
a) Testing the game thoroughly using various automated testing methods (unit tests, integration tests, end-to-end tests, etc.). b) Identifying and reporting any bugs found in the game.
The evaluation for participating in the development and testing of this game will be as follows:
- Creating a Manual Test Plan: 1 point.
- Automated Testing for Specific Features: Testing features such as movement, scoring, collision, and - game end automatically will earn 1 point for each feature successfully automated.
- Different Types of Automated Tests: 1 point for each type of automated test (unit, integration, end-to-end, etc.) that is functional.
- Best Coverage for Each Feature: 1 point for achieving the best test coverage for each feature (Scoring, Movement, End Game, Collision System).
- First to Correctly Report a Bug: 1 point for being the first to correctly report a bug.
- Code Refactoring for Readability and Testability: 1 point for refactoring the code to enhance readability and testability.
- Continuous Integration/Continuous Deployment (CI/CD): 1 point for successfully implementing CI/CD in the project.
- Adding an Improvement/New Feature: 1 point for each improvement or new feature added to the game.
At the end of the allocated time, all projects will be reviewed, points will be summed up, and a winner will be announced.
Report bugs on GitHub as an issue. Quality reports will be highly valued. Here is an example of how to score:
- Found and reported a bug in the collision system first: 1 point.
- Achieved the highest test coverage for the Scoring feature: 1 extra point.
First Place: Trophy + Bottle of Spanish Wine Second Place: Medal + Bottle of Cazalla
Happy gaming and bug hunting!