Week 6: May 16, 2017

Overall Status

Our progress was slightly dampened this week as many people had various commitments this weekend. Nonetheless, we were still able to make decent progress across a number of gameplay features. Rooms can now be damaged by broken items and more of these types of objects were added, such as Fire. We greatly improved navigation and various graphics based visuals, like lighting and swinging animations. 3D Audio work continues. Unfortunately, getting the UI library integrated has been difficult.

Group Morale

Our morale has been strong as the last few weeks we've seen a lot of progress on many features. This week was a little slower so there's been some minor concern, but we should be able to pick it back up and keep making good strides.

Screenshots

Goals for This Week

  • Finish up "Crack" interaction. This meant to fully wrap up anything the Crack will need to do, such as damaging rooms.
  • Integrate the Navigation object with Anish's flying code.
  • Add new Fuel Tank and Cell objects for re-fueling the ship.

Accomplished Goals

I was able to completely finish the Crack. I have 6 cracks spawning randomly in preset locations (one in each room atm). If untouched, they will damage their respective rooms. I was able to integrate Anish's code without much issue. A couple things had to be reworked, but we can now fly the ship from the Nav! I created the Fuel Tank and Cell objects (most of it is easy to create since it is similar to the crack).

Unmet Goals

As of Monday afternoon, I have been unable to finish the Fuel Interaction. It is slightly different than the Crack (though similar), because it will be interacted with slightly differently. A player will carry a fuel cell to the tank and place it there to "use" it. Then the fuel cell will be spent, which is very different from the persistent wrench. I will be working on this tonight, so maybe it will be ready for tomorrow!

Goals for Next Week

Going to continue in the range that I've been working in and create more objects. Once I finish the Fuel interaction, I will be creating some buttons and dials that players will need to interact with too. We already have a basic object that I can work with for these, and this will mostly be extending the events players will need to deal with.

What I learned

I had to integrate with a lot of other's code this week, which was an interesting learning experience. I had to use Yuxiang's status events, Huajie's event timers and random spawning, Anish's driving code, and Michael's tool animations. I had to be careful to not create any bugs in THEIR code when making changes that I had to have.

Individual Morale

I'm feeling pretty good about the work I've been able to do. I was camping this weekend, so I wasn't able to finish what I hoped to get done, but I still did a good amount of work. I'm starting to get a little worried about our pace. While I know we have a lot done, there is still SO MUCH left to do and so little time!

Goals for This Week

My concrete goals for this week was to port over ship controls to the mouse trackball movements and to improve asteroid generation and behavior.

Accomplished Goals

I was able to complete both these goals, and make it modular to fit a set of parameters.

Unmet Goals

I met all the goals that I planned for the week, but I still hope to do more in the coming weeks since I feel like this week because it felt like I still did not do enough.

Goals for Next Week

The most important goal is to configure my asteroid field parameters to an event such that there isn't always an asteroid field present. From there on I hope to discuss with the team today where the state of our project is heading.

What I learned

I learned a lot about play testing this week as I had to put myself in the player's shoes and imagine how difficult these asteroids could be be and what kind of movements the player would want with the mouse.

Individual Morale

Morale was generally good this week, but Im scared our code base is getting too large an unaccounted for as we keep on adding more code. I hope we can refactor early on this week and speed up our work going into these final 3 weeks.

Goals for This Week

I wanted to work on gunner interactions this week. I also hoped to get lighting working within the ship.

Accomplished Goals

I helped Michael with the object swinging animation. I also did implement spot lighting within the main room but hope to tweak the lighting effects a bit more to make the room look less dank. I also added collision detection with asteroids that degrade room health upon each collision.

Unmet Goals

I did not touch gunner interaction at all this week. I got very side tracked with the other aspects of the game I was assisting with.

Goals for Next Week

I want to dedicate next week to general bug fixing. The QA backlog has been growing ever so steadily as the development progressed and we need someone to begin tackling the issues.

What I learned

I learned that sometimes development does not go as smoothly as expected. Simple aspects of the game can lead to drastic changes in other aspects, and developing the game is a very tense balancing act.

Individual Morale

I am happy to see the game coming together, but I feel I myself am not making worthwhile contributions. I expect to dedicate more time to this project in the coming weeks in order to polish it into an actual game.

Goals for This Week

Again, I was away this weekend, so I concentrated on building on existing functionalities. I planned to make movements sound with fading off effects, and fixing some minor issues.

Results

I made the movement sound fade off by gradually decrease the channel volume of the movement sound. I tried to use the stock fading point functions but it doesn't fade off correctly, possibly due to duplicate fading points. My approach seems crude, but it is actually quite effective and cheap on computation. I also added a wrench hitting sound to wrench animation. Good SFX I guess.
On fixing side, what I did mostly is to take out duplicate initializations that was introduced in Week 5's merging. I also eliminated some unnecessary branchings in our server code.

Goals for Next Week

We may have want to extend the tool interaction to allow wave to air (waving the tool but not actually interacting with anything), which means that I need to change my code on interaction SFX. Also I probably need to take a second look on my class that handles status effects. I may need to clean it up or restructure it to make the life of my teammates easier.

What I learned

Different approach works. And sometimes ones that is not the most direct want may yield better results. Yes I'm talking about the fading.

Individual Morale

Good. Carrying on I guess?

Goals for This Week

My goals for this week were to make a fire event and work on GUIs.

Accomplished Goals

I was able to finish the fire event but I ended up working on carryable object animations as well as wrench/bucket using animations.

Unmet Goals

I didn’t get around to the GUIs but I accomplished animations instead.

Goals for Next Week

My goals for next week are to work on a laser projectile animation as well as working with Willie on getting the gunner stuff worked out. I also will be doing the main menu for the GUI this week instead. I will also try to figure out the exterior of the ship in terms of attaching it to the rooms so that it functions with collision detection.

What I learned

I learned a good deal about transformations in order to get animations working, which will make it easy to make any more carryable objects. I also learned about Protobuf.

Individual Morale

I am getting stressed about this project because it feels like we’re getting close to the end and we still have so much to do.

Goals for This Week

My goal for the week 6 was using NanoGUI to create a user interface to display ship status.

Accomplished Goals

I created a Crack model with blender to replace the bot that we have been using as the Crack.

Unmet Goals

By Monday afternoon I still couldn't get the NanoGUI library working correctly. It might has something to do with the conflict between NanoGUI and our existing Opengl Code. I'm going consult Anish and Willie on Tuesday to give it one last shot. If no luck then I will use alternative libraries

Goals for Next Week

Get basic GUI functionalities working and MORE BLENDER MODELS

What I learned

How to use visual studio.....

Individual Morale

It's a little frustrated of not getting NanoGUI working, but I believe this problem will be solved tomorrow. In the meantime I have been increasingly familier with Blender, so I will create 3D models with a higher productivity in the following weeks.