Como criar jogos clique aqui e descubra

13-12-2010 19:32
Uma apresentação ao M.U.G.E.N + um pequeno tutorial

Bom, primeiramente, o que é o mugen? É uma engine de jogo de luta tipo Street Fighter, Mortal Kombat, onde se pode ir adcionando lutadores (characters, ou chars), cenários (stages), músicas, abertura (intro), barra de vida (life bars), screenpacks (pacote de intro, telas de seleção, versus, lifebars, etc. do mesmo estilo). Um screenpack de SNK vs. Capcom serve p/ o mugen parecer um autêntico SNK vs. Capcom, mudando apenas os chars e cenários, que fica a sua escolha.

Tudo baixado separadamente em sites na net (no fim do tutorial tem alguns links bons)

Quem, lá pelos anos 90 nunca pensou numa luta entre Ryu x Scorpion? Com o mugen isso é possível, sem falar que tem milhares de chars p/ o mugen, mesmo não sendo personagens de luta, como Mario, Alex Kidd, Simpsons, etc... Além, claro, de todos os chars de séries de jogos de luta como King of Fighters, Street Fighter, Samurai Shodown, Darkstalkers/Nightwarriors, e por aí vai...

 

É possível jogar 1 contra 1, 2 contra 1 ou até 2 contra 2 ao mesmo tempo (2 ou 3 controlados pelo cpu). Sem falar que é compatível com o controle de PlayStation p/ pc.

A quantidade de chars p/ colocar na tela de seleção é ilimitada, pode pôr 10 chars ou 1000 chars!!! O meu tá com mais de 700 chars na tela de seleção. Inevitavelmente, os "quadradinhos" de cada char ficam minúsculos.

Algumas fotos de mugen:


 
 
 
 
 
Como instalar o M.U.G.E.N

Instalar? Quem disse que precisa instalar/compilar??? Basta baixar, descompactar e pronto, a pasta Mugen vai surgir e já vai funcionar. Simples, não???

O único trabalho q vc terá é de baixar o mugen que tem apenas 2.6MB. Pode baixar nesse link:

https://www.mugenation.com/stats/download.php?id=812 (2.6MB). P/ descompactar é necessário apagar o último .bz2 antes.

Uma dica: para jogar o mugen no Kurumin, alguns chars pedem a lib allegro. É só entrar no Konsole e digitar o texto abaixo p/ baixar a lib (400 e poucos kb):

sudo apt-get install liballegro4.1

Arquivo select.def: Adicionar Chars, Stages & som no M.U.G.E.N

Após baixar um char na net, jogue a pasta do char dentro da pasta "chars". Cenários na pasta "stages" e músicas na pasta "sound" que tem que ser criada no mesmo diretório do executável do mugen, onde estão as outras pastas "chars" e "stages".

Já colocados nas devidas pastas, abra o arquivo select.def dentro da pasta "data" e procure as linhas

;Insert your characters below.
kfm, stages/kfm.def

Note que o kfm é a pasta do lutador padrão (não zipada) e o kfm.def é o cenário em que ele vai aparecer se ele for seu adversário no modo arcade. Note também que não tem um som específico p/ ele como adversário, então o mugen vai carregar a música que está especificada no arquivo do cenário (kfm.def), se ele tiver música.

Então é só copiar os nomes do char e do stage baixados numa nova linha:

;Insert your characters below.
kfm, stages/kfm.def
SF/Cyber_Akuma, stages/Mortal Kombat/dead-pool.def, music=sound/xmen.mp3, includestage=1, order=9

P/ organizar, o Cyber Akuma tá dentro da pasta SF criada (q está dentro da pasta chars), assim como o cenário q está dentro de uma pasta Mortal Kombat criada dentro da pasta stages. Mesmo o cenário tendo música própria, ao enfrentar o Cyber Akuma a música de fundo vai ser a do xmen. Note que somente o nome/pasta do char e do stage são obrigatórios, o resto é opcional.

