Skip to content

Eco-venture to Eco-friends. #Become a part of the journey to learn our environment with Eco-venture. Our team's submission for RU Hacks 2022.

Notifications You must be signed in to change notification settings

sophiadt/eco-venture

Repository files navigation

Eco-venture

Eco-venture to Eco-friends. #Become a part of the journey to learn our environment with Eco-venture.

Inspiration

Our team wanted to build a creative and fun way to educate others about the environment so we decided to use a discord bot to do so. We would like to thank Farhan Faruqui for his How to make a Discord bot workshop that inspired us to try creating one. We were also inspired by the flexibility of ways discord bots could be used so we decided to mash up classic games such as Wordle and simple quizzes into our bot. Our bot follows a sort of role-playing style to describe the user's actions and environment like in a typical RPG to bring the user on an adventure through different environments.

What it does

Our discord bot describes the user's environment to guide them through the adventure we created. The bot will present multiple choices to the user where they'll go through various activities while educating themselves on the environment. The bot hosts various activities using discord bot features such as buttons and emojis. We aim to give the user a fun journey through a text-style RPG story with a reward incentive at the end.

How we built it

Our discord bot uses the discord developer portal which takes advantage of the various permissions necessary for our application to function. The bot is written in Python and uses the nextcord API wrapper to add key functionality. Nextcord API is an extension and updated tool of Discord.py for bot creators as it contains a variety of extended features and functions needed to create our application. We used VS Code's life share feature to edit and collaborate with out code and used Github to send and store files. We then tested the bot on Discord by adding it to a private server.

Challenges we ran into

With our bot being game-oriented, some of the functions like new emojis and adding the user's discord display name to the game became a challenge. Luckily the hackathon committee were fast and friendly and gave us advice when we asked. Since we divided our tasks through the mini-games and segments of our application by testing our code through our own bots, the bigger challenge was to combine everything together in our main bot through the button functionality that was prepared in our skeleton code (which is the outline of the game flow). Another complex challenge was adding new emojis for our Wordle game to our server as discord only has a limit on how many we can use.

Accomplishments that we're proud of

With some of our team members being new to discord bots and those who are new to python, the outcome of our project has met our expectations. We addressed and managed our challenges and made sure that our project included all possible visions of our game bot. Even through the difficultly of sharing code, we're proud that we managed to piece each other's code together.

What we learned

We learned more about Python, discord bots, and how to use API's like nextcord. As this hackathon were some of our team's first few hackathons, our team learnt how to quickly adapt to coding online through difficulties such as code sharing on which device and the drastic time zone differences. In the end we had a better grasp with collaborating on VS code and using GitHub to transfer files and submit code.

What's next for Eco-venture

We hope to improve the UI of our bot to be more game-like and also add more mini-games to allow our users to learn about environmental sustainability in a fun way! Adding more eye-catching images would make our bot more engaging and pleasing. Replacing the websites with QR codes will allow the game experience to not only be interactive but also encourage learning. Tweaking the code for better readability and efficiency is what we also aim for.


How to use

image Get your discord bot token and put it inside the SECRET.py file
If you haven't installed nextcord, requests, or dotenv do so with the following commands (for python 3.0 versions):

pip install nextcord
pip3 install requests
pip3 install python-dotenv

If you already have discord.py installed, it might clash with nextcord and not work so use pip uninstall discord.py to uninstall it.

Run the game.py file and it should be good to go 👍
Start the bot with the command !start and start your environmental adventure! image