• Nenhum resultado encontrado

Manual - PS2BOR

N/A
N/A
Protected

Academic year: 2021

Share "Manual - PS2BOR"

Copied!
60
0
0

Texto

(1)

Manual

Manual

PS2BOR

PS2BOR

Edição: 2.0

Edição: 2.0

(2)

Índice

Índice

Informações

Informações gerais gerais ... ... 33 Beats of

Beats of Rage Rage (BoR) (BoR) ... 3.... 3 INSTALAÇÃO

INSTALAÇÃO ... ... 44 PS2BOR

PS2BOR para para USB USB / / HDD HDD ... 4... 4 PS2BOR

PS2BOR para para CDROM ...CDROM ... ... 44 Criando

Criando ISO ISO de de PS2BOR: ...PS2BOR: ... 4... 4 Compilação

Compilação PS2BOR PS2BOR com com MultiLoader: MultiLoader: ... 6... 6 Edição

Edição de de Jogos ...Jogos ... ... 88 Introdução

Introdução ... ... 88 Extraindo o

Extraindo o conteúdo de um conteúdo de um arquivo PAK: ...arquivo PAK: ... 8... 8 Testando /

Testando / jogando um jogando um PAK descompactado: ...PAK descompactado: ... 9... 9 Compactando pasta DATA

Compactando pasta DATA para arquivo para arquivo PAK: ...PAK: ... 10... 10 Models.txt

Models.txt ... ... 1010 Sobre

Sobre as as entradas entradas Load Load e e Know: ...Know: ... ... 1010 Levels.txt

Levels.txt ... ... 1111 Arquivo

Arquivo da da Entidade Entidade ... .. 1313 1ª

1ª Parte Parte - - Dados Dados do do Cabeçalho: ...Cabeçalho: ... ... 1313 2ª

2ª Parte Parte - - Tipos Tipos de de Animação: ...Animação: ... ... 1515 3ª

3ª Parte Parte - - Configurações Configurações da da Animação: Animação: ... ... 1717 Arquivos

Arquivos de de Sistema Sistema ... .. 2727 Sequências

Sequências Animadas ...Animadas ... .. 2929 Arquivo

Arquivo de de Cenário ...Cenário ... 30... 30 1ª

1ª Parte Parte - - Design Design de de Cenário: Cenário: ... .. 3030 2ª

2ª Parte Parte - - Configuração de Configuração de Objetos Objetos Gerados: ...Gerados: ... ... 3333 Arquivos

Arquivos de de Música Música ... .. 4040 Como

Como converter converter de de WAV WAV para para BOR: BOR: ... ... 4040 Como

Como converter converter de de BOR BOR para para WAV: WAV: ... ... 4141 Arquivos

Arquivos de de Som ...Som ... ... 4141 INDEXAÇÃO DE

INDEXAÇÃO DE IMAGENS PARA IMAGENS PARA USO CORRETO USO CORRETO NO PS2BOR NO PS2BOR ... 43... 43 PASSO 1

PASSO 1 –  – CRIANDO O CRIANDO O MACRO PARA MACRO PARA INDEXAÇÃO: ...INDEXAÇÃO: ... ... 4343

PASSO 2

PASSO 2 –  –  INDEXANDO AUTOMATICAMENTE TODAS A IMAGENS UTILIZANDO INDEXANDO AUTOMATICAMENTE TODAS A IMAGENS UTILIZANDO

O

O MACRO MACRO CRIADO: CRIADO: ... ... 5252 Soluções

Soluções de de Problemas ...Problemas ... ... 5353 -

- Problemas Problemas Não Não Fatais Fatais - - ... ... 5454 -

- Problemas Problemas Fatais Fatais - ...- ... . 5454 Outras

Outras Notas ...Notas ... ... 5555 Sobre

Sobre as as sequências sequências animadas: ...animadas: ... .. 5555 Placar: Placar: ... ... 5555 Tempo: Tempo: ... ... 5656 Projéteis: Projéteis: ... ... 5656 Arquivos

Arquivos Essenciais:...Essenciais:... ... 5656 Limitações: Limitações: ... ... 5757 Links Links ... ... 5858 Créditos Créditos ... ... 5959

(3)

INFORMAÇÕES GERAIS

INFORMAÇÕES GERAIS

Beats of Rage (BoR)

Beats of Rage (BoR)

 Beats of Rage

 Beats of Rage é um semi jogo 3D de p é um semi jogo 3D de pancadaria feito pelaancadaria feito pela Senile TeamSenile Team. É inspirado na série. É inspirado na série StreetStreet of Rage

of Rage, grande jogo popular da SEGA , grande jogo popular da SEGA para o console Gênesis. Entretanto esse jogo usa sprites para o console Gênesis. Entretanto esse jogo usa sprites dodo

 jogo

 jogo King of Fighters King of Fighters (um jogo 2D 1vs1) esses sprites são para heróis e inimigos. (um jogo 2D 1vs1) esses sprites são para heróis e inimigos.

Como um jogo de

Como um jogo de beat 'em upbeat 'em up (pancadaria), este jogo tem características como o  (pancadaria), este jogo tem características como o sistema desistema de combos que funciona pressionando o botão de ataque consecutivamente, pulo e pulo seguido de combos que funciona pressionando o botão de ataque consecutivamente, pulo e pulo seguido de ataque, estilo de ataque especial similar ao usado no

ataque, estilo de ataque especial similar ao usado no SoR2SoR2 ( (Streets of Rage 2Streets of Rage 2), e sistema de agarrão), e sistema de agarrão

similar aos jogos da Capcom. Existem vários

similar aos jogos da Capcom. Existem vários inimigos neste jogo, alguns deles podem executar uminimigos neste jogo, alguns deles podem executar um ataque superior (upper) para atingir o

ataque superior (upper) para atingir o jogador durante um pulo seguido de um jogador durante um pulo seguido de um ataque (voadora),ataque (voadora), alguns deles podem se libertar de agarrões, alguns deles podem pegar

alguns deles podem se libertar de agarrões, alguns deles podem pegar ou arremeçar personagensou arremeçar personagens controlados pelos jogadores, etc. Os motociclistas do estilo

controlados pelos jogadores, etc. Os motociclistas do estilo SoR2SoR2 também podem  também podem ser encontradosser encontrados

aqui. Claro que itens como alimentos e

aqui. Claro que itens como alimentos e vidas (1Up) também estão disponíveis.vidas (1Up) também estão disponíveis.

 Beats of Rage

 Beats of Rage demorou nove meses para se desenvolver. O  demorou nove meses para se desenvolver. O jogo foi então modado e jogo foi então modado e portado paraportado para

outros sistemas, resultando em aumento de popularidade. Mais de um milhão

outros sistemas, resultando em aumento de popularidade. Mais de um milhão de cópias do jogode cópias do jogo foram baixadas.

foram baixadas.

 Beats of Rage

 Beats of Rage foi  foi feito primeiramente disponível para DOS em novembro de feito primeiramente disponível para DOS em novembro de 2003. Apesar de2003. Apesar de

apenas publicidade boca-a-boca

apenas publicidade boca-a-boca, o , o jogo ganhou popularidade rapidamente, derrubando anfitriõesjogo ganhou popularidade rapidamente, derrubando anfitriões espelho como Dreamcast-Scene apenas 24 horas depois de

espelho como Dreamcast-Scene apenas 24 horas depois de concordar em hospedá-lo.concordar em hospedá-lo. Como o jogo foi aberto, foi portado para o Dreamcast e PlayStation 2 (

Como o jogo foi aberto, foi portado para o Dreamcast e PlayStation 2 (PS2BOR v0.1PS2BOR v0.1) . Ele) . Ele continuou a receber portas, pois está disponível em sistemas contemporâneos, incluindo Wii e continuou a receber portas, pois está disponível em sistemas contemporâneos, incluindo Wii e PlayStation Portable, bem como

PlayStation Portable, bem como várias outras plataformas.várias outras plataformas. A razão para o sucesso contínuo de

A razão para o sucesso contínuo de Beats of Rage Beats of Rage é a game engine 2D poderosa que pode ser é a game engine 2D poderosa que pode ser

 personalizada

 personalizada e permite que novos e permite que novos jogos de briga djogos de briga de rua estilo beae rua estilo beat'em up, possam set'em up, possam ser construídosr construídos dentro dela. Os jogos desenvolvidos para a engine Beats of R

dentro dela. Os jogos desenvolvidos para a engine Beats of Rage são comumente referidos comoage são comumente referidos como

mods mods..

Este jogo também é modulável, o que

Este jogo também é modulável, o que permite aos jogadores e/ou desenvolvedores modificar umpermite aos jogadores e/ou desenvolvedores modificar um módulo, no formato PAK, ou

