protected function obtainServer()
    {
        if (! $this->server) {
            if ($this->argument('server_name')) {
                $this->server = $this->getForgeIdServer($this->servers, $this->argument('server_name'));
                if (!$this->server) {
                    $this->error('No server name found on servers assigned to user!');
                    die();
                }
                $this->server_name = $this->argument('server_name');
            } else {
                if (fp_env('ACACHA_FORGE_SERVER')) {
                    $this->server = fp_env('ACACHA_FORGE_SERVER');
                    if (fp_env('ACACHA_FORGE_SERVER_NAME')) {
                        $this->server_name = fp_env('ACACHA_FORGE_SERVER_NAME');
                    } else {
                        $this->server_name = $this->getForgeName($this->servers, $this->server);
                    }
                } else {
                    $this->server_name = $this->choice('Forge server?', $this->server_names, 0);
                    $this->server = $this->getForgeIdServer($this->servers, $this->server_name);
                }
            }
        }

        $this->checkServer($this->server);
        $this->checkServerName($this->server_name);
    }