Thursday, May 4, 2017

Weekly Update (2017-05-04): Benjamin

This week, we worked on planning out what we will work on for the next three weeks in order to have a playable game.

Planning Process

First, we wrote down a list of tasks that we thought were necassary for a playable game. Then, after cleaning up asana, we entered them into asana with due dates. I will talk in more detail about the tasks that I am planning on doing below.

Refactoring the State System

Our current system for handling airplane states (flying, landing, etc.) is a good start, but it has a lot of ugly bits. I'm trying to clean this up before we add a bunch more states. The idea is that by adding a deeper inheritance heirarchy for the components of an airplane state, we can avoid the huge amount of code duplication that is going on now.

An example of this duplication is that all three states that we have right now need to draw an airplane at a position on the screen. We currently have almost identical code for drawing the airplane in each of these cases. Instead, I am going to create a class called AirplaneVisible which handles the drawing. AirplaneVisible does not assume that an airplane has an altitude because that is not needed to draw an airplane.

Fix Collisions

There are currently a few issues with the collision system. Primarily, we need to balance it so that it isn't too easy to cause collisions, but it still happens. One of the other issues involved here is the balance between realism and having a fun game. The other main issue that I want to work on is the animation for collision. Currently, when you are zoomed in on one spot, but a collision occurs completely outside the view frame, the pan-zoom thing will not work. This should be pretty easy to fix.

Weekly Update (2017-05-04): Liam

This Week

The main advance I made this week was departures. Airplanes start on the runway, accelerate, and then move into the flying state. Right now this happens randomly, but I plan to add a queueing system later.

I also made several minor improvements to gameplay, including:
  • Changing the ascent and descent rate to make it more reasonable
  • Adding a handoff button for flyovers and departures (not yet functional)
  • Removing planes that have landed
  • Added descent during landing (not yet fully implemented)
  • Added a "cancel" button for landing airplanes
Here's a screenshot of a departure on the runway and the new cancel button:

Tasks completed:

  • Implement departures
  • Add landing capabilities

Next Week

Now that we've migrated to a new task list, I plan to add functionality for the handoff button and descent during landing (properly).

Asana tasks to complete:

  • Make final map
  • Implement flyover & departure targets
  • Fix altitude implementation

Weekly Update (2017-05-04): Guy

This Week:

This week i did several things. I added a pause button, which stops the game and movement of the planes. I also finished the rough main menu. There is a placeholder logo and a play button which will move the game to the play screen to start the game. I started work on the points system and we talked about what the next three weeks should entail. We cleaned our branches and added new ones for our current tasks and started a new asana document, moving to the updated system. Here is what the main menu looks like so far.

Next Week:

Next week my task is to add a points system. Currently there is no way to win or lose, so points will be a start of that. There will be points for landing, taking off, and crashing, all variable on the difficulty and negative or positive impact they have.

Asana Tasks:

  • Add Main Menu
  • Fix Branch System
  • Add points system(incomplete)