Earlier this year, we released userpoints 2.x API, and it was very well received. There are now many contrib modules for userpoints available for download.
However, things have to keep moving, and new features are being requested that dictate the API has to change, and more arguments to be passed.
So, here is what I am proposing for the API 3.x. Basically, we move to an argument of arrays like FormAPI and everything else in Drupal. This will avoid positional parameters.
If you use Userpoints, or write modules that use the API, please comment in the above issue. Your input will influence the future of Userpoints.