módulo, no formato PAK, ou mesmo criar um do zero. mesmo criar um do zero. O método de modificação é bastante simplesO método de modificação é bastante simples  porque é b

 porque é basicamente constituido asicamente constituido por imagens, por imagens, sprites, arquivos de sprites, arquivos de som no formato wav e som no formato wav e gifsgifs animados, tudo isso para conversão a fim de

animados, tudo isso para conversão a fim de utilizá-los no BoR, posteriormente configurando-os emutilizá-los no BoR, posteriormente configurando-os em arquivos de texto para criação de heróis, inimigos,

arquivos de texto para criação de heróis, inimigos, estágios, etc.estágios, etc. Os arquivos essenciais do Beats of Rage são compostos por um

Os arquivos essenciais do Beats of Rage são compostos por um módulo (bor.pak) e um executávelmódulo (bor.pak) e um executável (bor.exe). No caso do Playstation 2, o

(bor.exe). No caso do Playstation 2, o executável vem no formato "bor.elf".executável vem no formato "bor.elf". Devido a vários recursos que foram adicionados ao BOR ele

Devido a vários recursos que foram adicionados ao BOR ele mudou seu nome paramudou seu nome para OpenBOR OpenBOR ,, deixando o Play

deixando o PlayStation 2 excluído das novas cStation 2 excluído das novas compilações por ompilações por não ter memória suficiente, ficannão ter memória suficiente, ficandodo somente na versã

(4)

Site Oficial Site Oficial:: http://www.senileteam.com/beatsofrage.html http://www.senileteam.com/beatsofrage.html

INSTALAÇÃO

INSTALAÇÃO

A porta BOR para PS2 pode ser executada através dos dispositivos USB / HDD ou CD/DVD-ISO. A porta BOR para PS2 pode ser executada através dos dispositivos USB / HDD ou CD/DVD-ISO. Existem 2 ELF's para PS2BOR. Um

Existem 2 ELF's para PS2BOR. Um para ser usado em CD/DVD-ISO para ser usado em CD/DVD-ISO e outro para ser e outro para ser executadoexecutado  pelo ELF.

 pelo ELF. O BOR.ELF para O BOR.ELF para CD/DVD-ISO não funciona sCD/DVD-ISO não funciona se aberto pelo e aberto pelo USB ou HDD. OUSB ou HDD. O BOR.ELF para USB / HDD não funciona se aberto em uma ISO. Mais detalhes abaixo: BOR.ELF para USB / HDD não funciona se aberto em uma ISO. Mais detalhes abaixo:

PS2BOR para USB / HDD

PS2BOR para USB / HDD

O arquivo

O arquivo PS2BOR_v0.1b.ELFPS2BOR_v0.1b.ELF, tem o tamanho de, tem o tamanho de 489Kb489Kb e é feito para ser  e é feito para ser executado apartir deexecutado apartir de um dispositivo USB /

um dispositivo USB / HDD (Pendrive, HD Interno ou Externo), HDD (Pendrive, HD Interno ou Externo), podendo ser aberto artavés dopodendo ser aberto artavés do uLaunchEL

uLaunchELF, FreeMCBoot, Aba F, FreeMCBoot, Aba APPS do OPL APPS do OPL ou qualquer outro ou qualquer outro homebrew semelhante.homebrew semelhante. Para

Para instalar um jogoinstalar um jogo, crie uma pasta , crie uma pasta com o nome que quizer com o nome que quizer e coloque dentro dela os arquivose coloque dentro dela os arquivos BOR.PAK e BOR.ELF.

BOR.PAK e BOR.ELF. O

O arquivo BOR.PAK arquivo BOR.PAK  e o  e o mod do jogo, deve estar no formatomod do jogo, deve estar no formato .pak e.pak e nomeado como BOR.PAK. nomeado como BOR.PAK. O

O arquivo BOR.ELFarquivo BOR.ELF é o  é o executavél e pode ser acessado atráves de algum programa homebrew deexecutavél e pode ser acessado atráves de algum programa homebrew de PS2 como o uLaunchELF. Pode ter qualquer nome, como o

PS2 como o uLaunchELF. Pode ter qualquer nome, como o Nome do Jogo.ELF  Nome do Jogo.ELF , por exemplo., por exemplo.

Para ter vários jogos, basta criar

Para ter vários jogos, basta criar várias pastas com os nomes dos mesmos e várias pastas com os nomes dos mesmos e dentro odentro o BOR.ELFBOR.ELF e o e o

BOR.PAK 

BOR.PAK  do jogo em questão. do jogo em questão.

PS2BOR para CDROM

PS2BOR para CDROM

O arquivo

O arquivo PS2BOR.ELFPS2BOR.ELF para CDROM tem o tamanho de para CDROM tem o tamanho de 448Kb448Kb e é feito  e é feito para ser executadopara ser executado através da leitora do PS2

através da leitora do PS2 ou em ISO pelo ou em ISO pelo Open PS2 Loader ou qualquer outro homebrewOpen PS2 Loader ou qualquer outro homebrew semelhante.

semelhante.

Criando ISO de PS2BOR:

Criando ISO de PS2BOR:

1) Em seu computador, crie uma pasta com qualquer nome para seu projeto; 1) Em seu computador, crie uma pasta com qualquer nome para seu projeto;

(5)

2) Coloque dentro desta o pasta

2) Coloque dentro desta o pasta o arquivoo arquivo BOR.PAK BOR.PAK  que é o jogo em questão e os arquivos que que é o jogo em questão e os arquivos que vem junto do

vem junto do PS2BOR.ELFPS2BOR.ELF, são eles:, são eles: - BOR.ELF - BOR.ELF - BOR.PAK - BOR.PAK - IOPRP260.IMG - IOPRP260.IMG - LIBSD.IRX - LIBSD.IRX - PADMAN.IRX - PADMAN.IRX - SDRDRV.IRX - SDRDRV.IRX - SIO2MAN.IRX - SIO2MAN.IRX - SYSTEM.CNF - SYSTEM.CNF

3) Para a ISO funcionar no Open PS2 Loader, deve -se trocar a ID do 3) Para a ISO funcionar no Open PS2 Loader, deve -se trocar a ID do jogo:jogo: Abra o arquivo

Abra o arquivo SYSTEM.CNFSYSTEM.CNF pelo Bloco de Notas no Windows, pelo Bloco de Notas no Windows, ele estará assim:

ele estará assim:

BOOT2 = cdrom0:\BOR.ELF;1 BOOT2 = cdrom0:\BOR.ELF;1 VER = 1.00 VER = 1.00 VMODE = NTSC VMODE = NTSC  Na primeira linha

 Na primeira linha substitua BOR.ELF psubstitua BOR.ELF por alguma ID no foor alguma ID no formato: ABCD_123.45rmato: ABCD_123.45 Exemplo:

Exemplo: BOOT2 =

BOOT2 = cdrom0:\ABCD_123.cdrom0:\ABCD_123.45;145;1 VER = 1.00

VER = 1.00

VMODE = NTSC VMODE = NTSC 4) Abra o programa

4) Abra o programa UltraISOUltraISO, Clique em Arquivo > Nova > Imagem DVD PS2., Clique em Arquivo > Nova > Imagem DVD PS2.

 Navegue a

(6)

5) Adicione o arquivo

5) Adicione o arquivo BOR.PAK BOR.PAK  e Clique em Salvar. e Clique em Salvar.

Compilação PS2BOR com MultiLoader:

Compilação PS2BOR com MultiLoader:

Para adicionar vários jogos a uma

Para adicionar vários jogos a uma ISO pelo MultiLoader:ISO pelo MultiLoader: Abra o arquivo PS2BOR.ELF em um

Abra o arquivo PS2BOR.ELF em um Editor HexadecimalEditor Hexadecimal,, nas linhas "0006b5s0 bor.pak.error" e

nas linhas "0006b5s0 bor.pak.error" e "0006b930 bor.pak.Play"0006b930 bor.pak.Playing",ing", substitua

(7)

O arquivo .PAK do jogo deverá ter exatamente o mesmo nome desta mudança. O arquivo .PAK do jogo deverá ter exatamente o mesmo nome desta mudança.

/

/ pode ser usada para cria  pode ser usada para cria um subdiretório.um subdiretório. Exemplo:

Exemplo:

A/D.PAK 

A/D.PAK  = Significa uma pasta chamada "A" na raiz da ISO  = Significa uma pasta chamada "A" na raiz da ISO e dentro dela o arquivo D.PAK.e dentro dela o arquivo D.PAK.  Neste exemp

 Neste exemplo o arquivo BOR.PAlo o arquivo BOR.PAK seria renomeadK seria renomeado para D.PAK e o para D.PAK e colocado na colocado na pasta "A" na raizpasta "A" na raiz da ISO.

da ISO.

Notas:

Notas:

-- PS2BOR PS2BOR não funciona no  não funciona no emuladoremulador PCSX2PCSX2..

- Utilize

(8)

EDIÇÃO DE JOGOS