Se quiser um cenário aleatório p/ um char é só pôr "random" ao invés do stage:

kfm, random

ATENÇÃO: se o nome do arquivo .def do char não for exatamente o mesmo nome da pasta dele, tem que ser colocado "nomedapasta/nomedoarquivodef" (p/ chars zipados é obrigatório a pasta e .def. terem nomes idênticos). Ex.:

SF/Cyber_Akuma/cyberakuma.def, stages/Mortal Kombat/dead-pool.def, music=sound/xmen.mp3, includestage=1, order=9

ATENÇÃO 2: Somente os chars podem ser zipados. Os stages, músicas, etc. não...
Alguns chars zipados podem apresentar problemas em chars q tenham subpastas, em chars em q o arquivo .cns não tenha uma linha em branco na última linha e chars que tenham no arquivo .def uma linha com o nome de algum arquivo .txt incluído na pasta. Em todos os casos é possível fazer as mudanças necessárias.

Notei q diferente do winmugen alguns chars só estão abrindo colocando o nome da pasta e o nome do .def (mesmo com nomes iguais e deszipados). Ainda não sei pq tá assim, então é melhor colocar o nome da pasta e do .def em todos... (p/ pastas zipadas só se deve colocar o nome da pasta, o do .def não)

P/ incluir um cenário p/ os modos versus e watch procure as linhas

[ExtraStages]
;Put extra stages here. They will be available in VS and Watch modes.
;For example, you can insert "stages/mybg.def".
stages/beachrock/beachrock.def
stages/stage0.def

... e adcione uma nova linha em baixo colocando "stages/nomedostage.def"

Nesse exemplo o cenário dead-pool, mesmo não estando na lista , vai aparecer nos modos vs e watch. Por quê? Porque foi incluído o código includestage=1 quando foi colocado o cenário pro Cyber Akuma. Isso evita perder tempo colocando uma nova linha no [ExtraStages]

A linha "arcade.maxmatches = 6,1,1,0,0,0,0,0,0,0" (a linha "team.maxmatches = 4,1,1,0,0,0,0,0,0,0" serve p/ modo team) serve p/ definir quantos chars você vai enfrentar no arcade mode até terminar, além de definir quantos de cada nível (order). O primeiro número equivale ã order=1 (no caso tem 6 lutas contra os lutadores de 1 ordem), o 2 número equivale ã order=2 (no caso 1 luta contra os lutadores de 2 ordem) e assim vai.

Lembra do order=9 que tá na linha do char Cyber Akuma? Significa que ele é um lutador de nível 9 (o penúltimo nível), e só aparece depois de você passar pelos 8 níveis.

Então se vc colocar a linha assim:

arcade.maxmatches = 2,1,1,1,1,1,1,1,1,1

significa que vc irá enfrentar 11 lutadores até terminar; dois de nível 1 (order=1) e + um de cada nível seguinte. Se vc tiver centenas chars, vai ser escolhido aleatoriamente um char do nível onde vc está (Se vc estiver no nível 9 e tiver + de um char como order=9 será escolhido aleatoriamente um deles)

Lembrando que você precisa adicionar o comando order=x (o x é um número entre 1 e 10) na linha do char. Se não colocar, o char vai ser de ordem 1 por padrão.

Configurando o mugen.cfg

Aqui tem muita coisa p/ "fuçar", mas vou colocar apenas as mais importantes.

Desativar o debug: p/ tirar aqueles textos da tela, procure a linha

Debug = 1

e altere para 0.

Resolução de vídeo: procure as linhas

Width = 320
Height = 240

... e altere os valores. Se seu monitor tiver 800x600, coloque então 640x480, pois se quiser em tela cheia é só escolher a opção de full screen em outra área.

P/ tela cheia, procure a linha

FullScreen = 0
e altere para 1

Ao aumentar a janela, (ou optar por full screen) tem que alterar também 2 linhas:

Procure a linha

Stretch = 0

e altere p/ 1

e na linha

DoubleRes = 0

