This project was completed by:
-
Mitchell Neilson (2585497)
-
Anand Patel (2561034)
-
Luke Renton (2540440)
-
Martin Shilenge (2557606)
For proof of Scrum Methodology as well as Additional Artifacts please check the following link:
Or directly
https://carnation-surf-f04.notion.site/Submission-Links-b49539a8257741539160af9422e20d0f?pvs=4
For documentation on downloading and running the application locally, please read further below.
-
1.1 Description
-
2.3 Project Setup
2.6 Versions
CryptidsGame is a digital adaptation of the popular board game, Cryptids. This online version allows players to experience the thrill of hunting for elusive creatures from the comfort of their own homes. Engage in strategic deduction and exploration with friends, as you each strive to be the first to uncover the hidden cryptid's location. Whether you're a seasoned player or new to the game, CryptidsGame offers a captivating and interactive gameplay experience.
In CryptidsGame, each player takes on the role of a cryptozoologist, racing to locate a mysterious creature known as the cryptid. The game revolves around collecting and analyzing clues to narrow down the possible locations of the cryptid. Players use logic and deduction to interpret these clues and make strategic moves on the map. The first player to correctly identify the cryptid's location wins the game.
- Explore: Move your token to different locations on the map to gather clues.
- Deduce: Use the clues you've collected to rule out impossible locations.
- Challenge: If you think you know where the cryptid is hiding, issue a challenge and see if you're correct!
For more information you can check out our tutorial after logging in or creating an account at
https://cryptidsgame-app.azurewebsites.net/
- Comments should be clear.
- Each file should contain a multi-line comment at the beginning of the file indicating the type of file (component, service, model, etc.).
- Follow the following comment outline:
// -- ToDo: ____ | Outline something that still needs to be completed in the file code |
---|---|
/* Function …. */ | Multi-line comment above function definitions to outline what the function does. Should like similar to multi-line comment @ beginning of file |
// -- xyz | 1-liner comment to outline a patch of code below it |
- The code should be structured in a nested folder-file system. Files will be in camel-case naming convention.
The application will have the following folders:
-
Components
- Contains React component .js files
-
Styles
- Contains .css files for each component
-
Services
- Contains .js files that specifically access APIs or produce functional code that does not interfere with a component directly
-
Models
- Contains .js files that are data models for required objects
-
Pages
- React component .js files that are specifically pages
-
Kebab case when naming
Format:
<main-idea>/<description-of-idea>
examples:
bug/fixing-login-failed feature/adding-admin-capabilities page/tutorial
We have added a bash file to automate this process, but will keep the documentation of doing it manually here for future reference. For easier project setup you can use the bash script as follows:
1. Clone the repository from GitHub
git clone https://github.com/LukeRenton/CryptidsGame
cd CryptidsGame/
chmod +x setup.sh
./setup.sh
There you have it! Now if you need to pull any changes you can just run the
setup.sh
script (in the root directory.../CryptidsGame/
) and it will do everything for you!
Alternatively you can do it manually:
1. Clone the repository from GitHub
git clone https://github.com/LukeRenton/CryptidsGame
cd CryptidsGame/
cd client/
npm install
cd server/
npm install express
NOTE: We assume you are in the root directory
.../CryptidsGame/
NOTE: You also have to run this each time you make a change and want to see the change reflect locally
We have added a bash file to automate this process, but will keep the documentation of doing it manually here for future reference. For easier project setup you can use the bash script as follows:
chmod +x test.sh
./test.sh
Open your browser on http://localhost:5000/
and there it is!
Alternatively you can do it manually:
cd client/
npm run build
# (ensure you return to the root directory for step 2)
cd ..
npm start
Open your browser on http://localhost:5000/
and there it is!
NOTE: We assume you are in the root directory
.../CryptidsGame/
We have added a bash file to automate this process, but will keep the documentation of doing it manually here for future reference. For easier project setup you can use the bash script as follows:
chmod +x deploy.sh
./deploy.sh
NOTE: During this process you will be prompted to enter your commit message, once you have written your commit message, press enter and all your work is done
- Go to GitHub Repository
- Navigate to your selected branch
- Select "Make a pull request"
- Ask someone to review your pull request and confirm it
- Merge the pull request
- Check out your changes after it has deployed!
The website is at cryptidsgame-app.azurewebsites.net
Alternatively you can do it manually:
cd client/
npm run build
# (ensure you return to the root directory for step 2)
cd ..
git add . && git commit -m "your commit message" && git push
- Go to GitHub Repository
- Navigate to your selected branch
- Select "Make a pull request"
- Ask someone to review your pull request and confirm it
- Merge the pull request
- Check out your changes after it has deployed!
The website is at cryptidsgame-app.azurewebsites.net
- Node: 18.17.0
- Bootstrap: v5
- All other versions are stored in the
package-lock.json
andpackage.json
files, but thesetup.sh
script handles the installment of these packages.