Por Euler Vicente
Você tem um jogo favorito? Eu tenho: Zanac. Simples assim.
Zanac é o jogo que mais joguei no MSX. Ele me salvava do tédio nas tardes de minha infância no interior da Bahia. De passatempo à motivo de minhas primeiras notas vermelhas, o clássico schmup da Compile representa o ponto de minha vida em que deixei de ser “casual” e me tornei um jogador “hardcore”. Zanac imprimiu minha carterinha de Nerd e provavelmente me levou à profissão de Analista de Sistemas.
Sim, passei a sonhar trabalhando com desenvolvimento de jogos por causa deste bendito game. Infelizmente, a carreira de programador de jogos não me pareceu muito promissora aqui nas terras tupiniquins e fui para a área de banco de dados, mas isso é uma outra estória.
De qualquer forma, compensava minhas frustrações profissionais programando jogos como hobby e adivinhe que jogo mais me inspirava? Eric e Danilo devem ter visto muito de Zanac em Torion… (“nota do editor” Eric Fraga: aguardem conhecer Torion por aqui, breve).
Um pouco sobre o jogo
Lançado em 1986 pela Pony/Compile, Zanac reúne o que todo bom shooter vertical devia ter. Gráficos lindos para a época, trilha e efeitos sonoros excelentes, jogabilidade viciante e muitos, mas muitos inimigos na tela mesmo. É o tipo de jogo que quando seus amigos te viam jogar, e diziam: “cara, como você consegue se desviar de tantos tiros?!” Era o mundo antes do bullet hell, amigos :-)
Os elementos básicos de um shooter vertical: scroll parallax (de um nível apenas), upgrade de armas, inimigos surgindo em padrões definidos e atirar em tudo que se mexer. Não parece ser nada fora do convencional, mesmo para a época (já tínhamos visto isso em Xevious), mas o que difere Zanac de 99% dos outros shooters, é a qualidade de como tudo isso foi realizado. A jogabilidade é perfeita e difícil de ser superada até hoje: é um daqueles títulos que você precisa jogar um pouquinho para perceber a relevância do que digo.
Inteligência Artificial?
Em Zanac controlamos uma nave durante oito fases. Ela é equipada com tiros normais e armas extras, que são obtidos ao destruirmos determinados inimigos durante a partida. Reza a lenda que o jogo tem um sistema de inteligência artificial que adapta os padrões de ataque inimigos às armas que estamos usando e ao tempo que passamos sem morrer, tornando o jogo mais fácil ou difícil. Daí o “A.I.” que existe logo abaixo do título do game exibido na abertura. Na época, não fazia idéia do significado do acrônimo – somente anos mais tarde, graças ao nosso querido oráculo moderno (a.k.a. Google). Apesar dos vários relatos, nunca consegui notar essa tal inteligência artificial do jogo. Talvez seja porque eu tendia a jogar sempre com a mesma combinação de armas: três tiros normais + arma especial número quatro (as esferas girando ao redor da nave). Esta combinação de armas apareceu novamente anos depois num certo jogo indie baiano :-)
Criatividade supera as limitações de hardware
Apesar de estar à frente da concorrência na época, o Z80 (microprocessador do MSX) tinha sérias limitações. Imaginem que os jogos eram limitados à capacidade da memória RAM da máquina de apenas 64KB. A codificação, sons, música, imagens – tudo junto – não poderia ultrapassar este valor. A ROM de Zanac era de apenas 32KB. Os programadores desta época eram os verdadeiros escovadores de bits :-)
Tentarei explicar a mágica que eles faziam:
- Os programadores codificavam em Assembly. Esta provavelmente é a maneira de programar mais próxima da linguagem de máquina. Muito complicada mesmo, mas poderosa e útil para tornar o código enxuto. Hoje em dia, com poder de processamento sobrando, ninguém mais quer saber de Assembly: vai todo mundo de C mesmo – é mais fácil.
- Os cenários são repetitivos? Tem um motivo: o que se fazia (e ainda se faz) é uma técnica chamada Tile Mapping. A idéia aqui é ter um arquivo gráfico chamado TileSet, divididos em pequenos blocos chamados Tiles. Usam-se estes Tiles para montar, um a um, um grande mapa gráfico do jogo. É como se reaproveitassem pequenas imagens para montar uma maior. Este “grande mapa” não existe fisicamente. É apenas uma espécie de array (área de memória com 2 dimensões) em que cada célula do array apontasse para um determinados Tile. O designer do jogo é que tem a trabalheira de montar o mapa como se fosse um quebra-cabeça. Cada célula do mapa aponta para um Tile e o designer segue segue fazendo isso até que o mapa esteja completo. Deu pra perceber o quão trabalhoso era?
- Muito interessante também são os bosses. Notem que, basicamente, só haviam 2 sprites para os chefes (olho pequeno e olho grande). A sacada deles foi montar novos bosses combinando variações do mesmo sprite básico. Assim, a medida em que evoluímos no jogo, chefões “diferentes” surgiam – ainda que fossem o mesmo sprite. A partir deste princípio, apareciam combinações muito loucas. A complexidade estrutural dos bosses aumentava e os chefões se tornavam incríveis!
- Outra solução interessante dos programadores foi à respeito de como exibir aquela quantidade enorme de inimigos na tela. A arquitetura do MSX limitava o suporte a apenas 32 sprites simultâneos; mas, em diversos momentos, muito mais de 32 objetos são vistos na tela! A técnica consistia em alternar rapidamente os frames dos sprites de Zanac. É importante ressaltar que, se alternarmos imagens estáticas numa velocidade maior que 30 vezes por segundo, nosso cérebro mentalizará uma única imagem. Jogo é como filme (pelo menos neste aspecto…): cada frame é um quadro que é rapidamente sequenciado, criando a noção de continuidade e movimento. Em cada frame o programador colocava um grupo de objetos diferente. Quando o cérebro recebe o estímulo visual, ele junta tudo e terminamos com a ilusão de que existem 200 inimigos na tela, ou 4 fantasmas – no caso de Pac-Man do Atari :-) Fazendo uma continha, é possível exibir 960 objetos simltâneos (32 sprites x 30 frames). E mesmo assim percebemos frame drop em momentos do jogo, devido ao enorme processamento associado. Quem reclamava dos slowdowns de Zanac, deveria saber a ginástica necessário para conseguir aquele resultado…
Curiosidades
– Foram lançadas 2 continuações de Zanac para o MSX 1 – nenhuma delas à altura do original. No MSX 2, foi produzido o Zanac Ex, que é realmente muito bom, porém mais fácil que o original.
– No PlayStation 1, o Japão recebeu Zanac X Zanac. Neste, podemos optar em jogar ou o Zanac original (mas a versão do NES) ou o Zanac Neo, que é uma versão que usa recursos bem mais avançados que o original. Zanac Neo é realmente muito bom, vale a pena o fã de Zanac original conhecê-lo.
– Aleste é considerado o sucessor espiritual de Zanac. Surgiu no MSX 2 e faz jus a tradição. Houveram ports para consoles e o 16 bit da SEGA ganhou uma versão excelente deste jogo. O Eric, fã do Mega Drive, deve conhecê-lo como M.U.S.H.A :-)
Considerações finais
Deu pra perceber que gosto mesmo desse jogo, não é? Uma pessoa que chega ao ponto de estudar para fazer um jogo igual é porque deve ser fã mesmo. É como se alguém que adorasse Matrix fosse estudar cinema para um dia fazer um filme parecido.
E eu tive o prazer de jogá-lo diretamente no maravilhoso teclado do Expert. Um jogo de nave praticamente perfeito, num teclado que parece que foi concebido para esse fim. A sensação de jogar num emulador no PC não é a mesma, tenham certeza disso. Mas não deixem de experimentar Zanac.
SCORE
GAMEPLAY: Pena que a escala é limitada em 5 5/5
GRÁFICOS: Não me lembro de um shooter de MSX 1 mais bonito que esse. Os cenários são repetitivos? Já expliquei o por quê. Dá um tempo, tá? 5/5
SOM: Sons muito competentes. Algumas armas tem um sonzinho chato. 4/5
TRILHA SONORA: A música da abertura ecoa na minha cabeça até hoje. Eric, vai rolar um remix, né? 5/5
DIFICULDADE: Na medida certa. Nem é fácil demais nem tão difícil assim. O lance da A.I. é brilhante para um jogo de 1986! 4/5
DADOS
NOME: Zanac
PLATAFORMA(S): MSX, NES, PS1 e Virtual Console (Wii)
DISPONÍVEL EM: Cartucho/K7 no MSX, PC via emuladores e Wii via emulação
ANO: 1986
DESENVOLVEDORA: Compile
DISTRIBUIDORA: Pony
* * *
Filed under: Ontem | Tagged: jogo de nave, msx, retrogame, schmup, shoot'em up, zanac | 32 Comments »