Week 9: June 6, 2017

Overall Status

Finally we are here! One more week! Today we did our dry run, and it exposed some minor bugs. Our goal for this final week is to fix as many bugs as possible and polish our game play. We still have a considerable amount of work to do, like refining the GUI and refactoring some hard coded blocks. But we also made a lot of progress since last week, we got a better interior texturing and a lot more models and we added visual effects like explosion.

Group Morale

We are very excited about the final demo, but we are also a little stressed about this final week.

Screenshots

Goals for This Week

  • Place Fires, cracks, and buttons around the ship.
  • Possible Fuel tank interaction changes

Accomplished Goals

I added all of the Fires (and the spawning mechanism for them). I placed all of the cracks (twice! due to model changes). We scrapped the idea of changing how the fuel tank works due to time and so I added the Fuel Cell respawn. I added some tweaking and optimization to the way object interaction works with each other. There was "collision" with the interaction that I cleaned up. I started placing the buttons and right now I'm tweaking the angles to get them right.

Unmet Goals

The possible new fuel tank interaction. There were thoughts to have users manually refuel a single fuel cell, but it would require quite a bit of additional mechanics to code. We decided to just go with a respawning fuel cell instead.

Goals for Next Week

Continue tweaking button positions. Fix any possible bugs that crop up. Breathe.

What I learned

Placing objects is ANNOYING. It came down to tight positions (things being placed on the wall had to be made sure to not "float" off the wall). I never really found a quick way to find the best positions and just had to tweak them little by little. Definitely tedious for the large amount of fire and cracks we have.

Individual Morale

I'm feeling better from the last few weeks where it felt like things weren't coming together as well as I thought they would. The gui's coming together a little later than desired, but we just need one more thing for it and then all we have are bug fixes. I think we'll be okay for Friday. I certainly hope so, at least!

Goals for This Week

My concrete goals for this week was to fix some trailing bugs and features including moving player rotation to the server and fixing tool animations.

Accomplished Goals

I was able to complete all the goals I sought out to complete. I also was able to start work on a notification system to let player know of what's going on around them.

Unmet Goals

Like I said, I was able to meet all my goals, and even meet more than was expected

Goals for Next Week

Some goals for next week include just tackling any trailing bugs that might pop up and making sure the game is ready for Friday.

What I learned

I learned a lot more about the math behind rotations and how to properly position objects as I had to deal with rotating objects around relative to player position. I also got to work more with the server this time since I had to implement a notification system.

Individual Morale

Things are looking good. The game is almost ready for Friday, but its discouraging to see our game have more bugs than expected when we did our dry run today.

Goals for This Week

This week I wanted to fix any and all lingering game breaking bugs.

Accomplished Goals

After a hardcore refactor of all of the camera code, I was able to fix a bug where the screen would go all blue when the user changed camera views. Along with manual game testing, I also optimized the server code such that it only queries interactable objects when the user presses F. I helped Michael with a few shader bugs that prevented our crack model from loading properly. I also fixed ship controls to allow the user to control the ship more smoothly. Finally, I modified laser collision detection code such that the bounding boxes are much tighter.

Unmet Goals

I wanted to do much more manual game testing in order to find any lingering game breaking bugs. That being said, I accompished a lot in this past week.

Goals for Next Week

I DON'T WANT THE GAME TO CRASH DURING OUR DEMO

What I learned

I had some hefty expectations as to what our final game would look like, Although we didn't accomplish all of our stretch goals, The final product that is taking shape is actually really cool. What I learned was that expectations do not always intersect with reality, but that doesn't mean that reality isn't noteworthy.

Individual Morale

I am very happy about the work we've put into this game over the quarter and am excited/VERY NERVOUS about our demo this friday

Goals for This Week

Testing and tweaking

Results

We identified some game breaking bugs (premature game ends, incomplete object initialization, and so on), and made some patches to them. For game end we used more robust checking to make sure that we don't take noises as actaul game end signal. For incomplete object initialization (which leads to null pointers), we added mechanisms to purge null pointers from the game object vector. I also worked with Yuxiang to get has a controller game start; now server starts simulation only after all clients are connected, and each pressed a button to signal it is ready.

Goals for Next Week

Demo is this week, so I will get a end game screen working and hopefully not break our program.

What I learned

Protobuf doesn't have built-in delimiter, so programmers do need to use extra precaution to deal with incomplete message.

Individual Morale

ALMOST DONE!

Goals for This Week

My goals for this week were finishing up buttons and dials, fixing some animation issues, and doing play testing.

Accomplished Goals

I fixed what I set out to fix and I did a good amount of play testing.

Unmet Goals

I still have not done enough play testing, based on the bugs we encountered in the dry run.

Goals for Next Week

My goals for Friday are to fix some GUI issues and game state issues, as well as continue playtesting and finding bugs.

What I learned

I have learned more about how openGL passes information to the shader and some stuff about texture mapping.

Individual Morale

It’s all hands on deck for the final few days!

Goals for This Week

My goal for the last week was adding a loading screen and polish GUI

Accomplished Goals

I added a loading screen and some GUI visual effects and I'm refactoring my hard coded functions.

Unmet Goals

The GUI is still a little away from ideal. I have to finish implementing the notification dispaly.

Goals for Next Week

FIX BUGS AND FINISH NOTIFICATION

What I learned

I learned how Imgui is interacting with opengl and that was why some API does not work with our existing opengl code.

Individual Morale

I'm a little exhausted but I believe our final demo will be so cool!!