EDIÇÃO DE JOGOS

Este grande jogo pode ser modificado pelos jogadores ou criadores para m

Este grande jogo pode ser modificado pelos jogadores ou criadores para mudar ou criar seus jogosudar ou criar seus jogos (mods). Este método de modificação é muito

(mods). Este método de modificação é muito simples porque ele provém de figuras, sprites, wavs,simples porque ele provém de figuras, sprites, wavs, gifs animados e conversões deles para o uso em

gifs animados e conversões deles para o uso em BoR, selecionando-os em arquivos de texto (.txt)BoR, selecionando-os em arquivos de texto (.txt)  para fazer he

 para fazer heróis, inimigos, faseróis, inimigos, fases etc.s etc.  Na realidade

 Na realidade, Beats of Rage , Beats of Rage é composto de é composto de Pak e máquina Pak e máquina (Bor.exe). Podemos (Bor.exe). Podemos dizer que Pak dizer que Pak é oé o corpo e máquina é a alma. Por esta razão os mods estão somente na forma de Pak sem a máquina corpo e máquina é a alma. Por esta razão os mods estão somente na forma de Pak sem a máquina (Bor.exe).

(Bor.exe).

Pak não é capaz de ser

Pak não é capaz de ser editado (de um jeito editado (de um jeito normal) é por isso normal) é por isso que modificadores e moderadoresque modificadores e moderadores  precisam de

 precisam descompactar um mod pscompactar um mod primeiro. Depois qurimeiro. Depois que a modificaçãe a modificação estiver terminda, o o estiver terminda, o mod temmod tem que ser compactado para ser jogado.

que ser compactado para ser jogado. É possível jogar este mod sem compactarÉ possível jogar este mod sem compactar mas funcionamas funciona melhor estando

melhor estando compactado.compactado.

Embora criar um mod seja muito simples, BoR tem muitas características que tem seu próprio uso e Embora criar um mod seja muito simples, BoR tem muitas características que tem seu próprio uso e seus lugares próprios (ou texto para ser

seus lugares próprios (ou texto para ser exato) para serem colocadas. Este manual é para exato) para serem colocadas. Este manual é para explicarexplicar essas características e onde elas podem

essas características e onde elas podem ser colocadas.ser colocadas. Devido a falta de características exigidas do BoR

Devido a falta de características exigidas do BoR e muitos pedidos, alguns codificadores foram ae muitos pedidos, alguns codificadores foram a fundo para melhorar o BoR,

fundo para melhorar o BoR, codificaram essas característicacodificaram essas características desaparecidas e cumpriram algunss desaparecidas e cumpriram alguns requisitos. Existe algumas variações do BoR por causa desta e.g, OpenBor, DarkBor e

requisitos. Existe algumas variações do BoR por causa desta e.g, OpenBor, DarkBor e HOR.HOR. OpenBor é o mais avançado e este manual

OpenBor é o mais avançado e este manual inclui suas características. Atualmente o último OpenBorinclui suas características. Atualmente o último OpenBor suporta scripts mas isto não está i

suporta scripts mas isto não está incluído aqui.ncluído aqui.

Introdução

Introdução

Antes de começar qualquer modificação, você

Antes de começar qualquer modificação, você precisa dos ingredientes. A precisa dos ingredientes. A maioria dos ingredientesmaioria dos ingredientes são sprites e textos. Devido a

são sprites e textos. Devido a muitos arquivos necessários e a sua complexidade, é altamentemuitos arquivos necessários e a sua complexidade, é altamente recomendáv

recomendável começar a modificação editando PAKs disponíveis em vez el começar a modificação editando PAKs disponíveis em vez de criar os ingredientesde criar os ingredientes um a um.

um a um.

Outro jeito é baixar algum

Outro jeito é baixar algum BoREdit pack BoREdit pack . O pack contém bastantes ingredientes para começar um. O pack contém bastantes ingredientes para começar um mod.

mod.

Extraindo o conteúdo de um arquivo PAK:

Extraindo o conteúdo de um arquivo PAK:

-

- Para extrair uPara extrair um arquivo PAK m arquivo PAK utilize o progutilize o programa "rama "PAXPLODEPAXPLODE".". - Você precisará dos arquivos "

- Você precisará dos arquivos " paxplode.exe paxplode.exe" e "" e " paxplode.bat  paxplode.bat "para a extração do conteúdo,"para a extração do conteúdo,

Mantenha-os sempre juntos. Mantenha-os sempre juntos.

- Coloque estes arquivos na mesma pasta com

(9)

- Renomeie o PAK como "

- Renomeie o PAK como "bor.pak bor.pak " (sem aspas) caso ele t" (sem aspas) caso ele tenha outro nome.enha outro nome. - Clique duas vezes no arquivo "

- Clique duas vezes no arquivo "paxplode.batpaxplode.bat" para iniciar a extração ou arraste e solte o" para iniciar a extração ou arraste e solte o arquivo .PAK no

arquivo .PAK no PAXPLODE.exePAXPLODE.exe. .. . Se você fizer isso direito,

Se você fizer isso direito, uma janela mostrando mensagens do DOS sobre a extração de arquivosuma janela mostrando mensagens do DOS sobre a extração de arquivos será exibida.

será exibida.

- Os arquivos serão extraídos para uma

- Os arquivos serão extraídos para uma nova pasta chamada "nova pasta chamada "DATADATA".". Dentro da pasta "

Dentro da pasta "datadata", há outras pastas contendo elementos do PAK, agora ", há outras pastas contendo elementos do PAK, agora descompacdescompactado:tado:

--bgsbgs -> os cenários na tela se utilizam das imagens desta pasta. -> os cenários na tela se utilizam das imagens desta pasta.

--charschars ->  -> as entidades (personagens, itens, e obstáculos) na tela se as entidades (personagens, itens, e obstáculos) na tela se utilizam das imagens desta pasta.utilizam das imagens desta pasta. Também há arquivos de configuração das entidades no formato TXT.

Também há arquivos de configuração das entidades no formato TXT.

--levelslevels ->  -> contém arquivos de configuração dos cenários no formato TXT.contém arquivos de configuração dos cenários no formato TXT.

--musicmusic -> contém arquivos de  -> contém arquivos de música (no formato ".bor") que música (no formato ".bor") que são tocadas de acordo com a ordemsão tocadas de acordo com a ordem e configuração dos cenários.

e configuração dos cenários.

--scenesscenes -> contém sequências animadas no formato GIF que são exibidas na tela entre as fases. -> contém sequências animadas no formato GIF que são exibidas na tela entre as fases.

--soundssounds -> contém arquivos de som (no formato WAV) que são tocados de acordo com a -> contém arquivos de som (no formato WAV) que são tocados de acordo com a configuração dos

configuração dos personagenpersonagens.s.

--spritessprites -> contém arquivos de  -> contém arquivos de imagem no formato GIF imagem no formato GIF essenciais para o funcionamento corretoessenciais para o funcionamento correto do BOR. Jamais altere o

do BOR. Jamais altere o conteúdo desta pasta, a não ser que você saiba conteúdo desta pasta, a não ser que você saiba o que está fazendo.o que está fazendo. Além desses, há outros arquivos em separado: "

Além desses, há outros arquivos em separado: "models.txtmodels.txt", "", "levels.txtlevels.txt", e "", e "pal.actpal.act". Cada arquivo". Cada arquivo de texto será explicado em sua

de texto será explicado em sua própria seção abaixo.própria seção abaixo. "

"pal.actpal.act" é paleta " é paleta global. Cada sprite no PAK deve usar global. Cada sprite no PAK deve usar a mesma paleta que é a mesma paleta que é essa paleta global.essa paleta global. Você precisa do

Você precisa do Adobe PhotoShopAdobe PhotoShop para visualizar e criar arquivos " para visualizar e criar arquivos ".act.act".".

NOTA

NOTA: algumas pastas não são obrigatórias. Você pode colocar todos os : algumas pastas não são obrigatórias. Você pode colocar todos os seus arquivos em umaseus arquivos em uma mesma pasta, desde que tudo esteja dentro da pasta

mesma pasta, desde que tudo esteja dentro da pasta "data", assim como os caminhos indicados nos"data", assim como os caminhos indicados nos arquivos de configuração estejam descritos corretamente. No

arquivos de configuração estejam descritos corretamente. No entanto, é recomendável usar pastasentanto, é recomendável usar pastas diferentes como no padrão acima para facilitar

diferentes como no padrão acima para facilitar a modificação. Você pode adicionar outras pastas sea modificação. Você pode adicionar outras pastas se quiser. Apenas certifique-se de que os caminhos estejam corretos.

quiser. Apenas certifique-se de que os caminhos estejam corretos.

Testando / jogando um PAK descompactado:

Testando / jogando um PAK descompactado:

- Coloque os arquivos "

