6.170 Progress Report: November 28 2005 Team Voltron: Ed Platt, Clayton Sims, Dave Glasser, Dennis V. Perepelitsa (TA: Vincent Yeung) New Design Issues ----------------- We have decided to add a method to the Gizmo class that returns the score associated with a given gizmo. This design allows the state of a gizmo to influence it's score. New Bugs -------- Resetting game does not restart the clock. Can't switch to game mode from edit mode. At times, board does not redraw properly. Resolved Design Issues ---------------------- Originally, the velocity and position of balls were updated simultaneously. Since the collision detection code uses constant velocity, it did not reflect the real time to a collision. Our original way around this was to perform all reflections at discrete timesteps, which sometimes resulted in balls reflecting too early. Furthermore, we only checked for one collision during that timestep, which allowed later collisions to not be handled. This was resolved by separating the code for updating position and velocity. Velocity is still updated at discrete timesteps, but position is updated at finer intervals if collisions occur, resulting in smoother graphics and better collision detection. Also, we gave every game item that is represented in the XML a method that writes its own XML information. Multi-ball, including ghost balls, has been completely implemented. Fixed Bugs --------- The gizmo-gizmo connection implementation has been completed, and has full XML support. Issues From Last Week --------------------- All known bugs from last week were fixed. The absorber is no longer able to add velocity to balls after they exit. Balls no longer escape from outer walls or pass through gizmos. The balls move at the correct speed. Success At Meeting Plan ----------------------- Significant progress was made towards all of the goals from last week. Most features of the new gizmos in the ammendment have been implemented. The physics framework has been finetuned and only collision detection for some of the Gizmos remains to be written. The Edit Mode is not yet fully implemented, but significant steps have been made towards its completion. We have begun to implement extenders. Collisions with flippers is not yet implemented, but a recent refactoring of the flipper code will make that much easier. We have completed a preliminary implementation of themes (image sets for gizmos). Next Week's Plan ---------------- Ed will create a framework for scores, help finish collision detection, create a dependency diagram, and help with any basic functionality that hasn't been completed. Dennis will finish Edit Mode. Dave will finally get flipper collisions working, along with extender geometry and physics. (Dennis and Dave expect to be very busy with the 6.046 takehome test this week, so they worked extra hard over the weekend and will work extra hard next weekend, to make up for the time they plan to spend on the exam.)