Inspiration
This project is inspired by the growing amount of younger audiences that are given access to technology. It's as though more and more people have access to technology now than before. Kids are browsing social media sites, websites, blogs, and forums with unrestricted access. Consequently, they are the most vulnerable to cyber attacks and threats. Thus, this project aims to educate audiences--not just limited to younger audiences--about the very common threat of phishing scams, how to point them out, and how to avoid them.
What it does
This project 'gamifies' the idea of filtering out phishing scam emails from valid emails. It utilizes positive reinforcement in correctly filtering out emails via a points system with a streak system to encourage users to aim for only correct answers. It also educates users on how to look for suspicious emails or links that are the most common way phishing scams occur.
How I built it
This game uses a style of having a core loop of gameplay. Once users start a round, emails will pop up on screen that the user has to decide to pass through to the owner or skip/discard. I started by creating the character converter that acts as the base of encrypting invalid emails in a way so that they look like scams. The way this is done is through a dictionary of similar matches to a string. For instance, "o" and "0" would be a potential conversion that could happen if the game decides the email should be invalid.
This conversion can happen in any of the email addresses or links included in the message. Another method of creating discrepancies in emails is via a different sign off or sender that doesn't match up with the sender/sign off respectively. Another way is getting the wrong user email. And the last way is getting the wrong email with the sender. All these are invalid emails and help the user point out when an email is suspicious or likely a scam.
To further reinforce this overall message, there's a separate section of gameplay that allows users to learn about phishing scams, how common they are, and how they can prevent/avoid them.
Challenges I ran into
The biggest challenge for me was the character converter and then implementing a story into the game. To incorporate a sort of story into the gameplay, I framed it as though you were a security guard for the owner's device. As a security guard, your task was to filter out emails and catch sketchy or 'scammy' emails. The cutscene was by far one of the more difficult parts in which I had to rely on my older projects to implement functionality such as the typewriter effect of the text that I used in one of my previous projects. The camera movement/controls were also difficult to work with.
Another issue that goes unspoken was the difficulty of cramming out this project solo. It was more work than I expected to get a result that I think could have been much better had I had a team. I think that goes to show the importance of teamwork in projects like this. Being able to divide up the work in a way that would've cut and optimized time around certain aspects definitely would've helped in producing a more complete project that had more bells and whistles associated with a finished game.
Accomplishments that I'm proud of
I'm super proud of the way this turned out in the core gameplay loop. I think it's a very good way to stay informative while also giving audiences a somewhat entertaining way to experience keeping an eye out for sketchy links and emails in the message they receive.
One addition I would've loved to make was incorporating phone numbers to the messages, but I believe that is something that goes against Roblox's TOS as personal information being spread despite the fact that they would be fake numbers. I respect Roblox's terms of service and worked around it to the best of my ability and I'm overall happy with how the project turned out. Especially as a solo developer that had no help in all fronts of the project.
What I learned
I learned the importance of building in team environments. It's very hectic and stressful to take on such tasks by yourself. I also learned more about utilizing the tools Roblox Studio has to offer. I learned more about ModuleScripts, state management, and data saving as well as how that ties into leaderboard creation. While I already had some knowledge of these concepts, this project allowed me to gain further insight in developing and honing my skills as a developer.
What's next for Inbox Invasion
This is the part that I thought about a lot. If I had more time, I would've loved to add a feature that incorporated AI to an extent. Like AI trying to deem if messages are fine or not. That would allow me to introduce the idea of AI "hallucinations" to my audience as well as the effects of AI hallucinations and what causes them. It would cause me to have to incorporate a more complex system to really communicate this point through not just story/information, but gameplay. I would also just love to polish up this game more as it's in a very unpolished state in my opinion. I've been developing on Roblox for 3 years now and have learned a lot and from what I know and have worked on in the past, I know I can make better and there are multiple ways that I can improve this project.
That mindset is what I think makes a good developer/engineer. Someone who can recognize where they can improve and strive to grow is someone who will make a successful professional in the development/engineering fields whether it comes to software or even hardware. Being a sponge for information and having a drive to learn more is what allows us to become such special engineers in so many different ways like our unique thought processes to our problem solving process.
Built With
- lua
- roblox
Log in or sign up for Devpost to join the conversation.