sábado, 20 de fevereiro de 2010


Tutorial basico criar stages para mugem

[Info]
name = "nome do stage"
Aqui você coloca o nome do cenário que o Mugen vai ler. Lembre-se que o nome deve estar entre aspas.
[Camera]
startx = 0
starty = 0
A posição inicial da câmera, que normalmente você deixará em 0 e 0. Mas...vc pode conseguir alguns efeitos interessantes, que eu já vou explicar.
boundleft = -220
boundright = 220
Aqui determinamos o tamanho do cenário, informando quantos pixeis a câmera está habilitada a "andar" para a esquerda (left) e direita (right). Varia muito, de stage para stage,quanto maior for o stage, maiores serão estes valores, assim como quanto menores forem os stages...menores serão os valores.
A partir deste ponto, você poderá conhecer uma técnica muito chata que é utilizada em muitas coisas nesta vida: A TENTATIVA E ERRO. Geralmente, eu faço assim: vejo tamanho da imagem central (na maioria das vezes o fundo e/ou o chão) e divido por dois. Neste caso o stage tinha 440 pixeis de tamanho, entao ficou 220 para cada lado. O tamanho mínimo para um sprite de largura é de 320 pixies.
boundhigh = -60
boundlow = 0
A mesma coisa acima, mas aqui determinamos o quanto a câmera se movimenta para cima e para baixo. Vale lembrar que o movimento para cima SEMPRE tem valor negativo! A altura mínima do stage é de 240 pixeis, então se seu cenário tiver esta altura, deixe tudo em 0. Caso contrario você verá erros quando pular com seu char, chamado de "Refração Infinita" por muitos, que é o mesmo que você colocar um espelho na frente do outro. Se seu cenário for mais alto que 240, você deve colocar o valor da diferença. Ex: seu cenário tem 300 pixeis. 300 - 240 = 60 pixies no boundhigh.
verticalfollow = .2
Isto determina quanto a câmera vai se movimentar para acompanhar o lutador que estiver mais alto (Não, não bêbado...alto em sentido de distância do chã0, hehe), que pode variar de 0 a 1: Se for 0 a câmera não irá se mover, se for igual a 1 ela perseguirá o lutador mais alto, o que pode atrapalhar a visão do cenário se ele não for alto. Normalmente, deixamos isso em .2, mas pode ser necessário aumentar isso em cenários maiores.
tension = 50
a mínima distância que um char deve estar da borda do cenário para que a câmera comece a se mover. Normalmente voce não irá mexer nisso. Número muito grandes vão deixar voce tonto ao lutar (voce mesmo, não o char...) e número pequeno farão seu char sair da tela...sem ela se mover.
[PlayerInfo]
p1startx = -70
p1starty = 0
p1startz = 0
p1facing = 1
p2startx = 70
p2starty = 0
p2startz = 0
p2facing = -1
Posições iniciais X,Y e Z dos lutadores, sendo X na horizontal, Y na vertical e Z a profundidade (Viu como sua mãe estava certa quando falava para voce estudar matemática?). Os valores X são geralmente estes, sendo que se voce fizer eles menores (como -50 e 50) os lutadores estarão mais pertos um do outro no começo do round. Os valores Y geralmente são zero...mas tem outro efeito interessante aí, já explico. Os valores Z? Esqueça-os...não funcionam mais.
No parâmetro FACING existe outro efeito interessante: 1 quer dizer direita e -1 quer dizer esquerda.
leftbound = -1000
rightbound = 1000
topbound = 0
botbound = 0
O mesmo que fora definido acima, mas em relação ao movimento do char. Com isso, o char pode movimentar-se 1000 pixeis para ambos os lados. O Top e o Bottom bound não funcionam para nada e voce não precisa mudar.
[Scaling]
topz = 0
botz = 50
topscale = 1
botscale = 1.2

[Bound]
screenleft = 15
screenright = 15
Mais uma coisa que geralmente não mexemos, mas esta tem a ver com a distância que um char pode chegar na borda de um cenário. Colocando números maiores, voce ficará mais longe e colocando números menores você sumirá da tela.
[StageInfo]
zoffset = 200
É a definição de em que altura o chão está, podendo ser de 0-240. Mas recomenda-se usar algo entre 200 - 240.
autoturn = 1
Isto faz o char sempre se virar para o oponente. A não ser que voce queria ver seus chars que nem mongóis na tela, deixe isso em 1.
resetBG = 1
Faz com que a animação do cenário seja rosetada entre os rounds. Se você está criando algo como um efeito de anoitecer, deixe isso em 0.
Hires = 0 significa que stage será normal 1 o seu stage será hires
[Shadow]
color = 32,32,32
Os valores são dados em RGB (Red Green Blue ou Vermelho Verde e Azul), que pode ir de 0 (mais claro) até 255 (mais escuro). Se omitido, será 92,92,92.
yscale = -.1
reflect = 0
o fator de escala da sombra. Quanto mais alto, maior será a sombra. Se for igual a 1, voce não verá a sombra. Maiores detalhes mais tarde. Reflection, como o nome diz, faz com que seja desenhado um reflexo do char no chão.
[Music]
bgmusic =
bgvolume = 0
Aqui você pode usar MP3, MOD, MIDI, ou mesmo CD, e configurar o volume dele. Para desligar a música, simplesmente coloque um ; na frente da linha ou deixe em branco. Se um arquivo inválido for colocado, nada tocará.
[BGdef]
spr = stages\seucenário.sff
debugbg = 0
Aqui definimos qual será o sff que o Mugen irá carregar par o stage. Dubug serve para vermos que há "buracos" no cenário, causado por cores transparentes aonde não deveriam estar.

