Inspiration

In a world filled with unsustainable human activities, poaching, pollution, and more, the situation of endangered species is a crisis that needs immediate attention. Having learned about keystone species in AP Biology and how the extinction of a single species can destroy the balance of an entire ecosystem, our members decided to tackle raising awareness for and protecting endangered species. Realizing the importance of teaching children from a young age, EcoPals aims to educate children about how their actions impact ecosystems and encourage them to take action in protecting endangered species.

What it does

EcoPals is catered towards elementary school students. The user is prompted to "adopt" either an African Elephant or a Hawksbill Sea Turtle -- both critically endangered species. They can then name their pet to personalize it. The user can play a habitat game, where they watch the animal run around their habitat. There are multiple threats that will eliminate the animals (including trash, fishing nets, and poachers), and the player can save the animals by dragging them away from the threat. There will also be trivia questions about the animal to get more animals and points. Another feature we have is the Daily Challenges, which promote protecting the environment and animals through actions like planting a tree, picking up trash, and more. Each of these actions, along with answering questions in the Habitat game earns the user points, which they can use in the Customization feature to buy hats, bows, and more to dress their pet.

How we built it

We first split the app into different features, then we divided it up and each coded a part on Android Studio using Java and XML. We used many different resources, such as YouTube tutorials and Chat GPT. We then combined our work into one app with the help of GitHub. To make our design visually pleasing and the features as user-friendly as possible, we utilized Figma to plan our UI/UX before coding the app.

Challenges we ran into

Our original idea was to use AR to display their chosen species in the user's own environment. However, we ran into multiple challenges when trying to implement the 3D/AR feature. We had difficulty animating the model in Unity and then had troubles uploading it to Android Studio. When trying to add the AR feature, it was difficult to implement the archived version of the Google Sceneform tools because of mismatched Android and gradle versions. While making the game, it was hard finding out how the Animation feature worked, and also making the collision work while the objects were moving.

Accomplishments that we're proud of

A part of the app that we are proud of is the UI/UX. Because this app is designed for kids, we wanted to make it as bright and kid-friendly as possible, so we used playful and bubbly fonts and cute cartoons. The games are also able to capture the kid’s attention, using flashy animations and easy trivia questions for rewards.

What we learned

Something that we learned was how to work with 3D models and how to use code to move a 3D model in a space. Although we were unable to add it in the end, we still made progress and learned a lot through experience and tutorials on how to work with Unity. We also learned about different methods to do collision, such as using a Rectangle to find if they collide, and how it would change the Relative Layout.

What's next for EcoPals

In the future, we hope to get our Unity models working so that users can visualize their pets in their own environments. We would add more features and levels to our Habitat game to make it more entertaining and captivating for younger kids. Another feature we would add is the ability to connect with your friends and their pets and complete team challenges with them, similar to other virtual world games. Finally, we would also add a page where kids can donate money to organizations that help their chosen endangered species in real life, with the permission of their parents.

Built With

Share this project:

Updates