VegaStrike – The Open Source Gaming Strikes Back!

20 anos atrás, estava sentado à frente do meu velho ZX Spectrum e explorava o espaço exterior num simulador 3D de uma nave espacial. Era um mercador, e no meu porão de carga levava preciosos metais e minerais para vender no planeta mais próximo. Mas eis que subitamente sou contactado no meu canal interno de comunicações: uma estrela nas imediações vai entrar em supernova e a população precisa de fugir dali. Será que vou aceitar a missão?

O jogo chamava-se Elite, e hoje em dia rir-nos-íamos da parte “3D”, pois as naves eram todas em wireframe . Mas o Spectrum pouco mais conseguia do que isso. Elite tornou-se um clássico dos clássicos. Já haviam simuladores de vôo e de naves espaciais na altura, mas este jogo era diferente. Havia combate, é certo, e ganhavam-se pontos por destruir piratas e alienígenas, mas o cerne do jogo era exploração e comércio entre sistemas solares.

Acompanhado de uma história de FC razoável, que falava no “lendário planeta no hiperespaço”, lá percorriamos o universo (cerca de 8 galáxias com uns 60-100 planetas cada, todos eles diferentes), tentando fazer uns cobres aqui e ali, comprando mercadoria e procurando vendê-la com lucro…

E depois haviam as “missões”… coisas “sinistras” que apareciam aqui e ali para tornar o jogo interessante…

Mais tarde, apareceram Elite II, Frontier, Wing Commander e Privateer, também já para PC, e finalmente começamos a entrar na geração de jogos renderizados com texturas realistas. Praticamente todas as casas lançaram os seus simuladores de naves espaciais em 3D, embora recentemente penso que a moda tenha “esfriado”.

VegaStrike é um pouco o seguimento dessa moda. Um conjunto de voluntários desenhou um “engine 3D” bastante razoável (penso que em OpenGL) e colocou-o no SourceForge, uma das maiores comunidades de software open source, com mais de 85.000 projectos e quase 900.000 pessoas registadas. De entre estes todos, um grupo alargado de pessoas começou a contribuir para o jogo: desde o “core engine”, às texturas, aos objectos 3D (planetas, estações orbitais, naves…), passando pela parte económica de jogo, e pelo desenvolvimento de um pseudo-linguagem de programação baseada em Python para a gestão das (várias) AIs e das missões/campanhas dentro do jogo.

Ou seja, trata-se de um jogo desenvolvido pela própria comunidade, para essa mesma comunidade. A “equipa original” fez essencialmente a gestão do projecto. Todos os dias há novas naves, novas texturas, novas missões. Da última vez que fiz um download do VegaStrike, existia já um “corpus” de scripts, meshes e texturas para produzir uma espécie de “clone” muito vagamente baseado no Wing Commander, em que três raças dominantes batalham uma campanha gigantesca, sistema a sistema, pelo domínio do universo… mas tudo em background! Pois o jogador nem se apercebe muito bem do que se passa, tudo o que ele vai fazendo é algum comércio aqui e ali, e olhando para uma ou outra missão de patrulha para ganhar uns cobres extra…

Através das notícias, temos conhecimento de como está a evoluir a batalha. As AIs divertem-se se calhar mais do que o jogador! Para além de objectivos estratégicos (conquistar este ou aquele sector de fronteira, dominar esta ou aquela base, subjugar este aglomerado de planetas e torná-los um estado-cliente…) existem também objectivos tácticos: ao entrar num sistema, a AI lança scripts para determinar qual a melhor abordagem à conquista do mesmo. E à escala mais pequena, os próprios pilotos são scriptados com pequenas AIs para se tornarem mais inteligentes. Ao nível do microcosmos, podemos ter AIs montadas em torres com canhões lasers e mísseis, que procuram optimizar a cadência de disparo contra naves inimigas, de forma a optimizar as munições e maximizar o dano…

O jogo ainda não é multiplayer. Já existe uma boa base para isso funcionar, e já há código para grande parte das coisas. No entanto, essa parte ainda não está feita. Oficialmente, o jogo é um beta bastante estável, embora faltando funcionalidade. No entanto o “engine” tem servido de base para fazer versões de combates com naves no universo Star Trek (praticamente pronto), Star Wars, Babylon 5, etc. etc.

Divertido, claro, é a possibilidade de alteração de TODOS os parâmetros do jogo. Tudo é gravado em ficheiros em formato XML – sistemas, armamento, objectos, referências para texturas, etc. E todos os scripts que representam a “inteligência” do sistema estão em pseudo-Python (no entanto há APIs para integração com o “core” em C.). Sendo um jogo open-source, há binários pré-compilados para Windows, Linux e Mac (os três são idênticos e funcionam particularmente bem), mas teoricamente o jogo é “portável” para qualquer arquitectura que suporte OpenGL (PS2? eheh).

E com o progressivo abandono das casas principais deste formato de jogo, é possível que esta seja a única forma de manter vivo o espírito de exploração e guerra espacial em simuladores 3D durante uns anitos até a moda voltar a pegar de novo… e todos aguardam com expectativa o funcionamento em modo multiplayer!

Anúncios

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s