altere p/ 2 (se quiser o efeito "linhas de tv" altere p/ 3)

Modificando o system.def

O sytem.def altera a parte visual/musical do mugen. É recomendável criar uma cópia antes de modificar qualquer coisa no caso de alterações desastrosas.

P/ incluir músicas na abertura, tela de seleção e tela de versus: Procure as linhas (não estão uma logo embaixo da outra)

title.bgm =
select.bgm =
vs.bgm =

e coloque, respectivamente, as músicas da tela-título, da tela de seleção e da tela de versus. Funciona tanto mp3 quanto arquivos mid. Se estiverem na pasta "sound" fica por ex.:

title.bgm = sound/musicatitulo.mp3
select.bgm = sound/musicadoselect.mid
vs.bgm = sound/vs.mid

P/ alterar os nomes das opções da tela título é só renomear os textos entre aspas das seguintes linhas

menu.itemname.arcade = "ARCADE"
menu.itemname.versus = "VS MODE"
menu.itemname.teamarcade = "TEAM ARCADE"
menu.itemname.teamversus = "TEAM VS"
menu.itemname.teamcoop = "TEAM CO-OP"
menu.itemname.survival = "SURVIVAL"
menu.itemname.survivalcoop = "SURVIVAL CO-OP"
menu.itemname.training = "TRAINING"
menu.itemname.watch = "WATCH"
menu.itemname.options = "OPTIONS"
menu.itemname.exit = "EXIT"

P/ aumentar a quantidade de espaço p/ colocar personagens na tela de seleção tem que aumentar a quantidade de linhas e colunas de "quadradinhos" (ou cells). procure as linhas

rows = 2
columns = 5

Note q está com 2 linhas e 5 colunas, totalizando uma capacidade p/ 10 chars (2x5=10)

Quando se enche a tela de espaços p/ chars e precisa por mais chars, tem q diminuir o tamanho dos "quadradinhos" (ou cells). Procure a linha

cell.size = 27,27

e diminua os valores 27,27 p/ um valor melhor (esses valores são medidos em pixels).

P/ mudar a posição das cells altere os valores da linha

pos = 90,170

Um pouco abaixo tem também umas linhas p/ se alterar o tamanho das fotos (ou portraits ou ainda avatars) dos chars mostradas nas telas de seleção e de vs, além de outras opções do tipo...

Os screenpacks já vem configurados automaticamente, então derrepente é mais fácil pegar um sp já configurado do jeito q vc quer (desde q seja um sp compatível com winmugen/linux)

Problemas de compatibilidades

O mugen inicialmente foi lançado apenas p/ dos, então muitos dos chars/stages p/ essas versões antigas em dos não funcionam no mugen linux/winmugen . Todos aqueles chars p/ winmugen funcionam perfeitamente no mugen linux (na verdade o winmugen é um hack do mugen linux, uma vez q a difunta elecbyte não chegou a lançar uma versão p/ windows a não ser as versões dos).

Isso não quer dizer q não existe solução p/ esses chars de dos .Mas é preciso convertê-los p/ os padrões do winmugen/linux.

Alguns chars e stages são bem simples de converter: basta abrir o arquivo .def deles e trocar as barras de para / (no caso de stages) e colocar aspas no nome da linha "name e "displayname". Ex.:

De:
name = SPINAL
displayname = SPINAL

Para:
name = "SPINAL"
displayname = "Spinal"

O "name" é p/ o nome q o criador do char colocou e o "displayname" é p/ o nome q vc quiser q apareça na hora de jogar. Algumas versões antigas não tem a linha "displayname, o que não impede de vc criá-la

Fazendo apenas essas mudanças já vai ter uns chars q vão passar a funcionar; mas a grande maioria tem q fazer mais algumas coisas em outros arquivos como o .air e o .cns além do .sff no caso de cores alteradas.

Para esses casos tem programas q fazem as convers�es automaticamente p/ facilitar, mas como são programas executáveis windows, só mesmo usando o windows p/ converter.