I'm working on a d20ish homebrew system and have actions as follows
Code:
Full Round: this may be swapped for:  a number of attack actions and an equal number of minor actions depending on your BaB. 

Standard:  this may be swapped for 1 attack action, or for 1 move action
Attack: this may be used to make 1 melee or ranged attack, it may also be use to initiate or break a grapple. – This action may not be swapped.
Move: this action is used to move. it maybe swapped for a minor action.

Minor: this action is to do something minor. It may not be swapped.


In a normal round you may make:
1 fullround action + unlimited free actions 
OR
1 standard + 1 move + 1 minor + unlimited free actions.
These may be swapped as above.
Is this really complex?
it seems simpler than d20 to me, but i designed it.
It means i can have opportunity attacks are 1 attack action.
And It means that crossbowmen (well those that can load as minor) can make multiple attacks as a full round action
(without the weirdness that rapid reload does (it is odd if you read it))