0% acharam este documento útil (0 voto)
86 visualizações112 páginas

Mensagem de Pontuação em Jogos Unity

Este módulo apresenta o mundo dos jogos eletrônicos, incluindo definição, gêneros, plataformas e como as ideias são desenvolvidas. O processo criativo envolve lógica, design, softwares e ferramentas para criação de jogos.

Enviado por

gnobrega089
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
86 visualizações112 páginas

Mensagem de Pontuação em Jogos Unity

Este módulo apresenta o mundo dos jogos eletrônicos, incluindo definição, gêneros, plataformas e como as ideias são desenvolvidas. O processo criativo envolve lógica, design, softwares e ferramentas para criação de jogos.

Enviado por

gnobrega089
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Impressão • Acabamento

Gráfica Comunicare
Rua das Amoreiras, 441 • Jardim Marize • Alm. Tamandaré • 83507-630
Fone: (41) 3029-8088 • Fax: (41) 3026-8044
[Link] • comunicare@[Link]

PREPPES
Games
Curitiba: PREPPES, 2020
112 p. il.

Impresso no Brasil
Printed in Brazil
2020

Rua Marechal Deodoro, 314 - Centro - Curitiba/PR


Telefone: (41) 3112-2112
Apresentação do módulo

PRESS START e seja bem-vindo ao mundo dos jogos eletrônicos. Você certamente vai
perceber que ele é cheio de novas descobertas envolventes, apaixonantes e viciantes. A partir de
agora, você fará parte do seleto grupo de jovens espalhados por todo mundo capazes de entender
e aprofundar nas técnicas relacionadas ao desenvolvimento de games.
Essa é a proposta deste novo módulo: levar você para um ambiente criativo, desafiador
e altamente rentável. Isso mesmo! Os jogos eletrônicos deixam de ser meras brincadeiras para se
tornarem uma ótima oportunidade para uma carreira de sucesso no mercado dos desenvolvedores.
Vamos transportá-lo para um ramo da tecnologia capaz de dar vida a estórias, aventuras,
estratégias, mesmo que você não saiba nada de programação ou lógica computacional. Só
precisará de algumas orientações para que sua criatividade e combinação de técnicas que evoluam
na construção de jogos interessantes.
E o mais legal disso é que não há idade para a aprender a desenvolver jogos. Basta ter
uma boa ideia na cabeça, estruturar uma narrativa e unir o esforço com a criatividade. Claro que
as ferramentas serão fundamentais neste processo. Por isso optamos por apresentar opções
conceituadas para entender a lógica e os algoritmos de um jogo, como por exemplo o Scratch,
desenvolvido pelo MIT (Instituto de Tecnologia de Massachusetts) e utilizado por diversas
universidades espalhadas pelo Brasil e pelo mundo.
Interessou? Nosso país é um grande consumidor de jogos eletrônicos, o que o coloca
numa posição destacada. Isto quer dizer que existe um mercado bem amplo, mas que você só vai
conseguir explorar com muito estudo.
Então chegou a hora. Faça seu planejamento, crie a sua estória, monte o seu cenário e
vamos desbravar os caminhos para as mais variadas fases e conquistas. Aprenda, ganhe dinheiro e
se divirta. Em se tratando da sua dedicação, só não pode haver GAME OVER.

Estamos juntos nessa.

Um ótimo curso

Equipe de Ensino
Sumário

Level 1 - O mundo dos jogos 08


Press start 09
Definição de jogo eletrônico 09
Gêneros 10
Consoles e plataformas 10
Interagindo com os games 11
Como começa a ideia 12
O processo criativo e de desenvolvimento 12
level 2 - Lógica e algoritmos 16
O que é lógica? 17
Por que aprender lógica no curso de games? 17
Algoritmos 17
Conceitos gerais 18
A plataforma Scratch 18
Por dentro do Scratch 18

level 3 - Game design 24


O que é game design 25
Desenhando seus personagens 25
Gamificação 26
A importância de uma trilha sonora 27
Criação de cenários 27
O profissional Game designer 28
Mais um pouco do Scratch 28

level 4 - Software e plataformas 31


Escolha da tecnologia 32
Principais softwares para criação de jogos 32

level 5 - Construct 2 37
Construct 2 38
Indicações deste aplicativo 38
Baixando e instalando o Construct 38
Principais recursos 39
Configuração da área ativa do game 39
Aplicação ao projeto 40

level 6 - Construct 2 – Continuação do projeto 45


Ponto de imagem 46
Movimentando cenários 46
Eventos de colisões 47
Programando variáveis 48
Interface com o usuário 50

level 7 - Construct 2 – Continuação do projeto 52


Animações 53
Construção de tilemaps (cenários 2D) 54
Ferramentas da barra Tilemaps 56

level 8 - Avançando no Construct 2 58


Alinhamento 59
Efeitos 59
Mais comportamentos 60
Trabalhando com áudio 61
Exportação 62
level 9 - Jogo de plataforma 65
Jogo de plataforma 66
Construindo um novo projeto 66
Adição de comportamentos 67
Configurando eventos 68

level 10 - Jogo de plataforma – Parte II 72


Adicionando inimigos 73
Eventos nos inimigos 73
Destruindo e pontuando 75
Reiniciando um layout ou fase 76

level 11 - Jogo de plataforma – Parte III 78


Mais eventos e comportamentos 79
Perdendo e ganhando vidas 81

level 12 - Jogo de plataforma – Mensagens 84


You lose 85
Abertura 86
Pause 87

level 13 - Produzindo um RPG 90


A ferramenta RPGMaker 91
Mapas 91
Gerando um player (Character) 92
Configurações do player 92
Eventos 93
Mensagens 94

level 14 -Batalhas e outras configurações 97


Batalhas 98
Personagens não jogáveis 98
Gerenciamento de recurso 99
Base de dados 100
Controles básicos 101
Compressão de dados 101

level 15 - Buscando mais conhecimento 103


Blogs e fóruns 104
Mercado nacional de games 105
Canais de jogos 106
Treinamento online 106

Anotações 109
Anotações 110
Level 1

O mundo dos Jogos


PRESS START
DEFINIÇÃO DE JOGO ELETRÔNICO
GÊNEROS
CONSOLES E PLATAFORMAS
INTERAGINDO COM OS GAMES
COMO COMEÇA A IDEIA
O PROCESSO CRIATIVO E DE DESENVOLVIMENTO
Press Start

Olá aluno! A sua jornada pelo mundo digital agora chega ao território dos jogos eletrônicos.
Neste módulo, vamos aterrissar na criação e desenvolvimento de games, algo que está em alta no
mercado brasileiro. O nosso país é um grande consumidor de jogos eletrônicos, o que o coloca numa
posição privilegiada. É por isso que resolvemos destacar esta apostila, principalmente para incentivar
você a buscar cada vez mais conhecimento e, quem sabe, se tornar um grande designer de games.
Pressione qualquer botão para começar.

Definição de jogo eletrônico

A definição para jogo eletrônico não é


tão complicada de ser feita. Ele é um programa
no qual o jogador interage com objetos e
sons enviados a um dispositivo eletrônico que
exibe uma resposta. Já o termo videogame é
usado para se referir ao console onde os jogos
são processados. Os sistemas operacionais
instalados, juntamente com o hardware, que
são usados para rodar um jogo, tem o nome
definido de plataforma.

Muitos entendem que o jogo eletrônico se refere apenas ao jogo em si. Mas para entender
bem esse conceito é preciso ficar claro que para o jogo funcionar é preciso ter o dispositivo de
entrada que será usado para manipulá-lo. Neste caso falamos do controle, que varia de acordo com
a plataforma, dentre outras maneiras de interação direta, como as respostas via sons, vibrações e
sensores.

Além disso, um jogo eletrônico trabalha com comportamentos. Os efeitos produzidos precisam
ativar a coordenação motora e visual do jogador, aumentar a sensibilidade, para que ele interaja bem
com o jogo. As habilidades do jogador são transferidas para o jogo, na forma de uma mudança de
ação, da definição de uma estratégia, entre outros.

Como a atuação cognitiva dos jogos eletrônicos é muito grande, muitas aplicações têm surgido
para eles, tais como simulação de voo, educação, cirurgias, entre outros.

9
Gêneros
Os jogos eletrônicos têm uma classificação importante: os gêneros e subgêneros. Isso varia de
acordo com a MECÂNICA e o objetivo do jogo. Dentre os principais gêneros, destacamos (acrescente
também dois jogos conhecidos sobre cada um dos gêneros citados):

Ação - Desafia a velocidade, reflexo e raciocínio rápido do jogador, mas sem o uso de grandes
problemas lógicos para serem solucionados
( / )
Aventura – Geralmente o
jogador assume o papel de um protagonista dentro de uma história interativa com exploração e
resolução de quebra-cabeças.
( / )

Estratégia – Para este gênero exige-se habilidades de pensamento e planejamento estratégico


para alcançar um objetivo ou vitória.
( / )

RPG – Bem parecido com os tradicionais e antigos RPGs de tabuleiro, onde a característica
principal é a criação, desenvolvimento e crescimento da personagem ao longo do jogo.
( / )

Esportes - Simulam a prática de esportes individuais ou em equipe.


( / )

Jogos on-line – Qualquer tipo de jogo que só pode serem jogados quando conectados em uma
rede, local ou internet.
( / )
Simuladores – Seu objetivo é simular um mundo real ou fictício, como a construção de uma
cidade ou um simulador de voo.
( / )

Consoles e plataformas

Pode ser que você já tenha ouvido falar bastante no termo console. Mas para
aqueles que não possuem nenhum conhecimento em relação aos jogos eletrônicos,
o termo é novidade. Por isso, quem quer aprender mais sobre o assunto, precisa
entender bem estes conceitos básicos. Console nada mais é do que o dispositivo
eletrônico especializado e preparado para rodar jogos eletrônicos. Estes consoles
são geralmente conectados a uma TV ou monitor. Por serem dispositivos dedicados,
costumam apresentar hardware padronizado.

Existem também os consoles portáteis que são dispositivos que podem ser segurados com
as mãos do usuário, com tela embutida, alto-falantes, bateria, e que podem ser transportados de um
lugar para o outro. O PSP e os consoles portáteis com Android são exemplos destes dispositivos.
Muitos já consideram os óculos VR como consoles portáteis.

10
Ainda, mesmo não sendo dispositivos específicos para jogos, os smartphones e tabletes, por
serem portáteis, também se caracterizam para a distribuição de jogos. Por isso, o Android, IOS, Xbox,
Windows Phone, assim como os consoles tradicionais, também se comportam como plataformas de
jogos eletrônicos.

Interagindo com os games

Muitos outros conceitos serão vistos ao longo deste curso. Por isso, será legal você anotar
e guardar bem as informações que for recebendo, pois, até mesmo o nosso processo criativo vai
depender delas. E a partir de alguns princípios básicos, vamos entendendo que cada jogo tem
condições de serem diferentes um do outro, mas com as mesmas características de interatividade e
jogabilidade.

Ao criarmos nosso game, temos que levar em consideração um fator muito importante: a
interação do usuário com ele. Essa perspectiva deve ser levada a sério durante todo o processo de
criação de um jogo. Pense no seguinte: de que forma o jogador deve interagir com meu jogo?

• Em se tratando de computador, o uso do teclado e mouse é imprescindível;


• Sendo portátil pense na sensibilidade ao toque;
• Use joysticks tradicionais e/ou controles;
• Um joystick virtual exibido nas telas sensíveis ao toque;
• O movimento do nosso próprio corpo é detectável por sensores de movimento;
• Usando os sensores disponíveis nos celulares, como o acelerômetro e giroscópio.

Nos games para dispositivos sensíveis ao toque, por exemplo, essa interação deve ser pensada
com as inúmeras possibilidades de jogabilidade do seu usuário, utilizando gestos e toques na tela.
Mas também não podem ser ações tão complexas, limitando a quantidade de gestos e o apertar
de botões variados, diferente dos controles tradicionais. Isso é uma relação da jogabilidade com a
interação intuitiva e clara do jogador. Veja o exemplo: movimento de uma peça em um tabuleiro de
xadrez, ou o caminhar de um personagem/objeto pela tela para atingir com outros objetos.

Com a redução de ações complexas, aprender a jogar se torna mais intuitivo. No tutorial
bastaria uma imagem animada mostrando o gesto e a reação para o usuário já começar a jogar.
Esse pensamento se dá por causa dos usuários mobile e seu tempo reduzido de jogos, pois muitos
usuários jogam enquanto esperam o tempo passar, em sala de espera de um consultório médico, fila
de banco, entre outros.

A interação acaba criando novas possibilidades. O uso do acelerômetro, giroscópio


e câmera dos dispositivos móveis abrem possibilidade para novas ações e não só
apertar botões. O uso do acelerômetro, por exemplo, girando o celular para os lados
para movimentar o jogo, faria com que seu jogo se tronasse mais intuitivo, com controles
simples e funcionais e que não frustrariam o jogador e nem exigiriam muito aprendizado
de uso.

11
E por fim, pense nos dispositivos móveis, que em geral:
• Usam o toque na tela como ação principal;
• O “Toque-e-segura”, geralmente abre um menu;
• Dois toques rápidos normalmente ajustam o zoom da tela;
• Segura e arraste faz movimentar objetos na tela.

Como começa a ideia?

Nos módulos anteriores você já deve ter descoberto a palavra brainstorm ou tempestade de
ideia. E com ela que podemos ativar o processo criativo de um jogo qualquer, seja ele simples ou
complexo. Mas vale a pena relembrar e entrar de novo dentro de uma reunião de brainstorming e
aprender como ela funciona. Lembre-se que as reuniões acontecem quando existe um problema
a ser resolvido ou precisa de ideias novas. Nelas as ideias se renovam, surgem novas formas de
abordar os problemas e inovar nos resultados. Tendo isso em mente, você agora precisa conhecer
quais os principais passos dentro desta reunião. Vamos começar do início mesmo.

1. Escolha um ambiente que inspire - Um lugar diferente pode inspirar os participantes a


terem novas e boas ideias;
2. Defina um moderador/Facilitador – Toda reunião de brainstorming precisa de alguém que
conduza e explique como será a reunião;
3. Defina o tempo máximo da reunião – Isso evita o cansaço;
4. Exponha o problema – Ele precisa ficar bem claro para todos;
5. Para quem e para quê? – Todos precisam saber que são os interessados e quais as
reais necessidades;
6. Inspire o grupo – De alguma forma (de preferência bem interessante)
traga informações inspiradoras para a reunião;
7. Separe grupos menores – Se for um grupo grande demais, fica mais fácil
separar em outros menores e dividir partes do projeto;
8. Anote tudo - É interessante que cada participante desenvolva suas próprias
propostas para o problema e que todas sejam anotadas e registradas. Elimine aquelas
em duplicidade, ou seja, ideias que parecem ser a mesma coisa;
9. Administre os conflitos;
10. Faça a seleção das melhores ideias;
11. Fornecer ao grupo um relatório com as ideias selecionadas.

O processo criativo e de desenvolvimento


Assim como outros tipos de produtos, o jogo eletrônico passa por etapas de criação e
desenvolvimento. Pense no seu jogo assim:

1ª etapa – As perguntas iniciais

• Qual o meu público-alvo? Que idade vai ter? Qual é o sexo? Em qual país e qual língua?
• Qual a ideia principal do jogo? Quais suas funcionalidades básicas? Qual a história e o
enredo?
• Qual o objetivo do jogador? Qual a condição de vitória?

12
• O que o meu game traz de diferente em relação aos outros que já estão no mercado? Tem
um visual mais atrativo? A tecnologia é melhor do que a dos concorrentes?
• Qual é o gênero do game? É um gênero crescente no mercado? É um híbrido? É inovador?
• A classificação etária deve ser analisada e faz a diferença na aprovação do game pelos
órgãos competentes?
• Qual a principal plataforma? Será distribuído para PC, Windows, MAC e Linux? Será
desenvolvido para Android e IOs?
• Qual a expectativa quanto à experiência do jogador? Que sensações está tentando produzir?
• Haverá retorno financeiro? O jogo será free com publicidade? Como será o sistema de
monetização?

2ª etapa – Planejamento

O detalhamento do jogo é importante: qual é o estilo de arte e o plano de produção? Nesta


etapa a história aparece, os níveis são definidos, habilidade e itens dos personagens são descritos,
o universo é criado, a interface e a interação com o jogo são planejadas. Aqui há necessidade
da presença da maioria dos envolvidos, tais como programadores, artistas, escritores, designers,
produtores e assistentes de produtores.

3ª etapa – Prototipando

O protótipo é a primeira apresentação que captura a essência do jogo. Eles podem feitos de
forma digital ou no papel, em forma de rascunhos.

4ª etapa – Produzindo

A produção pode começar logo após as etapas de planejamento ou ainda depois de muitos
testes. Um período maior de início da produção serve para capturar o maior número possível de
informações úteis ao game. Já o período de produção, dependendo da complexidade, pode ser rápido
ou demorado. Ainda existem o refinamento e os testes alfa e beta do jogo. O game designer (vamos
falar dele na próxima aula) acompanha a produção para certificar que os detalhes estão sendo
devidamente implementados pelos programadores e artistas.

5ª etapa – Teste alfa e beta

Alfa é a etapa onde o jogo é “jogado” do início ao fim, para validar todas as fases, o módulo e
acertar os bugs que surgirem. Todos os problemas são registrados para que não ocorram novamente.
Já a fase beta dá uma ênfase na correção de problemas.

6ª etapa – Distribuição
Seja ela em qualquer plataforma, a distribuição deve ser feita de forma correta e sem erros.
Após passada a fase beta, o game é enviado as lojas virtuais ou empresas de distribuição.

13
Atividade FINAL
1 Atividade

