So it can be named anything that isn't already a variable? That makes sense.
Like Zeblote said, you can name variables whatever you want. When you see a line like this:
function addResource(%client,%resource,%amount,%modifier)
Don't think of the parameters within the parenthesis as predetermined names. When this function is called, some values are going to be passed to it. What you put in the parenthesis are the variables you wish these values to be placed into, so that you can access these values from within your code. That is to say, if four values are passed, you can retrieve the first value with %client, the second value with %resource, and so on. As such, you could use code such as this:
function addResource(%a,%b,%c,%d)
And the value that was originally going to be accessed with %amount will now be accessed with %c. However, that is usually less appealing to read, so many scripters will name their parameters something more revealing for when they go back to the code in several months or when others take a look at it.