The eleventh argument is actually what I prefer to think of as the handshake argument.
RSM's client and server have the following handshake code:
function GameConnection::setConnectArgs(%a, %b, %c, %d, %e, %f, %g, %h, %i, %j)
{
%j = %j@(%j$=""?"":"\t")@"RSC "@$RSC::Revision;
//Irrelevant code omitted
Parent::setConnectArgs(%a, %b, %c, %d, %e, %f, %g, %h, %i, %j);
}
function GameConnection::onConnectRequest(%cl, %a, %b, %c, %d, %e, %f, %g, %h, %i, %j)
{
%fields = getFieldCount(%j);
for(%ind=0;%ind<%fields;%ind++)
{
%field = getField(%j, %ind);
if(firstWord(%field) $= "RSC")
%version = restWords(%field);
}
%cl.RSCJoinVersion = %version;
if(%version < $RSM::RequiredRSCVersion)
%cl.schedule(0, "delete", "You must have <a:long_link_omitted>revision "@$RSM::RequiredRSCVersion@" or later</a> to play on Realistic Space Mod!<br><br>If you have Client_DRPG, delete it - it is poorly written and breaks clients that play nice.");
Parent::onConnectRequest(%cl, %a, %b, %c, %d, %e, %f, %g, %h, %i, %j);
}
This allows any other mod that 'plays nice' to use the same field as RSM, without either mod breaking in the process.