Jacky's Week 3 Report

what were your concrete goals for the week?

My concrete goals for this week was to create a well-defined server-side game engine architecture so that it's easy to expand and develop game mechanics. Since I was familiar with the Unity engine, I aimed for a GameObject class that can be inherited by any in-game object for any purpose, and a game loop that updates all GameObjects per server tick.

what goals were you able to accomplish?

I was able to create a rudimentary game loop using GameObjects, though currently only one object is supported when sending the state back to the client. I also created a system for simple input buttons that can be easily defined and sent from the client to the server.

if the week went differently than you had planned, what were the reasons? note that this happens regularly...I would prefer you to be aggressive in what you want to try accomplish rather than limit yourself to goals you know you'll easily achieve. so answering this question is more of a reflection on the development process and the surprises you encounter, it's not at all an evaluation.

I ran into quite a few hiccups due to Windows build issues and unfamiliarity with OOP using C++, though I am getting more used to it. I had also hoped to get started on simple physics but that will be pushed to the next week, as it was better to have a solid expandable architecture running first, rather than hardcoding a physics object that will need to be reworked to work with everything else in the future.

what are your specific goals for the next week?

My goals for next week are to allow more than one GameObject to run on the server and to be communicated to the client, and begin work on a very simple inertial physics model. If the game starts shaping up a bit more, I can go a bit further into game design and determine the initial mechanics we should work towards.

what did you learn this week, if anything (and did you expect to learn it)?

I learned more about memory management and OOP in C++, which are things I wasn't familiar with, coming from higher level languages. I'm also learning a great deal more about client-server architecture and multithreading, simply from inspecting and using the code my teammates wrote.

what is your individual morale (which might be different from the overall group morale)?

My morale is good, as I feel like the entire team is contributing a good amount, but personally I feel like I could be moving a bit faster. I'm a little worried that my messy code will get in the way of the others, so I hope I can polish it up a bit more.