/set can't set more than 1 variable at a time, from v4.0:
Quote:
40.Added variable support:
/set [-q] <%var> [value]
/unset [-q] <%var> [%var2] ... [%varN]
/unsetall
/inc [-q] <%var> [value]
/dec [-q] <%var> [value]
Can be edited in Variables section in remote dialog.

When support was added to leave off the '/set' in v4.5:
Quote:
55.You can now use an = (equal sign) to assign values to
variables.

%x = 5 + 1
%x = 5 - %y
%x = %x * 2
%x = %z / $2
%x = %x % 3

Can only perform a single operation in an assignment
at this time. You can also still do /set %x 5 + 1.

The context of using the '=' to assign a value to the variable was introduced.

But this still only allowed for one variable to be assigned at a time.

/var has always been able to set multiple variables at a time, from it's introduction in v5.6:

Quote:
99.Added support for local variables by using the /var command:

var %x = 1, %y, %z = $me

Local variables can only be used in the alias in which they
were created and are destroyed when the alias terminates.

There have been subsequent fixes:

v5.61:
Quote:
67.Fixed /var bug which may have caused a gpf if /var was used
incorrectly.

v5.71:
Quote:
62.Improved /var, now handles identifiers containing commas better
though note that you should use the equal sign in the definition,
eg. /var %x = etc.

And one addition in v5.80:
Quote:
94.Added /var -s switch to show local variable being set.

But as is shown above, the documentation has always stated the requirement of the '=' when assigning a value.

The fix in v5.71 even re-iterates the requirement for the '=', and the context of the bug highlights the possibility of parsing issues with values containing comma's.

The ability to assign a value without an '=' in the '/var' command has always been a happy-accident.