Preparados para começarmos ?
[BG paisagem]
type = normal
spriteno = 0,0
start = 0, 0
delta = 0.9, 0.9
mask = 0
trans = none
layerno = 0
velocity = 0,0
tile = 0,0
"type" pode ser de três tipos:
normal - usando uma única imagem, sem animação.
anim - usando uma animação constituída de várias imagens
parallax - usando um efeito que dá um visual 3D no cenário, como o chão de vários stages no Street Fighter 2.
"spriteno" informa o grupo da imagem, e o numero da imagem.
"start" informa o ponto inicial da imagem. Eu recomendo colocar o eixo X e Y no lugar usando o “Figther Factory Ultimate” pois fica mais fácil, caso vc coloque as imagens no lugar certo não precisa colocar essa opção.
"delta" informa o quanto os elementos do cenário vão se mexer quandoa câmera executa um movimento panorâmico (de um lado para outro). O normal é 1,1 e quer dizer que os objetos vão se mexer 1 pixel a cada pixel que a câmera se mover. Para dar noção de profundidade, objetos que estão na "mais perto de você" devem ter valores MAIORES que 1, assim se movimentarão mais rapidamente que o cenário...assim como o que estiver mais longe, deve ter valores menores que 1, assim se movem mais lentamente.
"mask" faz com que o Mugen desenhe a cor transparente ou não da paleta. Se vc precisa que um objeto tenha alguma transparência deixe em 1, caso contrário deixe em 0, porque assim você usa menos memória.
"trans”= é usado para configurar uma transparência em uma imagem, que pode ser:
none - quando não ser que nenhuma transparência, é o mesmo que você não colocar nada. Detalhe: se for para ser igual a nada, para que colocar?
add - Faz a imagem ficar mais clara, bem transparente.
add1 - Faz a imagem fica não tão clara e transparente.
sub - faz a imagem ficar mais escura.
"layerno" =indica a posição (camada) que a imagem está, podendo ser 0,1 ou 2(sim, 2...). 0 quer dizer atrás dos personagens, 1 quer dizer na frente deles. E 2 NO TOPO DE TUDO
Em BG, você pode ter três camadas : Layerno = 0 (atrás do char), 1 (na frete) ou 2 (na frente de tudo).
Quando você tem dois sprites com o mesmo layer (digamos layerno = 0), o que for especificado primeiro ficará atrás,e assim sucessivamente. Ou seja, os que você for colocando apos o primeiro, terão prioridade.
"tile" = informa se a imagem vai ser exibida lado a lado (1) ou uma única vez, na posicão x,y. Caso esta opção seja diferente de zero (se for, nem coloca né esperto?) existirá uma opção chamada "tilespacing = X", que informa o quanto de espaço uma imagem tem de outra quando for colocada lado a lado, o que pode ser muito útil.

Se for type = anim
"type= anim" diz que o elemento do cenário será uma animação, que você deve determinar.
"actionno=" número da animação que vai ser usada e determinada logo abaixo.
[Begin Action X]
5,0, 0,0, 4
5,1, 0,0, 4
5,2, 0,0, 4
Aqui é exatamente igual ao AIR do char, usando os mesmos valores:
a,b, c,d, e, f,g
"X" = é a animação que você configurou lá em cima.
"a" = é o grupo da imagem
"b" = é o número da imagem
"c" = a posição X
"d" = a posição Y
"e" = o tempo que a imagem irá aparecer
opcionais:
"f" = pode ser V, H ou VH - V vira a imagem Verticalmente, H vira Horizontalmente e VH gira em ambos.
"g" = pode ser A,A1 ou S - ADD, ADD1 ou SUB como no parâmetro trans acima.

Se for type = parallax
"type = parallax" - informa que usaremos o efeito parallax
Existem duas maneiras de se ligar esse efeito:
1- Usando TILE
width = x1, x2
x1 = o tamanho do topo da imagem
x2 = o tamanho do fundo da imagem
Usamos isto quando for uma imagem que seja repetida (Tiel) varias vezes, como um chão, etc. Se vc for usar isto num chão, faça com que o x2 seja o dobro do x1. Se for para ser no teto, faça o contrário (x2 metade do x1).
2- não usando TILE :
xscale = x1, x2
x1 = o tamanho do topo da imagem
x2 = o tamanho do fundo da imagem
Usamos isto quando for uma imagem única, que NAO seja repetida (Tile)...e todo resto é igual acima.
yscalestart=
Isso é meio chato de explicar, mas vamos lá. Seria a escala da largura da imagem 100 quer dizer 100% de escala que é o tamanho original. Quanto maior for este valor, MENOR será o tamanho da imagem. E quanto MENOR for o valor MAIOR são inversamente proporcionais.
Ex:
[BG FLOOR]
type = parallax
spriteno = 1, 0
start = -300, 168
delta = 1, 1
tile = 1, 0 ;isso deve ser incluido quando vc usar width
width = 605, 815 ;815 é o tamanho da imagem
yscalestart = 113
yscaledelta = 0.9
e aqui terminamos a parte básica.

Nenhum comentário:

Postar um comentário