7 de outubro de 2016

[Megadrive Homebrew] Phantasy Star side-scroller - Concept demo

O meu amigo Carlos Araldi fez UMA POSTAGEM interessantíssima na nossa comunidade Retro-Gamers Brasil G+ falando sobre desenvolvimento de games para Mega Drive baseado em um kit de desenvolvimento chamado SGDK (Sega Genesis Development Kit) que permite ao desenvolvedor programar em "C". Com a prévia permissão dele, trouxe o post para devido a algumas razões importantes (Cliquem no título do texto para saberem mais)...

A primeira delas é que ultimamente eu ando me envolvendo muito com pessoas que estão no ramo de desenvolvimento de games, a segunda é que ele usou como exemplo algo que até então eu desconhecia, que é uma versão de aventura do Phantasy Star I para Mega Drive.
Com a palavra Carlos Araldi:

Que tal desenvolver seu próprio game para o Mega Drive?
O texto é longo mas vale a pena pra quem se interessa pela área
Na faculdade, eu me dava muito bem em algumas linguagens de programação, sobretudo o famigerado Assembly. Pra quem não sabe, o Assembly é a linguagem mais baixo nível que existe, ou seja, é a que mais se aproxima da própria linguagem da máquina. Conhecer bem o hardware que está trabalhando e ter um bom conhecimento sobre o funcionamento de memórias e seus registradores, é fundamental para começar a entender o Assembly. 
Para desenvolver qualquer coisa para o Mega Drive não é diferente. É importante conhecer o super processador "Blast Processing" 68000 8Mhz da Motorola, o processador auxiliar de vídeo VDP, o Z80 para som e toda a estrutura da memória interna e a ROM do jogo. O +J.F. Souza já faz alguns trabalhos envolvendo manipulação de bits da memória com suas desconstruções de ROMS.
Porém eu, ao querer relembrar e brincar com o Assembly novamente com esta arquitetura do Mega Drive, acabei me deparando com um projeto (em constante atualização) de um kit de desenvolvimento para Mega Drive chamado SGDK (Sega Genesis Development Kit ). A diferença é, que ao invés de programar em baixo nível (muito mais complexo), o kit permite ao desenvolvedor programar em "C" (alto nível e menos complexo), não sendo necessário sendo menos necessário um conhecimento profundo do hardware do Mega. Um conjunto de bibliotecas e funções prontas já fazem todo o trabalho pesado. O site com o download do kit:
Download do SGDK p/ Windows:

Download do SGDK com instruções p/ Linux:

Instalação e uso básico no Windows:

Instalação do kit e como compilar a ROM no Linux:

Tutoriais:

Manual técnico do Mega:
No kit já contém o compilador para converter seu código direto para o arquivo formato .bin do Mega Drive, ou seja, a ROM. Ainda assim não é uma tarefa simples como nos devkits atuais. A instalação não é simples pra quem nunca mexeu com isso e mesmo assim precisa de um certo conhecimento em lógica de programação.

Agora porque não desenvolver um jogo nos devkits atuais com os recursos ilimitados dos hardwares atuais ao invés de um hardware limitado, ultrapassado e de difícil conhecimento? Opinião minha: Conhecimento é poder. Além de ganhar um p*ta aprendizado na área da ciência da computação, hardwares por conseguinte em diversas áreas, inclusive automação e robótica (veja só), também força o desenvolvedor a aguçar a criatividade, fazendo criar mais por menos devido à limitação do hardware dos consoles antigos. É só ver alguns milagres que conseguiam fazer com apenas 8 Mbits de ROM usando 64K de RAM em comparação à algumas grandes merdas atuais com vários Gbytes de desperdício.
Não estou criticando os consoles atuais (até mesmo pq também possuo) e nem encorajando futuros desenvolvedores a se embrenhar no mundo dos bits.
Certamente ninguém mais vai ganhar dinheiro com jogos em plataformas antigas, mas com certeza vai deixar uma bagagem enorme até mesmo para começar a desenvolver jogos para consoles atuais... é um grande aprendizado. E para os puristas, é um hobbie kkkkk.
Eu estou começando a arranhar a superfície. Já consegui fazer aparecer mensagens na tela ao pressionar os botões kkkkkk. Ainda pretendo fazer alguma coisa... deixo um post pedindo ajuda para os pixel-artistas da comunidade.
Por curiosidade, vou deixar um vídeo de um alpha do Phantasy Star em side-scroller, desenvolvido para o próprio Mega Drive que achei muito interessante o trabalho do cara.

AQUI você encontra um tutorial ensinando a instalar o SGDK (SEGA Genesis Development Kit) em ambiente de desenvolvimento Eclipse para Windows. Bem, ao meu ver, considero extremamente importante ao menos uma pincelada num sistema tão antigo de programação, porque isso nos ajuda a observar tanto os recursos de desenvolvimento de games da época, suas dificuldades e limitações, quanto uma parte do histórico de evolução da ferramenta de criação de jogos. Agradecimentos ao meu amigo que me permitiu usar o texto dele. Vida Longa e Próspera à todos!
\\//_

Um comentário:

  1. E vida prospera á esse blog e o seu dono(a). Parabéns pelo esforço de manter esse blog vivo.

    ResponderExcluir