Find Week 9's report here. Find Week 7's report here.
For the week 9 meeting on 5/25.
Time flies! As we enter our second to last full week, the game approaches completion. The problems experienced in the demo machines last week have been resolved. A solution was created for the mouse tracking issue and the client and server are able to connect on different machines.
For gameplay, the functionalities of the special player abilities have been implemented. In addition, the designs of the abilities’ icons have been completed, and those icons can be loaded into and picked up in the 3D world. Next week, we are aiming to take the shooting functionality to the point of causing damage to hit players.
In terms of rendering character-related objects, player movements can be rendered within the 3D world. The next steps on this front are to update clients on the direction a player is facing, whether or not a player is shooting, and ensuring animations are working. There will also be work done this week to render footprints in network-based play.
A bug involving reading bytes from the socket has been fixed and timing between the network and client has been improved. The streamlined install process has been completed and documented.
Morale is high.
The gif to the right shows a player picking up the armor ability.
My concrete goals for this week were to fix issues testing on the demo machines and overall help out with integration.
I was able to work with a bunch of different people (Professor Voelker, Edward, and members from other teams) in order to come up with a working solution for the mouse issue. While the mouse doesn't behave exactly the same as it does on our local machines, the game is still playable which is fine for our purposes. I was also able to work render in multiple players within the 3D world so now players can see each other moving around.
One of the goals from the previous week which I did not meet was loading in the remaining player animations. Most of my time this week was spent resolving a variety of issues testing on the demo machines, making sure that players can see each other, and loading in the ability icons for the player. I kind of specifically put off the player animations because I figured that they would actually take the least amount of effort to implement as they are only client-side and it's something that we have a verified process for doing.
My specific goals for next week are to continue to help out with integration and make sure that all the animations work for multiple players. Currently, the positions of the player models update for all players, but their direction and whether or not they are shooting have not been done yet. If I have time, I would also like to implement the crouching and running animations. The crouching and running animations are not a super high priority so they will probably keep getting pushed back or not implemented at all.
This week, I learned that the demo machines actually map the cursor on your computer to the cursor on the demo machines meaning that the cursor code we have in our game doesn't really apply when operating remotely. We also learned that our networking code does not manually separate messages by the delimiter but just keeps a big input buffer and that we have to manually separate messages and then pass them to the parser. Lastly, brushed up a little bit on rendering textures in OpenGL for the ability icons.
My individual morale is very good for this week as it is great to see the game working on the demo machines and that players can see each other moving around.
Full cleanup of install process making for an easier workflow.
Cleanup is done AND documented. I can walk anyone struggling with it through the process now.
All goals accomplished.
Work on footprints for network-based play.
Learned more about multi-project solutions on Visual Studio.
Good morale, past the install issues now!
Finish abilities.
Finished all abilities, Integrated timing with server/client.
Met all of my goals.
Weapon shooting (decreasing other player health).
Nothing new learned this week.
Medium.
My concrete goals this week were to finish the ability icons.
I was able to finish the ability icons.
I was able to finish all of my goals this week.
My goal for next week is to modify the animations to be correctly holding the guns.
I did not learn anything new this week.
My morale is high.
My goal for this week was to continue to work on shooting.
Mitchell actually finished the shooting as he had time, also it was apparently mostly implemented already when I was assigned it? So apparently there wasn’t much modification to be done. Instead, I did some work on the network with Lucas, and fixed a bug with reading bytes from the socket, caused by poor boost documentation.
I didn’t finish the shooting because Mitchell put the finishing touches on what was already implemented, instead I made some network fixes with Lucas.
As we approach the finish line, I plan to make some quality of life changes to the current network code, such as allowing users to leave and rejoin, and maybe implementing a way to join the game manually instead of automatically joining upon starting the client.
I learned more about the boost library and how the documentation is awful.
My morale is good.
My initial goal for the week was to solve the client-server connectivity issue faced earlier. After the issue was resolved, my attention shifted to making improvements to the website.
The client-server connectivity issue was fixed, and the game can be played with the server and clients running on different machines.
The site is a work in progress, and I'll put some more time into it once higher priority tasks are out of the way.
My focus for next week will be helping with last remaining tasks on the network front including the leave and join functionality Michael mentioned and potentially footsteps.
I gained experience in debugging.
My morale is high.