Game over

Students from Computer Programming Java reflect on their final game project

Ritu Atreyas

There are many reasons for taking Computer Programming Java at MVHS, according to sophomores Aryan Bansal, Manya Dua and Diya Meeniga; however, the game project brings about the most excitement.

Java students are equipped with the knowledge and freedom to bring their game ideas to fruition with one catch: games have to be educational. Meeniga and Dua worked together to refine their project idea.

“I think Diya was singing the 50 states song, and when I joined in, we realized that we had a potential idea to work off of,” Dua said. “You don’t necessarily have to have the most complicated idea right off the bat. In our case, our idea [stemmed] from a random song. But I liked that we had to come up with our own ideas, and we had the independence to do anything. It made me develop my creative sense in a way and realize that I could do anything with my [Java] skills.”

Power Politics: Manya Dua and Diya Meeniga’s game project | Photos courtesy of Manya Dua

After Dua and Meeniga decided to incorporate politicians, news and the election in their project, they began to code a trivia game that would ask the user questions about governors, senators and capitals of different states. Dua and Meeniga made sure to ask a question about every state and randomize the questions so users could learn a variety of interesting facts.

Bansal went for a different trivia approach. He wanted to help users understand basic physics concepts and equations by having them answer a variety of introductory physics questions. In order to keep users engaged, Bansal added an incentive: users would help fill up a stranded astronaut’s fuel tank by answering questions correctly. At the end of every level, users would dodge asteroids and maneuver the spaceship to help the astronaut return home safely.

RoboCar’s Way Home: Aryan Bansal’s game project | Photos courtesy of Aryan Bansal

In order to turn their ideas into reality, Bansal, Dua and Meeniga said they found themselves stepping outside of their comfort zones. Bansal found that breaking down the complex aspects of his game into basic components helped him achieve his goals. In addition, Dua and Meeniga asked the Java TAs for help and referred to online resources such as Stack Overflow and the Java API. These resources enabled them to add components they were unfamiliar with, including pop up windows, dialogue boxes and progress bars.

“We needed a push to implement our ideas,” Dua said. “I’m not saying that we would go to the TAs immediately after facing a problem. But whenever we were stuck and we had done everything we could at that point, we had the TAs to ask for help.”

Despite the challenges, Dua found that having a partner helped the most throughout the process of coding the game. They encouraged one another to go to office hours every day and wake up at early hours in the morning to work on the game together, bringing them closer together.

“We were basically on a Zoom call together 95% of the time,” Meeniga said. “We woke up at six or seven in the morning before class and slept at 10 or 11 in the night, because we wanted to do it together. It was more fun that way. It wasn’t like, ‘Oh, I have to work on my assignment.’ It was like, ‘I get to hang out with Manya and code a game.’”

While working on the project, Meeniga and Dua recall thinking of adding different levels based on how much the user already knows. However, they were already dealing with thousands of lines of code, long files and a five-week timeframe, and therefore decided against it. That said, Meeniga and Dua mention how proud they are of what they were able to accomplish.

In particular, Meeniga and Dua remember spending over three days estimating and figuring out the coordinates that align with the center of each of the 50 states. Like Bansal, they wanted to include an incentive. When the user answered a question correctly, a star would appear on a map on the state the question was about. While Dua and Meeniga are most proud of that aspect of their game, Bansal takes pride in the concept of his game.

“I found it interesting to create a game that I would want to play,” Bansal said. “It’s a cool and rewarding experience to code a game yourself and see everything come together and work out in the end.”

For Dua and Meeniga, their experience working on their game gave them the confidence they needed to enroll in AP Computer Science A.

“[The game project] showed us that programming doesn’t simply consist of looking at a screen all day and typing and coding,” Dua said. “[While there is truth to that statement], there’s a personality within every programmer and that personality is reflected in every project. Overall, the game project was such a vital part of my freshman year. If anyone were to ask me, ‘What is one thing you remember from freshman year?’ I’d respond with the game project.”

At the beginning of sophomore year in David Greenstein’s AP Computer Science A class, Meeniga and Dua found a program particularly challenging; however, they say remembering the complicated game project they worked on as freshmen gave them the motivation and confidence to finish strong.

“If I tell you right now that coding is easy, you’re not going to believe me,” Dua said. “And you’re right, it’s not easy. But it’s also a way to challenge yourself. Just don’t stop when you think it gets hard. We looked up to our TAs so that also motivated us to work harder. And the people we wanted to become, we’re turning into them. We’re now tutoring Java students and have been doing so for a year now. When I look at how far we’ve grown, it’s like we were just those freshmen struggling to implement dialogue boxes and now we’re passing on that knowledge to people. It’s rewarding to see that growth and development. That wouldn’t have been possible without the game project.”