Vamos estimular o seu processo criativo de jogos? Em um grupo de quatro pessoas, crie um game
que seja fácil de jogar, criativo, “viciante” e rode em dispositivos móveis. Pode ser um jogo de
tabuleiro, de estratégia, ação, aventura, corridas, entre outros. Para isso, vamos fazer uma reunião de
brainstorming com 30 minutos de duração. Cada equipe deverá ter um moderador, que deverá evitar
o espírito crítico e repreensivo das ideias. Quanto mais ideias surgirem, mais chances teremos de
obter um game competitivo e de qualidade.
Após os 30 minutos da fase de ideias, teremos mais 10 minutos para eliminar duplicidades
e separar em prioridades. Pense nas etapas que você viu nesta aula e desenhe um protótipo logo
após o brainstorming. Apresente todo o plano inicial ao seu professor.
Obs: O campo de classificação na tabela abaixo significa se a ideia é de alta, média ou baixa
prioridade.

Brainstorming

Nome da empresa Cidade Data: / /

Participantes:

Objetivo:

Formulário de registro das ideias geradas no brainstorming


Ideia sugerida Detalhamento da ideia Classificação

14
Formulário de registro das ideias geradas no brainstorming
Ideia sugerida Detalhamento da ideia Classificação

2 Responda

De que forma a realidade aumentada tem relação com a interação com o game?

15
Level 2

Lógica e algoritmos
O que é lógica?
Por que aprender lógica no curso de games?
Algoritmos
Conceitos gerais
A plataforma Scratch
Por dentro do Scratch
O que é lógica?

Trabalhar com a mecânica dos jogos requer um pouco de conhecimento de lógica. Quando
falamos nela, remete-se aos problemas que precisam ser resolvidos de forma correta e lógica. E por
isso, trabalhar com lógica é organizar o passo-a-passo (instruções) para realizar um objetivo ou uma
tarefa. Essas sequências de passos ou instruções são chamadas de algoritmos.

A lógica trabalha com uma linguagem ou grupo de palavras com significado que são
interpretados pelo computador. Ela representa ações do nosso dia-a-dia. Veja o exemplo: Se chover
hoje a noite, então não haverá festa. Essa condição é bem clara para a nossa interpretação. Não tem
festa se chover. Para os programas de computador, seja ele um game ou não, essa condição precisa
ser descrita na forma de um código. Cada linguagem tem um correspondente aos comandos, com a
mesma função, porém escrito de modo diferente (sintaxe).

Por que aprender lógica no curso de games?

A resposta é simples: um game nada mais é do que um software, com passos a serem
seguidos, usando uma lógica correta. Lá no seu game, você criará personagens, ações, cenários,
eventos, sempre utilizando a lógica. É ela que fará com que ele cumpra tarefas e realize um objetivo,
que será a conclusão do game. A lógica será utilizada para ordenar os algoritmos que serão executados
pelos personagens.

Algoritmos

Como falamos anteriormente e reforçando neste tópico, os algoritmos são


um conjunto de regras, combinados com uma lógica, que levam a solução de um
problema, mesmo que existam um número muito grande de etapas. Esses passos
seguem uma receita de bolo das ações a serem tomadas. Qualquer falha no
algoritmo, atrapalha a execução do programa.

Vamos fazer uma metáfora legal. Imagine que sua mãe vai fazer um bolo
de chocolate. É a primeira vez que ela faz um bolo e, claro, vai seguir uma receita
que ela pediu para você copiar da internet. Na hora da cópia você esqueceu
de colocar o chocolate, ou seja, o principal ingrediente. Mesmo assim o bolo
continuará sendo de chocolate?

Resposta: Claro que não. Uma falha no passo-a-passo resultou num problema e atrapalhou o
resultado final.

No caso do seu game, toda e qualquer ação do personagem ou evento (algo que ocorra, como
mudança de cenário, aparecimento de bônus, mudança de fase) estará mencionada em algoritmo. E
quem escreverá os algoritmos do seu game é VOCÊ!

17
Conceitos Gerais

Bem, o papo dos algoritmos chamou a sua atenção? Vamos entrar mais a fundo nele a partir
do próximo tópico, estudando uma plataforma interessante para iniciantes. Mas antes entenda os
seguintes conceitos:

Sprites (Objetos): são elementos utilizados na criação do game, como por exemplo, seus
personagens ou um objeto qualquer.

Scripts: são os comandos (passos, algoritmos) utilizados para dar vida e sentido aos sprites.

Palco: ambiente visual da criação, onde sua estória acontecerá.

Plataforma Scratch

As suas primeiras experiências no mundo dos games


