Legacy Code: Two Changes Needed to Redistribute 18-Year-Old Software; Identifying Motivations Behind Player Toxicity in Competitive Settings

Author:
Raut, Parth, School of Engineering and Applied Science, University of Virginia
Advisors:
Graham, Daniel, EN-Comp Science Dept, University of Virginia
Earle, Joshua, EN-Engineering and Society, University of Virginia
Abstract:

My technical and STS topics address problems that are completely different from one another. My technical topic highlights my experience working as a software engineering intern during the summer of 2021. The foundation of my internship relied on the idea of encryption of data in the context of licensing software. On the other hand, my STS topic provides an analysis as to why toxic behavior in video games exists. The foundation of my STS topic research relies on the fact that there is not a lot of research on toxic behavior in competitive settings. In my analysis, I provide insight on the causes of toxic behavior. While the topics differ greatly, I had the opportunity to analyze a problem and come up with a solution or offer underlying reasons that generated the problem.

My technical report recounts my experience as a software engineering intern where I developed a licensing algorithm and updated legacy code for software written in the early 2000s. I developed the licensing algorithm using RSA encryption, which I used to generate license keys and validate license files. The main component of the license key generation was the user’s MAC address, which served as a unique identifier to ensure that the license was valid. Updating the legacy code in the software primarily involved updating the GUI to a 64-bit standard. For this, I used a completely different library than the previous one, the Qt library. With this library, I also created a GUI for a license file generation tool that the company could use for its users. With these changes, the company is able to redistribute the software that was once outdated.

My STS research focuses on why toxic behavior exists in video games in the context of competitive settings. The importance of this relies on the fact that getting to the root of the problem is integral to understanding how to solve the problem. In my paper, I argue that players behave in a toxic manner because of their desire to win at all costs. In addition to this, I utilize Slovic’s model in “Beyond Numbers: a Broader Perspective on Risk Perception and Communication” to apply risk assessment to my analysis. The aim of my STS research is to provide the information needed to create solutions for reducing toxicity in video games.

The difference in these two topics provided me with the opportunity to research and explore two different avenues. My internship and technical topic allowed me to gain a broader understanding of encryption and software licensing. I was able to research a topic that I had no previous knowledge about and come up with a working solution that could be integrated. My STS topic helped me understand the underlying factors that contributed to toxic behavior in video games. By considering the culture of video games and applying risk assessment to my analysis, I was able to deduce several reasons for toxic behavior. In doing so, I provided a basis that could be used to develop a solution to toxicity in video games.

Degree:
BS (Bachelor of Science)
Keywords:
video games, toxicity, legacy code, rsa, licensing, competitive
Notes:

School of Engineering and Applied Science
Bachelor of Science in Computer Science
Technical Advisor: Daniel Graham
STS Advisor: Joshua Earle

Language:
English
Rights:
All rights reserved (no additional license for public reuse)
Issued Date:
2022/05/16