Blog Post #7 - Wrapping Up Classic Mode - May 19th, 2021


What we accomplished

Last week, we added the ability for players to specify a team that they wanted to be on and made it so that balls would not knock out players on the same team. This week, to wrap up classic mode, we implemented the rules of the game along with adding a nice looking map and avatar. The networked in-game menu was also completed. Next week, we will also be integrating it with the classic mode demo so that users do not need to specify a team before joining the room.

Classic Mode Rules

The Map

We found a 3D model online that we thought would make a nice map. A screenshot of the top-down view can be found below:

top-down view

Overall, this is how the map looks in game:

in game

Now that we had a nice looking map, we needed to add boundaries so that players can’t just walk off the court. We did this by creating a simple NavMesh, and then constrained the movement controls so that must follow the NavMesh. At this point, although players can no longer use the joystick to move beyond the map, nothing would stop them from physically stepping outside the map by moving in the real world. We resolved this by moving the player back into the exact point that they stepped out of the map. One issue with this is that if a player repeatedly attempts to leave the map, they may feel some motion sickness. However, given that players should not be attempting to leave the map too often, we do not consider an issue that we need to address immediately.

Avatars

We previously received some feedback to make “better looking” avatars. Thanks to Akash, we now have a very nice looking avatar designed in Blender:

avatar

Later on, we intend to add more colors and more avatars. But moving away from our original cube and sphere avatar makes it much more difficult to indicate a player’s death. Previously, we would simply change the color to be red, but changing the color is not as easy when using models as it would require us to switch out the model to a different colored one. Instead, we are considering just changing the nametag to a red font or adding some marker above the player to indicate that they have died to everyone.

We created an in-game menu demo that would allow users to specify a team:

the menu open in two clients side by side, showing how the menu state is updated across all users

The menu will then show all the users that have joined a specific team. Next week, we plan on combining that demo with the classic mode demo. Note that there are some additional GUI elements present - the toggle box and the drop down menu. These were added for testing and may not be used for our final product.

Individual work log


Plans for next week

We were planning on having classic mode completed by last week at the latest, so we have fallen pretty far behind our initial PRD. However, we spent a significant portion of time figuring out how to implement working map boundaries, so we expect the next week to go very quickly. Next week, we intend to implement capture the flag with an additional map, but given that we have fallen behind, there is a chance that we will not have time to implement power-ups.


Blocking issues


Notes

Deliverables