- Coloque os arquivos "bor.exebor.exe" e "" e "bor.pak bor.pak " no mesmo diretório da pasta "" no mesmo diretório da pasta "datadata".".

ATENÇÂO

ATENÇÂO: este ": este "bor.pak bor.pak " não é o mesmo renomeado anteriormente. Este aqui trata-se um" não é o mesmo renomeado anteriormente. Este aqui trata-se um

arquivo vazio (dummy), obrigatório para que o executável possa rodar o

arquivo vazio (dummy), obrigatório para que o executável possa rodar o conteúdo da pasta "conteúdo da pasta "datadata""

sem a necessidade de compactá-la antes. sem a necessidade de compactá-la antes. - Clique duas vezes no arquivo "

- Clique duas vezes no arquivo "bor.exebor.exe" para rodar o projeto a fim " para rodar o projeto a fim de verificar se as mudançasde verificar se as mudanças

feitas estão do seu agrado. feitas estão do seu agrado. - Há uma

- Há uma grande possibilidade de que o executável dê erro durante sua inicialização fazendo comgrande possibilidade de que o executável dê erro durante sua inicialização fazendo com que o "

que o "bor.exebor.exe" não abra. Para verificar o problema, abra o "" não abra. Para verificar o problema, abra o "bor.exebor.exe" através do prompt de" através do prompt de

comando do DOS. Para isso clique na opção "

comando do DOS. Para isso clique na opção " Executar  Executar " no menu inicial do Windows e escreva no" no menu inicial do Windows e escreva no

campo em branco "

(10)

será maximizada e o processo de inicialização deve parar no

será maximizada e o processo de inicialização deve parar no meio apresentando alguma mensagemeio apresentando alguma mensagemm de erro, mensagem esta que será desenvolvida mais a fundo

de erro, mensagem esta que será desenvolvida mais a fundo neste documento em sua respectivaneste documento em sua respectiva seção. Para sair do modo de tela cheia, digite "exit" no prompt do DOS (sem as aspas).

seção. Para sair do modo de tela cheia, digite "exit" no prompt do DOS (sem as aspas).

Compactando pasta DATA para arquivo PAK:

Compactando pasta DATA para arquivo PAK:

- Você precisará de dois arquivos para criar um arquivo PAK: "

- Você precisará de dois arquivos para criar um arquivo PAK: "PACKER.EXEPACKER.EXE" e "" e "makepack.batmakepack.bat".". Mantenha-os sempre juntos.

Mantenha-os sempre juntos.

- Coloque estes arquivos no mesmo diretório

- Coloque estes arquivos no mesmo diretório em que se encontra a pasta em que se encontra a pasta ""datadata".". - Clique duas vezes no arquivo "

- Clique duas vezes no arquivo "makepack.batmakepack.bat" para iniciar a compilação." para iniciar a compilação. Se você fizer isso direito,

Se você fizer isso direito, uma janela mostrando mensagens do DOS sobre a compactação dosuma janela mostrando mensagens do DOS sobre a compactação dos arquivos será exibida.

arquivos será exibida.

- Após alguns segundos será criado o arquivo

- Após alguns segundos será criado o arquivo ""MYMOD.PAK MYMOD.PAK ".".

Models.txt

Models.txt

Este arquivo de texto determina quais entidades serão carregadas na inicialização do BOR. Este Este arquivo de texto determina quais entidades serão carregadas na inicialização do BOR. Este arquivo é obrigatório. Além disso, esse arquivo também determina algumas configurações gerais arquivo é obrigatório. Além disso, esse arquivo também determina algumas configurações gerais  para os mod

 para os modelos. Ele deve eelos. Ele deve estar presente destar presente dentro da pasta "dantro da pasta "data".ta". As entidades a serem carregadas são declaradas a partir de seus

As entidades a serem carregadas são declaradas a partir de seus respectivos arquivos TXT.respectivos arquivos TXT.

Sobre as entradas Load e

Sobre as entradas Load e Know:

Know:

Estas 2 entradas são usadas para carregar entidades no BoR. No

Estas 2 entradas são usadas para carregar entidades no BoR. No entanto, eles não funcionam daentanto, eles não funcionam da mesma maneira. Cada entrada carrega uma entidade e cada uma delas pode

mesma maneira. Cada entrada carrega uma entidade e cada uma delas pode ser descrita noser descrita no

"models.txt" em qualquer ordem, mas é recomendável agrupá-las de acordo com suas características "models.txt" em qualquer ordem, mas é recomendável agrupá-las de acordo com suas características (personagen

(personagens controlados pelo jogador, inimigos, elementos de cenário, etc.) s controlados pelo jogador, inimigos, elementos de cenário, etc.) Você pode adicionar oVocê pode adicionar o caracter # para descrever o que cada

caracter # para descrever o que cada grupo carrega. Este caracter também serve para anulargrupo carrega. Este caracter também serve para anular quaisquer entradas e/ou linhas de comando nos arquivos TXT dentro da pasta

quaisquer entradas e/ou linhas de comando nos arquivos TXT dentro da pasta "data"."data".

Quando devem ser utilizadas: Quando devem ser utilizadas: load {name} {path}

load {name} {path} - {name}

- {name} é um nome que o  é um nome que o jogo usará para identificar a entidade.jogo usará para identificar a entidade.

- {path}

- {path} é o local relativo ao arquivo TXT da enti é o local relativo ao arquivo TXT da entidade.dade. A entidade sempre é carregada quando o BoR é

A entidade sempre é carregada quando o BoR é iniciado e sempre estará na memória. iniciado e sempre estará na memória. Usado para aUsado para a entidade "flash" e personagens controlados pelo

entidade "flash" e personagens controlados pelo jogador.jogador.

know {name} {path} know {name} {path} - {name}

- {name} é um nome que o  é um nome que o jogo usará para identificar a entidade.jogo usará para identificar a entidade.

- {path}

- {path} é o local relativo ao arquivo TXT da enti é o local relativo ao arquivo TXT da entidade.dade.

Essas entidades só são carregadas na memória quando são realmente necessárias ou para serem Essas entidades só são carregadas na memória quando são realmente necessárias ou para serem exatas quando os níveis as carregam.

(11)

Usado para tudo, exceto para a entidade "flash" e

Usado para tudo, exceto para a entidade "flash" e personagepersonagens controlados pelo jogador.ns controlados pelo jogador. Você não precisa carregar arquivos de música, som, sistema ou

Você não precisa carregar arquivos de música, som, sistema ou estágio com esses comandos. Isso éestágio com esses comandos. Isso é usado apenas para entidades.

usado apenas para entidades.

- Exemplo de arquivo "models.txt": - Exemplo de arquivo "models.txt":

# Flash # Flash load

load flash flash data/chars/misc/flasdata/chars/misc/flash.txth.txt # Player

# Player load

load wolverin wolverin data/chars/wolverin/wdata/chars/wolverin/wolverin.txtolverin.txt # Projectiles

# Projectiles know

know shot shot data/chars/misc/sdata/chars/misc/shot.txthot.txt know

know knife knife data/chars/misc/kdata/chars/misc/knife.txtnife.txt # items

# items #know

#know 1up 1up data/chars/miscdata/chars/misc/1up.txt/1up.txt #know

#know meat meat data/chars/misc/medata/chars/misc/meat.txtat.txt #know

#know medikit medikit data/chars/miscdata/chars/misc/medikit.txt/medikit.txt # Enemies

# Enemies know

know roger_k roger_k data/chars/rogedata/chars/roger_k/roger_k.txtr_k/roger_k.txt know

know alex alex data/chars/alex/aledata/chars/alex/alex.txtx.txt know

know jill jill data/chars/jill/jill.txtdata/chars/jill/jill.txt # Obstacles (item containers)

# Obstacles (item containers) know

know box box data/chars/miscdata/chars/misc/box.txt/box.txt  No exemplo a

 No exemplo acima as entidadecima as entidades flash e wolves flash e wolverin estarão sempre rin estarão sempre carregadas na carregadas na memória. Flash é memória. Flash é umum tipo de animação (opcional) referente ao impacto de

tipo de animação (opcional) referente ao impacto de um golpe. Wolverin é o um golpe. Wolverin é o personagepersonagem jogávelm jogável Wolverine. Note que só há 8

Wolverine. Note que só há 8 caracteres no nome, isso porquecaracteres no nome, isso porque NÃO SE PODE ULTRAPASSAR ONÃO SE PODE ULTRAPASSAR O LIMITE DE 8 CARACTERES PARA SUA DESCRIÇÃO NO

LIMITE DE 8 CARACTERES PARA SUA DESCRIÇÃO NO ARQUIVOARQUIVO "models.txt". O "models.txt". O BOR não reconhece entidades descritas com mais de 8 caracteres. Também vale para o

BOR não reconhece entidades descritas com mais de 8 caracteres. Também vale para o nome denome de todos arquivos em geral. Somente 8 caracteres!