precisam ser fáceis e intuitivas, sem aquele estresse de tentar
aprender tudo de uma só vez. Pensando nisso, reservamos para
você as primeiras linhas de desenvolvimento através de uma
linguagem de programação que permite criar animações, jogos,
arte, sons, estórias e outros - a famosa Scratch - criada em 2003
pelo Media Lab do MIT (Massachusetts Institute of Technology -
Instituto de Tecnologia de Massachusetts). Inclusive o site do MIT disponibiliza alguns projetos para
download ([Link]

Você não precisa pagar licença para usar o Scratch. Sua programação é feita através de blocos
algorítmicos lógicos, que permitem a criação da estória do jogo através da ordenação destes blocos.
Você pode criar animações, adicionar sons, eventos, controles, entre outros. A linguagem é utilizada
em mais de 150 países, disponível em mais de 40 idiomas, e projetado principalmente para crianças
e jovens de 8 a 16 anos de idade.

Uma das propostas essenciais do Scratch é ensinar lógica de programação a desenvolvedores


iniciantes, alunos ou aqueles que adoram games. Por ser dinâmico e sistêmico, as aplicações com
Scratch vão até as áreas de física, matemática, biologia, entre outros, transformando-se em fortes
aplicações de Tecnologias de Informação e Comunicação (TIC) distribuidas em sala de aula. Dominar
o Scratch é um excelente início para quem quer começar a programar.

No ano de 2016, o Scratch Fundation anunciou uma parceria com a Google para a nova
geração da ferramenta (versão 3.0). Esta nova versão será baseada em tecnologia web nativa (HTML
5) e contará com uma mudança na sua gramática. Por isso, fique atento as novidades.

Por dentro do Scratch

18
Sem muita enrolação, vamos para dentro da plataforma e descobrir suas funcionalidades.
Como são vários recursos disponíveis, vamos focar apenas nos essenciais, deixando a cargo do seu
professor apresentar aquelas que ele julgar interessantes para a aula.

Existem duas formas de se trabalhar com o Scratch: sua versão do editor off-line e a versão
online pelo site. Qualquer uma das duas traz o mesmo resultado. Ao longo das duas próximas aulas,
vamos aprsentar o Scratch por meio de exemplos práticos, como a criação de um jogo simples de
boliche. Mas este exemplo não é uma regra geral, e seu professor poderá escolher algo que seja mais
interessante para a aula. Vamos usar a versão online ([Link] pois ela já se encontra
em português e seu aprendizado ficará mais fácil. Vamos entender sua interface principal:

No lado esquerdo, onde está o gato, é o visualizador do seu projeto, conhecido como palco.
Abaixo do palco estão os espaços onde ficam os atores ou sprites, como são chamados, disponíveis
para uso. Caso você precise apagar um sprite, basta clicar com o botão direito do mouse nele e
depois clicar em apagar.

Para inserir sprites, basta clicar no ícone de uma cabeça abaixo do palco e a mesma abrirá a
Biblioteca de atores. Basta selecionar e adicionar ao seu palco.

Mas, para ese exemplo, a nossa opção será o uso de sprites e palcos importados do computador.
Se você quiser os modelos online disponíveis fique a vontade.

Começamos a importar as imagens do nosso game a partir da tela de introdução,


ou seja a tela de abertura. Para isso, você precisa adicionar um fundo de tela ao palco.
Clique no ícone para inserir um modelo de fundo online ou importar do seu computador.
Precisamos apenas de dois: a tela de introdução e a do game.

19
Na parte do meio da área de trabalho estão os blocos lógicos com os algoritmos que serão usados
no seu projeto. E no lado direito, teremos o espaço onde será montado o algortimo. Aproveitando que
importamos as primeiras imagens, vamos trabalhar com elas por meio dos algoritmos. Começando
pela tela de abertura, que ficará disponível para o jogador durante apenas 4 segundos, ao som de
uma trilha sonora. Para isso, selecione a imagem de abertura e use os seguintes blocos:

Entendendo os blocos, veja que as ações, aparências e sons são separados por cores. A lógica
para este primeiro item se resume em usar:

O evento Quando clicar em para iniciar o jogo.


Usar o script de Aparência para Mudar para o plano de fundo (neste caso chamado de
BOLICHE e será a abertura);
Usar o script de Som para Tocar um som importado da galeria de sons;
Permitir uma espera usando o controle Espere 4 segundos;
Mudar novamente o plano de fundo para a imagem da pista;
E Parar todos os sons para encerrar a música de abertura.

Perceba que os blocos acima são elementos de lógica que juntos formam o algoritmo que
deve ser executado.

A próxima etapa é importar mais objetos para o palco. Neste caso, os objetos seriam os pinos
de boliche e a bola. Nem sempre estas imagens estão disponíveis na galeria online e por isso você
deve buscar um vetor na internet. Seu professor vai dar dicas de como conseguir bons vetores.
Perceba que importamos uma bola e um pino, que será duplicado posteriormente. Mas antes, vamos
testar os algoritmos que vão derrubar o pino.

Mas veja bem: tanto a bola quanto o pino não podem aparecer na tela de abertura. E isso vai
acontecer se você colocar apenas aqueles algoritmos de abertura. Outro bloco deve ser montado
clicando no sprite Bola e Pino. Ele é simples: Quando iniciado as imagens da bola e do pino somem
(esconda), esperam os 4 segundos e depois reaparecem (mostre).

20
O nosso projetinho está ficando bacana, não é mesmo? A próxima etapa será ajustar o
tamanho dos pinos e da bola. Em seguida, duplique os pinos clicando com o botão direito do mouse
sobre o modelo original. Depois posicione cada um deles no local que a bola deverá acertar.

Importante: A movimentação de objetos e personagens na tela acontece associado a um


sistema de eixos coordenados cartesianos x e y, igual ao que você vê nas aulas de matemática da
sua escola. O Scratch trabalha com 480 unidades de largura (x) por 360 de altura (y). Assim, cada
ponto dentro do palco equivale a uma coordenada x,y.

Falta agora uma ação de lançar a bola e derrubar os pinos. Usando o


controle Quando este ator for clicar, ordene pelo algoritmo que a bola deslize
sobre o cenário. Isso será feito no script do movimento Deslize por x segundos
até. Só que antes, é preciso que a bola seja posicionada no lugar exato antes do
deslize. A sugestão é colocar um movimento chamado Vá para x: y: antes do
script mostrar o objeto. No caso escolhemos a posição 6 para x e -74 para y.

Seguindo o passo-a- passo, vamos fazer com que a bola deslize de forma aletatória. Para isso,
usamos os operador Número aleatório entre, colocado na posição do eixo x do script deslize. E os
números que vão representar este aleatório do eixo x serão as posições de extremos dos pinos. No
nosso cenário escolhemos a posição a esquerda (-50) e a direita (50). Veja como fica o algoritmo e
o espaço de alcance da bola. Acrescente o retorno da bola a posição inicial e o resultado de lançar
a bola estará pronto.

E agora, vamos derrubar os pinos? A mágica é simples: Clique no objeto Pino e use o script de
eventos Quando clicar em para acionar o evento. Em seguida, use o controle Sempre com um Se
então dentro. Dentro deste Se então, colocamos um sensor que diz Tocando em para que o efeito
da bola tocando o pino aconteça. Veja como ficou o script.

21
O que falta? Claro, a contagem do pinos derrubados. Para isso vamos criar uma nova variável
no script variáveis. Ao criar, adicione um script chamado Adicione a. Você vai perceber que o
nome que você deu a variável aparecerá tanto no bloco do script quanto na tela. O algoritmo ficou
conforme a figura abaixo, assim como a tela do jogo.

Faça o mesmo algoritmo para todos os pinos ou, se preferir, faça com apenas um deles e
depois duplique.

Pronto, seu jogo está feito. Gostou da experiência? Agora é sua vez de treinar. Pense que com
esta plataforma é possível ajustar centenas de combinações com os scripts formando algoritmos
simples e complexos.

22
Atividades
1 O algoritmo

De uma forma bem clara, sem muita preocupação com sintaxe, monte um algoritmo para um
game de esporte, como uma disputa de pênaltis, por exemplo. Se você sabe a regra do jogo,
fica fácil criar. Tente.

2 Treinando o projeto

É justo que você tente reproduzir o projetinho desta aula. Crie o jogo de boliche usando a
sua criatividade e o Scratch. Para facilitar o seu trabalho seu professor poderá disponibilizar
as imagens de fundo de tela e sprites do jogo.

3 Outros projetos

Se observar do lado direito da plataforma, existem tutoriais para apresentar você ao Scratch.
Exemplos de dança, jogos com naves espaciais, capturas, entre outros, estão disponíveis para
você testar. Aproveite e crie um game de acordo com o exemplo deles.

23
level 3

Game design
O que é game design
Desenhando seus personagens
Gamificação
A importância de uma trilha sonora
Criação de cenários
O profissional Game designer
Mais um pouco do Scratch

24
O que é Game design

Todo e qualquer aprendiz de desenvolvimento de jogos eletrônicos


prefere ter a cabeça focada no chamado design de jogos ou game design,
uma extensão prática da área de design exclusiva para games. Quando
se fala em game design, pensamos num complemento de várias mídias
e códigos, baseados numa programação dinâmica (game programming),
numa sonoplastia (game sound), no efeito das cores/layout (game art),
na computação gráfica, entre outros.

De tudo que foi colocado, nunca podemos esquecer que o objetivo principal do game design
é traduzir a linguagem do roteiro em módulos interligados e promover interatividade do homem com
o jogo. Tudo isso é feito para garantir a diversão do usuário final.

Desenhando seus personagens

Um dos primeiros passos para criação de um game é na hora de desenhar


seus personagens. Personagens dos games se tornaram marcantes e lembrados
porque apresentaram características únicas e bem trabalhadas, mas sempre dentro do
contexto criado para o game.

Como todo game tem um propósito (você viu isso na aula anterior) é preciso
que o personagem esteja claramente inserido dentro do enredo ou propósito. Exemplo:
jogos para criança devem possuir personagem com traços mais suaves, cores médias, enredos
alegres e sem vilões tão temíveis.

Todo contexto tem um estilo, mas em nenhum deles a personagem pode ser inferior aos
inimigos e nem perante ao cenário. A sua personagem tem que ser complementar a aparência e
ao estilo do game, interagindo com o cenário. Animações diferenciadas da personagem principal ou
cores que contrastam com o cenário, ressaltam a personagem.

É aí que pensamos mais a fundo: utilize atributos diferenciados no personagem, tais como
barba, chapéus, um cabelo bastante único ou uma roupa com cores chamativas (veja o Super Mario).
Atributos físicos ou acessórios ajudam a tornar o personagem principal em relação aos demais
personagens ou cenários do game.

Sendo assim, vale considerar que um bom personagem deve ter:

Arte – um personagem pode ser desenhado a mão, em vários ângulos, para se ter uma noção
do todo. As cores não precisam ser tão sofisticadas e complexas, sempre nos lembrando da questão
do contexto.

25
Modelagem – Seja ele em 3D ou 2D, é importante que o modelo seja consistente. Quanto
mais pontos de manipulação tiver, mais complexo ele fica e mais processamento vai exigir ao rodar
o game.
Texturização – A textura também faz a diferença. Devemos atribuir cores e texturas que
mostrem a aparência física da personagem.
Animação – As animações são feitas quadro-a-quadro com interpolação, ou seja, um ponto
inicial do movimento do personagem percorre todo o caminho até o ponto final.

Gamificação

Não sei se você percebeu de verdade, mas os games estão por toda
parte, em várias áreas. Seja ele no aprendizado, na saúde ou nas simulações, a
gamificação está cada vez mais presente. Mas o que significa isso? Gamificação
significa transformar em forma de games (ou próximo disso) as tarefas e atividades
cotidianas. E com esse processo, existe muitas oportunidades vinculadas a este
trabalho, como por exemplo as campanhas publicitárias que usam os games
para exibir as suas marcas. Um exemplo recente e clássico foi o uso da realidade
aumentada do PokemonGO para divulgar empresas. Personagens do jogo era
colocada dentro de lojas, restaurantes, entre outros.

Gamificar significa aplicar as ações de games nas realidades de cada


lugar. Treinar equipes de vendas utilizando softwares simuladores também pode
ser considerado no conceito de gamificação. Se a sua escola quer tornar o ensino mais atrativo,
promovendo maior interação entre alunos e professores, o resultado de um jogo criado para este
esquema será positivo.

Certa empresa usou um game próprio para treinar uma de suas equipes, utilizando técnicas
como pontuações e rankings, estimulando a busca por conhecimento, ao mesmo tempo em que
aumenta a interação entre o time. Outro exemplo conhecido é o programa de recompensa de um
site chamado Mova Mais, para quem faz exercícios físicos. É uma forma de fazer a gamificação de
uma rotina, pois o usuário faz atividade física e recebe pontos por isso. O resultado final é a vida
mais saudável e o resgate posterior de pontos.

Achou interessante? Pense em mais conhecimento, pois as empresas já estão buscando


profissionais e outros empresas especializadas em técnica de gamificação. É sua chance de entrar
neste mercado, busca uma nova oportunidade e, quem sabe, ter um salário bem mais atrativo.

26
A importância de uma trilha sonora

Qual é a música do seu jogo favorito? Esta pergunta ajuda você a entender o tamanho da
importância de uma trilha sonora para o seu jogo. Não há necessidade de produzir algo específico
para ele, mas a escolha correta da música ou sons que serão usados no seu game pode deixá-lo
bem atrativo aos jogadores que vão consumi-lo.

Todo projeto de um jogo precisa de uma trilha sonora que acompanhe o desenvolvimento do
mesmo, as fases, as mudanças de cenário, momentos de ação, humor, transformações de personagens
e por aí vai. Vamos aos exemplos: uma perseguição de carros precisa de uma música mais agitada.
Uma recompensa alcançada precisa de um som que enalteça o momento. Até mesmo sons em
“momentos de silêncio” fazem a diferença: é o caso do cenário ser uma floresta e sons dos bichos
ambientam o game.

Resumindo: a trilha sonora estimula o jogador, eterniza o momento e cria o ambiente integrado
do jogo. Mesmo que sejam efeitos simples, a trilha sonora precisa mesmo fazer parte do projeto
de um jogo de qualidade. Assim, na hora que você ou sua equipe estiverem projetando a história e
idealizando as cenas, pense em como a trilha sonora pode tornar a experiência do seu game, única
e inesquecível para muitos.

Criação de cenários

Os cenários são parte integrante do projeto de um game, principalmente para ambientá-lo. Ao


criar um cenário pense no conjunto formado por ilustrações, que podem ficar como fundo de tela no
palco, e demais objetos de composição.

O fundo de tela do seu palco é o principal item relacionado ao cenário. Certamente você deverá
usar a temática com os mesmos objetivos do game. O game designer é responsável por coordenar
esta etapa, elaborar todos os elementos que estarão no cenário e que seu personagem irá interagir.

Para isso, a criação de cenário deve ocorrer junto com a área de design gráfico, pois boa parte
deles será criada por um profissional ligada a ela. E os arquivos externos geralmente são criados com
a extensão *.png, por serem os mais indicados por possuir fundo transparente. Use sua criatividade
para enriquecer seu cenário.

27
Você pode usar ferramentas e plataformas específicas para criar os seus cenários. O Blender,
o Photoshop, a UDK (Unreal Development Kit), Game Maker são exemplos que podem ser usados
por você.

O profissional Game designer

Se você pretende trabalhar algum dia no mundo da criação de games, seu caminho é se tornar
um game designer. A missão deste profissional é projetar jogos, do início ao fim, e coordenar as
equipes envolvidas. Os games designers são as mentes criativas por trás dos jogos.

O mercado de trabalho na área dos games não para de crescer. Os games para consoles,
como o Xbox e o Playstation, para PCs e Macs, e para dispositivos móveis são o carro chefe deste
grande mercado. Detalhe: não podemos esquecer que existe um mercado amplo para games que
ajudam no ensino, na saúde, entre outros, alguns sendo projetos enormes que envolvem equipes
multidisciplinares com inúmeros profissionais.

Quem procura se especializar nesta área, tem que se concentrar no estudo do gerenciamento
de projetos, na mecânica dos jogos e no design propriamente dito. Você precisará aprender a planejar
todos os requisitos para que um projeto de jogo seja executado.

O potencial do mercado de games no Brasil é enorme, abrindo boas possibilidades para quem
se especializa. As principais empregadoras são as empresas desenvolvedoras de jogos. O aumento no
número de empresas desenvolvedoras em São Paulo, Rio de Janeiro, Recife, Fortaleza, Florianópolis
e Porto Alegre abre boas opções de colocação nessas capitais.

Como dissemos, o desenvolvimento de jogos eletrônicos envolve o trabalho de vários


profissionais. Saber trabalhar em equipe e ter boa comunicação são características importantes, pois
o designer de games precisa, por vezes, explicar com objetividade e clareza o trabalho que está
realizando para outros membros do time.

E por fim, vem a remuneração. No Brasil, para quem está começando, a remuneração vai de R$
1.200,00 a R$ 1.800,00 mensais. Já alguém com mais experiência pode receber R$ 4 mil.

Um pouco mais do Scratch

Achamos interessante acrescentar o que fazem alguns blocos dos scripts que podem ser
usados no editor. São muitos, mas alguns deles requerem um pouco mais de atenção, como é o caso
dos operadores e variáveis. Vejamos:

28
Operadores

Os operadores ajudam a juntar ou comparar valores dentro dos demais blocos do Scratch. A
tabela abaixo faz um resumo dos principais operadores utilizados nos blocos.

+
Soma os 2 números escritos
- Subtrai o 2º número do 1º
* Multiplica os 2 números escritos
/ Retorna o quociente(c/2 casas) do 1º pelo 2º número

escolha número entre _ e _ Sorteia um nº entre os extremos especificados

< Verifica se o 1º nº é menor que o 2º

= Verifica se o 1º nº é igual ao 2º

> Verifica se o 1º nº é maior que o 2º

e Verifica se as 2 condições dadas estão satisfeitas

ou Verifica se pelo menos uma das cond está satisfeita “verdadeiro


qdo a condição não for satisfeita
não Tem o valor “true” se a condição for “false”; tem o valor “false”
se a condição for “true”
junte Concatena 2 elementos
Apresenta o caractere na posição especificada da cadeia de
letra_de caracteres
tamanho de Devolve o número de letras da palavra especificada

Tem o valor do resto da divisão do primeiro número pelo


mod segundo número
Arredonda o nº dado para o inteiro mais próximo
arredondamento de

_de_ Calcula uma função a partir das funções diferentes a partir do


menu suspenso.

Extensões

As extensões permitem que você se conecte a dispositivos físicos ou a serviços web.

Em qualquer projeto, clique na categoria Mais Blocos e escolha Adicionar uma extensão.
Você pode adicionar, por exemplo, uma extensão LEGO WeDo 2.0 para montar games no formato
específico das peças de LEGO. Não é bacana?

29
Atividade FINAL
1 Criando um cenário

Você aprendeu sobre a importância de se criar um cenário dentro do contexto do jogo que
vai desenvolver. Por isso, o seu professor vai escolher a ferramenta/plataforma que ele achar
adequada para que, em duplas, vocês criem um cenário para o jogo projetado na primeira
aula. Se quiserem, façam um rascunho numa folha de papel para entender melhor a criação.

2 Desafio – Criando um novo jogo

Já deu tempo de assimilar e testar os scripts do Scratch? O desafio da aula será criar um
jogo com a maior quantidade possível de blocos de categorias diferentes. Use blocos de
Movimento, Aparência, Sensores, Operadores, entre outros. O importante será assimilar cada
um dos blocos da plataforma.

30
Level 4

Software e plataformas
Escolha da tecnologia
Principais softwares para criação de jogos

31
Escolha da tecnologia

Escolher a melhor plataforma ou ferramenta para criar jogos eletrônicos pode ser uma tarefa
difícil para quem não conhece. E ultimamente, cresce cada vez mais o número de ferramentas
disponíveis, espaços de divulgação, desenvolvimento e distribuição de jogos. Vão desde as mais
simples e intuitivas, como o Scratch das aulas anteriores, quanto as mais complexas para empresas
de desenvolvimento de games.

A nossa meta aqui nessa aula é apresentar as principais ferramentas do mercado, suas
características, e ajudar você a encontrar aquele que mais esteja familiarizado, e com isso criar
games legais, mesmo que você não tenha conhecimentos avançados em programação.

Principais softwares para criação de jogos

Como dissemos, vamos fazer um passeio pelos softwares exclusivos para a criação de jogos
eletrônicos. Vamos apresentá-los, sem entrar muito em detalhes (por enquanto). A ideia é que você
conheça cada um deles antes de tomar a decisão do melhor. Claro que a orientação e sugestões do
seu professor serão essenciais.

Unity

O Unity é um software proprietário criado pela Unity Technologies,


com uma interface gráfica multiplataforma. Ela possui duas versões:
Unity Pro (paga) e uma versão gratuita com recursos gratuitos, utilizada
até mesmo para fins educacionais. Sua principal característica é o uso
para criação de jogos que rodam no navegador.

Por ser multiplataforma, ele roda no Windows, Linux e Mac OS, e ainda em dispositivos móveis
como BlackBerry, Windows Phone 8, Windows, Android, iOS, entre outros. Em pesquisas para esta
apostila, identificamos que o Unity é um dos principais motores (engines) de construção de jogos
independentes. Essa preferência é por causa da (o):
• Simplicidade de construção, pois a ferramenta possui um estilo de programação e organização
dos projetos todo especial;
• Foco muito claro de desenvolvimento;
• Possibilidade de utilizar elementos criados por outros em nossos games;
• Possibilidade de realizar o download de inúmeros elementos gráficos para o game, a partir
da loja oficial do Unity 3D ([Link]

32
• Versão gratuita ser bem completa;
• Permissão de comercialização dos jogos mesmo utilizando a versão gratuita.

Neste exemplo da figura acima, baixamos na loja oficial um asset chamado de Nature Starter
Kit2. Com ele vamos montando um cenário relacionado a natureza.

Unreal

Outro software bastante utilizado no mundo dos games é o Unreal Engine,


uma ferramenta criada para dar mais agilidade e produtividade a equipes de
produção de games. A versão mais atual roda diretamente para HTML5, JavaScript
e WebGL. Segundo o site oficial, você pode fazer o download da engine e usá-la
para qualquer coisa, desde o desenvolvimento de jogos, educação, arquitetura e
visualizações para dispositivos de Realidade Virtual, filmes e animações. O site
também diz que não há limite para produção, desde um simples quebra-cabeça
inteligente ou um jogo de ação.

O Unreal realmente é de graça? Não é bem por aí. Quando


você vende um jogo ou aplicativo criado com a ferramenta,
paga 5% de royalties por produto, em cima da venda bruta
acima de US$ 3.000 por trimestre. Isso é uma informação
construída pelo próprio software.

RPGMaker

Outro software bastante conhecido para desenvolvimento de jogos eletrônicos em RPG é o


RPG Maker. Sua série de motores de jogo para desenvolvimento permite a criação do game sem
conhecimento de programação. Ele permite que você customize todos os aspectos do seu jogo com
uma interface fácil de usar, sendo perfeito para iniciantes. Ao todo, são nove ferramentas que incluem
os motores e ferramentas para criação de personagens e mangás: RPG Maker MV, RPG Maker VX
Ace, RPG Maker VX, RPG Maker XP, RPG Maker 2003, GG Maker, IG Maker, Manga Maker e o Game
Character HUB. Depois, vale a pena dar uma pesquisada nestes softwares.

33
Os recursos da RPG Maker utilizam a linguagem Javascript para seus plug-ins, muito comum
em plataformas e sites web. O desenvolvedor pode criar mais funções para seus jogos e depois
enviá-los para a pasta de plugins. Além disso, o usuário pode adaptar muito modelos de exemplos,
tais como mapas, personagens, peças prontas, entre outros, o que permite criar um jogo sem ter
muito trabalho.

Mas ele também tem suas desvantagens. A limitação de apenas um tipo de jogo – RPG – não
valoriza os muitos recursos disponíveis. Além disso, a qualidade de seus gráficos é inferior ao de
outros programas.

E se você quiser mesmo se aprofundar, atualmente existem diversas comunidades prestando


suporte ao RPG Maker e outros motores de criação de jogos no Brasil, tais como o Mundo RPG
Maker([Link] e o RPG Maker Brasil ([Link]

Baixe a versão trial mais atualizada no site [Link]

CryEngine

CryEngine é outro motor de desenvolvimento


de jogos, mas que não é tão famoso por aqui. Mas
vale a pena falar dele pois é algo que vem crescendo
nos últimos anos. Sua maior missão será adaptar
um processamento em tempo real de 100%, o que
permite um trabalho colaborativo no game. Além
disso, ele busca interagir com a tecnologia de captura
de movimentos, como por exemplo o Kinect.

Construct 2

O Construct 2 é outro motor, este desenvolvido pela empresa Scirra, sendo uma ferramenta
gratuita baseada na linguagem Java. Lembra da aula que falamos de lógica? Pois é, a garantia que
o programa dá aos seus usuários é de que eles precisam apenas conhecimentos de lógica para
desenvolver próprios games 2D em HTML5.

Com interface totalmente intuitiva e gráfica, não requer experiência em programação do


desenvolvedor. Assim, você só precisará ter boa vontade, dedicação e muita criatividade.

A engine funciona apenas nas versões do sistema operacional da Microsoft. Mas ela é
multiplataforma, ou seja, permite exportar jogos criados para smartphones, tablets, computadores,

34
navegadores e também para o console Wii U. E pelo fato
de ser portátil, você pode instalá-lo em um pen drive e
levá-lo com você.

Para fazer download do aplicativo, entre no site da


Scirra e escolha a opção download da versão gratuita.
Neste site você terá um download mais atualizado e
confiável do aplicativo, além de poder conhecer alguns
games feitos com o Construct 2, manuais e tutoriais, a
loja da Scirra com diversos games e complementos para
os aplicativos disponíveis para compra. O programa possui uma versão gratuita e duas versões pagas:
a Personal License e a Business License.

SDK Android

E por último vamos falar do SDK - sigla de Software Development Kit (Kit de Desenvolvimento
de Software) da Google para o sistema Android. Todo este sistema inclui documentação, código e
utilitários para que programadores consigam desenvolver as suas aplicações e jogos de acordo com
um padrão de desenvolvimento.

O Android Studio é o que oferece as


ferramentas para a criação de aplicativos e jogos.
O único detalhe aqui é o uso de códigos de
programação num editor próprio, mesmo que alguns
itens sejam por meio do arraste e solte. Isso não é
fácil para alguém que está iniciando seus estudos.
Android Studio é disponibilizado gratuitamente sob
a Licença Apache 2.0.

35
Atividade FINAL
1 Descobrindo os fóruns

Nesta aula vimos que existem vários softwares e plataformas que permitem a criação e
desenvolvimento de jogos. O bacana dela é que a grande maioria possui fóruns e grupos de
discussão que auxiliam os iniciantes no mundo dos games. Para cada um dos softwares que
vimos hoje, entre nos seus respectivos fóruns e analise as opções de apoio para você.

2 Encerrando projetos

Chegamos ao fim da primeira fase da nossa apostila. Que tal realizar os ajustes finais nos
projetos que você desenvolveu nas últimas 4 aulas? Faça o encerramento dos projetos
concluindo suas ações e anotando os acertos e os erros consentidos. Isso vai te ajudar nos
próximos projetos.

Acertos Erros

36
Level 5

Construct 2
Construct 2
Indicações deste aplicativo
Baixando e instalando o Construct
Principais recursos
Configuração da área ativa do game
Aplicação ao projeto

37
Construct 2

Chegou a hora de colocar a mão na massa e desenvolver jogos usando


uma das ferramentas que vimos na aula anterior: o Construct 2. Você já teve
uma visão geral dele, reforçando apenas que é uma ferramenta gratuita baseada
na linguagem Java que permite a usuários com apenas os conhecimentos de
lógica, desenvolverem seus próprios games 2D em HTML5.

Por ser feito para Windows, não vamos usar nenhum sistema operacional
diferente disso. Mesmo assim, faremos testes de exportação para outros sistemas,
como o Android, por exemplo. Preste a atenção na instalação e mãos à obra.

Indicações deste aplicativo

Existe um público alvo para o uso deste software de desenvolvimento de jogos. São eles:

• Desenvolvedores que estão começando a criar seus próprios games, mas não tem habilidade
alguma com as linguagens de programação;
• Desenvolvedores que buscam a criação de games em 2D com uma qualidade de produção
intermediária;
• Games designers que buscam a criação rápida e eficiente de protótipos para seus novos
games;
• Estudantes, assim como você, que estão descobrindo as variações que o mercado de trabalho
oferece, podendo se especializar nesta área;
• Escolas públicas ou privadas de nível fundamental e médio que estão buscando alternativas
lúdicas para implementar novas TICs.

Baixando e instalando o Construct

O processo de baixar e instalar o Construct 2 é bem parecido com os outros programas


que você tem o costume de baixar. Neste caso, entre no site da Scirra ([Link]
construct2) e escolha a opção download da versão gratuita. Neste site você terá um download mais
atualizado e confiável do aplicativo, além dos fóruns de discussão e dos modelos de games feitos
com a ferramenta. Você pode aproveitar para baixar os manuais, usar tutoriais, e até mesmo baixar
a versão paga com mais recursos.

38
Uma vez que você acessa a área de download, o instalador é baixado automaticamente.
Clicando duas vezes nele, a instalação irá começar solicitando o aceite do termo e o avanço das
etapas pelo botão Next.

Lembrando que a instalação também pode ser portátil, ou seja, você pode instalá-lo em uma
unidade removível, como uma USB, e usá-lo em qualquer computador. Para que isso aconteça, no
momento em que as etapas de instalação solicitar qual pasta instalar, defina o caminho para a pasta
no seu drive removível.

Principais recursos

O Construct 2 possui seus recursos próprios que auxiliam no desenvolvimento de qualquer


projeto. São eles:

• Amplo conjunto de ferramentas arraste e solte para pessoas com pouco ou nenhum
conhecimento de desenvolvimento de jogos;
• O Editor de Layout fornece uma interface visual para projetar em níveis;
• Você pode arrastar, girar e redimensionar objetos, visualizar efeitos aplicados, e rapidamente
mudar suas configurações ao seu gosto na barra de propriedades;
• Uso de camadas separadas para uma melhor organização do projeto;
• Possui um editor de imagens embutido para fazer edições rápidas de um objeto;
• Facilidade na criação de protótipos;
• Criação de eventos selecionados através de possíveis condições e ações a partir de uma lista
organizada.

Configuração da área ativa do game

Visualizando a área de trabalho do Construct 2, que é certamente o local que você irá
trabalhar, destacamos a interface com os seguintes itens:

A abertura de um novo projeto ou de um salvo pode ser feita da área Start. Além disso
você pode usar exemplos de projetos (Project Examples) retirados diretamente da biblioteca do
aplicativo para, inclusive, abri-los e ver como foram feitos. Já os manuais, tutoriais, fóruns de troca de
informações sobre o aplicativo e a famosa loja estão como complemento em Useful Links.

39
E assim como fizemos nas aulas sobre o Scratch, vamos usar trechos de um projeto para que
você entenda como funciona o software. Mas antes, vale dizer que a área ativa dele é composta por
uma tela de layout e uma folha de eventos (Event Sheet).

Como estamos falando de área ativa, um dos primeiros itens a ser observado é a barra de
propriedades. Ela exibe uma lista de todas as definições que podem ser alteradas a partir de um
item selecionado, além de muitas propriedades listadas aqui. Se você observar na árvore desta barra,
verá que as propriedades são organizadas por categorias, que podem ser expandidas e recolhidas.
Não vamos explicar todos os campos desta barra, porém é importante que você faça anotações à
medida que elas forem apresentadas.

Outro lugar importante da área ativa do seu projeto é a barra de projeto. Ela apresenta uma
visão geral de tudo que está presente em seu projeto, um resumo dos diferentes elementos que
compõem o projeto e suas respectivas pastas.

Entendeu? Podemos começar o nosso próximo projeto?

Aplicação ao projeto

Sem perda de tempo, vamos iniciar a construção de um jogo tradicional de naves espaciais.
Antes de iniciar o desenho do jogo no palco, precisamos alterar as configurações dele, como o
tamanho e a cor (se desejar). Optamos por alterar na barra de propriedades para o tamanho 640 x
480 em Window Size. Aproveite e mude também a configuração Prewiew browser em Configuration
Settings para selecionar qual navegador será aberto para testar o seu jogo.

40
Neste primeiro momento vamos nos preocupar apenas com o Sprite (personagem) e o Tiled
Brackground (cenário). Entenda que a maioria das vezes esses desenhos não estão disponíveis
pelo programa e você precisará procurar modelos na internet ou desenhá-los. O seu professor vai
demonstrar como encontrar os melhores modelos.

Movimentando um Sprite

Até aí parece bem fácil de executar, certo? Sim, realmente não existem tantas dificuldades
neste trabalho. Porém, como isto é um jogo, deverão acontecer movimentações dos sprites. E isso
será feito dentro da barra de propriedades, adicionando e alterando itens. Ao selecionar o Sprite da
nave espacial que usamos no exemplo, você verá as propriedades dela. Uma dessas é a chamada
Behavior (Comportamento). Adicione um behavior da categoria Movements (Movimentos) chamado
8 Direction (8 Direções). Perceba que este behavior foi adicionado a partir da barra de propriedades.
O nosso Sprite vai se movimentar em 8 direções e sem nenhum tipo de ângulo especial, pois está
marcada a opção No em Set Angle.

Quer testar o jogo? Salve e clique no ícone que parece um Play, chamado de Run Layout, lá
na barra de títulos. Ele vai abrir o navegador configurado e pronto. É só testar a movimentação da
sua nave.

Até aqui tudo bem? Gostou do resultado. Vamos seguir em frente então. A próxima etapa é
inserir mais um Sprite, desta vez relacionado com o tiro da nave. Depois de inserida a figura, ajuste
o tamanho dela em relação ao plano geral e a nave. Você também precisará adicionar a este Sprite
um Behavior (Comportamento) chamado Bullet para simular o tiro.

41
E de que forma vamos atirar? Simples, usando o teclado e o mouse como objetos criados
dentro do palco. Use a mesma janela que você inseriu o Sprite, porém selecionando Keyboard
(Teclado) e Mouse na categoria Input.

Trabalhando com eventos

A folha de eventos do Construct 2 é o local onde você criará as suas ações e condições em
cima de um Sprite qualquer. Clicando com o botão direito sobre a tela da folha de eventos podemos
adicionar um evento qualquer. No caso do nosso exemplo do jogo, vamos fazer com que a nave
dispare tiros.

E como isso será feito? Pressionando uma tecla qualquer no teclado. Por isso, vamos adicionar
as condições ao keyboard (teclado). Você seleciona o ícone do teclado, avança, e em seguida seleciona
a opção On Key Pressed (quando pressionar a tecla). Neste caso escolhemos a tecla A para ser
disparar o tiro.

Sempre, uma ação de um Sprite deve combinar com a ação de outro. Essa condição faz com
que o jogo se torne dinâmico. No caso do nosso game do exemplo, a nave deve atirar o laser. E isso
só vai acontecer se você adicionar uma nova ação a condição que você criou: Keyboard – On A
Pressed. E isso pode ser feito clicando em Add Action (Adicionar ação), selecionar o Sprite de onde
vai partir esta ação e selecionar a ação de disparo chamado Spaw another object (Disparar outro
objeto). E este outro objeto é selecionado dentro da layer atual, que geralmente é a 1.

42
Falta pouco para terminar esta etapa. Se você testar agora pode ser que apareça um bug e o
tiro da nave saia para os lados. O segredo então é adicionar uma nova ação no laser e usar a opção
Set Angle para direcionar o ângulo em -90º.

43
Atividade FINAL
1 Testando o Construct 2

Nada mais justo do que testar todo os comandos e eventos que aprendeu hoje usando os
dados do exemplo que colocamos nesta aula. Reproduza esta primeira parte do game, mas
usando a criatividade. Não há necessidade de seguir à risca, pois as imagens usadas podem
caracterizar o seu estilo próprio. Mãos à obra.

2 Desafio – Atire fogo

Nos mesmos moldes da montagem da nave atirando laser, faça ela atirar fogo quando
pressionada uma outra tecla.

44
Level 6
Construct 2 – Continuação do projeto
Ponto de imagem
Movimentando cenários
Eventos de colisões
Programando variáveis
Interface com o usuário

45
Ponto de imagem

Voltamos com força total ao nosso jogo da aula anterior. Abra o projeto salvo anteriormente e
vamos continuar a adicionar funcionalidades a ele.

Temos certeza de que quando você executou o seu jogo foi


identificado um pequeno bug, como em vários tipos de jogos: os tiros
são disparados do meio do Sprite (nave) e não da ponta dela. Isso
pode ser facilmente corrigido com o chamado image point ou ponto
de imagem. Este ponto da imagem é apenas uma marcação feita na
imagem para que a ação aconteça a partir dali. Para adicionar, clique
com o botão direito no Sprite desejado, no nosso caso é a nave, e
selecione Edit animations (editar animações). O editor de imagens vai
reaparecer e usando o ícone set origins, você vai acessar uma janela para adicionar o ponto. Clique
no sinal de mais, e use o mouse para marcar exatamente o ponto de imagem desejado. Pronto, seu
image point foi criado.

Importante: seu problema com o bug ainda não foi 100%


resolvido? Falta indicar este ponto de imagem criado lá dentro da
ação. Na imagem acima o ponto de imagem criado tem a indicação
1. Por isso, você vai indicar lá na ação também o número 1.

Movimentando cenários

Outro tipo de ação bastante comum nos games em 2D são as movimentações e rolagens do
cenário para dar o efeito de movimento. Isso pode ser feito dentro do Construct 2 usando apenas a
marcação de pontos X e Y no cenário e adicionando a eles o aumento de pixels. E para isso vamos
voltar a nossa folha de eventos ou área de programação.

Desta vez vamos adicionar um evento chamado de Every Tick que vai permitir uma ação
Always (sempre) para seu evento. Em seguida a janela da folha de evento mostrará este evento que
você acabou de criar. Basta clicar em Add action para escolher a ação Set Y em Size & Position.
Mas porque Set Y? Como o cenário do nosso exemplo vai se movimentar na vertical, usaremos o
eixo Y para isso.

46
Quando selecionado o Set Y, uma outra caixa de diálogo aparecerá solicitando que você
digite quantos pixels de movimentação seu cenário irá se mover (imagem da esquerda). Mas este
detalhe precisa ser marcado no cenário usando a janela Objects with expressions. Você selecionará
a posição Y nesta janela até que ela apareça marcada como parâmetro (imagem da direita). Agora
basta somar 1 ao parâmetro e o movimento estará criado.

Observações importantes:

1. O cenário precisa ter um tamanho grande para que o movimento dele


aconteça. Por isso, trabalhe com imagem maiores ou aumente o tamanho dela.
Foi o que fizemos neste exemplo. Quando a imagem terminar, entre outro cenário
ou a tela ficará em branco.
2. Você pode diminuir a velocidade de movimento do seu cenário. Nos
parâmetros que vimos acima, poderia usar 0.5 em vez de 1.

Eventos de colisões

Em jogos de tiro, como este exemplo da nave, algum tipo de colisão deve existir entre dois
Sprites. Neste caso, o laser com um inimigo. Detalhe: ainda não inserimos o nosso inimigo. Escolha
uma opção de imagem na internet e depois adicione ao seu jogo.

Mais uma opção de movimentação deve ser considerada, desta vez para os inimigos. Para
isso, adicionamos um novo Behavior (Comportamento) que desta vez será um chamado Sine. Este
comportamento serve para ajustar as propriedades de um objeto (como a sua posição, tamanho ou
ângulo) de acordo com uma oscilação de onda senoidal. De todas as suas propriedades, para o nosso
exemplo, vamos mexer na Magnitude, alterando a posição máxima do objeto, tamanho ou ângulo,
em pixels, no espaço de movimentação. Para o nosso jogo, colocamos a magnitude de 20. Teste o
jogo novamente.

47
Importante: todos os sprites inimigos devem ter a mesma configuração.

Ainda falando das propriedades do comportamento Sine, vamos adicionar


mais um (Sine 2) para testar novos movimentos e potencializar os efeitos. Ao
adicionar um segundo Sine, vamos alterar:

Movimento – Neste caso uaremos o vertical para testar. Observe que um


ficará na vertical e outro na horizontal.

Magnitude random (magnitude aleatório) – este gera um valor aleatório


para adicionar à magnitude (espaço de movimento) para cada teste.

Period Offset Random (Período de compensação aleatória) - um número


aleatório de segundos para ajudar a variar a aparência quanto e posição de
objetos. Isso auxilia na aparência dos movimentos para cada vez que o sprite aparecer.

E agora falta a colisão, certo? Para isso, voltamos a nossa folha de eventos. Lá você vai
adicionar um novo evento chamando On collision with another object (Na colisão com outro objeto).
Selecione o objeto desejado e pronto. Já temos uma condição de colisão.

Mas ainda tem um pequeno detalhe: o que vai acontecer quando houver uma colisão? Vamos
adicionar uma ação chamada Destroy. Assim, o nosso “Inimigo Verde” será destuido quando atingido
pelo laser. Não se esqueça de fazer o mesmo procedimento para outro inimigo, se houver.

Prepare-se: vem aí um desafio. Será que você é capaz de adicionar uma explosão e o som dela
quando o laser atingir o inimigo? Vá pensando. Daqui a pouco daremos algumas dicas importantes.

Programando variáveis

48
Variável de instância

Todo os jogos tem algum tipo de variável que vai completar uma
ação ou alterar a força de um objeto. No nosso caso, cada variável de
instância permite que cada inimigo guarde seu próprio valor de vida. Clique
o Sprite que você vai adicionar vidas e vá até a barra de propriedade em
Intance Variables. Adicione uma nova instância com um valor inicial de 3
vidas, conforme a figura ao lado. Perceba que este valor é para o nosso inimigo vermelho.

E a programação? Precisa? Claro que sim. Vamos direto a folha de eventos na linha que já
programamos para o Destroy do InimigoVermelho. Apague esta linha e adicione uma nova ação para
o sprite Inimigovermelho usando a Instance Variable chamada Subtract from. Isso vai fazer com que
o sprite remova o valor de 1 vida para cada tiro recebido, até zerar as 3 vidas.

Mas como a programação vai saber que as vidas foram zeradas? Simples. Você adiciona um
novo evento no sprite InimigoVermelho chamado de Compare Instance Variable. Aí, basta adicionar
uma ação de Destroy para quando chegar a 0. Veja nas figuras abaixo o parâmetro de comparação
e como fica a linha na folha de eventos.

Mais uma vez teste o seu jogo e veja se o resultado está como o esperado.

Variável global

Vamos aproveitar que estamos falando de variáveis e entrar no mundo


da variável global (global variable). Da mesma forma que uma variável de
instância, uma variável global pode armazenar textos ou números e deixar
disponíveis para todo o jogo através de todos os layouts. E no nosso
exemplo, vamos ensinar a variável global por meio da elaboração do placar
ou score do nosso jogo.

Cada variável pode guardar um único número ou um único trecho de texto. Para adicionar uma
variável global, clique com o botão direito em qualquer área vazia da folha de eventos e selecione
Add global variable (adicionar variável global). Escolhemos usar o nome Score e dizer que o placar
vai começar com zero.

Agora, se você for na folha de eventos a variável global aparece como uma linha. Ela está
dentro da folha de eventos, mas pode ser acessada por qualquer folha de eventos de qualquer layout.

49
Vamos fornecer ao jogador os pontos por destruir um inimigo? Pensamos assim: se for o
InimigoVerde vale 1 ponto, se for o InimigoVermelho vale 5 pontos. E somar isso no placar é fácil. Vá
até o evento em que ocorre a destruição do inimigo e adicione uma ação System - Add to (somar).
Em seguida coloque como valor de soma o número 5.

Agora o jogador tem um placar que aumenta em 1 para cada inimigo verde destruído e 5
para cada inimigo vermelho destruído. Teste o jogo e veja o resultado. Se aparecer algum bug, basta
retornar as etapas e ver onde errou.

Interface com o usuário


Não se preocupe, você não está vendo ainda o placar. Precisamos criar uma heads-up display
ou HUD, que é a interface que mostra as informações ao jogador, como a vida e o placar. O HUD do
placar é bem simples de fazer através de um objeto Text (texto).

Mas antes disso, é importante dizer que se tivermos alguns objetos na interface, não vamos
querer que eles saiam da tela conforme o jogar se move. Para mantê-los lá usamos a configuração
Parallax da camada. O Parallax permite que diferentes camadas se movam mas
não o que tem Parallax em zero X,Y. Para isso adicione uma camada nova na
barra de camadas (layers bar) com o nome interface ou HUD. Certifique-se que
ela esteja sobre as outras e selecionada.

Na barra de propriedades configure a propriedade Parallax para 0,0


(significa configurar zero para ambos os eixos X e Y).

Agora adicione o texto no lugar desejado da tela e altere parâmetros na


barra de propriedades, tais como a cor, o tipo, o tamanho da fonte. Redimensione
ele com largura suficiente para caber uma quantidade razoável de texto.

A última etapa é na folha de eventos. Vamos manter o texto atualizado com o placar do
jogador. No evento Every tick que adicionamos previamente, adicione a ação Text -> Set text
(estabelecer texto). Usando o operador & podemos converter um número para texto e unir com outra
frase de texto. Então, para o texto digite a seguinte expressão: “Placar: “ & Score.

A primeira parte da expressão (“Placar: “) significa que o


texto exibido começará sempre com a frase Placar: . A segunda
parte da expressão é o valor atual da variável global Score. O &
junta as duas partes de expressão em um único texto.

Execute o jogo e atire em alguns inimigos. Seu placar é


exibido e permanece no mesmo lugar da tela!

50
Atividades
1 Continuação do jogo

Acreditamos que você já deve estar bem empolgado com seu primeiro jogo. E sem perder
muito tempo, vamos continuar incrementando o jogo com os eventos e ações que aprendemos
nesta aula.

2 Desafio - Explosões e som

Será que você é capaz de adicionar uma explosão e o som dela quando o laser atingir o
inimigo?

51
Level 7
Construct 2 – Continuação do projeto

Animações
Construção de tilemaps (cenários 2D)
Ferramentas da barra Tilemaps
Animações

Ainda não terminamos o nosso trabalho em relação ao Construct 2. A próxima etapa é


aprender a trabalhar com animações de sprites, para deixar seu game mais atrativo. O processo
não é tão complicado, bastando inserir um novo Sprite no seu game. O diferencial aqui é que não
vamos inserir algo estático, mas um grupo de imagens quadro-a-quadro que vai simular a animação
de um personagem. As imagens que vamos usar neste exemplo, foram buscadas na internet (www.
[Link]) e representam uma animação de corrida do personagem. São 10 quadros com
posições diferentes do personagem. Escolhemos algo diferente do que estava no nosso projeto,
justamente para que você enxergue novas possibilidades.

Quando você esá inserindo um novo Sprite, observe que abaixo da tela de desenho aparece
ma janela de animação. Quando você clicar com o botão direito nesta janela, vai escolher a opção
Import frames. Você poderá selecionar de uma só vez todas as imagens que vão compor sua
animação. O resulatdo será quadro-a-quadro, como na imagem abaixo.

Se você executar o seu game agora, verá uma animação bacana do personagem correndo.
Mas existe um detalhe: ele corre e para. Ao lado da janela de edição do Sprite você verá uma
outra janelinha chamada Animations. Clicando nela você enxerga na barra de propriedades os
itens relacionados a animação. Altere então o Speed (velocidade) e o Loop. Isso vai permitir que a
animação ande mais rápido e ao mesmo tempo repita. Usamos uma velocidade de 10 e Loop Yes.
Teste e veja o resultado.

53
Quer descobriu um jeito mais bacana ainda de criar animações sem muito esforço? Você pode
clicar com o botão direito da janela dos frames de animação e usar a opção Import Frames – From
Sprite Stip. Mas aqui tem um detalhe: você não precisa inserir várias imagens para fazer quadro-
a-quadro. Basta inserir uma única imagem PNG com a animação. Veja o exemplo que usamos aqui:

Repare que a imagem acima é única e tem 14 variações, sendo 5 em cada linha e 3 em cada
coluna. Só a última está em branco. Quando você inserir por meio do From Sprite Stip a janela que
abrirá vai querer saber isso: quantas células serão na horizontal e quantas na vertical?

Adicione e faça o teste do game. Se a imagem geral que você inseriu estiver bem alinhadinha
como a do exemplo acima, o resultado será mágico.

Construção de tilemaps (cenários 2D)

O momento é mesmo de destrinchar as funcionalidades do Construct 2. E uma delas é a


criação e uso dos chamados Tilemaps ou cenários 2D. A construção deles é uma técnica muito
utilizada quando se desenvolve jogos em 2D, consistindo em construir o mundo do jogo ou mapas
de pequeno porte através de imagens em forma de quadrado regular chamadas tile. Qual a vantagem
disso? Melhor performance e baixo gasto de memória nos jogos.

O espaço de manipulação dos Tilemaps está na mesma guia Objeto. Ele estará bloqueado até
você adicionar um objeto Tilemap. Assim que for criado, a barra de propriedade estará ativa para
que você faça algumas alterações, como por exemplo o ajuste do tile width e o tile heigth para o
tamanho dos blocos usados no tilemap.

54
Vale considerar uma coisinha: este tilemap que você está criando precisa ser a primeira layer
(camada) do seu jogo.

Outro detalhe vem da barra de propriedades. Com o seu tilemap


selecionado, você precisa alterar alguns parâmetros com o tile width e
o tile heigth. O que significa isso? É a altura e a largura dos blocos do
tileset. Outros, sendo o Tile X offset e Tile y offset como as margens do
bloco, e Tile X spacing e tile Y spacing como o espaço entre os blocos
são importantes de serem considerados. Por padrão eles vem com zero,
que é o ideal para não haver buracos entre os blocos do cenário.

Na edição do Tilemap é possível que você use o modelo padrão ou adicione uma outra
imagem qualquer. Veja as figuras abaixo. A da esquera é o padrão e a da direita foi uma imagem PNG
que buscamos da internet para exemplicifar.

Em seguida, basta você selecionar o tilemap dentro da caixa de seleção dele (canto direito
inferior) e selecionar os campos da edição e começar a desenhar o seu próprio cenário. Vale usar a
criatividade, combinando desenhos simples e completos. O cenário deve ficar a cara do jogo, com
todos os elementos essenciais para que ele se torne parte do game.

Como usamos uma imagem PNG composta de vários itens do cenário, basta marcar os blocos
desejados e arrastar para dentro do palco. Claro que quanto melhor a resolução, mais rico fica o seu
cenário. Lembrando que esse tilemap é uma imagem inserida normalmente como apresentado em
aulas anteriores.

Outro item importante é nomear os tilemaps, sprites e layers. Isso


ajuda a encontrar pelo objeto desejado de forma mais rápida. No exemplo
da imagem ao lado, você percebe que temos uma layer (camada) e dois
objetos Tilemap, cada um com seu nome para facilitar a busca. Ainda
sobre a layer do fundo, para que possa manipular com tranquilidade
os outros sprites, vamos temporariamente “bloqueá-lo para edição”,
bastando um clique em cima do cadeado.

55
Ferramentas da barra Tilemaps

A barra do Tilemap possui opções que precisam ser consideradas para que você entenda a
melhor forma de edição do seu cenário. Da esquerda para a direita, temos:

Seleção normal – para marcação da área que será selecionada para a montagem dos blocos.
Ferramenta Pencil – use a ferramenta para desenhar peças com o mouse. Você também
pode selecionar uma área de blocos arrastando por cima de vários deles, juntado todos para serem
colocados no palco.
Ferramenta Retângulo - desenha uma área retangular de blocos clicando e arrastando no
objeto TileMap. Você seleciona e arrasta sobre o palco até a quantidade de blocos selecionados.
Ferramenta apagar - apaga blocos do TileMap para que eles apareçam como espaço
transparente. As áreas maiores podem ser apagadas selecionando uma área maior de blocos.
Virar/colocar bloco na horizontal – com o uso da Ferramenta Pencil, os blocos serão colocados
invertidos horizontalmente. Como alternativa, use o X atalho de teclado.
Virar/colocar bloco na vertical – com o uso da Ferramenta Pencil, os blocos serão colocados
invertidos verticalmente. Como alternativa, use o Y atalho de teclado.
Girar/colocar blocos anti-horário /horário – com o uso o lápis Ferramenta Pencil, clique para
continuar girando os blocos nos sentidos anti-horário e horário. Como alternativa, use o Z atalho
de teclado.
Importar TMX - importar uma extensão .tmx já produzido exclusivamente para tilemaps.
Exportar TMX - exportar a imagem tileset e seu blocos para um arquivo .tmx.

56
Atividades
1 Base de imagens

Vamos criar a nossa base de imagens para os games. Crie uma pasta em seu pen drive
ou disco virtual e faça download dos sprites e imagens que serão utilizados em seu game
(imagens para o fundo, piso, plataformas, objetos e personagens). Lembre-se que usaremos
imagens PNG.

2 Animações

O primeiro tópico desta aula veio repleto de informações sobre como criar animações usando
os sprites. Exercite isso criando animações com um sprite da sua escolha. Você também
poderá incrementar a aula anterior criando uma animação para a nave do jogo.

3 Construindo cenários

Chegou a hora de estimular sua criatividade. Desenvolva o cenário


de um game com medidas definidas por você ou sua equipe. Crie
uma layer definida como fundo e insira os blocos de tilemaps para
o plano de fundo, como piso, plataformas e demais objetos do
game. Deixe a camada travada. Use a sua base de imagens.

57
Level 8

Avançando no Construct 2
Alinhamento
Efeitos
Mais comportamentos
Trabalhando com áudio
Exportação
Alinhamento

Dentro do construct 2 é possível fazer o alinamento dos sprites, afim de posicionar todos
eles em locais corretos da tela. Isso deixa o seu jogo mais simétrico e, às vezes, as ações precisam
que eles estejam bem alinhados. Para fazer o alinamento basta utilizar a aba View e os grupos Grid
Options e Grid Size.

No Grid Options você pode alinhar ao grid (grade) marcando a opção Snap to Grid. Se você
marcar a opção Show Grid, você verá a grade de alinhamento. O tamanho desta grade pode ser
configurado em Grid size, aumentando ou diminuindo o tamanho dos quadradinhos que a compõem.

Efeitos

O Construct 2 também trabalha com efeitos para alterar a aparência visual de sprites. Eles
podem ser adicionados utilizando a janela de Efeitos, permitindo adicionar ou remover os efeitos de
objetos, camadas e layouts . Ele pode ser criado a partir da barra de propriedades quando o objeto
estiver selecionado. Basta escolher a opção Add Effect (Adicionar efeito).

59
Você pode inserir um ou mais efeitos, que também podem ser
reordenados conforme sua vontade. Isso é importante uma vez que
ela define a ordem em que os efeitos são processados, que alteram
o resultado visual. O efeito selecionado nas imagens acima permitem
que, no nosso exemplo do jogo da nave, o sprite da espaçonave fique
semi-invisível.

O Construct 2 fornece uma biblioteca de mais de 70 efeitos


de ações. Como são muitos, o seu professor vai concentrar nos mais
importantes para a aula.

Mais comportamentos

Nas aulas anteriores nós já falamos um pouco dos Behavior


ou Comportamentos, e adicionamos a funcionalidade deles no projeto
do jogo da nave. Você deve se lembrar que eles são adicionados em
Behavior da barra de propriedades. Naquela aula vimos o behavior 8
direções, que permite um Sprite se movimentar em oito direções e com
as teclas de seta. Vimos também o comportamento Bullet (Bala) para os
tiros. Mas os comportamentos não se destinam a fazer tudo no seu jogo
para você, cabendo o sistema de eventos fazer a maioria das lógicas
acontecerem.

Veja alguns outros comportamentos importantes que separamos para você e que certamente
vão chamar a sua atenção. Estes comportamentos são extras e nem sempre estão relacionados ao
jogo que criamos. Queremos diversificar seus conhecimentos.

• O car (comportamento do carro) permite que um sprite vá para frente e para trás de forma
acelerada e com direção. Por padrão, o sprite é controlada pelas teclas de setas do teclado (para cima
para acelerar, para baixo para frear, esquerda e direita para dirigir), mas você pode configurá-los de
forma personalizada. Você pode alterar velocidade máxima, aceleração, desacelaração, entre outros.

• O Destoy Outside Layout simplesmente destrói automaticamente um objeto se ele sai da


área de layout. Ele só destrói o objeto se ele está totalmente fora do layout (ou seja, nenhuma parte de
sua caixa delimitadora está dentro do layout). Este comportamento não tem propriedades, condições,
ações ou expressões. Ele é frequentemente útil para evitar que balas e outros projéteis fiquem
voando indefinidamente pelo layout. Preste bem atenção: você vai precisar deste comportamento nas
próximas aulas.
• O comportamento Drag & Drop permite que objetos/sprites possam ser arrastados e soltos,
seja com o mouse ou toque. Em dispositivos multi-touch, vários objetos podem ser arrastados e

60
soltos de uma só vez. Um objeto começa a arrastar quando um clique do mouse ou toque cai dentro
do polígono de colisão do objeto. Ele é liberado quando o botão do mouse é liberado ou o toque
termina. Jogos de colorir ou de cartas funcionam bem com este tipo de comportamento.

• O Ir-thru é um comportamento que permite ao Sprite saltar para um outro objeto, de baixo
para cima, como se ele não existisse. No caso da imagem da esquerda, o personagem poderia pular
por dentro do “pedaço de terra flutuante” como se ele não fosse sólido.
• O comportamento Platform implementa um movimento “salto e corrida”. Ele suporta pistas,
plataformas móveis, entre outros. Veremos mais nas próximas aulas.

(Comportamento Ir-Thru) ;ŽŵƉŽƌƚĂŵĞŶƚŽWůĂƞŽƌŵͿ

• O comportamento sólido faz outros comportamentos reagirem ao objeto como se fosse


um obstáculo intransponível. Ele afeta outros comportamentos, tais como o 8 Directions, Bullet, Car,
Paltform, entre outros.

Como são muitos os comportamentos, achamos melhor deixar nas mãos do seu professor
apresentá-los. Mas você também pode “atiçar” a sua curiosidade e fazer testes com eles utilizando
os sprites que já tem.

Trabalhando com áudio

Os sprites/objetos também reproduzem arquivos de áudio, assim como você já viu em aulas
anteriores. Os arquivos de áudio podem ser importados para um projeto diretamente nas pastas
Sound (Sons) ou Music (Música) na barra de projeto. Com o botão direito clicando em uma destas
pastas é possível fazer um Import (Importar).

Os seguintes formatos de áudio são suportados pelo Construct 2, com as extensões: wav, flac,
m4a, aif, aiff, aifc, aac, mp3 e wma.

Algumas propriedades de áudio são:

Save / load – Permite que o áudio seja salvo e restaurado do ponto em que parou, caso o
jogo seja salvo também.
Distância modelo - Determinar a redução do volume de sons posicionada em relação à
distância para o ouvinte.

61
Distância de referência - A distância a que o volume de sons posicionados começa a diminuir.
Áudio avançado suportado – Se True, o navegador atual suporta todos os recursos de áudio.
Se False, nenhum recurso de áudio terá qualquer efeito sobre a reprodução.
Definir repetição - Definir quando um som vai realizar um loop (repetindo quando termina) ou
não looping (parando quando termina).
Set volume principal – Definição do volume geral que é aplicado a todas as reproduções de
áudio.
Ativar silencioso – Ativar ou desativar o modo silencioso. Neste modo, todos os sons em
reprodução são silenciados e não há novos sons para jogar. Isso é útil para criar rapidamente uma
alternância de áudio em uma tela de título.
Pare – Parar um som qualquer imediatamente durante o jogo.

Além disso, você pode aplicar efeitos em Add Effects, tais como: Atraso (um eco simples),
Distorção, Tremolo (oscila automaticamente o volume para cima e para baixo), entre outros.

Exportando

Um jogo criado pode ser exportado para multiplataformas e


usado conforme seu interesse. Isso pode ser feito clicando no botão
Export project (Exportar projeto). Todas as plataformas abaixo tem
o modelo de exportação bem parecidos, diferenciado apenas pela
localização de entrega. Como exemplo, vamos escolher a exportação
para a loja virtual da Google - Chrome Web Store. Você pode publicar
seus jogos lá. Mas antes de começar, veja algumas informações
importantes:

• É necessário ter uma conta do Google.


• Pagar $ 5 para a taxa de inscrição do desenvolvedor da Web
Store.
• O navegador Chrome para testá-lo.
• Certifique-se de ter uma descrição definida para o projeto na barra de propriedades dele. Isto
é o que aparecerá na Web Store como a descrição do seu aplicativo.

A tela seguinte mostra os passos da exportação, tais como o local da imagem, das subpastas,
entre outros. Mantenha todos os padrões, selecionando inclusive (se desejar) que o jogo mapeie sua
localização.

Quando o projeto for exportado, você poderá definir de que forma vai intergir com os arquivos,
simplesmente abrindo a pasta ou enviando direto para o dashboard do Chrome Web Store.

62
Acessando direto o painel da Google fica mais fácil posicionar o espaço para onde os arquivos
serão enviados. O detalhe é que, como você vê na imagem abaixo, ele pede que seja enviado um
arquivo ZIP.

63
Atividade FINAL
1 Comportamentos extras

Você aprendeu hoje que existem mais comportamentos incorporados ao Construct 2. Procure
utilizá-los para dar mais diversidade ao seu jogos. Faça os testes relacionados com os sprites
do seu jogo de nave. Quanto mais testes fizer, mas chances de aprender rápido as lições das
próximas aulas, que será um jogo de plataforma.

2 Planejando o jogo de plataforma

Nas próximas aulas vamos mergulhar na criação de um jogo de plataforma. Como o primeiro
passo para construção de qualquer jogo é o planejamento, chegou a hora de já ir pensando
nos possíveis cenários, sprites, regras, entre outros. Isso vai facilitar a sua vida daqui para
frente. Pesquise mais informações informações sobre o gênero de jogo de plataforma. Anote
tudo.

Quais sprites?

Qual cenário?

Quais regras?

Como será a pontuação?

Quantas vidas? Como perdê-las e ganhá-las?

64
Level 9

Jogo de plataforma
Jogo de plataforma
Construindo um novo projeto
Adição de comportamentos
Configurando eventos

65
Jogo de plataforma

Começamos uma nova etapa no seu estudo de desenvolvimento de jogos falando do jogo
eletrônico de plataforma. Ele também é o nome dado para um gênero em que o jogador corre e pula
entre plataformas e obstáculos, enfrentando inimigos e coletando objetos e bônus. Os games mais
populares deste tipo de gênero são os famosos Super Mario Bros, Prince of Persia, Mega man, entre
outros. É um gênero que surgiu lá na década de 80, mas que continuar forte no mercado 2D.

O Construct 2 pode fazer todos os tipos de jogos 2D. E a nossa missão é introduzir o
conhecimento em relação a este tipo de gênero, através de um projeto básico que poderá ser
incrementado aos poucos por você, utilizando as dicas importantes do seu professor.

Vamos nessa?

Construindo um novo projeto

Você já conheceu inúmeros recursos do Construct 2 nas aulas


anteriores. Para iniciar este projeto, crie um novo jogo. Assim como o que
você já desenvolveu anteriormente, Construct 2 vai criar um projeto em um
arquivo .capx único. Na barra de propriedades, renomeie o nome do seu
projeto (escolha o nome que desejar) e altere o tamanho do layout para que
ele fique um pouco maior do que o padrão. Sugerimos usar o tamanho para
4000 x 2048.

Esta configuração basta por enquanto. Agora chegou o momento de inserir o nosso Tiled
Background (cenário) em todo o layout, conforme você já aprendeu nas aulas anteriores. O cenário
que escolhemos é apenas para o exemplo, sendo que você escolhe aquele que melhor se enquadrar
a sua proposta ou que for sugerido pelo seu professor.

Camadas

Vamos adicionar mais alguns objetos/sprites importantes ao nosso jogo. E para isso, vamos
fazer o uso de camadas. Não se esqueça de alterar o nome para cenário ou fundo, e travar a camada
0 (layer 0) para evitar qualquer risco de alteração indesejada.

A composição do nosso layout será feita em várias camadas. Isso vai permitir que você possa
organizar os objetos que aparecem uns sobre os outros no layout. O gerenciamento destas camadas
é feito na Barra de Camadas. Nela, vamos criar mais uma camada chamada de “Principal” para

66
receber alguns objetos. Esta camada precisa estar selecionada e ativa para que todos esses novos
objetos sejam inseridos no lugar certo.

Sprites

Vamos importar objetos/sprite e usá-lo no nosso jogo. Você pode inserir um Sprite estático ou
em animação, conforme já aprendeu. Se for uma animação, não se esqueça de alterar a velocidade
(Speed) e o Loop dela.

Importante: use Images Points para marcar o pé do Sprite para que, se a animação mudar,
ela acompanhar este movimento.

Não esqueça de inserir sprites que servirão como obstáculos ao jogador, para compor o chão,
as plataformas de saltos, entre outros. Preste a atenção nas orientações do seu professor.

Inserimos também um sprite de uma moeda que será o nosso objetivo de conquista de
pontuação. Usamos uma moeda animada para deixar o jogo mais completo, com as propriedade
configuradas em speed=9 e loop=yes. Detalhe: para facilitar sua vida e evitar
que você fique criando um monte de moedas, uma por uma, crie um sprite
apenas desta moeda, altere todas as propriedades necessárias, segure a
tecla Ctrl e, arrastando, crie clones dela. Isso vai facilitar seu trabalho.

Adição de comportamentos

Como também você já viu, o Construct 2 trabalha com comportamento que fazem ocorrer as
ações do jogo. Para o jogo que estamos criando, inserimos alguns sprites que servirão de obstáculo
ao jogador, para o chão e as as plataformas de saltos.

Depois de criado, vamos usar o comportamento sólido em cada um deles, para que não se
movimentem no jogo. Já para o personagem, vamos usar o comportamento de plataforma, para
possibilitar o salto sobre os obstáculos. Na imagem abaixo, deixamos marcado apenas a camada
(layer) “Principal” para que você veja os obstáculos.

67
O comportamento Platform pode cuidar das complexidades do movimento, mas de uma
forma bem simples e sem programação nenhuma. Ele é aplicado ao personagem e automaticamente
já permite que as teclas de seta do teclado façam as ações de movimento, para frente e para trás,
e saltando com a tecla para cima. Muito interessante está facilidade. Teste o jogo e veja como está.

Faça um outro teste simples. Ao invés de usar o comportamento Platform,


use outro comportamento chamado JumpThru. Antes, retire o comportamento
Sólido do sprite que representa a plataforma de pulo e adicione esta outra. Você
vai perceber que o jogador agora pula por dentro do sprite e se posiciona em cima
dele. Isso pode ser útil em algumas ações.

Está ficando legal? Agora, se você tentou chegar até o fim da tela, percebeu
que se o jogador passar o limite ele some. Isso pode ser facilmente resolvido com
o uso de um comportamento no sprite “Jogador”chamado ScrollTo, que vai permitir que o jogador
se torne o centro da tela e que a mesma o acompanhe.

Configurando eventos

Mas ainda não terminamos. Lembra que criamos sprites de moedas para pontuação? Vamos
adicionar a elas os eventos que vão causar alguma ação ao nosso jogo. Para isso, vá até a folha
de eventos e adicione um evento (add event), selecionando o sprite “Jogador”. O evento escolhido
neste caso será On Collision with another object. Em seguida, aplique a ação no sprite “Moedas”,
solicitando a sua destruição (Destroy). A folha de eventos ficará assim:

Pontuação com variáveis

Assim como você viu no jogo de nave, vamos fazer a parte da pontuação do seu game. Para
isso, vamos criar uma camada exclusiva para ele. Essa camada vai conter um objeto Text com uma
descrição qualquer. Você pode mudar a cor, o tamanho da letra e a posição que ela vai aparecer.

68
Até aí é muito simples. Porém, vale lembrar que na camada que
criamos existe uma propriedade chamada Parallax, que nos será muito útil
no momento. Ela vai servir para que a movimentação do texto do placar
ocorra junto com a tela. Use o Paralax com 0,0, o que significa que o texto
será travado na mesma posição durante a movimentação da tela.

E para que o nosso painel funcione, basta adicionar as variáveis


de forma bem parecida com o que você viu no jogo da nave. Vamos
relembrar?

Clique no sprite que você criou para o texto da pontuação – “Pontuação” - e dentro da barra
de propriedades crie uma variável em Add Instance Variable. Para o nosso exemplo optamos por
cada moeda de ouro ter uma pontuação de 100.

Na folha de eventos crie uma nova ação abaixo da ação anterior relacionada ao evento da
pontuação. Esta ação será um Add to dentro da subdivisão Instance Variable. Essa variável será a
que criamos agora a pouco chamada Pontos e associada ao valor de 100, ou seja, para cada moeda
destruída, 100 pontos são somados.

Falta um pouquinho ainda. Precisamos associar esta soma ao texto do placar. Para isso,
adicione mais uma ação dentro do mesmo evento e para o Sprite “Pontuação”. Esta ação será a
Set Text. Quando você selecionar a janela de associação a variável vai aparecer, mas ela não. Fique
atento porque ao lado ou abaixo da janela aparece uma outra janela meio invisível chamada Objects
With Expressions. Vá até ela e selecione o Sprite “Pontuação” para abrir a última janela de onde
você vai associar a Instance Variable Pontos que criamos.

Se você consegue ter na folha de eventos do seu jogo a carinha da imagem abaixo, o seu
resultado estará bem satisfatório. Teste e veja como está ficando.

69
Para incrementar mais ainda o seu primeiro game de plataforma, adicione outros tipos de
sprites que representem outras pontuações. Exemplo: você pode adicionar um diamante em partes
do games e que valerão 500 pontos. Para fazer com que a soma aconteça, você terá que passar
por todas as etapas anteriores, alterando apenas o valor. Que tal esse desafio? Deixe o seu jogo cada
vez mais animado. Com esse novo sprite a folha de eventos deve ficar como a figura abaixo, assim
como as barras de projeto e objetos:

E o resultado (no caso do nosso cenário e sprites) fica parecido com isso:

Não se esqueça que o nosso exemplo deve ser diferente do seu. Os cenários e os sprites
podem ser outros, mas a lógica deverá ser a mesma.

70
Atividades
1 Criando um jogo de plataforma

Você viu durante toda essa aula um exemplo das primeiras etapas de criação de um jogo
de plataforma. Em duplas, vocês deverão criar algo bem parecido com as explicações,
incrementando sua criatividade. Para facilitar o trabalho de todos, o seu professor poderá
oferecer modelos de sprites e cenários e poupar tempo na busca destas imagens. Mas
lembre-se: criar um jogo requer paciência e muita determinação.

2 Erros e acertos

Reserve 5 minutos antes do encerramento da aula para anotar os principais erros cometidos
e os acertos que podem ser compratilhados com a turma. Isso ajuda muito nos próximos
projetos.

Acertos

Erros

71
Level 10

Jogo de plataforma
Parte II
Adicionando inimigos
Eventos nos inimigos
Destruindo e pontuando
Reiniciando um layout ou fase
Adicionando inimigos

Vamos continuar trabalhando no projeto do jogo de plataforma, desta vez


adicionando os inimigos do jogador. Este gênero usa e abusa de sprites relacionados
aos inimigos que vão atrapalhar a vida do jogador. Eles são essenciais para a
definição de ações e interatividade do jogo.

Para adicionar os inimigos não há nada de diferente dos Add new object que
você conhece. O detalhe aqui é que vamos adicioná-los com diferentes propriedades.
Vamos usar comportamentos para transformar os inimigos em objetos diferentes
entre si, o que deixará o jogo mais criativo. Veja o exemplo do Sprite “Bomba” que a imagem ao
lado mostra.

Para que este Sprite ganhe movimento, podemos usar outro comportamento que você já
viu em outras aulas: o Sine. Ele permite alterar a posição, o tamanho
e/ou ângulo do objeto. Clique no sprite e Add Behaivors na Barra de
Propriedades. Preste atenção nas propriedades:

• Active on Start: Yes (para iniciar quando o jogo também iniciar);


• Movement (vertical ou horizontal);
• Period (quantos segundos para o ciclo completo);
• Magnitude (a largura máxima do movimento em pixels).

No caso do exemplo do sprite “Bomba” que colocamos na figura acima, o movimento será na
horizontal, com 4 segundos de ciclo, e com amplitude 50 (de uma ponta a outra do pedaço de terra
flutuante).

Eventos nos inimigos

Mas não é só de movimento que vai viver o jogo. Vamos criar eventos
para destruir o inimigo “Bomba”. Neste caso, aqui vai ficar um pouco diferente.
O sprite “jogador” vai ter que pular em cima do inimigo para conseguir destruí-
lo, ao invés de só encostar nele. Para isso, vamos a folha de eventos e criar
um novo evento On collidion another with object no “Jogador”, como você já
fez. A diferença aqui será na ação que vamos criar para este evento, chamada
Set vector Y na subdivisão PaltForm. Coloque -700 para o efeito de salto
sobre o inimigo.

73
Um detalhe: com esta configuração, basta você encostar
no inimigo que o “jogador” vai saltar. E não é bem isso que
queremos. A intenção é quando o “jogador” pular em cima
do inimigo ele seja destruído. Para resolver esta questão
vamos adicionar uma outra condição chamada Compare
Y (comparando a posição Y) no mesmo evento criado
anteriormente. É só clicar com o botão direito em cima do
evento e selecionar Add Another Condition. A condição
Compare Y vai permitir que você compare com a posição de
altura do inimigo. Se ela for menor (Less than) significa que a
altura do “jogador” é menor que a do inimigo e então o salto
acontece com o efeito, ou seja, o salto só vai se realizar se
pular em cima do inimigo.

Agora, basta você adicionar uma outra ação no Sprite inimigo para causar a destruição (Destroy).
Se a sua folha de eventos estiver parecida com a imagem abaixo, então você está no caminho certo.
Teste o jogo e veja o que acontece.

Para que o seu jogo fique cada vez mais rico, vamos adicionar um outro inimigo que vai usar
o comportamento Sine, mas com movimentação em dois sentidos – horizontal e vertical. O processo
será o mesmo para o comportamento anterior, apenas com o acréscimo de mais um Sine. Veja as
imagens da janela de inserção dos comportamentos, a barra de propriedades deles e como ficaria a
movimentação do Sprite inimigo no cenário do jogo.

Os eventos para este comportamento são o de pular em cima do inimigo, que neste caso
chamamos de “Monstrinho”, e causar a sua destruição, igualzinho ao que fizemos anteriormente. Não
há segredo e a folha de eventos vai ficar bem parecida com a imagem abaixo:

Dica: Viu que este evento ficou bem parecido com o evento do inimigo “Bomba”? A única
diferença é no sprite inimigo, que no caso aqui é o “Monstrinho”. Por isso vai a dica de clicar com o
botão direito do mouse no início do evento anterior e depois em Copy (Copiar). Em seguida, pressione
Ctrl+V e crie uma cópia exata. Aí basta você apenas trocar o Sprite de Bomba para Monstrinho. Ficou
fácil, não é?

74
E vamos para mais um inimigo? Este vai ficar pulando na sua tela só para atrapalhar. Crie um
novo inimigo e coloque o comportamento Paltform nele. Mude a propriedade Defaut Controls para
No, para evitar que o Sprite inimigo siga a mesma configuração do “Jogador”. Com ele selecionado
crie um novo evento System – Every X seconds – 1.0 para que ele se movimente a cada um
segundo.

A ação neste evento: o inimigo, que chamamos aqui de “Pula”, usa o Simulate control e o
movimento deste controle é o Jump. Veja as imagens.

E o resultado será um inimigo que vai ficar pulando na sua frente, tentando atrapalhar a sua
passagem. Basta fazer o evento de destruição deste inimigo, assim como você aprendeu agorinha.
Teste o seu jogo e veja que o inimigo vai pular na tela.

Quer diminuir a velocidade com que ele pula no jogo? Basta alterar o valor do System – Every
X seconds, aumentando os segundos de espera. Passe de 1.0 para 2.0 e veja o resultado.

Destruindo e pontuando

Agora que você aprendeu a colocar inimigos no seu jogo, nada mais justo do que pontuar a
cada destruição dele. E isso é fácil de fazer, uma vez que você já aprendeu sobre pontuação nas
aulas anteriores. Aliás, você já tem uma lógica pronta na folha de eventos. Basta copiar e colar abaixo
do evento de destruição de cada inimigo.

75
Teste o seu jogo e veja como ficou o resultado.

Reiniciando um layout ou fase

Muitos jogadores gostam ou precisam reiniciar o jogo quando for necessário, sem precisar
fechar ou sair dele. Isso é feito diretamente no layout ou na fase. O processo para montar este
padrão é:

• Vá até o layout principal e insira um novo objeto chamado Keyboard;


• Vá até a folha de eventos e crie um novo evento no objeto Keyboard
chamado On key pressed.
• Ele vai pedir que você escolha qualquer tecla para que seja
pressionada para reiniciar o jogo. Nós escolhemos a tecla Z, mas a opção é
sua. Você também pode escolher uma opção tradicional, como por exemplo
a tecla ESCAPE (ESC).

• Adicione uma ação System chamada Restart layout. Isso vai permitir que o jogo reinicie,
caso necessário, zerando a pontuação.

O resultado final da folha de eventos até o momento seria:

Os exemplos colocados nesta aula foram montados para melhor explicação. Como já dissemos,
você pode usar os sprites e cenários que desejar, seguindo a lógica que apresentamos. Ao longo das
aulas, o seu professor vai incrementar com alguns eventos e ações diferentes que vão enriquecer
seu game. Por isso, vale a pena fazer bastante uso desta apostila e ao mesmo tempo acompanhar
com atenção as aulas.

76
Atividades
1 Incrementando o jogo de plataforma

Você viu durante toda essa aula mais eventos e ações que poderão incrementar o seu
jogo de plataforma. Vamos dar continuadade ao projeto da aula anterior, adicionando
inimigos, novas pontuações, eventos, entre outros. Para facilitar o trabalho de todos, o
seu professor poderá oferecer modelos de sprites de inimigos e poupar tempo na busca
destas imagens.

2 Desafio – Pontuação

Cada sprite inimigo vai ter uma pontuação diferente, existindo um mais forte que o outro.
Para representar você deve mudar variáveis, tamanhos, ações, tempos, relacionados a
estes sprites. Faça sua escolha e deixe o jogo mais criativo.

77
Level 11

Jogo de plataforma – Parte III


Mais eventos e comportamentos
Perdendo e ganhando vidas
Mais eventos e comportamentos

Será que chegamos ao limite do game? A resposta é óbvia: não! Muitos outros eventos e
comportamentos podem ser adicionados para deixar o game mais interativo e inteligente. E a nossa
próxima etapa é organizar para que o personagem “Jogador” perca vidas quando colidir com o
inimigo. O processo em si não é tão complicado, mas exige um pouco de atenção. Por isso, sugerimos
que na dúvida faça anotações para não se perder.

Colisão – comportamento Flash

Claro que você já viu, em vários tipos de jogos de plataforma, que todas as vezes que o
personagem principal do jogador é atingido por um projétil ou é tocado pelo inimigo, um dos efeitos
é “piscar”, para informar que ele foi atingido. E que tal fazer isso no seu jogo? Para isso, vamos
adicionar um comportamento ao “Jogador” configurar a folha de eventos da seguinte forma:

• Vamos adicionar um comportamento chamado Flash ao nosso Sprite “Jogador”.


• Na folha de eventos, vamos alterar a primeira colisão, transformando o evento Jogador – Y <
Bomba.Y em um sub-evento. Delete este evento e com botão direito em cima do principal, escolha
Add – Add Sub-event. O motivo é porque vamos fazer mais sub eventos interligados no jogo.

• Você deve criar este sub evento igualzinho ao que acabou de apagar, ou seja, o que você
deletou vai ter que criar novamente (Jogador – Y < Bomba.Y). Caso tenha alguma dúvida, volte na
aula anterior e veja como fazer.
• E o sub evento criado precisará de toda a lógica que nós criamos anteriormente quando
ele era um evento. Clique nas linhas de ação da lógica com a tecla Ctrl pressionada e arraste para
as ações do sub evento que você acabou de criar. O resultado ficará bem parecido com a imagem
abaixo:

Mas preste atenção: mesmo com a mudança de evento para sub evento, a ação de pular
sobre o inimigo “Bomba” vai continuar sendo realizada, conforme havíamos feito na aula anterior. A
diferença aqui é que o sub evento que você criou vai possibilitar adicionar uma condição chamada
Else (senão), que pode ser inserida clicando com o botão direito no sub evento, depois em Add –

79
Add Else. Isso vai permitir que se não acontecer a ação de pular sobre o inimigo, então ele vai usar
outra ação. Crie essa condição Else, adicione uma ação ao Sprite “Jogador” e selecione Flash. Não há
necessidade de alterar as configurações/parâmetros do Flash, por enquanto. Só vale lembrar que o
comportamento precisa estar colocado no Sprite “Jogador”.

Teste o seu jogo e veja o que vai acontecer.

Colisão – comportamento Bullet

Vamos voltar a falar de um conceito que vimos na aula anterior – o


comportamento de tiro chamado Bullet. Este comportamento serve para atingir
o adversário e tentar destruí-lo. Nas aulas do jogo da nave, o jogador tentava
destruir um inimigo com o bullet. Aqui vamos fazer ao contrário, ou seja, o
inimigo é que vai tentar destruir o jogador. Escolhemos apenas um inimigo para
demonstrar, mas você pode fazer com todos.

Para isso, insira o Sprite que servirá como tiro (no nosso caso será uma bola de fogo) e nele
um Behavior (comportamento) chamado Bullet. Em seguida, vamos adicionar eventos e ações para
os disparos. Isso pode ser feito na folha de eventos, usando os passos:

• Crie um novo evento System – Every X Seconds para dizer que a cada X segundos uma
ação será realizada. Quem controla este tempo é você.
• A ação neste evento será em cima do Sprite inimigo (no caso será o “Monstrinho”), com a
opção Spawn Another Object (lançar outro objeto). Só fique atento que você deverá selecionar o
objeto que será usado e a layer em que ele aparecerá. Não se esqueça de que a layer 0 geralmente
é o plano de fundo e não pode ser usado.

• No caso do Image point, funciona da mesma forma que vimos naquela aula das naves. Neste
caso, o image point deverá ser a boca do monstrinho.

80
• Teste o seu jogo e veja como ficou. Você vai perceber que o inimigo atira em apenas uma
direção. O correto será tirar na direção do personagem, onde ele estiver. Para isso, vamos aplicar
mais uma ação ao evento. Esta ação será no Sprite “Fogo”, usando a opção Set Angle Toward
Position. Você deverá marcar a posição X e a posição Y do jogador. Isso pode ser feito clicando
naquela famosa janela semi invisível ou, se você estiver ambientado com os nomes dos sprites,
apenas digitando a ligação, conforme a janela abaixo.

• Mas ainda não terminamos. Quando o fogo atingir o Sprite do jogador, ele deverá se destruir
e o jogador piscar para indicar que ele perdeu uma vida, como faremos mais à frente. Para isso, crie
um outro evento no Sprite “Fogo” informando que quando ele atingir o jogador – On collision with
another object – ele deve executar a ação de se autodestruir (Destroy) e fazer o Sprite piscar.
• E por fim, precisamos acertar um pequeno detalhe de lógica: o inimigo só pode atirar quando
ele aparecer na tela. Você percebeu isso? Percebeu que o “monstrinho” atira mesmo não aparecendo
na tela? Aí é quem vem a configuração que merece sua atenção. Tudo que você viu antes neste
tópico vai virar sub evento de outro evento. No exemplo desta apostila, este novo evento será no
Sprite “monstrinho” e chamado Is on-screen. Com ele criado, basta arrastar todo o evento anterior
para dentro dele como um sub evento. A sua folha de evento deve ficar bem parecido com a imagem
abaixo:

Perdendo e ganhando vidas


Depois de várias etapas concluídas, está chegando o momento de criar e perder vidas na
execução do jogo. Para isso, vamos usar algumas etapas já criadas ao longo destas últimas aulas e
acrescentar outras. Preste bastante atenção, e na dúvida, pergunte ao seu professor.

Não esqueça que você precisa adicionar um texto onde uma variável de instância será contada
e onde vai ser apresentada para o jogador. Você já aprendeu a trabalhar com textos e então agora
vai ficar bem fácil. Também não se esqueça de adicionar o texto na layer (camada) pontuação (ou de
uma nova camada), por causa do Parallax 0,0.

A próxima etapa é fazer com que a quantidade de vidas do jogo diminua gradativamente a
medida que o “Jogador” colide com o inimigo ou seja atingido por um Sprite “Fogo”. Isso é fácil de
ser feito, pois você vai usar uma outra ação no Else, por exemplo, da colisão com a “Bomba”.

Para isso, adicione um texto simples e crie para ele uma variável de instância, assim como
você fez para pontuação. No exemplo da apostila, o nome interno do texto será QtdeVidas e a
variável de instância (instance variable) vai se chamar Vidas.

81
A variável de instância vai servir para que possamos diminuir a quantidade de vidas no texto
reservado a ela. Esse mesmo texto que você inseriu será usado na folha de eventos com outras duas
ações: Subtract from e Set Text

Para criar a ação Subtract from, veja as figuras abaixo:

Para criar a ação Set text veja as outras duas imagens abaixo:

Mas lembre-se: esta perda de vidas tem que ocorrer dentro do Else do sub evento das colisões
do jogador com o inimigo. Veja como ficou a folha de eventos da colisão do jogador com o inimigo
“Bomba”. Os demais você fará sem muito segredo.

Explicando as linhas da imagem: Na colisão do “Jogador” com a “Bomba”, se a posição Y do


jogador for menor que a posição Y da “Bomba”, então posicione o pulo acima do inimigo e destrua,
adicionando 100 pontos ao texto “Pontuação”. Senão (Else), o jogador vai piscar (Flash) por 1
segundo e subtrair 1 da variável Vidas, mostrando na tela.

82
Atividades
1 Incrementando o jogo de plataforma

Você viu durante toda essa aula mais eventos e ações que permitem inserir efeitos
no jogador e retirar vidas dele. Vamos continuar o nosso projeto, adicionando o
comportamento Flash, o Bullet e um painel de vidas para o “Jogador”. Da mesma forma
das aulas anteriores, o seu professor poderá oferecer modelos de sprites extras e poupar
tempo na busca destas imagens.

2 Desafio – Vidas com sprites

O nosso desafio vai testar o que você aprendeu até agora. Ao


invés de usar texto para apresentar o placar de vidas, acrescente
sprites que ilustrem a quantidade de vidas, como corações,
diamantes, entre outros. Faça uma lógica para destuir os sprites
das vidas a medida que as for perdendo.

83
level 12

Jogo de plataforma –
Mensagens
You lose
Abertura
Pause
You lose
Chegamos a última aula sobre o Construct 2. Ainda faltam alguns eventos, comportamentos
e ações que deixarão o seu jogo mais dinâmico. E como estávamos falando bastante sobre perder
e ganhar vidas, vamos trabalhar agora com as mensagens de fechamento, abertura e pausa. No
primeiro caso, vamos tratar a perda das vidas (You lose).

Para isso, lógico, precisamos da tela que vai representar


o fim das vidas. Essa telinha pode ser criada em qualquer
editor de imagens, desde que seja salva no formato PNG.
Usamos uma nova camada só para ela, para ficar mais fácil
de visualizar.

As etapas deste processo se resumem em trabalhar de novo com a variável global que foi
criada. Para isso:

• Crie um novo evento System – Compare variable


– para comparar com a variável global “Vidas”. Se ela for igual a
zero, siginifica que a tela de finalização deve aparecer.

• Para que a tela com a mensagem “Você perdeu!


Tente novamente” apareça, precisamos de uma ação dentro deste
evento que acabou de criar. Ela será criada na tela do objeto da
mensagem, que no exemplo da apostila chamamos de “Youlose”, usando Set position. As expressões
virão do System - Scrollx e depois Scrolly, para aparecer no meio do layout.

• Ainda, precisamos dizer que a tela vai aparecer usando a ação Set Visible. Isto é necessário
porque, para que ela não apareça desde o início do jogo, você precisará ir
até a propriedade Initial Visible deste objeto e torná-lo invisível.

• Uma outra ação será destruir o “Jogador” para evitar qualquer


outra ação sobre ele, ou usar uma outra opção de ação no mesmo Sprite,
chamado Set enable em Platform, desabilitando-a. Veja como ficou a folha
de eventos para este caso:

85
Abertura
A mensagem de entrada do seu jogo pode ser a tela principal e
abertura ou simplesmente o nome da empresa que está criando o game.
Crie mais um layout, para que possamos configurar toda essa parte inicial.
Criar layout você já sabe: vá na barra de projetos e clique com o botão
direito do mouse na pasta Layout para usar o menu Add Layout. Ele vai
te perguntar se você gostaria de criar o layout e uma folha de eventos ao
mesmo tempo. Recomendamos que isso seja feito.

Altere o tamanho deste layout para 800x600 e o nome para “Abertura”. Assim fica bem mais
fácil reconhecer cada um dos layouts.

Em seguida, vamos adicionar a tela que você escolheu ou criou para ser a abertura do seu
jogo. Adicione essa tela como um sprite no layout de abertura.

Vamos fazer esta abertura de duas formas: temporizada, ou seja, ela carrega após x segundos;
ou através de um botão de ação.

Temporizada

Para que isso aconteça é preciso que você execute uma mudança importante na propriedade
geral do seu jogo. Vá até o nome geral dele e mude uma propriedade chamada First Layout,
selecionando a tela de abertura. Isso significa que a primeira tela que vai aparecer no seu jogo será
a de abertura.
Ela vai aparecer e depois dar espaço a tela do jogo. Para isso,
adicione um evento na folha de eventos que você acabou de criar
para a abertura. Este evento partirá do System – Compare time,
para dizer quanto tempo vamos esperar desde o carregamento da
tela.
A ação sobre este evento está em System – Go To layout
– que no caso do nosso jogo
chamamos de Fase1.

86
Botão Jogar

Como já dissemos, você pode adicionar um botão Jogar para iniciar o


jogo. E isso é muito simples de ser feito, usando uma imagem deste botão
e ações no evento. A primeira coisa a se fazer é adicionar o Sprite da imagem. Pode ser a imagem
do botão que melhor se encaixe no design da tela de abertura.

Mas você sabe que, neste caso, deverá ocorrer o click do mouse em cima da imagem para
começar o jogo. Por isso, vamos ter que adicionar mais um objeto chamado Mouse, para dar o
suporte ao click.

O evento que vai proporcionar o click, utiliza o próprio objeto Mouse - On Object Clicked.

A ação sobre este evento também está em System – Go To layout – como você já viu agorinha
a pouco.

Pause

Criar uma mensagem de pause também não é tarefa complicada no processo de lógica da
folha de eventos do jogo, mas merece sua atenção. Veja os passos para adicionar eventos, condições
e ações:

• Você pode criar uma layer diferente para armazenar a tela de pause do seu jogo. Isso facilita
na hora de decidir quem é quem.
• No final da folha de eventos vamos adicionar um novo evento no
objeto Keyboard, chamado On key pressed. Como você já aprendeu, isso
vai possibilitar que quando uma tecla for pressionada, o pause aconteça. No
nosso exemplo, escolhemos a tecla ESPAÇO.
• A ação que usaremos para este evento é a System – Set time scale.
A função dela é colocar o nivel de movimento e rapidez do jogo. Se 1.0,
o jogo roda normalmente. Se 0.5, metade da velocidade. Se 2.0, o dobra
dela. E se 0.0, o jogo para. E é esse 0.0 que vamos usar quando a barra de ESPAÇO for pressionada.
Execute o jogo e veja.

• Se já aprendemos como pausar o jogo, basta copiar e colar as linhas deste evento e mudar
apenas o time scale de 0 para 1. Veja como fica as linhas na folha de eventos:

87
Até aí tudo bem, certo? Não! Teste o seu jogo e veja que algo errado está acontecendo.
Apertou o ESPAÇO e o jogo não pausou. Isso é bem lógico, pois se você observar as linhas anteriores
vai ver que você aperta a tecla de ESPAÇO e ambos os eventos serão acionados, causando confusão
no algoritmo. Precisamos resolver isso com um pouco mais de lógica e linhas de código.

• Você vai precisar adicionar uma condição a cada um dos eventos que acabou de criar.
Clique com o botão direito do mouse em cima do evento e Add Another
Condition. Essa nova condição se dará em System – Compare two values,
o que significa que dois valores serão comparados para que as ações sejam
executadas. Pela imagem abaixo você vai entender que essa comparação
será em cima do parâmetro time scale, ou seja, se ele for igual a 1,
significa que o jogo está rodando normalmente e então ele deve mudar a
time scale para 0. Ele passa de velocidade normal a parado.
• Da mesma forma, você deve adicionar uma condição na linha que copiou e colou. A única
diferença é que haverá mudança em Second value, pois ele estará em pausa.
• Se você tentar rodar o jogo agora, verá que continua com
problemas. Isso é porque o tempo de resposta da tecla é igual a zero
e por isso não dá tempo de pressionar nada. Vamos resolver isso
com mais uma simples linha de ação no primeiro evento. Adicione a
ação System – Wait e aumente um pouquinho este tempo, para tipo
assim, 0.1 segundo. Isso já é suficiente.

Veja como as linhas do eventos irão ficar. Vale um detalhe: mova a linha com a ação do Wait
para antes da linha com a ação Set time scale, para que a pausa aconteça antes da mudança.

Agora sim, o resultado aparece. Não se esqueça de adicionar uma ação para fazer com que a
tela do pause apareça no seu jogo. Isso é feito exatamente da mesma forma que a do You lose. Veja
o código e tela final:

88
Atividades
1 Incrementando mensagens

As mensagens são um forma de orientação ao jogador. Elas são importantes para definir
passos que devem ser executados e ações que precisam ser tomadas. Incremente o seu
jogo com as telas de mensagens de abertura, pause e perda de vidas. Da mesma forma
das aulas anteriores, o seu professor poderá oferecer modelos desta tela e mensagens.
Mas nada impede que você possa criar as suas.

2 Desafio – Novas fases

Um jogo de plataforma não é feito apenas de uma fase. Você terá muito trabalho pela
frente, criando outro layout com novas fases do seu jogo. Use todo o conhecimento que
você adquiriu até o momento e transforme o seu game 2D. Quem sabe ele não virá algo
bem comercial.

89
Level 13

Produzindo um RPG
A ferramenta RPGMaker
Mapas
Gerando um player (Character)
Configurações do player
Eventos
Mensagens
A ferramenta RPGMaker
Já vimos nas primeiras aulas que os jogos eletrônicos
são divididos por gêneros. Um deles, o RPG, tem uma enorme
importância neste mundo dos games, o que leva ainda muitos
desenvolvedores a se concentrarem neles. Como você já aprendeu
bastante sobre os conceitos e nomes relacionados aos jogos, não
vamos nos estender tanto na hora de explicar a produção de um
jogo RPG. O importante é que você conheça a tecnologia e a
ferramenta que vamos usar neste trabalho.

A tecnologia e a ferramenta em questão é o RPGMaker VX Ace, um software bem poderoso


para criação de um jogo completo, rico em detalhes. Basta fazer aquele planejamento básico que
você já aprendeu, definindo o objetivo do jogo, personagens, cenários e a história que será contada.

Faça o downlaod de uma versão em português ou inglês (vale o mais atualizado) do RPGMaker
VX Ace. A melhor opção é baixar do site [Link] Mas o seu professor pode
indicar outros caminhos no momento da aula.

A instalação é simples. Depois de instalado, o ícone do


software será gerado na área de trabalho. Ao abrir, use o menu
Arquivo (File) para criar um novo projeto. Defina um nome para
ele e o local onde será salvo.

Mapas

O primeiro passo na criação de um jogo RPG é a definição e criação de um cenário. Eles


também são conhecidos dentro do RPGMaker como Mapas, que possibilitam a imersão do jogador
dentro da realidade do jogo. Depois que seu projeto foi criado, você precisa inserir um mapa no Map
View (Visualizador de mapas) do software e ajustar as configurações. Do lado esquerdo da tela, você
consegue enxergar os componentes (tileset) que serão usados no mapa. Para um primeiro treino,
clique em um tileset qualquer, clique no visualizador e veja o que acontece.

91
As configurações do mapa (Map proprieties) são acessadas clicando com o botão direito do
mouse no link do mapa (lado esquerdo abaixo). E as principais propriedades são:

Name: Define o nome do mapa.


Display name: O nome que será apresentado no mapa.
Tileset: Define qual o conjunto de tilesets necessário para seu mapa.
Há quatro tipos básicos: Campo, Exterior, Interior, Masmorra. Montanhas, rios,
nuvens, camas, mesas, escadas, esqueletos, pedras, tochas, são exemplos deste
tilesets.
Specify Battleback: Define um cenário específico para sua batalha.

Auto-change BGM e Auto-change BGS: São as músicas (BGM) e efeitos (BGS) que acompanham
o pacote do RPGMaker. São várias opções que você pode adicionar imediatamente.

Gerando um player (Character)


O jogo precisa de persogagem/ator principal (player) e secundários. Ele
pode ser criado por você pelo Character Generator (gerador de personagens),
permitindo alterar as características físicas dele, tais como a cor e tipo do
cabelo, da pele, olhos, idade, entre outros. Basta clicar no ícone do player no
final da barra de propriedades do software. Na janela aberta existe também
um botão chamado Generate Random que permite ao próprio software
escolher um personagem de forma aleatória para você.

Configurações do player

Dentro de menu Tools (Ferramentas) – Database – podemos configurar as partes gerais de um


player (personagem) do seu jogo. Dentre as principais temos:

92
Nome / apelido - Nome do player exibido durante o jogo, enquanto Nickname é o nome
alternativo, geralmente uma designação mais descritiva.
Classe - Especifica a classe do ator, o que permite definir as habilidades que podem ser usadas
e as armas e itens que podem ser equipados.
Nível inicial / nível máximo - Nível de atuação do player/ator no início do jogo e o nível
máximo que ele pode atingir.
Descrição - Especifica o texto introdutório para o player/ator.
Gráficos - Especifica imagens para o player/ator. O painel esquerdo serve para definir um
gráfico a ser exibido enquanto se move no mapa e o painel da direita é para definir um gráfico de
rosto para exibir na tela de status.
Equipamento inicial - Especifica o equipamento com o qual o ator inicia o jogo. O equipamento
selecionável é limitado ao que a classe do ator pode equipar.
Características - Especifica os recursos exclusivos do ator.

Eventos

Todo evento é um acontecimento automático ou adicionado pelo próprio desenvolvedor


para que haja uma interação e que o jogo se desenrole, culminando em vários resultados pré-
determinados. Para acionar facilmente o editor, basta pressionar F6 ou clicar no bonequinho azul na
barra de propriedades do RPGMaker.

Existem quatro tipos de eventos rápidos: Transferir ou teletransporte, porta, tesouro ou baú, inn
ou estalagem. Para começar a editar qualquer mapa é preciso que você marque a posição de saída
do personagem, clicando com o botão direito do mouse no quadradinho da posição inicial e depois
em Set as Starting Position.

Teletransporte ou transferir

O evento teletransporte ou transferir permite que o player (personagem) seja transportado de


um ponto do mapa de origem para outro ponto de destino dentro do mesmo mapa ou em outro.
Funciona muito bem para troca de cenário. Toda vez que o player chegar a este ponto marcado pelo
evento, ele é transportado. No nosso exemplo abaixo, escolhemos a origem (entrada de uma casa) e
o destino (saída de outra casa no mesmo mapa).

Ah, não se esqueça de fazer o inverso para caso o player precise voltar ao ponto de origem.

93
Porta

O evento porta funciona da mesma forma do anterior, porém ele oferece uma animação de
porta se abrindo, podendo até mesmo escolher o tipo de porta dentro dos modelos de tilesets do
cenário escolhido.

Tesouro

O evento tesouro permite que você escolha um determinado tesouro e selecione o item
desejado, como ouro, arma ou armadura. Você pode também mudar a aparência do baú dando um
duplo clique na sua imagem da mesma forma que foi feito na porta.

Inn ou estalagem

Este último dos eventos rápidos permite colocar um personagem não jogável (NPC) para
recarregar as energias dos players para que continuem a aventura.

Mensagens

Mais alguns efeitos são importantes para que você entenda a lógica do seu jogo. E um deles
é o de mensagens que são exibidas ao longo dos trechos do jogo. Vamos entender o exemplo das
imagens abaixo. Escolhemos a porta de entrada de uma casa para ativar o efeito de mensagem. Basta
dar um duplo clique no ponto exato do mapa e ele abrirá a janela do editor de eventos. Dê um nome
a este evento para ficar mais fácil identificá-lo depois. Na área do conteúdo (Contents) basta clicar
para abrir uma outra janela chamada Comandos do evento (Event commands). Você vai perceber
que a primeira guia fala exclusivamente das mensagem.

Usamos a opção Show text para exibir a mensagem desejada. Ela será apresentada numa
janela normal, posicionada no meio da janela do jogo. Você pode até inserir um gráfico com o rosto
de um personagem. Basta usar o Face Graphic.

Veja que o resultado ficou assim: quando o player estiver na posição exata da mensagem e
pressionar ENTER, a mensagem será exibida.

94
Outras opções da área de mensagens são:

Show choices (Mostrar opções) - Exibe até quatro opções, permitindo


que o processamento da mensagem se ramifique de acordo com a seleção
do jogador.
Input Number (Número de entrada) - Exibe uma janela para inserir
um valor e, em seguida, atribui o valor que o jogador entrou em uma variável.
Show Scrolling Text (Mostrar texto de rolagem) - Exibe um texto deslocando para cima
a partir da parte inferior da tela. Pressionar o botão de ENTER permite a rolagem rápida. Mas a
velocidade de rolagem pode ser configurada de 1 a 8. Quanto maior o valor, mais rápida a velocidade.

95
Atividade FINAL
1 Criando um jogo de RPG

Você já deve ter percebido que usar o RPGMaker não


é uma tarefa complicada. O mais demorado é a criação
dos cenários e a escolha da lógica com os efeitos. Por
isso, usando um plano prévio e muita criatividade, crie um
cenário que envolva uma determinada temática, como por
exemplo, a Idade Média. O tema que você escolher será
usada até o final das aulas de RPGMaker. Peça ao seus
professor outras sugestões de tema, ou busque na galeria
de temas do próprio software.

2 Aplicando eventos

Com o mapa criado e tilesets inseridos, chegou a hora de dar um pouco de estratégias
ao jogo por meio dos eventos que você aprendeu e das mensagens ao longo do cenário.
Mais uma vez a criatividade será importante.

96
Level 14

Batalhas e outras configurações


Batalhas
Personagens não jogáveis
Gerenciamento de recurso
Base de dados
Controles básicos
Compressão de dados

97
Batalhas

O RPG é um jogo de estratégia, que envolve raciocínio e batalhas. E essas batalhas também
são consideradas eventos, que por muitas vezes criam um ambiente desafiador dentro da história
do game.

Para criar um evento de batalha, vamos recorrer as propriedades do mapa, como você já
aprendeu a configurar. Neste primeiro momento vamos inserir alguns inimigos, usando a área Troop
(Tropa) da janela de propriedades. Escolha o tipo de inimigo e mapeie as regiões onde eles vão
aparecer. Você verá estas regiões alterando para o visualizador de regiões apertando a tecla F7.

A janela de Região permite que você marque as áreas onde as batalhas devem ocorrer. Basta
escolher um dos números de identificação e “pintá-los” pelas áreas do mapa onde você vai iniciar
esta batalha específica. Esse mesmo ID é o que você na janela da imagem acima.

Ainda falando sobre as batalhas, reveja uma das imagens anteriores (Map Proprieties) e você
vai perceber que na parte de baixo existe uma opção que determina o número médio de passos do
player para que a batalha ocorra. Isso é muito importante na estratégia do jogo, pois este elemento
é um dos que determina o nível dificuldade.

Personagens não jogáveis

Também conhecidos como NPCs (non-playable characters), são as personagens


que o jogador não controla, mas que desempenham funções importantes no jogo,
ou simplesmente oferecem algum tipo de distração como parte da estratégia ou da
jogabilidade.

Nos jogos em que não existe interação com outros jogadores, todos os
personagens não inimigos são considerados NPC, já que são controlados pelo
computador.

98
Vamos citar alguns exemplos de personagens NPC:

• Aqueles que lhe dão uma informação no game.


• Aqueles que te vendem ou compram alguma coisa.
• Aqueles que aparecem em certos momentos do jogo para explicar uma situação.
• Aqueles que trazem itens ou acessórios em determinados momentos do jogo.

Na janela de criação de eventos, você enxerga na parte esquerda


inferior uma área chamada de gráfico, usado para adicionar o NPC que
será exibido na tela. Você pode escolher o modelo clicando duas vezes na
área azul quadriculada e alterando seus comportamentos, movimentos,
entre outros. Veja:

Type – Tipo de movimento, que pode ser fixo ou aleatório, por


exemplo.
Speed – Velocidade, que pode ser 8 vezes mais lenta do que o normal até 4 vezes mais rápida.
Freq – Frequencia do movimento, que pode ser devagar ou rápido.
Priority – Define o nível de superioridade ao player. Pode ser acima, abaixo, entre outros.
Trigger (gatilho) – O NPC precisa de um gatilho para ser acionado no evento. Pode ser um
botão de ação, um toque de jogador, execução automática, entre outros.
Options – São as opções de movimento relacionados com o player, que pode ser Walking
Anim. (caminhada animada), Stepping Anim. (animação parada), Direction Fix (Direção fixa) ou Through
(ultrapassar).

Gerenciamento de recurso
Você já deve ter reparado (lógico) que o RPGMaker traz uma série de elementos gráficos para
compor cenários, mapas e personagens. Isso é muito bom, pois facilita o trabalho e agiliza na criação
de um mapa completo. Mas nem sempre é o ideal. Os próprios criadores do RPGMaker incentivam
você a utilizar suas próprias músicas, imagens ou história para a criação dos jogos. Isto é importante
na comercialização dos jogos, porque torna o trabalho mais personalizável.

Por isso, vamos aprender a usar o menu Tools (Ferramentas) – Resource Manager (Gerenciador
de recursos). A janela que abrirá permite que você use os gráficos disponíveis ou importe outros
para seu jogo.

Do lado esquerdo desta janela está a lista de pastas que poderá usar para importar seus
elementos externos. Fica mais fácil de organizar, pois, por exemplo, se você precisar de um efeito
sonoro qualquer para seu jogo ele estará facilmente disponível na pasta Audio/BGS.

99
Os recursos também podem ser exportados para o seu computador, simplesmente para
modificá-los e depois importar novamente para ser utilizado no jogo.

Base de dados

Já falamos desta tal Tools - Database na aula anterior para configurar alguns itens do player. Mas
o que vale mesmo considerar é que esta parte do software é um grande repositório de informações
que você pode manter configurado para deixar seus jogos ainda mais personalizados.

A caixa de diálogo Banco de Dados (database) permite preparar


elementos e configurações do jogo, incluindo os personagens que o
jogador controla, itens e magia, entre outros. Você poderá preparar
dados para cada item que aparece no jogo, exceto os dados de Sistema
e Termos, que se aplicam globalmente.

As abas estão divididas da seguinte forma:

Atores (Actors) Personagens que o jogador pode controlar

Classes (Class) Características dos atores, tais como parâmetros e condições de


desenvolvimento.
Habilidades (Skills) Capacidades especiais e ações durante batalhas, como os ataques
normais, ataques especiais, magia, etc.
Itens (Items) Os itens que o jogador pode possuir, tais como de recuperação,
chaves, etc.
Armas (Weapons) Equipamentos que os atores usam para ataques, tais como espadas,
varas, arcos, etc.

Armor (Armors) Equipamentos que os atores usam para defesa (armadura, escudos e
acessórios, etc.)
Inimigos (Enemies)
Personagens que lutam contra atores

Tropas (Troppers) Grupos de inimigos que aparecem

Estados (States) Estados que afetam os atores, como veneno, por exemplo.

Animações (Animations) Efeitos visuais exibidos ao usar habilidades.

Tilesets Tilesets usados na criação de mapas

Eventos comuns (Commons events) Processamento de eventos comumente executados


Configurações básicas do sistema para o jogo em geral, incluindo
Sistema (System) configurações padrão e música.
Termos e nomes dos comandos e definições utilizados durante o jogo
Termos (terms)

Cada configuração merece a sua atenção na hora da execução do jogo. Como são muitas, vale
a pena ir testando a cada vez que incrementar um jogo RPG.

100
Controles básicos

Os jogos criados pelo RPG Maker são iniciados clicando duas vezes no arquivo [Link]
(ou Game) localizado na pasta de dados do jogo. Se os dados do jogo tiverem sido comprimidos
(vamos falar disso daqui a pouco), extraia-os antes de clicar duas vezes. Quando você abre o
jogo, automaticamnete os controles de movimento são acionados. Eles se baseiam no uso de um
bloco de seis botões, baseado nos controles tradicionais ou game pad. A tabela a seguir mostra a
correspondência entre os botões do jogo / teclas do teclado e comandos em um jogo padrão.
Nome Game pad Teclado
A Button 1 Shift
B Button 2 Esc, Num 0, X
C Button 3 Espaço, Enter, Z
X Button 4 A
Y Button 5 S
Z Button 6 D
L Button 7 Q, Page Up
R Button 8 W, Page Down

Num jogo tradicional os controles já estão todos configurados. Pressionando X, por exemplo,
você tem acesso a uma tela específica de opções dentro do jogo.

Compressão de dados

Salve o conteúdo do projeto em um arquivo compactado


selecionando Compress Game Data (Compressão de dados do
jogo) no menu File (Arquivo). Isso é útil quando você deseja
distribuir seu jogo concluído para outra pessoa, como uma amigo,
por exemplo.

Ainda nesta caixa de dialogo, você pode ativar a criação de um arquivo criptografado para
evitar que o conteúdo do seu projeto seja manipulado sem autorizações, principalmente quando for
eviado pela internet. Inclua também os dados RTP, eliminando a necessidade de baixar dados RTP
para jogar o jogo (RPGMaker instalado na máquina de destino). O único detalhe é que o tamanho do
arquivo compactado vai aumentar.

Cada configuração merece a sua atenção na hora da execução do jogo. Como são muitas, vale
a pena ir testando a cada vez que incrementar um jogo RPG.

101
Atividade FINAL
1 Uma batalha épica

Aprendemos muitas coisas legais na aula de hoje, desde a inserção


de personagens não jogáveis até configurações relacionadas a
mapas, tropas, inimigos, entre outros. A sua missão agora é usar
o conhecimento adquirido, mais o jogo criado na aula anterior, e
desenvolver batalhas dentro dele. Posicione as tropas, configure
os cenários, crie monstros e entre muitos outros recursos. O
seu professor vai dar dicas para agilizar o processo.

2 Aplicando eventos

Com o mapa criado e tilesets inseridos, chegou a hora de dar um pouco de estratégias
ao jogo por meio dos eventos que você aprendeu e das mensagens ao longo do cenário.
Mais uma vez a criatividade será importante.

102
Level 15

Buscando mais conhecimento


Blogs e fóruns
Mercado nacional de games
Canais de jogos
Treinamento online

103
Blogs e fóruns

Mesmo que, ao longo do nosso curso, tenhamos passado por várias etapas de construção do
aprendizado sobre o desenvolvimento de jogos, um pouco mais de conhecimento sempre é bem-
vindo. E o melhor lugar para este tipo de conhecimento, além dos cursos profissionais, é a internet e
suas centenas de blogs e fóruns. Mas um dos grandes problemas disso é o excesso de informação
e a falta de qualidade do conteúdo.

E se queremos aprender de verdade, agregando algum valor ao nosso conhecimento profissional,


precisamos filtrar os melhores lugares para se buscar a informação correta. Por isso, fomos até a
internet e encontramos blogs e fóruns que possuem algum conhecimento relevante para oferecer.

Importante: Lógico que a internet é bem dinâmica e por isso muda sempre. Pode até ser que
quando você estiver lendo este material, algum site esteja fora do ar. Por isso, o seu professor tem
um papel importante na hora de apresentar as novidades que ele achar interessante.

Game Developer

O Game Developer é um blog e desenvolvedor de jogos


chamado Bruno Cicanci, que disponibiliza artigos sobre a
construção de jogos, além das dicas que ele oferece sobre a
carreira de um desenvolvedor de jogos no Brasil. Ele também
cita resenhas dos principais livros sobre desenvolvimento de jogos disponíveis no Brasil.

ABRAGAMES

Estamos falando do site da Associação Brasileira


dos Desenvolvedores de Jogos Digitais ([Link]).
Segundo o site, “os principais objetivos da Abragames são
organizar, coordenar, fortalecer e promover a indústria brasileira
de jogos digitais através da representação e interlocução
do ecossistema nacional e internacional, construindo um
entendimento de todos os elementos de nossa cadeia de valor,
bem como a promoção de eventos e parcerias que tragam ao
estado da arte o desenvolvimento da indústria de jogos no Brasil”. Empresas do ramo costumam
associar-se para interação com cursos, eventos, geração de negócios, entre outros.

Existe também um programa chamado Brazilian Game Developers, criado em parceria com a
ABRAGAMES que tem o objetivo de fortalecer a indústria brasileira e os jogos digitais, promovendo
muito networking. Não significa que pessoas que estejam interessadas no programa não possam
participar, mas ele é voltado para quem já está mais avançado no mundo dos jogos digitais e pensa
em internacionalizar os seus projetos. Quem sabe você se especializa no assunto e chega lá!

104
Outra oportunidade é para quem quer trabalhar na área e não sabe por onde começar. Existe
um programa e um catálogo de currículos para que você encontre oportunidades do setor. Segundo
o site, basta enviar um e-mail para oportunidades@[Link].

Fábrica de Jogos

Ele é um site que reúne, de forma bem dinâmica e


didática, várias notícias, tutoriais e dicas para desenvolvedores
de jogos brasileiros. Além disso, ele conta com tutoriais
interessantes além de outros conteúdos de excelente qualidade.

Abrindo o Jogo

Este é um site sobre desenvolvimento de jogos que


também conta com uma variedade e artigos, podcasts,
fóruns e tutoriais agregados. Um dos focos do site é falar de
desenvolvimento de jogos relacionado com empreendedorismo,
o que permite transformar um desenvolvedor em um
empreendedor do mundo os games.
Game Reporter

O Game Reporter é um site agregado ao UOL e que


se firmou com um excelente local para você ficar antenado
com as novidades no mundo dos jogos. Ele é o primeiro
brasileiro especializado em games. E por estar ligado
diretamente a UOL, significa que existe uma qualidade no
conteúdo fornecido por ele.

Mercado nacional de games

Nos dias atuais, games não são tratados mais como brincadeiras ou “perda de
tempo”. Já se tornou algo bem sério, contribuindo significativamente para a economia
mundial. O mercado brasileiro de games online deve atingir US$ 2,5 bilhões em 2017 e
sempre num crescimento que não tem crise. A previsão é que com a entrada de novas
tendências (realidade aumentada), o mercado nacional de games tende a manter este
crescimento.

Avaliando, o nosso mercado está entre os maiores do mundo, ficando atrás apenas de países
como Estados Unidos, Rússia e Alemanha, com aproximadamente 40 milhões de jogadores. Isso sem
falar que as mídias digitais, como o Youtube, por exemplo, conseguem atrair a cada ano mais e mais
interessados neste mundo. Além disso, as empresas estrangeiras e nacionais promovem megaeventos
voltados exclusivamente para o público geek e gamer brasileiro, como a Brasil Game Show que é
considerado um dos principais eventos do setor no País.

E veja só o perfil do brasileiro em 2016, segundo empresas especializadas no assunto, como


a Hime Digital Media, InsieComm e a GameLab da ESPM:

105
• Existem 40 milhões de “gamers” no Brasil;
• Faixa etária principal dos gamers é de 25 a 34 anos (por mais incrível que pareça);
• Um terço joga na internet;
• A média de tempo que o brasileiro passa em frente ao videogame, durante a semana, é de
duas horas por dia;
• Os consumidores se concentram na região sudeste (58%);
• 51% são maiores de 19 anos e solteiros;
• 83% jogam com a família;
• 30% são estudantes;
• Mais da metade de todo o comércio de jogos eletrônicos é realizado através de lojas online;
• 77,2% jogam utilizando smartphones e tablets;
• Os gêneros mais procurados são aventura, ação e estratégia;
• 70,8% jogam em mais de um dispositivo.

Canais de jogos

Como dissemos agorinha, o YouTube também pode ser fonte de


conhecimento e negócios quando se fala de games. Cada vez mais, ele
tem se tornado um grande aliado para quem procura - ou quer falar
sobre - conteúdo relacionado a games.

Vale a pena conhecer algumas sugestões para que você interaja mais com este mundo e, quem
sabe, se torne um youtuber de sucesso. Buscamos alguns canais brasileiros que têm os games como
principal assunto. Para começar, vale dizer que entre os maiores canais – em número e inscritos - o
“Minecraft” é o tema principal. Eles contam histórias e dão dicas utilizando o game, ficando assim
bem mais ilustrativo e divertido. São eles:

• Rezendeevil – mais de 10 milhões de inscritos


• Authentic Games – mais de 7 milhões de inscritos
• TazerCraft – Mais e 5 milhões de inscritos

Outros tratam de assuntos do cotidiano, sempre com bom humor. Os games são variados e
a fonte de informação é de gente que entende mesmo o assunto. Veja estes outros:

• VenomExtreme – Mais de 6 milhões de inscritos


• Coisa de Nerd – Mais de 6 milhões de inscritos
• WLPSKS – Mais de 300.000 inscritos. Este vale comentar: é o canal do ex-jogador de
futebol Wendell Lira, ganhador do Prêmio Puskas em 2015.

Estes dados foram levantados em janeiro de 2017 e diretamente nos canais.

Treinamentos online

E para encerrar o nosso ótimo curso de desenvolvimento de jogos, vamos apresentá-lo ao


mundo dos treinamentos online relacionados a criação de games. Se você tem interesse em aprender

106
ou aprimorar suas habilidades nesta área e gostaria de fazer treinamentos gratuitos com garantia
de qualidade, vamos apresentar o Microsoft Virtual Academy (MVA). Trata-se de uma plataforma
online que disponibiliza diversos tipos de cursos focados nas tecnologias da Microsoft, além de um
certificado de conclusão para cada etapa.

Ele oferece estes treinamentos on-line gratuitos feitos por especialistas a nível mundial. A
missão é realmente ajudar você a construir suas habilidades e avançar sua carreira. Para ter acesso
a tudo isso, basta acessar o site do MVA, fazer o login com um ID do Windows Live e selecionar os
tópicos de aprendizado que você tenha interesse, como por exemplo o curso de desenvolvimento
de jogos. Automaticamente, você terá acesso a um dashboard para visualizar seus cursos e o seu
progresso nele, além de ter acesso a materiais para estudo.

A ferramenta utilizada para este desenvolvimento é a Unity 5, você aprendeu sobre ela no
início do curso.

Você também pode aprender algo mais se quiser se especializar em desenvolvimento para
Android. O site oficial do Android Studio permite que você tenha acesso a vídeos e blogs sobre o
processo de criação de apps para o sistema móvel, incluindo jogos.

107
Atividade FINAL
1 Pesquisando

O mercado de games no Brasil está em franca


evolução. Use o seu conhecimento aquirido e as
pesquisas que você vai realizar na internet para
traçar um panorama mais atual de como está o
mercado e jogos eletrônicos no país. Use gráficos,
planilhas, infográficos para se basear e lançar os dados. Com as informações em mãos,
monte uma apresentação utilizando o Powerpoint ou o Prezi para o seu professor. Não
esqueça de citar as fontes e nem a ata da pesquisa. A figura ao lado é de nível mundial
e serve apenas com um exemplo para a reunião dos seus dados.

2 Interações

Faça sua inscrição em blogs, fóruns e canais no Youtube para começar a sua interação
com gamers e especialistas no assunto. Faça comentários sobre seu nível de aprendizado
e procure por grupos e pessoas que vão te auxiliar a se tornar um ótimo desenvolvedor.

108
Anotações

109
Anotações

Você também pode gostar