/**
  * Set new server options using the struct passed as parameters.
  * Mandatory fields:
  *  Name, Comment, Password, PasswordForSpectator, NextCallVoteTimeOut and CallVoteRatio.
  * Ignored fields:
  *  LadderServerLimitMin, LadderServerLimitMax and those starting with Current.
  * All other fields are optional and can be set to null to be ignored.
  * Only available to Admin.
  * A change of any field starting with Next requires a map restart to be taken into account.
  * @param Structures\ServerOptions $options
  * @param bool $multicall
  * @return bool
  * @throws InvalidArgumentException
  */
 function setServerOptions($options, $multicall = false)
 {
     if (!($options instanceof Structures\ServerOptions && $options->isValid())) {
         throw new InvalidArgumentException('options = ' . print_r($options, true));
     }
     return $this->execute(ucfirst(__FUNCTION__), array($options->toSetterArray()), $multicall);
 }