This project was created with Java Swing.
PawPrint: Nurture & Nature is an interactive video game meant to simulate the experience of caring for a real pet. Players are able to care for their digital companions with a range of responsibilities. This includes taking care of:
- Health
- Sleep
- Happiness
- Fullness
The game features a user-friendly interface with various interactive elements designed for ease of use and promotes education, emphasizing time-management, responsibility, and patience.
List of required libraries and tools needed to build the software:
- JDK 23.0.1 or newest version.
- Java Swing (this is built-in for most JDKs).
- JUnit 5 (to ensure functionality).
- Any IDE that supports the Java programming language (to build software straight from the terminal).
To build the software, follow the steps below:
- Install JDK 23.0.1 or newer.
- Navigate to terminal and update to Java 23 (type the command:
java --version). - Navigate to search bar and type "Environment Variables".
- Click "Edit System Environment Variables".
- Open "System Properties", and navigate to "Environment Variables".
- Click "Path" then click "New".
- Paste the new path into the JDK 23.0.1 folder.
- NOTE: ensure the link to the JDK file is at the top of the path.
Ensure that JDK 23.0.1 or newer is correctly installed:
- Type
java -versioninto the command prompt. - Type
javac -versioninto the command prompt. - Both outputs should show the version of your JDK (Ex.
javac -versionshould give the outputjavac 23.0.1).
After the JDK is confirmed, run the main class using the command:
java -jar main.jar
PawPrint includes the following features:
- Title Screen: the first screen to immediately greet you and to start the game.
- Main Menu: create or load a file, view the instructions on how to play, or access parental controls. It is encouraged by both users and parents to read the instructions manual first.
- Select Game: after choosing to create or load a file, you will be prompted to choose from a previous file,
or start a new game. There are approximately three save slots.
- Select Pet and Select Name: if you choose to create a new file, you will be prompted to choose one of three different pets, and create a unique name for them.
- Pet Screen: this is the main screen where you will be able to see all the information of your pet, how it's feeling, and any gameplay commands.
- Instructions: there are three main tutorials to complete in the instructions page. This details all information on:
- Starting a new game.
- Taking care of your pet.
- Parental controls.
- Parental Controls: see the "Parental Controls" section for more information.
- Feed: select food from your inventory to give to your pet.
- Go To Bed: let your pet rest when it is sleepy from playing or exercising.
- Give Gift: make your pet happy by giving it a gift to play with.
- Take to Vet: if your pet is feeling sick, take it to the vet to feel better.
- Play: collect items with your pet to store in your inventory, such as food or items to give them.
- Exercise: workout with your pet at the park to give it some fun time outside.
- Inventory: access your inventory to find and use the items you've obtained from playing with your pet.
- Health
- Sleep
- Happiness
- Fullness
NOTE: these statistics will decrease over time, and will decrease with certain actions (Ex. exercise will make your pet sleepy). Performing gameplay commands with your pet will improve them.
Though PawPrint does not require any accounts to be made, specific PINs to access parental controls are required. These will automatically save once created.
This is the page designated to interactive settings and statistics.
- Enter PIN: this is used to authenticate a parent and to create a little more difficulty for a child to access
complex settings. You may change your PIN or create a new one whenever you please. If you forget your password,
or are a new user, click the "New User?" button and enter the default PIN: 1234 before creating your new PIN. This is also a
security measure to prevent a child from accessing settings.
- Once you are authenticated, you may control the time spent on the game and restrict
your child from playing at certain times of the day. You may also revive your child's pet if it faints, and view the statistics of the game such as:
- Total play time.
- Average play time per session.
- Reset statistics.
- Once you are authenticated, you may control the time spent on the game and restrict
your child from playing at certain times of the day. You may also revive your child's pet if it faints, and view the statistics of the game such as:
Extra Feature: PawPrint includes the opportunity to play with your pet via mini game.
- This allows you to guide the pet along the map to collect randomly placed, and randomly generated, items to store in your inventory.
- Each time you play the mini game, it will be generated differently. These items can be used to feed and gift to your pet.
Accessibility: PawPrint supports keyboard shortcuts for gameplay commands. The details of these commands are found in the "take care of your pet" tutorial in the instructions page.
Developer Mode: If you wish, you may access developer mode from the raw terminal and view UI refreshes, statistics, and user-friendly error-handling messages.
Muted Colours: PawPrint uses muted, simplistic colours to mimic the colours and patterns that dogs see, since the pet type for the user to choose from is a dog.