Sunday, February 1, 2015

Smelly Code, Dissatisfaction (S2W3)

This week did not feel like a particularly strong week.  Not much of note occurred, besides integrating the level editor into the game to allow the designers to start designing levels.  We continue to have lengthy discussions over the design of the new UI, which seems to be taking up almost too much of our time at our appallingly few meetings.  Some of the designers have worked on timelines for the game's world, complete with witty acronyms.  The artists are drafting concepts for characters, working on a new logo, and doing sketches for UI layouts, though most just seem to be small iterations upon the "on-the-planet" layout that Stephen created.  Rob's working on AI, making changes here and there, allowing the computer to prioritize different objectives over one another.

As we've approached the Greenlight milestone, I'm continuing to realize how much my current gameplay code is not suited for single-player.  Most of it was either ported from the old system or rewritten slightly within the last three days of creating the demo build.  A lot of it was not made entirely flexible for the purposes of getting it done quickly.  If I had tried to redo everything in a sensible manner, I may not have finished the demo in time, so I wrote enough to get the multiplayer to work.  Those decisions have come back to bite me in the rear, as explaining my code structure to Rob has gotten increasingly embarrassing.  I plan on refactoring a bunch during this next week, along with starting on a few other metagame features.  Rob is a bit nervous, but if I don't take the time to rewrite it now, I'm just kicking the can down the road until we reach a feature that is so horribly convoluted to implement with the current system that we have to either refuse or rewrite many more lines of code.  I need to pay this technical debt now before the interest accumulates further.

This project isn't going as well as I had hoped coming into the semester.  Part of that comes down to scheduling.  When every team member's free time barely seems to intersect with each other, we can't really have effective group meetings.  This is complicated further by the larger team size.  Last semester, we had four members, and finding time to work with each other was pretty easy.  Furthermore, the group felt united, strong.  Since adding six new members, our capacity to do work has increased, but the team unity isn't as strong, our game direction doesn't seem to be as solid, and we just don't seem to be communicating as well.  Hopefully we'll turn this around and start working as one, but currently I'm just not as comfortable with where we are.

No comments:

Post a Comment