O Cliente de Jogo: uma narração

Vamos examinar a imagem abaixo como um exemplo de como funciona o cliente de jogo do "World of Warcraft". Nela, uma xamã chamada Yellowbell está coletando uma pedra para um quest, mas ela percebeu a presença de um goblin que está prestes a atacá-la. Eis o que está acontecendo da perspectiva do cliente:

  1. Após extrair os dados de arquivos armazenados no disco rígido do computador, o cliente cria uma representação do ambiente em torno de Yellowbell.
  2. O cliente informa ao servidor da posição de Yellowbell e recebe informações sobre objetos estacionários e objetos móveis, ou sobre mobs, em volta dela. Um mob é em essência qualquer objeto errante no mundo, mas é usado com maior freqüência para descrever inimigos que podem ser atacados.
  3. Quando Yellowbell tenta pegar a pedra, o cliente diz ao servidor o que ela está fazendo. Ele também mostra uma barra de status, mostrando ao jogador quanto tempo ele levará para recuperar a pedra.
  4. O cliente recebe informações sobre o ataque do goblin do servidor. Ele interrompe Yellowbell que está coletando a pedra quando o goblin a ataca. O cliente envia informações para o servidor sobre como Yellowbell se defende e recebe informações sobre as ações do goblin e a progressão da luta.
  5. Quando Yellowbell mata o goblin e termina de coletar a pedra, o cliente para de mostrá-la no chão e em vez disso mostra um ícone representando ela no inventário de Yellowbell. Ele informa ao servidor que Yellowbell coletou a pedra, assim outros jogadores não a verão mais no mundo do jogo.

World of Warcraft standard user interface
2004-2007 Blizzard Entertainment, Inc. Todos os direitos reservados. The Burning Crusade é uma marca registrada, e World of Warcraft e Blizzard Entertainment são marcas registradas da Blizzard Entertainment, Inc. nos EUA e/ou em outros países.
O cliente de jogo mostra o que está acontecendo no mundo e mostra sua interface do usuário

Esses são apenas os destaques. O cliente acessa ou recebe informações constantemente sobre o mundo do jogo e os personagens que estão nele. Quanto mais personagens existirem por perto, mais trabalho o servidor tem de realizar. Por isso alguns jogos podem ficar lentos até travar em áreas altamente povoadas - a CPU e o processador de vídeo do computador não conseguem acompanhar todas as informações que eles precisam exibir. Em alguns casos, a taxa de quadros, medida em quadros por segundo (FPS), podem cair dramaticamente, fazendo com que os jogadores vejam o mundo como uma série de imagens contínuas em vez de uma cena em movimento.

O cliente também armazena informações sobre seu personagem e suas opções no jogo na pasta WTF em seu disco rígido. Os arquviso nessa pasta estão normalmente em um dos três formatos:

  • arquivos Texto (TXT);
  • arquivos WTF, os quais podem ser abertos e lidos com um leitor de texto (como o TextEdit em um Mac ou Notepad em um PC);
  • arquivos LUA e LUA.BAK, os quais vêm da linguagem de programação Lua.

Vamos ver o Lua - a linguagem usada para criar os addons do "World of Warcraft" - na próxima página.

Construindo um Mundo de Jogo

O mundo que você vê quando joga o World of Warcraft começa com um esqueleto do desenho ou estrutura - um conjunto de polígonos que dá as dimensões da paisagem. Por cima estão as texturas que dão todas as cores e a arte gráfica para a superfície por baixo. Imagine esticar um para-quedas colorido sobre um trepa-trepa, aí você tem uma boa idéia de como isso funciona. O mundo é também cheio de acessórios, ou objetos decorativos. Os jogadores podem interagir com alguns acessórios como cadeiras, fogo para cozinhar e portas levadiças.