What inspired us was the fact that everyone is thrown into this situation and everything happened so fast that proper education on the situation has been overlooked. Many younger kids might not know what a virus is or know how to best protect themselves and those around them. We think having a more light-hearted and fun game can help teach kids about the coronavirus and how they can protect themselves as they start to go to school for in-person learning.
What it does
The app COVID Kidz so far consists of three educational minigames: hangman, trivia, and a world map.
We created a classic version of hangman where the user guesses COVID related terms. The user is given 10 lives to try and guess the mystery word. A life is only taken away if the user guesses a letter that is not in the mystery word. The game will reveal the mystery word once all lives are used or when the user guesses the word correctly.
The user is allowed to choose questions from two topics: "science" or "other". "Science" trivia questions relate to information such as about COVID itself or how the virus spreads between living organisms. The "other" trivia questions relate to crucial information about COVID activity around the world and how the user should protect themselves and others from the virus. If the user answers a question correctly, the game will further explain why that answer is correct rather than just saying it is "correct." If the user answers a question incorrectly, the game will give the correct answer and explain why it is correct.
The user can select from five different regions on Earth: the United States, South America, Europe, Africa, and Asia. Once selecting a region, the user can type in a country (or state if they chose the U.S.) from that region. Once they press the search button, they will be sent to a Google News site displaying all COVID related information for that country/state, such as total COVID cases, total deaths, etc.
How we built it
To build this app we used the Thunkable app creator, which uses block language. We used many online resources to see how other people used real code to create a similar version for some of our minigames. We then converted that code into a block code format to apply it to our app.
We first laid out the basic UI structure and design and then started to code it. For the code, we used methods and a main game loop. Within the game loop we used many conditionals to check the user’s input to output a certain message to the user. Once the user guesses the word or runs out of guesses then there will be an alert telling the user the word.
Each trivia question is assigned to a screen. The program randomly selects a screen, which consists of a question and four possible answer choices in the form of buttons. Once pressed, one of the buttons leads to a “correct” answer screen and the others lead to an “incorrect” answer screen. All answers screens let the user know if they got the question right or wrong and how the correct answer is right. There is a “Go!” button on each answer screen, which when pressed prompts the program to select another random screen/question for the user to answer.
We mainly used if/else if statements to code this minigame. Once the search button is pressed after the user input a country/state name, the program will continue to go through the if statements until the relationship between the text input String and the String of a country/state's name becomes true. The app will then open a link in a browser that will display COVID related information in that same country/state input by the user.
Challenges we ran into
We are beginners and wanted to use block code to make the coding portion a bit more understandable, but many block code app creators were hard to share and cooperate on. Thunkable was our best option since it is an open-source platform where one could copy and fully edit anyone's public project. One of the most challenging parts of our project was communication between the different sections. We decided that everyone should take on one minigame each (we assisted each other along the way as well). As each person developed a different mini-game, we had to make them similar enough to integrate at the end. Although we had to do several conversions in the point system and change our naming system, we eventually managed to fuse the different parts of our app together.
What we learned
During the beginning portion of the hackathon when we were brainstorming which platform we should use to build our app, all of us were introduced to a ton of new platforms that some of us haven't heard of. There was MIT App Inventor, code.org, tkinter, and although we ended up using Thunkable to create our app, most of us will still have these platforms in the back of our heads and will probably use them in the future once we become more advanced and ambitious app creators. We also learned a lot about teamwork, communication and, of course, coding. Being one of the first times we worked with total strangers on a project in such a short amount of time in a virtual setting was a situation we all had to quickly adapt. We had to voice our ideas and come to an agreement all within a couple of hours we learned to communicate our ideas over virtual communication platforms efficiently. We also learned a lot about teamwork and trusting each person to lift their part of the weight. Because of this trust, we were able to finish the project on time and create something we are all proud of. And lastly, we learned a lot about programming. This is our first time creating an app and using the Thunkable platform. We learned about the different parts of app building and how that’s very different from regular coding we might learn on online tutorials or school classes. Overall, this was quite a once in a lifetime experience where we were able to learn a lot.
What's next for COVID Kidz!
We plan to keep adding more minigames onto the app so that the user can have more choices for what games to play. For the games themselves, we think we can add more questions for the trivia, add more words to the hangman and make live updates to the map in the future. We also could improve the insert interface and design to make it more appealing to users and add more interesting features such as a point system and leaderboard system so that the user can compete against friends by playing the games and learning more about the virus. In addition, we can also add live updates and simplified news to the app so that the user can be up to date about the current situation and be updated about any news.