Solved
I have managed to create 3 for 2 (or 4 for 3) or n for n-1 discount, where items are in the same product category, (and only if they are in this category).
With only a little bit of extra hand coding, I have linked the variables with the database so the client can change the product category, date parameters, voucher password etc.
If you are comfortable with creating and manipulating arrays in php, it is fairly straightforward
If you are interested, drop me a line and i will post a 'how-to' guide.