I have a few things to discuss and I hope everyone can follow along and give me the advice I need.

Back in January, I agreed to write a multi-player Chess game for a client. I quoted a really low price just because I was strapped for cash.

Since then, I have been through numerous changes ranging from small cosmetic adjustments, to large scale week long modifications. None of these changes were in the original specification, and with the promise of more work, I let them slide through (except for one which I charged a token amount).

Now my client is on to the next game he wants me to write and I quoted him on a spec a month ago which is still a really low price (not as bad as the first job, but still way under market rates).

My problem is that he still owes me 40% of the money from the first job and has delayed the payment a number of times. I was supposed to be paid nearly 2 months ago. The first two times that the payment didn't come on the promised date, I was given the typical "You will get it next week" line. The third time, the excuse was that he wanted a CD mailed to him with the game (It's been running on his server some time now). So, two weeks ago I mailed the CD. He claims he has not received the CD, but I don't feel like sending another CD just because I think he's trying to screw me.

To top it off, he has now come up with a major design change he wants done to the second game. It's a change big enough to justify re-quoting the entire game and means a total re-write of much of the code from the first game that was supposed to be shared between all 10 games this guy wanted.

I know he won't pay much more than I quoted the games for (that's why I quoted them so low), but I'm now at the point where I just want to drop him. I have one outstanding bug in the first game (which I learned about yesterday) and another cosmetic change.

I want to see his site be a success, but I don't want to spend 2 months on each game (when they should take 3 weeks) just because he can't stick to a plan. I also don't want to get screwed with being paid on each job.

My decision would be a whole lot easier if he hadn't paid me anything yet (I could just drop him and cut my losses), but I'm really not sure how to handle this.

Anyone have any suggestions?