todos arquivos em geral. Somente 8 caracteres!

As demais entidades só serão carregadas de acordo com as configurações dos arquivos TXT dos As demais entidades só serão carregadas de acordo com as configurações dos arquivos TXT dos cenários, exceto aquelas marcada

cenários, exceto aquelas marcadas com um # s com um # no início de sua descrição.no início de sua descrição.

Levels.txt

Levels.txt

Este arquivo de texto determina o número de modos de jogo e a ordem dos estágios e cenas de cada Este arquivo de texto determina o número de modos de jogo e a ordem dos estágios e cenas de cada modo. Este arquivo é obrigatório. Ele deve

(12)

Cabeçalho:

Cabeçalho:

set {name} set {name}

- Indica o início de um modo de jogo. - Indica o início de um modo de jogo. - {name} é o

- {name} é o nome fictício da dificuldade que será nome fictício da dificuldade que será selecionável no menu de seleção do modo deselecionável no menu de seleção do modo de  jogo (meramente

 jogo (meramente ilustrativo).ilustrativo).

file {path} file {path}

- Esta entrada define a ordem dos estágios para jogar. - Esta entrada define a ordem dos estágios para jogar.

- {path} é a localização de um arquivo TXT que descreve um nível. - {path} é a localização de um arquivo TXT que descreve um nível.

- Se houver mais de um arquivo TXT, os estágios serão reproduzidos do primeiro ao último até que - Se houver mais de um arquivo TXT, os estágios serão reproduzidos do primeiro ao último até que não existam mais

não existam mais estágios disponíveis.estágios disponíveis. - Os estágios a serem

- Os estágios a serem carregados são descritos com ".txt". Seus arquivos normalmente se encontramcarregados são descritos com ".txt". Seus arquivos normalmente se encontram na pasta "levels". na pasta "levels". scene {path} scene {path} - Opcional - Opcional

- Esta entrada define a

- Esta entrada define a ordem das sequências animadas e serem reproduzidas.ordem das sequências animadas e serem reproduzidas. - {path} é a

- {path} é a localização de um arquivo TXT que descreve uma animação.localização de um arquivo TXT que descreve uma animação. - Se houver mais de

- Se houver mais de um arquivo TXT, as animações serão reproduzidas da primeira a um arquivo TXT, as animações serão reproduzidas da primeira a última até queúltima até que não haja mais animações disponíveis.

não haja mais animações disponíveis.

- As animações a serem carregadas são descritas com

- As animações a serem carregadas são descritas com ".txt". Seus arquivos normalmente se".txt". Seus arquivos normalmente se encontram na pasta "scenes".

encontram na pasta "scenes".

next next

- Opcional - Opcional

- Esta entrada não precisa de

- Esta entrada não precisa de argumentos.argumentos.

- Quando esta entrada é alcançada, será exibido uma

- Quando esta entrada é alcançada, será exibido uma tela com a frase tela com a frase "Stage Complete" e os pontos"Stage Complete" e os pontos serão computados.

serão computados.

- Exemplo de arquivo "levels.txt": - Exemplo de arquivo "levels.txt":

set Arcade set Arcade scene data/scenes/mission.txt scene data/scenes/mission.txt file data/levels/pho.txt file data/levels/pho.txt file data/levels/base1.txt file data/levels/base1.txt file data/levels/city.txt file data/levels/city.txt next next file data/levels/lift.txt file data/levels/lift.txt file data/levels/uboot2.txt file data/levels/uboot2.txt file data/levels/uboot.txt file data/levels/uboot.txt next next scene data/scenes/escape.txt scene data/scenes/escape.txt file data/levels/cave.txt file data/levels/cave.txt scene data/scenes/noescape.txt scene data/scenes/noescape.txt file data/levels/akhir.txt file data/levels/akhir.txt scene data/scenes/end.txt scene data/scenes/end.txt

(13)

Arquivo da Entidade

Arquivo da Entidade

Esta parte define as características da entidade e seus

Esta parte define as características da entidade e seus respectivos arquivos de animação. Cadarespectivos arquivos de animação. Cada entidade possui um único arquivo no formato TXT.

entidade possui um único arquivo no formato TXT. Sua presença é obrigatória nas pastas de cadaSua presença é obrigatória nas pastas de cada entidade, individualmente

entidade, individualmente, e todo , e todo este conteúdo deve estar localizado dentro da pasta "chars".este conteúdo deve estar localizado dentro da pasta "chars". Devido à complexidade esta seção será dividida em 3

Devido à complexidade esta seção será dividida em 3 partes. A primeira descreve os dados dopartes. A primeira descreve os dados do cabeçalho da entidade, a segunda descreve os tipos de animação e a terceira descreve as

cabeçalho da entidade, a segunda descreve os tipos de animação e a terceira descreve as configuraçõe

configurações da s da animação.animação.

1ª Parte - Dados do Cabeçalho:

1ª Parte - Dados do Cabeçalho:

name {name} name {name}

- {name} é o nome dado à entidade por padrão. - {name} é o nome dado à entidade por padrão. - Usado para todo tipo de entidades.

- Usado para todo tipo de entidades.

- O nome dado à entidade não deve ultrapassar o limite de 8 caracteres. - O nome dado à entidade não deve ultrapassar o limite de 8 caracteres. - O BoR

- O BoR apresentará erro ao acessar a entidade se você tentar apresentará erro ao acessar a entidade se você tentar colocar um espaço no nome. Vocêcolocar um espaço no nome. Você deve usar o símbolo underscore (_) em

deve usar o símbolo underscore (_) em seu lugar.seu lugar. - Todas as entidades devem ter um

- Todas as entidades devem ter um nome no campo {name}.nome no campo {name}. - Evite usar o

- Evite usar o mesmo nome para entidades diferentes, mesmo que não estejam com o mesmo nome para entidades diferentes, mesmo que não estejam com o mesmo tipomesmo tipo (heróis =/= inimigos).

(heróis =/= inimigos).

type {type} type {type}

- Há diferentes tipos de

- Há diferentes tipos de entidades. Elas devem ser descritas no campo {type}: player, enemy, item,entidades. Elas devem ser descritas no campo {type}: player, enemy, item, none, e obstacle,

none, e obstacle,

player ->

player -> a entidade é  a entidade é um jogador controlado por humanos.um jogador controlado por humanos.

enemy ->

enemy -> a entidade é  a entidade é um inimigo controlado pela CPU. um inimigo controlado pela CPU. Também pode ser usado paraTambém pode ser usado para classificar "projéteis" utilizados pelo inimigo (shot, knife, ou star).

classificar "projéteis" utilizados pelo inimigo (shot, knife, ou star).

item ->

item -> a entidade é um item  a entidade é um item estacionário que pode ser coletadestacionário que pode ser coletado. Os itens só podem dar umo. Os itens só podem dar um  bônus por ve

 bônus por vez. Em outras paz. Em outras palavras, você lavras, você não pode criar um não pode criar um item que dê 2000 item que dê 2000 pontos e conpontos e conceda umaceda uma vida ao mesmo tempo.

vida ao mesmo tempo.

none ->

none -> a entidade é u a entidade é uma decoração sem função. Serve apenas para enfeite. A entidade "flash",ma decoração sem função. Serve apenas para enfeite. A entidade "flash",  por exemplo, de

 por exemplo, deve ser classve ser classificada como "typificada como "type none" (sem ae none" (sem aspas).spas).

obstacle ->

obstacle -> a entidade é  a entidade é um bloqueio estacionário que pode ser destruído.um bloqueio estacionário que pode ser destruído.

subtype biker subtype biker

- Opcional - Opcional

- Se usado, os inimi

- Se usado, os inimigos correrão da esquerda para direita constantemente na tela e gos correrão da esquerda para direita constantemente na tela e devem serdevem ser derrubados para serem interrompidos. Usado apenas para

derrubados para serem interrompidos. Usado apenas para inimigos com caracteristicas visuaisinimigos com caracteristicas visuais específicas, como motociclistas por exemplo.

específicas, como motociclistas por exemplo.

health {int} health {int}

- {int} é um número inteiro entre 1

- {int} é um número inteiro entre 1 e 2147483647.e 2147483647.

- Esta é a quantidade total de danos que esta entidade pode tomar antes de morrer. - Esta é a quantidade total de danos que esta entidade pode tomar antes de morrer. - Não coloque um chefe com 2147483647 de saúde em seu jogo. Não é engraçado. - Não coloque um chefe com 2147483647 de saúde em seu jogo. Não é engraçado. - Você pode usar números decimais, mas o

- Você pode usar números decimais, mas o valor sempre será arredondado para baixo.valor sempre será arredondado para baixo. - Se você usar um valor inferior a um ou

(14)

divertido, mas não é útil. divertido, mas não é útil.

- Usado para jogadores, inimigos, itens, projéteis,

