We had a huge 2 and a half hour design meeting this week, where we got a bunch of technical requirements for the new game. It included some back-end stuff (but that’s still useful for me to know about) and I got to ask about some game play features that I would be working on — the kind of things that could be done in several ways, and I wanted to know what the designers had in mind.
After the meeting, someone mentioned that after hearing what they have to say, I should claim that each of those ideas would take ‘considerable effort’ to implement, then knock them up in a couple of hours and pretend that I worked really hard to finish it so fast. I’ll try to remember that next time.
Unfortunately, they needed someone to write down everything we talked about in the meeting, and I kind of volunteered to do it (it didn’t sound too hard until I started trying to remember the things I didn’t write down!). Anyway, once I got that done, I went back to writing code.
Some of the features we talked about sound like they might be pretty hard to implement, such as dragging from the 3D world into the 2D GUI (and vice versa), but apparently I (kind of) have the last word about it. So if something is going to take forever, or if it’s too difficult/buggy to add, it’ll probably get dropped altogether or pushed back until much later, when the core mechanics are finished.
With the technical specs cleared up, I managed to add quite a few features to the game, and it’s nice to see it slowly come to life. I may not be here to see the finished product, but I’ll definitely check it out when it gets released to see how much it changes between now and then.
One thing that I’ve noticed about adding game play features is that they (almost) never work exactly how you planned. There’s usually some issue that appears half way through that you didn’t plan for, so everything contains little workarounds. At best it’s just a few lines of ‘helper’ code, but sometimes it gets too big and whole classes get written for that feature.
I suppose that comes down to experience, but you can’t plan for everything, so I’m learning not to plan ahead too much, and try to start coding fairly soon, so those issues appear as soon as possible.
Anyway, it’s the Game Jam this week, so the other developers are getting to grips with UDK (so I actually get to help them for a change), and everyone is busy, so we’ll have our Scrum meeting next week, then hopefully focus on grinding this game out.