Week 2Last updated: 2020-04-15
Overview
Team morale is high and everyone is excited about our game. We all are excited to see the game come together and can't wait to be able to play our game. But we did have a few issues with communication and staying productive. We are hoping to address these issue by being more active on our discord and checking in with our subgroups daily.
Our goals for this week were to set up our toolchain and start building a basic client, a server-client echo server, and producing a basic map layout. This includes establishing the how we are going to hold and update our game state.
What we achieved
We created a game flow and UML Diagram based upon our current understanding of the project.
We implemented ~40% of the core gamestate classes.
We built a server-client echo server.
What we didn't achieve
Finalize the game state transefer specification
Build a basic graphics client that has a moving cube.
Finish the game state classes
Our plan for next week is to get our basic graphic client cube working, continue to add to the game state, add game state to the client, establish reliable transfer of game state between server and client, add collision, and create concept art for out models.
Screenshots
Individual Reports
Christopher Maytom
Goals for week 2:
Design and implement the game state and all current object classes and handle update events that modify the game state.
Goals reached:
I was able to implement a basic version of our game state which included a base object class and moving objects class and allows for the creation and basic updating of these classes.
Goals unable to reach:
It took me a while to get used to visual studio which delayed me so I wasn't able to implement all the classes for each game object. I also struggled to set up a work schedule during this week but plan to follow a more strict schedule next week which should help me get more done.
Goals for next week:
Next week my goal is to finalize an MVP for the game state and then implement movement and collision detection.
What I learned:
I learned a lot about Visual Studio while exploring it and setting up our tool chain. I also learned about gitflow since our team is using gitflow methodology to keep our github repository. The only other thing I relearned was c++ since I haven't used c++ in a while.
My morale:
The more I work on the project the more excited I am about it. I feel like I am going to learn a lot from this project including how to work remotely.
Steven Hausman
Goals for week 2:
Create a basic client window that renders a moving cube
Goals reached:
Created the client class
Goals unable to reach:
Creating the window and rendering the cube because we had issues with the libraries that we were using and so far have been unable to compile running versions
Goals for next week:
Finishing rendering the cube to the client's display window, finding/creating in game models, working on concept art to guide our search
What I learned:
I learned how to set up the environment to work on our project and learned how to solve some issues with setting up the libraries we need.
My morale:
I'm disappointed that we ran into issues before we started making progress, but I'm confident that we can make significant progress once we solve these basic issues.
Patrick Liu
Goals for week 2:
Set up toolchain and finish basic entity classes
Goals reached:
Set up toolchain
Goals unable to reach:
Finish basic entity classes(~40% done)-didn't put enough time in, and our UML chart wasn't as clear as it should have been
Goals for next week:
Finish entity classes, perform serialize/deserialize on gamestate, start on interations between entities
What I learned:
Visual Studio's build system, CMake
My morale:
feels pretty good right now, though need to put in much more work in coming weeks.
Thiago Marback
Goals for week 2:
Create basic client and display models
Goals reached:
Set up toolchain, display something in a window
Goals unable to reach:
Displaying models, due to issues with necessary OpenGL libraries
Goals for next week:
Implement loading and displaying models, camera movement
What I learned:
How to configure a CMake project and use vcpkg
My morale:
Fairly good, setting up OpenGL makes me angry but we're getting somewhere.
Anthony Lau
Goals for week 2:
We intended to build a simple echo server and flesh out what data needed to be sent across the network.
Goals reached:
We were able to develop a simple echo server and decided the general format of how we would pass data between the server and the clients.
Goals unable to reach:
We did not fully specify the data needed to be transferred between the server and clients, as we have not entirely decided how to represent game state and client events.
Goals for next week:
Decide on a representation for game state and client event transfers and add those transfers to the echo client.
What I learned:
I learned about visual studios and cmake as part of our toolchain and about winsock, windows threads, and other windows-specific C/C++ features.
My morale:
I feel pretty good about the progress so far, seems relatively on track.
Cameron Foster
Goals for week 2:
Tony and I planned to have a basic echo server up and running along with a finished spec for how the game state would be stored.
Goals reached:
The basic echo server was finished with little to no problems (aside from getting used to Visual Studio).
Goals unable to reach:
The game state spec was not finished. Because Visual studio is a new IDE for me and I have not worked with Windows sockets in C++ before, most of my time was spent reading up on how to use Winsock and how to effectively navigate and use Visual Studio. This, along with a lack of communication, led to the game state spec falling to the wayside.
Goals for next week:
The plan for next week is to have the game state spec fully fleshed out and to get the state to transfer between client and server reliably.
What I learned:
Communication is very important to keeping things running smoothly. I have a better understanding as to how I should use Visual Studio and Winsock.
My morale:
This is a big task, but I'm ready to tackle it!