- Usado para jogadores, inimigos, itens, projéteis, e obstáculos.e obstáculos. - Para itens, isso

- Para itens, isso indica a quantidade de energia que você recupera ao coletar indica a quantidade de energia que você recupera ao coletar o respectivo item.o respectivo item.

speed {int} speed {int}

- {int} é um número entre 5 e

- {int} é um número entre 5 e 300 (o padrão é 10).300 (o padrão é 10). - Você pode usar números menores que 5,

- Você pode usar números menores que 5, mas a entidade ainda se moverá mas a entidade ainda se moverá na mesma velocidade. Ona mesma velocidade. O mesmo vale para o uso acima de 300.

mesmo vale para o uso acima de 300.

- Em algum valor entre 100 e 300, a entidade ganhará a habilidade de se mover para fora dos limites - Em algum valor entre 100 e 300, a entidade ganhará a habilidade de se mover para fora dos limites da tela vindo a sair

da tela vindo a sair da área de jogo, da área de jogo, matando-a instantaneamematando-a instantaneamente.nte. - Ajustar o valor para 0 não impedirá que um inimigo se mova. - Ajustar o valor para 0 não impedirá que um inimigo se mova. - Usado para jogadores e inimigos.

- Usado para jogadores e inimigos. - Este comando não suporta decimais. - Este comando não suporta decimais.

remap {path1} {path2} remap {path1} {path2}

- Opcional - Opcional

- Permite que você crie

- Permite que você crie paletas alternativas para entidades.paletas alternativas para entidades. - Cada entidade pode ter até

- Cada entidade pode ter até 7 paletas. Dependendo do tamanho do projeto, recomendo usar no7 paletas. Dependendo do tamanho do projeto, recomendo usar no máximo 4 paletas.

máximo 4 paletas.

- {path1} é um sprite de uma entidade em sua paleta normal. {path2} é um sprite da entidade em - {path1} é um sprite de uma entidade em sua paleta normal. {path2} é um sprite da entidade em uma paleta alternativa.

uma paleta alternativa. - Você não deve alterar

- Você não deve alterar a paleta do arquivo. As únicas mudanças devem ser a paleta do arquivo. As únicas mudanças devem ser para os pixels dapara os pixels da imagem, e não sobre os dados da paleta.

imagem, e não sobre os dados da paleta.

- O jogador nº2 normalmente usa a primeira paleta alternativa. - O jogador nº2 normalmente usa a primeira paleta alternativa.

shadow {int} shadow {int}

- Opcional - Opcional

- {int} é um número entre 0 e - {int} é um número entre 0 e 6.6.

- Cada número corresponde a uma sombra específica da pasta

- Cada número corresponde a uma sombra específica da pasta "sprites"."sprites". - Normalmente, os números mais baixos são

- Normalmente, os números mais baixos são menores.menores. - Isso determina qual gráfico

- Isso determina qual gráfico de sombra aparecerá centralizado no ponto de deslocamento dessade sombra aparecerá centralizado no ponto de deslocamento dessa entidade.

entidade.

- Valor igual a 0 significa que não haverá sombra. - Valor igual a 0 significa que não haverá sombra.

diesound {path} diesound {path}

- Opcional - Opcional

- {path} aponta para um

- {path} aponta para um arquivo ".wav" que é reproduzido se a arquivo ".wav" que é reproduzido se a entidade for derrotada.entidade for derrotada.

load {name} load {name}

- Opcional - Opcional

- Isso força o BOR a carregar um tipo

- Isso força o BOR a carregar um tipo de projetil na memória para que possa ser utilizado pelade projetil na memória para que possa ser utilizado pela entidade. Apenas inimigos podem usar projeteis desta maneira.

entidade. Apenas inimigos podem usar projeteis desta maneira. - {name} é o nome do projetil a

- {name} é o nome do projetil a ser carregado.ser carregado. - Antes de usar,

- Antes de usar, o projetil deve ser declarado com o projetil deve ser declarado com a entrada "know" no arquivo "models.txt" a entrada "know" no arquivo "models.txt" e devee deve ser classificado aqui como "type enemy" (sem aspas).

ser classificado aqui como "type enemy" (sem aspas). - O tipos de projeteis utilizados aqui são knife, star, e shot. - O tipos de projeteis utilizados aqui são knife, star, e shot. - "

- "load knifeload knife" (sem aspas) permite que a " (sem aspas) permite que a entidade possa arremessar facas. As facas não podem serentidade possa arremessar facas. As facas não podem ser usadas pelos inimigos durante um pulo. Apenas uma faca é

usadas pelos inimigos durante um pulo. Apenas uma faca é arremessada por vez na horizontal.arremessada por vez na horizontal. - "

- "load starload star" (sem aspas) permite que a " (sem aspas) permite que a entidade possa arremessar estrelas, mas apenas durante umentidade possa arremessar estrelas, mas apenas durante um  pulo. São arre

(15)

- "load shot" (sem

- "load shot" (sem aspas) permite que a entidade possa atirar, com aspas) permite que a entidade possa atirar, com se estivesse usando uma arma dese estivesse usando uma arma de fogo, por exemplo.

fogo, por exemplo.

- As animações "faca", "estrela", e

- As animações "faca", "estrela", e "tiro" podem ser substituidas por "tiro" podem ser substituidas por qualquer outro tipo de sprite.qualquer outro tipo de sprite. Por exemplo, você pode fazer um inimigo

Por exemplo, você pode fazer um inimigo arremessar 3 facas durante um pulo. Para arremessar 3 facas durante um pulo. Para isso bastaisso basta alterar o respectivo arquivo de configuração com as animações contendo os sprites que

alterar o respectivo arquivo de configuração com as animações contendo os sprites que desejar.desejar. Basta ser criativo.

Basta ser criativo.

- Não basta apenas inserir

- Não basta apenas inserir "load {name}" para fazer os projéteis f"load {name}" para fazer os projéteis funcionarem. Também é necessáriouncionarem. Também é necessário o uso dos comandos "throwframe" e "shootframe", dependendo do projetil a

o uso dos comandos "throwframe" e "shootframe", dependendo do projetil a ser utilizado pelaser utilizado pela entidade. Estes dois comandos serão explicados melhor

entidade. Estes dois comandos serão explicados melhor depois.depois.

icon {path} icon {path}

- Opcional - Opcional

- Uma imagem é mostrada ao lado da barra de vida da entidade. - Uma imagem é mostrada ao lado da barra de vida da entidade.

- Por padrão, as dimensões da imagem são 16 x 16. Recomendo no máximo o valor de 20 x 20. - Por padrão, as dimensões da imagem são 16 x 16. Recomendo no máximo o valor de 20 x 20. - {path} é o local relativo ao ícone.

- {path} é o local relativo ao ícone.

2ª Parte - Tipos de Animação:

2ª Parte - Tipos de Animação:

anim idle (usado por todas

anim idle (usado por todas as entidades)as entidades)

- Essa animação é reproduzida quando a entidade está parada sem f

- Essa animação é reproduzida quando a entidade está parada sem fazer nada.azer nada.

anim walk (jogadores e inimigos) anim walk (jogadores e inimigos)

- A animação se consiste no

- A animação se consiste no simples fato de que a simples fato de que a entidade esteja caminhando em qualquer sentido.entidade esteja caminhando em qualquer sentido.

anim jump (jogadores e inimigos) anim jump (jogadores e inimigos)

- Opcional para inimigos. - Opcional para inimigos.

- Reproduz quando um jogador pressiona o botão de - Reproduz quando um jogador pressiona o botão de pulo.pulo.

- Se for dado a um inimigo, esta animação também deve ter um intervalo listado (delay). - Se for dado a um inimigo, esta animação também deve ter um intervalo listado (delay).

anim land (jogadores) anim land (jogadores)

- Opcional. Serve mais para um

- Opcional. Serve mais para um fator estético. Só é fator estético. Só é reproduzida se o jogador tiver esta reproduzida se o jogador tiver esta animaçãoanimação listada após a animação de pulo.

listada após a animação de pulo.

anim get (jogadores) anim get (jogadores)

- Reproduz quando o personagem pega um item no

- Reproduz quando o personagem pega um item no chão.chão.

anim grab (jogadores e inimigos) anim grab (jogadores e inimigos)

- Opcional para inimigos. - Opcional para inimigos.

- Quando a entidade se aproxima o suficiente da outra, essa entidade irá agarrar a outra. - Quando a entidade se aproxima o suficiente da outra, essa entidade irá agarrar a outra.

anim attack1 (jogadores e inimigos) anim attack1 (jogadores e inimigos)

- Se consiste num ataque. Os

- Se consiste num ataque. Os jogadores executam isso pressionandjogadores executam isso pressionando o botão o o botão de ataque uma vez.de ataque uma vez. - Os inimigos executam esse ataque quando um j

