Self motivation can be a big problem. When you lose your momentum or enthusiasm in any project it's hard to pick it back up again. With Corrosion, I had that when I was trying to figure out what to do with the pathfinding algorithm. It was just not performing and it was a draining and harrowing experience. It's still not the way I want it to be, but at least I got it to work to a degree that I could continue.
Then it was implementing spells in a solid way. Shadowrun spells are funny things; they don't operate in a uniform way, so there's a lot of exceptions that you have to build into the code. I've got the spells implemented for players now, but implementing it for enemies is going to be a bit of a pain still. That's where I am right now, thinking about the best way to implement them for enemies. Luckily, I was smart enough to build in several hooks when I was busy setting them up for characters, so it's definitely not going to be quite so difficult as when I would have to build it from the ground up, but still.
Surprisingly, it's also not about the reward; the reward will be a whole new mission that's just waiting to be used once spells get done. All the players are begging me for more content while I plug away at the foundation and the new mission, The Arena, is just sitting there waiting for me to get off my ass and do it. I suspect it's going to be about a week's worth of work. So about 20 hours in total, so that's not so bad, it's just the start that sucks. I'm an idiot. :)
And I can't even start to think about implementing spells into the PvP engine, because that requires a level of sophistication that I don't know how to tackle yet. The PvP engine requires a lot of sophistication it's lacking right now. The combat for characters is all automated, so ideally you'd make a few smart decisions for characters, like when to reload their weapon, when to switch to unarmed combat when their bullets run out, when to apply a slap patch or cast a Heal spell, how long to keep casting spells and at what wound level do you not risk any further drain? And ideally, all these things should be lightly customisable for a player.
Anyway, I'm just ranting a little bit. Talking (or writing) about this project usually gets me motivated. I should do it more often. :)