- Os inimigos executam esse ataque quando um jogador está no alcance (o intervalo é ogador está no alcance (o intervalo é especificadoespecificado com o comando "range").

com o comando "range"). - Os inimigos são

- Os inimigos são ligeiramente mais propensos a usar ATTACK1 do que ligeiramente mais propensos a usar ATTACK1 do que ATTACK2.ATTACK2.

anim attack2 (jogadores e inimigos) anim attack2 (jogadores e inimigos)

- Outro ataque. Os j

(16)

ATTACK1 duas vezes. ATTACK1 duas vezes. - Os inimigos são

- Os inimigos são ligeiramente mais propensos a usar ATTACK2 do que ligeiramente mais propensos a usar ATTACK2 do que ATTACK3.ATTACK3.

anim attack3 (jogadores e inimigos) anim attack3 (jogadores e inimigos)

- Último na

- Último na sequencsequencia de ataques. Os jia de ataques. Os jogadores usam isso se pressionarem o botão de ataque depoisogadores usam isso se pressionarem o botão de ataque depois de bater com ATTACK2.

de bater com ATTACK2.

- As animações "anim attack1", "anim att

- As animações "anim attack1", "anim attack2", e "anim attack3" são opcionais para os iack2", e "anim attack3" são opcionais para os inimigos,nimigos, mas recomendo que cada um tenha pelo menos a animação "anim

mas recomendo que cada um tenha pelo menos a animação "anim attack1".attack1".

anim upper (inimigos) anim upper (inimigos)

- Opcional. - Opcional.

- Se um jogador estiver próximo e na mesma linha de um inimigo com esta animação durante um - Se um jogador estiver próximo e na mesma linha de um inimigo com esta animação durante um  pulo, o inimigo exe

 pulo, o inimigo executará este acutará este ataque automaticataque automaticamente.mente. - O comando "range" pode ser

- O comando "range" pode ser usado para este ataque, embora não seja necessário.usado para este ataque, embora não seja necessário.

anim jumpattack (jogadores e inimigos) anim jumpattack (jogadores e inimigos)

- Opcional para inimigos. - Opcional para inimigos.

- O ataque é executado quando o jogador pula e pressiona o botão de ataque. - O ataque é executado quando o jogador pula e pressiona o botão de ataque. - Os inimigos realizam

- Os inimigos realizam aleatoriamente esse ataque quando o jogador está no alcance.aleatoriamente esse ataque quando o jogador está no alcance. - Não é necessário o

- Não é necessário o comando "jumpframe" com esta animação.comando "jumpframe" com esta animação. - Quando os inimigos usam esse ataque, eles pulam

- Quando os inimigos usam esse ataque, eles pulam para a frente.para a frente.

anim jumpattack2 (jogadores e inimigos) anim jumpattack2 (jogadores e inimigos)

- Completamente opcional, tanto para o jogador como

- Completamente opcional, tanto para o jogador como para os inimigos.para os inimigos. - Diferente do o

- Diferente do o JUMPATTACK normal, os jogadores executam esse ataque pulando, depoisJUMPATTACK normal, os jogadores executam esse ataque pulando, depois segurando o botão para baixo e pressionando o botão de ataque.

segurando o botão para baixo e pressionando o botão de ataque.

- Inimigos realizam aleatoriamente esse ataque quando um jogador está no

- Inimigos realizam aleatoriamente esse ataque quando um jogador está no alcance.alcance. - Quando os inimigos usam esse ataque, eles vão

- Quando os inimigos usam esse ataque, eles vão apenas pular para cima. Recomendo desabilitarapenas pular para cima. Recomendo desabilitar esta animação para os inimigos. Usem apenas o "anim

esta animação para os inimigos. Usem apenas o "anim jumpattack".jumpattack".

anim freespecial (jogadores e inimigos) anim freespecial (jogadores e inimigos)

- Este ataque é executado pressionando rapidamente o comando "frente, frente, botão de

- Este ataque é executado pressionando rapidamente o comando "frente, frente, botão de ataque".ataque". - Completamente opcional para os inimigos, pois esta

- Completamente opcional para os inimigos, pois esta animação funciona exatamente como asanimação funciona exatamente como as animações de ataque normais. Recomendo desabilitar esta

animações de ataque normais. Recomendo desabilitar esta animação para os animação para os inimigos. Usem apenasinimigos. Usem apenas as sequencias "anim attack1", "anim attack2", e "anim attack3".

as sequencias "anim attack1", "anim attack2", e "anim attack3".

anim special (jogadores e inimigos) anim special (jogadores e inimigos)

- Os jogadores executam isso pressionando o botão de ataque especial. Não

- Os jogadores executam isso pressionando o botão de ataque especial. Não confunda com o botãoconfunda com o botão de ataque normal.

de ataque normal.

- Este ataque consome parte da sua barra

- Este ataque consome parte da sua barra de vida ao ser de vida ao ser executado.executado. - Serve como um ataque

- Serve como um ataque de fuga. Por exemplo, se o de fuga. Por exemplo, se o jogador executar este ataque quando estiverjogador executar este ataque quando estiver sendo agarrado pelo inimigo, o jogador se li

sendo agarrado pelo inimigo, o jogador se liberta com um contra-golpe.berta com um contra-golpe. - Completamente opcional para os inimigos, pois

- Completamente opcional para os inimigos, pois esta animação funciona exatamente como asesta animação funciona exatamente como as animações de ataque normais. Recomendo desabilitar esta

animações de ataque normais. Recomendo desabilitar esta animação para os inimigos. animação para os inimigos. Usem apenasUsem apenas as sequencias "anim attack1", "anim attack2", e "anim attack3".

as sequencias "anim attack1", "anim attack2", e "anim attack3".

anim grabattack (jogadores e inimigos) anim grabattack (jogadores e inimigos)

- Opcional para inimigos. - Opcional para inimigos. - Este ataque é r

- Este ataque é reproduzido após um agarrão seguido de um ataque normal. Dependendo daseproduzido após um agarrão seguido de um ataque normal. Dependendo das configuraçõe

(17)

anim throw (jogadores e inimigos) anim throw (jogadores e inimigos)

- Opcional para inimigos. - Opcional para inimigos. - Este ataque é r

- Este ataque é reproduzido após um agarrão seguido de um ataque normal, porém pressionando naeproduzido após um agarrão seguido de um ataque normal, porém pressionando na direção inversa ao ataque.

direção inversa ao ataque.

- Por padrão, essa animação causa 21 pontos de danos à

- Por padrão, essa animação causa 21 pontos de danos à vítima arremessada.vítima arremessada.

anim pain (jogadores e inimigos) anim pain (jogadores e inimigos)

- É reproduzido quando uma entidade é

- É reproduzido quando uma entidade é atingida por um ataque que não as atingida por um ataque que não as derrube. Entidades sob aderrube. Entidades sob a condição "subtype biker" reproduzem esta animação quando morrem.

condição "subtype biker" reproduzem esta animação quando morrem.

anim fall (jogadores, inimigos, e obstáculos) anim fall (jogadores, inimigos, e obstáculos)

- É reproduzido quando uma entidade é

- É reproduzido quando uma entidade é atingida por um ataque que as atingida por um ataque que as derrube e/ou mate.derrube e/ou mate. - Inserir a

- Inserir a entrada "bbox" nas configurações desta animação permite que a entidade seja manipuladaentrada "bbox" nas configurações desta animação permite que a entidade seja manipulada  para atingir outras

 para atingir outras entidades duraentidades durante sua quedante sua queda.. - As entidades não podem ser

- As entidades não podem ser agarradas durante esta animação.agarradas durante esta animação.

anim rise (jogadores e inimigos) anim rise (jogadores e inimigos)

- Reproduzido quando uma entidade que caiu começa a levantar depois de ser derrubada ou atingida. - Reproduzido quando uma entidade que caiu começa a levantar depois de ser derrubada ou atingida.

3ª Parte - Configurações da

3ª Parte - Configurações da

Animação:

Animação:

Esta parte aborda as configurações de animação. Elas definem o uso e

Esta parte aborda as configurações de animação. Elas definem o uso e função dos sprites de cadafunção dos sprites de cada entidade. Os sprites devem estar na mesma pasta

entidade. Os sprites devem estar na mesma pasta onde se encontra o arquivo TXT de cada entidade.onde se encontra o arquivo TXT de cada entidade.

loop {bi} loop {bi}

- Determina como o efeito de loop é aplicado na animação atual. - Determina como o efeito de loop é aplicado na animação atual.

- {bi} alterna ativando ou desativando (0 = loop desativado // 1 = loop ativado). - {bi} alterna ativando ou desativando (0 = loop desativado // 1 = loop ativado). - Algumas animações NÃO devem ser configuradas para loop. Exemplos incluem a

- Algumas animações NÃO devem ser configuradas para loop. Exemplos incluem a maioria dosmaioria dos ataques e animações de queda.

ataques e animações de queda.

range {min} {max} range {min} {max}

- Usado para ataques e pulos

- Usado para ataques e pulos dos inimigos, incluindo projéteis.dos inimigos, incluindo projéteis. - Este comando permite ao

- Este comando permite ao inimigo saber quando realizar seus ataques.inimigo saber quando realizar seus ataques.

- Para que o inimigo use o ataque, o jogador deve estar numa área de alcance acima do "valor - Para que o inimigo use o ataque, o jogador deve estar numa área de alcance acima do "valor {min.}", mas abaixo do "valor {max}" dentro do eixo x na tela.

{min.}", mas abaixo do "valor {max}" dentro do eixo x na tela. - Isso é

- Isso é medido em pixels, começando no ponto de compensação do inimigo e movendo-se para omedido em pixels, começando no ponto de compensação do inimigo e movendo-se para o deslocamen

deslocamento do to do jogador.jogador. - O valor

- O valor padrão de alcance para ATTACK é "0 padrão de alcance para ATTACK é "0 75", para JUMPATTACK e JUMPATTACK2 é "075", para JUMPATTACK e JUMPATTACK2 é "0 150", e para UPPER "-10 120".

150", e para UPPER "-10 120".

throwframe {frame} {a} throwframe {frame} {a}

- Se este comando estiver presente, a entidade arremessa

- Se este comando estiver presente, a entidade arremessará o projétil "star" ou rá o projétil "star" ou "knife" uma vez que"knife" uma vez que se esteja dentro do alcance do ataque.

se esteja dentro do alcance do ataque.

- O projétil será gerado em altitude {a}. Uma vez que você não pode usar o valor igual a

- O projétil será gerado em altitude {a}. Uma vez que você não pode usar o valor igual a 0 para {a},0 para {a}, se quiser ter o projétil no chão use -1 em

se quiser ter o projétil no chão use -1 em vez disso. Ele gerará 0, não -1.vez disso. Ele gerará 0, não -1. - O projétil é definido usando o comando "load star" ou "load knife" no

- O projétil é definido usando o comando "load star" ou "load knife" no cabeçalho da entidade nocabeçalho da entidade no arquivo TXT. Com isso, seu respectivo projétil

(18)

- O valor padrão {a} é 70. - O valor padrão {a} é 70. - As facas serão usadas se a

- As facas serão usadas se a entidade estiver no chão. Três estrelas serão usadas se entidade estiver no chão. Três estrelas serão usadas se a entidade estivera entidade estiver no ar.

no ar.

- Se você quiser que

- Se você quiser que a entidade jogue facas, enquanto estiver no ar, a entidade jogue facas, enquanto estiver no ar, use o comando "shootframe" emuse o comando "shootframe" em seu lugar.

seu lugar.

shootframe {frame} {a} shootframe {frame} {a}

- Este comando é semelhante ao "throwframe", mas ele utiliza somente o projétil "shot". - Este comando é semelhante ao "throwframe", mas ele utiliza somente o projétil "shot". - O valor padrão {a} é 0.

- O valor padrão {a} é 0.

- Este comando não utiliza estrelas se a entidade estiver no ar, por isso é ideal para atirar facas, caso - Este comando não utiliza estrelas se a entidade estiver no ar, por isso é ideal para atirar facas, caso este último esteja corretamente configurado.

este último esteja corretamente configurado.

- O projétil é definido usando o comando "load shot" no cabeçalho da entidade no arquivo TXT. - O projétil é definido usando o comando "load shot" no cabeçalho da entidade no arquivo TXT.

 jumpframe {fram

 jumpframe {frame} {height}e} {height}

- Não deve ser usado com a animação "anim jump". - Não deve ser usado com a animação "anim jump". - Se este comando estiver presente, a

- Se este comando estiver presente, a entidade executará um pulo uma vez que se entidade executará um pulo uma vez que se esteja dentro doesteja dentro do alcance do ataque.

alcance do ataque.

- {height}

- {height} define a altura do pulo. Valor positivo  define a altura do pulo. Valor positivo para {height} move a entidade para cima e valorpara {height} move a entidade para cima e valor negativo move para baixo (na teoria).

negativo move para baixo (na teoria).

- Apenas um comando "jumpframe" pode ser utili

- Apenas um comando "jumpframe" pode ser utilizado, uma vez que se esteja dentro do zado, uma vez que se esteja dentro do alcance doalcance do ataque. Você não pode pular mais de uma

ataque. Você não pode pular mais de uma vez em uma animação colocando mais comandos, mesmovez em uma animação colocando mais comandos, mesmo que a entidade pouse no chão antes do pr

que a entidade pouse no chão antes do próximo salto começar.óximo salto começar. - Diferenças para o jogador

- Diferenças para o jogador e inimigos, dependendo do valor de {height}:e inimigos, dependendo do valor de {height}: {height} = 0 => Jogador -> o pulo é muito

{height} = 0 => Jogador -> o pulo é muito baixo, mas o personagem avançbaixo, mas o personagem avança para a frente.a para a frente. Inimigo -> o pulo é alto e vertical.

Inimigo -> o pulo é alto e vertical. {height} > 0 => Jogador -> o pulo é alto

{height} > 0 => Jogador -> o pulo é alto e vertical.e vertical. Inimigo -> o pulo é alto e avança para frente. Inimigo -> o pulo é alto e avança para frente.

- Definir "jumpframe" na animação "anim fall" mudará o respectivo arco durante a queda. Útil para - Definir "jumpframe" na animação "anim fall" mudará o respectivo arco durante a queda. Útil para criar lançadores para ataques e

criar lançadores para ataques e arremessos personalizadosarremessos personalizados..

delay {int} delay {int}

- {int} é

- {int} é um número que define a velocidade e/ou um número que define a velocidade e/ou tempo de duração da animação. 1 é extremamentetempo de duração da animação. 1 é extremamente rápido; acima de 25 a

rápido; acima de 25 a animação vai durar mais tempo em animação vai durar mais tempo em sua execução, dando um falso aspécto desua execução, dando um falso aspécto de lentidão.

lentidão. - {int} é

- {int} é medido em centésimos de segundos.medido em centésimos de segundos. - Pode ser usado várias vezes em

- Pode ser usado várias vezes em uma animação para mudar a velocidade durante sua execução.uma animação para mudar a velocidade durante sua execução.

offset {x} {y} offset {x} {y}

- Determina onde se encontra a

- Determina onde se encontra a "base" da animação."base" da animação. - No seguinte exemplo, "offset 0

- No seguinte exemplo, "offset 0 0" seria o 0" seria o canto superior esquerdo da tela. Valores maiores para {x}canto superior esquerdo da tela. Valores maiores para {x} movem a imagem para baixo. Valores maiores para {y} movem a imagem para a direita.

movem a imagem para baixo. Valores maiores para {y} movem a imagem para a direita. - Você pode usar valores negativos para {x}

- Você pode usar valores negativos para {x} e {y} ou e {y} ou valores que se localizem fora das valores que se localizem fora das bordas dabordas da tela.

tela.

- A maioria

- A maioria das entidades morrerá automaticamente se o deslocamento for superior a 80 das entidades morrerá automaticamente se o deslocamento for superior a 80 pixels forapixels fora da tela à esquerda ou direita (seu valor x deve permanecer entre -80 e 400). O

da tela à esquerda ou direita (seu valor x deve permanecer entre -80 e 400). O projétil "knife" é aprojétil "knife" é a única exceção: eles podem ir até 180

única exceção: eles podem ir até 180 sem problemas (-180 a 500).sem problemas (-180 a 500). - Os

- Os sintomas comuns de compensações incorretas são sombras mal sintomas comuns de compensações incorretas são sombras mal colocadas, teleportes súbitoscolocadas, teleportes súbitos  para diferentes

 para diferentes posições e inimigoposições e inimigos/sombras que ps/sombras que parecem estar a arecem estar a vários metros de vários metros de distância.distância. - Pode ser usado várias vezes em

Referências

Documentos relacionados

1 - Origem Geográfica das Escolas Lisboa Beja Faro Bragança Santarém Castelo Branco Coimbra Évora Leiria Portalegre Setúbal Viseu Estrangeiro... 55 e 56 – Memórias Terrenas de um

b) original de um dos seguintes documentos de identificação: Cédula de Identidade (RG), Carteira de Órgão ou Conselho de Classe, Carteira de Trabalho e Previdência Social

Usando a aproximação log2 = 0,3, determine quantos anos demorará para que esse elemento se decomponha até atingir um oitavo da

272 "O custo total do Sistema Cutzamala de US$1300 milhões [...] foi mais alto que o investimento nacional em todo setor público no México para o ano de 1996, incluindo

[r]

[r]

[r]

Aprova as (IR 60 – 10) Instruções Reguladoras para a Organização e o Funcionamento do Programa de Atualização dos Diplomados pela Escola de Comando e Estado-Maior do