Você está na página 1de 69

Desenvolvendo Jogos com Kodu

Game Lab

Manual Básico
(adaptado)
SUMÁRIO

INTRODUÇÃO

MÓDULO 1: APRESENTANDO O DESENVOLVIMENTO DE JOGOS E O KODU


GAME LAB
Atividade 1.1 Apresentação pessoal
Atividade 1.2 Apresentando o Kodu Game Lab
Atividade 1.3 O que é um jogo?
Atividade 1.4 Jogos do Kodu

MÓDULO 2: PROGRAMAÇÃO BÁSICA EM KODU


Atividade 2.1 Apresentando a linguagem de programação Kodu
Atividade 2.2 Resolvendo os tutoriais 2 e 3
Atividade 2.3 Conhecendo os robôs e os objetos
Atividade 2.4 Programando robôs
Atividade 2.5 Jogos com dois robôs

MÓDULO 3: PROCESSO DE DESENVOLVIMENTO INFORMAL


Atividade 3.1 Gerando Ideias
Atividade 3.2 Ideias para jogos
Atividade 3.3 Escolas: cases de sucesso
Projetando modelos

MÓDULO 4: CRIANDO MUNDOS


Atividade 4.1 Projetando espaços de jogo
Atividade 4.2 Padrões de projeto e receitas de códigos
Atividade 4.3 Padrões de espaços para jogos

MÓDULO 5: PADRÕES DE PROJETOS DE JOGOS


Atividade 5.1 Projeto padrão de progresso de jogo
Atividade 5.2 Projeto padrão de jogabilidade
Atividade 5.3 Projeto padrão de informações de jogo

MÓDULO 6: PRÓXIMOS PASSOS


Atividade 6.1 Processo de criação interativa
Atividade 6.2 Ferramentas de solução de problemas, depuração e desenvolvimento

MÓDULO 7: PRÓXIMOS PASSOS


INTRODUÇÃO

Kodu Game Lab é uma linguagem de programação visual que permite


a qualquer pessoa, mesmo sem qualquer conhecimento ou experiência
em programação, criar jogos em 3D.

O Kodu usa ícones intuitivos para controlar seus personagens e objetos,


expressando essas características em ações.

Dessa maneira, mesmo sendo todo em inglês, pessoas de qualquer idade e mesmo
sem nenhum conhecimento da língua conseguem utilizá-lo sem maiores dificuldades.

O objetivo deste manual é dar as primeiras noções do Kodu e mostrar o quanto é fácil
criar jogos ricos e interessantes no contexto escolar.

O curso irá abranger as habilidades necessárias para projetar e criar mundos e jogos
com Kodu Game Lab, além de investigar o processo de criação de jogos e como o
Kodu pode ser usado no currículo escolar.

Projetando e criando seus próprios jogos, os participantes irão aprender o quão


poderosa e interessante é a ferramenta de criação de jogos.

Este curso vai:

 Capacitar os participantes a criar e programar personagens e objetos.


 Permitir aos participantes criar mundos em 3D.
 Apresentar os principais elementos do processo de criação de jogos.
 Fornecer uma gama rica de exemplos de códigos e de jogos.
 Fornecer exemplos de como o Kodu Game Lab Lab tem sido utilizado em
escolas.
 Fortalecer a confiança e a segurança dos participantes para a aplicação dos
recursos do Kodu.
MÓDULO 1: APRESENTANDO O DESENVOLVIMENTO DE JOGOS E O KODU
GAME LAB
Atividade 1.1 Apresentação pessoal

Se você fosse um personagem de jogo eletrônico, o que você gostaria de ser?

NOME: _______________________________________________________________

PODERES: ___________________________________________________________

Três características que tornam o seu personagem especial:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Desenhe seu personagem abaixo:


Atividade 1.2 Apresentando o Kodu Game Lab

Durante esta atividade, vamos explorar o Kodu Game Lab, sua finalidade e o que
outras pessoas já criaram com ele. Se julgar necessário, use o espaço abaixo para
registrar as ideias mais importantes sobre o assunto.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
Atividade 1.3 O que é um jogo?

Lista abaixo 5 jogos eletrônicos que você gosta de jogar.

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Pensando sobre os jogos que você listou, identifique os fatores-chave que tornam o
jogo um jogo. Use o gráfico em forma de diamante de 9 quadros para mostrar as 9
características marcantes dos jogos, sendo que as mais importantes devem ficar no
topo do diamante.

“Um jogo é uma atividade de solução de problemas, abordada com uma atitude de
interatividade.” (Jesse Schell)
Atividade 1.4 Jogos Kodu

O Kodu Game Lab tem aproximadamente 50 mundos e jogos padrão incluídos. Nesta
atividade, nós vamos explorar alguns desses mundos e jogos para aprender sobre o
que pode ser feito com o software e o que faz um jogo do Kodu Game Lab.

ANÁLISE DE JOGO (EXEMPLO)

NOME DO JOGO: Bonk Out v18.

OBJETIVO: Derrubar os castelos enquanto protege seus pontos.

REGRAS: Um botão lança bombas. Robôs de pressão lançam discos que destroem tudo, exceto o
jogador. O jogador pode controlar a direção dos discos pulando e desviando-os.

POR QUE É DIVERTIDO? Este jogo é fácil de entender e é similar ao clássico Breakout. Também é
divertido porque é rápido. Este jogo seria muito melhor se fosse mais longo.

A SUA ANÁLISE DE JOGO:

NOME DO JOGO:
_____________________________________________________________________

OBJETIVO:
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

REGRAS:
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

POR QUE É DIVERTIDO?


_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
MÓDULO 2: PROGRAMAÇÃO BÁSICA EM KODU
Atividade 2.1 Apresentando a linguagem de programação Kodu

Nesta atividade, nós vamos escrever a nossa primeira programação de jogo no Kodu
Game Lab. O Kodu contém três tutoriais padrão e nós vamos trabalhar nesses três
tutoriais.

ANOTAÇÕES:
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Resolvendo o tutorial 1:

1. Abra o tutorial 1.
O robô Kodu vai lhe dizer: “Eu quero visitar o castelo” (“I want to visit the
castle.”)
2. Pressione a tecla Esc (ou start se estiver usando o controle do vídeo game)
para editar o mundo.

3. Selecione a ferramenta Add and Program Objects (adicionar e


programar objetos), localizada na barra de ferramentas na parte inferior da
tela.
4. Selecione o robô que é exibido no mundo clicando com o botão direito (ou
tecla Y no controle).Ele ficará brilhando em amarelo e um menu de edição
deverá aparecer.
5. Clique com o botão esquerdo na opção Program.
A programação do robô deverá aparecer e então nós temos duas maneiras de
editar essa programação: uma delas é editar o código que já existe na primeira
linha; a outra forma é adicionar uma nova linha de códigos de programação.
Vamos agora editar a primeira linha, mas adicionar outra linha de códigos é
uma abordagem que também funciona.

A primeira linha diz:


Nós vamos fazer a seguinte modificação:

6.

Remova os comandos “Express” e “Hearts” clicando com o botão direito ou


usando a tecla Delete (ou com o botão X no controle).
7. Adicione os novos comandos clicando com o botão esquerdo (ou

pressionando A no controle) no ícone .

8. Selecione a opção move (movimentar) .

9. Selecione towards (em direção à) .


O novo código então ficará assim:

10.

Pressione a tecla Esc (ou duas vezes o B no controle) para sair da tela de
programação e voltar para a barra de ferramentas.

11. Clique em Play na barra de ferramentas ou pressione novamente Esc


para jogar.
12. O robô Kodu deve agora se mover em direção ao castelo.

Atividade 2.2 Resolvendo os tutoriais 2 e 3


Nesta atividade, nós vamos resolver os tutoriais 2 e 3. As instruções para resolver
esses tutoriais estão incluídas nas próximas páginas, mas tente, se for possível,
resolver os tutoriais sem olhar as instruções.

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

_____________________________________________________________________

Solução do Tutorial 2:

Objetivo: reprogramar o robciclo para pular o rio.


1. Abra o Tutorial 2.
2. Pressione Esc (ou start) para editar o mundo.

3. Selecione a ferramenta Add and Program Objects (adicionar ou


programar objetos) na barra de ferramentas na parte inferior da tela.
4. Selecione o personagem clicando sobre ele com o botão direito (ou

movimentando o cursor no controle). Ele ficará brilhando em amarelo e


um menu de edição deverá aparecer.
5. Selecione a opção Program clicando com o botão esquerdo (ou com o
botão Y do controle).
O código de programação do robô será mostrado e nós temos duas formas de
editá-lo: ou editar o código que já existe nas linhas 3 e 4 ou adicionar novas
linhas de código. Nós vamos editar as linhas pré-existentes, mas adicionar
linhas de código também é uma opção válida.
As linhas de código atuais são:

Nós precisamos mudá-las para:

6. Adicione os novos comandos clicando


com o botão esquerdo (ou com o botão

A do controle) no botão .
7. Selecione a opção Jump (pular) com o botão esquerdo (ou com
o botão A do controle).

Nota: clique em Action (ação) para visualizar a opção Jump .


O código então será:

8. Pressione Esc no teclado (ou B duas vezes no controle) para sair da tela de
programação e voltar para a barra de ferramentas.

9. Clique no botão Play na barra de ferramentas (ou no controle) ou


pressione Esc novamente.
10. Agora, o robô Kodu vai saltar toda vez que foi pressionada a barra de espaço
ou o botão A no controle.

Solução do Tutorial 3

Objetivo: programar o robociclo para pegar uma maçã.


1. Abra o tutorial 3.
2. Pressione Esc no teclado (ou Start no controle) para editar o mundo.
3. Selecione a opção Add and Program Objects (adicionar e programar

objetos) na barra de ferramentas, na parte inferior da tela.


4. Selecione o personagem clicando com o botão direito (ou movendo o cursor
com o controle). Ele ficará brilhando em amarelo e um menu de edição
deverá aparecer.
5. Selecione Program clicando com o botão esquerdo (ou com o botão Y do
controle).
A segunda linha de códigos é:

Nós precisamos modifica-la para:

6. Adicione os novos comandos clicando com o botão esquerdo (ou com o

botão A do controle) no botão .

7. Selecione a opção Grab (apanhar) com o botão esquerdo do


mouse (ou com o botão A do controle).

Nota: clique no grupo para encontrar a opção .


O novo código será:

8. Pressione Esc no teclado (ou


B duas vezes no controle) para sair da tela de programação e voltar para a
barra de ferramentas.

9. Clique no botão Play na barra de ferramentas (ou no controle) ou


pressione Esc novamente.
10. Agora, o robô Kodu vai pegar a maçã brilhante e vai conseguir atravessar a
ponte.
Atividade 2.3 Conhecendo os robôs e os objetos

Nesta atividade, vamos explorar os vários robôs e objetos disponíveis no Kodu Game
Lab, bem como os diferentes atributos e habilidades de cada robô.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
2.4 Programando robôs

Robôs controlados pelo jogador

Vimos nos tutoriais anteriores que podemos programar um robô para ser controlado
pelo teclado ou pelo controle do Xbox. Nós também podemos associar ações como
pular, por exemplo, a teclas específicas do teclado ou do controle do videogame.
Robôs de Inteligência Artificial

Vamos ver como programar outros robôs para interagir com os robôs do jogador.

Ou então:

Se

quisermos que o robô apenas passeie pelo mundo, ao invés de seguir o outro robô,
podemos usar:
AÇÕES POSSÍVEIS DO COMANDO “WHEN” (QUANDO)

Atenção:

1. See (ver), hear (ouvir), got (ir), bump (encontrar), shot hit (atirar), health
(vida), held by (segurado), on land (na terra) e on water (na água) são ações
físicas do robô ou objeto.
2. Timer (temporizador), scored (pontuação), gamepad (controle), keyboard
(teclado) e mouse (mouse) são ações externas às quais o robô pode
responder.
3. Nem todas as ações estão disponíveis para todos os robôs e objetos.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
AÇÕES POSSÍVEIS DO COMANDO “DO” (FAZER)

Robôs e objetos têm configurações que definem certos atributos, e são esses atributos
que determinam como eles se comportam. A programação não pode modificar essas
configurações enquanto o jogo está sendo jogado. As modificações desses atributos
devem ser feitas enquanto se projeta o jogo.

ANOTAÇÕES

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
2.5 Jogos com dois robôs

Nesta atividade, vamos montar um jogo simples com dois robôs.

Esta atividade deve ser direcionada para a construção de um jogo simples com dois
robôs. O jogo não deve ser complicado e deve ser finalizado em um tempo curto.

Crie seu primeiro robô.

1. Abra o mundo Small World with Water.


2. Pressione Esc no teclado (ou start no controle) para editar o mundo.

3. Selecione a opção Add and Program Objects na barra de


ferramentas, na parte inferior da tela.
4. Adicione o personagem clicando com o botão esquerdo (ou com o botão A
no controle). Selecione o robô ou objeto desejado.
5. Para programar o robô ou objeto, selecione a opção Program com o botão
esquerdo (ou Y no controle).
6. Adicione o código de programação desejado.
7. Pressione Esc (ou B duas vezes no controle) para sair da tela de programação.

8. Clique em Play na barra de ferramentas na parte inferior da tela para


verificar a programação.
9. Repita o processo para adicionar o segundo robô.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
MÓDULO 3: PROCESSO DE DESENVOLVIMENTO INFORMAL
Atividade 3.1 Gerando Ideias

Liste abaixo ideias para aprimorar o jogo desenvolvido na atividade anterior:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Atividade 3.2 Ideias para jogos

Nesta atividade, o objetivo é ter ideias para a construção de jogos com Kodu Game
Lab.

Liste uma ideia de jogo que você fazer.

Exemplo:

Nome: Duck Out.

Objetivo: este jogo é similar ao Bonk Out, exceto no fato de que, em vez de usar castelos e robôs-
palito, barcos e tartarugas serão utilizados, e o jogo se passará na água. As tartarugas também serão
capazes de ficar submersas por 2 segundos, a fim de conseguirem desviar dos discos.

Regras: o jogador controla o peixe. O peixe deve proteger as três tartarugas dos discos voadores
jogando-os para longe. O jogador também pode submergir as tartarugas por um curto espaço de tempo a
fim de protegê-las.

Robôs utilizados: barcos, tartarugas, peixe e discos.


O seu projeto de jogo:

Nome:
_____________________________________________________________________

Objetivo:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Regras:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Robôs utilizados:

_____________________________________________________________________
_____________________________________________________________________
Atividade 3.3 Escolas: cases de sucesso

Nesta atividade, vamos conhecer algumas escolas que tem utilizado o Kodu Game
Lab com seus alunos e as atividades desenvolvidas por elas.

ANOTAÇÕES:
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
MÓDULO 4: CRIANDO MUNDOS
Atividade 4.1 Projetando espaços de jogo

O objetivo desta atividade é dar um entendimento geral sobre os recursos de jogo, os


recursos de câmera e as definições de mundos de jogos do Kodu. Mundos grandes
(com grandes extensões de terreno) geralmente utilizam grandes quantidade de
recursos, e por isso é essencial criar mundos tão pequenos quanto possível.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
Atividade 4.2 Padrões de projeto e receitas de códigos

Os padrões de projeto e as receitas de códigos permitem aos programadores utilizar


abordagens já testadas e bem conhecidas para resolver problemas de programação.
Esta atividade irá explicar como os padrões de design de jogos podem ajudar a
resolver as situações mais comuns. Esta atividade também irá introduzir o conceito de
receitas de código, que são códigos específicos para os problemas mais comuns de
programação.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
Atividade 4.3 Padrões de espaços para jogos

Padrão “mundo aberto”

Jogos que utilizam o padrão de mundo aberto permitem ao jogador andar por onde
quiser, com sua trajetória própria. Jogos de mundo aberto normalmente envolvem um
padrão de jogo não-linear, onde o jogador pode escolher a sequência na qual ele quer
completar as tarefas. Neste caso, a câmera segue o jogador (padrão dos jogos
desenvolvidos no Kodu Game Lab). Jogos de mundo aberto são mais convenientes
para situações de apenas um jogador.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
FERRAMENTAS UTILIZADAS NA EDIÇÃO DE UM MUNDO ABERTO (“EM
BRANCO”):

Use o Ground Brush (Pincel de Terreno) para adicionar ou


remover terreno. Segure o botão esquerdo enquanto
arrasta o mouse para adicionar terreno ou segure o botão
direito enquanto arrasta o mouse para apagar o terreno.
Existem diferentes formatos de pincel e diferentes tamanhos,
que podem ser utilizados para adicionar rapidamente uma
grande área de terreno e para fazer desenhos de terreno
mais complexos, quando necessário. Também há várias
opções de cor de terreno.

Use a ferramenta Up/Down Brush (Pincel para cima/para


baixo) para criar vales e montanhas. Utilize o botão esquerdo
do mouse sobre o terreno para trabalhá-lo. Nessa
ferramenta, os diferentes pinceis e formatos ajudam a criar
diferentes efeitos.

Utilize o Water Brush (Pincel de Água) para adicionar,


remover ou colorir a água. O botão esquerdo do mouse
controla o nível de água adicionado e o botão direito apaga
a água.

Use o Flatten Brush (achatador) para criar áreas planas e


rampas. Use o botão esquerdo do mouse sobre a área para
nivelar a área ou o botão direito para desfazer a ação.

Use o Roughen Brush (Pincel Áspero) para criar áreas


irregulares. Arraste o mouse segurando o botão
esquerdo sobre a área do solo que deseja tornar
irregular ou o botão direito para torna-la apenas
montanhosa.
Use a ferramenta Delete Tool (Apagador) para remover
rapidamente robôs e objetos do seu mundo.

Durante a edição do mundo, utilize a tecla F3 para ativar o modo Snap to Grid, que
mostra as coordenadas do cursor no canto inferior esquerdo da tela e torna o tamanho
do pincel constante.

O botão de rolagem do mouse pode aumentar ou reduzir o zoom, o que pode ser útil
quando o cursor está escondido atrás de algum elemento do seu mundo.

Importante: ao criar seus mundos, fique atento ao Medidor de Recursos em forma


de “termômetro” no lado direito da tela, garantindo que ele não atinja a área vermelha.
Isso é especialmente importante quando se está criando mundos grandes e abertos.

Padrão “Corrida”

Jogos de corrida exigem que o jogador percorra um trajeto ou espaço pré-definido.


Frequentemente existem checkpoints com o objetivo de bater os adversários ou de
registrar o jogador em um tempo limite pré-estabelecido. Jogos de corrida, em geral,
simulam atividades reais de corrida e, portanto, são simples de entender e de jogar.
ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: jogo de corrida com oponentes.

Para programar os robôs para um jogo simples de corrida, basta criar o robô, criar um
caminho e programá-lo para percorrer esse caminho.

Após criar o personagem, utilize a ferramenta Path Tool (Ferramenta de


Caminho), selecione o tipo de caminho (estrada, simples, muro, flora) e trace a pista
da corrida. Novos pontos são adicionados clicando com o botão esquerdo. Uma
corrida circular pode ser criada sobrepondo o último ponto ao primeiro. Pressione a
tecla Esc para finalizar.

Coloque o robô sobre a pista e então utilize a receita abaixo:

Padrão “Rolagem Lateral”

Um jogo de rolagem lateral é aquele em que o jogador só pode se mover em 2D. Ele
geralmente requer que o personagem faça muitos saltos sobre buracos ou obstáculos
que podem ou não ser móveis. Jogos de rolagem lateral foram extremamente
populares nos anos 1980 e trazem um sentimento nostálgico quando jogados.
ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: jogo de rolagem lateral.

Geralmente, a melhor forma de fazer um jogo nesse estilo é criando um caminho


(como no caso das corridas), mas também é possível fazê-lo editando o terreno.

Nós precisaremos que a câmera siga o personagem lateralmente. Para fazer isso, é
necessário mudar as configurações de câmera da seguinte maneira:

1. Clique em World Settings (Configurações de Mundo)


2. Acesse o menu de Modo de Câmera e selecione o modo Fixed Setting.

3. A receita para movimentação:

Padrão Labirinto

Um jogo no padrão labirinto pode ser transformado em um tipo de “quebra-cabeças”,


exigindo que o jogador encontre a rota correta. Alguns labirintos tem apenas uma rota
correta, enquanto que outros tem várias rotas possíveis.
ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: jogo de labirinto.

Ao fazer um labirinto, é mais fácil iniciar elevando toda a área do mundo para depois ir
construindo os caminhos do labirinto entre essas áreas elevadas. Construir paredes é
muito mais difícil.

Em jogos de labirinto, geralmente a câmera é fixada atrás do robô ou, ainda, pode ser
colocada em primeira pessoa. Para utilizar a câmera em primeira pessoa, siga a
receita abaixo:

Este é o robô controlado pelo jogador e que percorrerá o labirinto.

Padrão Tabuleiro Fixo

Alguns espaços de jogos podem ser pequenas áreas fixas. Esse tipo de jogo
é mais adequado para jogos multiplayer em que a função de tela dividida não está
disponível. Tendo um espaço definido e uma câmera fixa, todos os jogadores tem a
mesma visão de jogo .
ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: jogo de tabuleiro com câmera fixa

Nós precisamos que a câmera fique na mesma posição todo o tempo. Para isso,
configure a câmera no modo “posição fixa” (Fixed Position).

1. Clique no ícone World Settings (Configurações de Mundo).


2. Selecione o modo de câmera Fixed Position (Posição Fixa).
MÓDULO 5: PADRÕES DE PROJETOS DE JOGOS

Atividade 5.1 Projeto padrão de progresso de jogo

Padrão de Tempo Limite


O tempo limite requer que o jogador complete uma ação, ou alcance um objetivo, ou
define um tempo em que o personagem tem que sobreviver para ganhar. O
cronômetro geralmente é exibido para dar ao jogador a noção do tempo restante e,
assim, da urgência em terminar a tarefa. Alguns jogos podem dar tempo extra como
bônus ao completar determinadas tarefas.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita de código de tempo limite:

1. Certifique-se que o robô ao qual o cronômetro está associado não possa ser
destruído durante o jogo.
2. Selecione uma única cor para a pontuação (Score) e não associe essa cor a
mais nenhum elemento do jogo.
3. Nesta receita, o cronômetro indicará um tempo-limite de 30 segundos, ao final
dos quais o jogo acaba.
4. No jogo Whack-a-Llama (disponível na galeria do Kodu) você pode ver esta
receita em prática.
Padrão de Pontuação

A pontuação é a representação numérica do sucesso do jogador. Pontos podem ser


adicionados ao placar do jogador ao atingir certos objetivos ou podem ser tirados caso
ele falhe na tarefa. A pontuação do jogador é geralmente mostrada todo o tempo
durante o jogo, sendo que o ganho de pontos geralmente está associado a um objetivo
alcançado, aumentando a sensação de conquista e progresso.
ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: Pontuação.

Atenção:

1. Nesta receita, o jogador ganha um ponto no placar azul a cada tiro que acerta
o dirigível e 10 pontos a cada tiro que acertar no disco. Quando o jogador
atingir 100 pontos, ele vence o jogo.
2. Essa receita deve ser adicionada à programação do robô que estará atirando.
3. Consulte o jogo Xevon v07 (disponível na galeria de mundos do Kodu) para ver
essa receita em ação.
Padrão Energia

A energia (Health) do personagem também pode indicar ao jogador o seu progresso


no jogo. A barra de energia mostra o nível atual de energia do personagem e dá um
feedback imediato ao jogador.
ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: Energia.

Atenção:

1. Quando o robô toca em uma moeda, ele perde 10 pontos da sua energia e a
moeda desaparece.
2. Quando o robô toca e come uma maçã, ele ganha 10 pontos de energia.
3. Quando a energia do robô chega a zero, o jogo acaba.
4. O número de pontos de vida (energia) com que o robô começa é definido nas
configurações do robô. Os pontos podem variar de 0 a 1000, variando de 5 em
5 pontos.
Padrão Save Points

Save Points, também chamados de Check Points, são pontos colocados


estrategicamente após sequências difíceis de tarefas e onde o jogo é salvo
automaticamente. Se o jogador falhar na próxima sequência, ele voltará
automaticamente ao save point, ao invés de voltar ao início do jogo. Isso reduz o
problema de ter que repetir sequências fáceis até atingir o ponto onde tinha chegado
anteriormente.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: Save Points

Atenção:

1. O robociclo controlado pelo jogador é criado no início pelo primeiro save point.
2. O placar vermelho é usado para manter o controle sobre as vidas do jogador.
O valor 1 indica que o personagem está vivo e sendo controlado pelo jogador;
o valor 0 indica que o robô “morre” e será recriado a partir do último save point
atingido.
3. A pontuação do placar preto é utilizada para manter o controle dos save points.
O valor 0 indica que o jogador está iniciando o jogo e não atingiu nenhum
deles; o valor indica que o jogador já conseguiu alcançar 1 save point; e assim
por diante.
4. Um robô deve ser criado e programado para cada save point. Neste exemplo,
utilizamos robôs do tipo stick bots, mas o tipo de robô não influencia no
resultado.
5. Não há códigos para a página de códigos 3 no caso dos robôs de save point.
6. Use o menu de configurações dos robôs de save points para reduzir a sua
audição ao mínimo possível. Dessa forma, o robô apenas escutará o robociclo
quando ele estiver bem perto.
7. Um placar de cor diferente pode ser utilizado para controlar e limitar o número
de novas vidas, embora a receita abaixo não apresente este código.

Programação para o robociclo:

Este robô é controlado pelo jogador.


(Manter parágrafo)

Programação do save point inicial (onde o jogo começa e onde o robociclo é criado):

Este é o robô Stick bot, usado aqui para ser o save point.
(Manter parágrafo)

(Não há códigos na página 3)

Programação do save point 1

Este é o robô Stick bot, usado aqui para ser o save point.

(Manter parágrafo)
(Manter parágrafo)

Ao programar os save points seguintes, acrescente 1 ponto à última linha de códigos,


no comando WHEN (o próximo teria 3 pontos; o seguinte, 4 pontos, e assim por
diante).

Padrão de múltiplos níveis

Possuir vários níveis (ou “fases”) é uma ótima ferramenta para um jogo transmitir a
ideia de progresso ao jogador. Os jogos também podem usar os diferentes níveis para
aumentar a dificuldade e/ou introduzir novos mecanismos de jogo.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: múltiplos níveis.


1. A pontuação em preto serve para mostrar o nível em que o jogador está.
2. O robô do jogador é recriável e deve ser criado no início no jogo.
3. Os níveis subsequentes podem ser feitos copiando o star point (ponto inicial) e
o end point (ponto final) da fase 2, acrescentando um ponto a mais ao placar
de pontuação preto.
4. Configure o placar de pontuação preto para Off (desligado).

Programação para o robociclo

Este robô é controlado pelo jogador.

Programação do Start point do nível ou fase 1


Programação do End Point:

(Manter parágrafo)
Programação do Start Point da fase 2:

Programação do End Point da fase 2:


(Manter parágrafo)

Atividade 5.2 Projeto padrão de jogabilidade

Padrão: Aumento de Poder/Poder Extra

O aumento de poder, ou um poder extra, dá uma vantagem de tempo limitado ao


personagem quando ativado. O ganho de poder exige que o jogador tome decisões
estratégicas sobre quando utilizá-lo, além de precisar ser conquistado ou precisar de
um tempo para ser carregado.

Um ganho ou aumento de poder pode ajudar a completar tarefas de diferentes níveis


de dificuldade, ou pode levar o jogador a ter um aumento de uma certa habilidade que
o permitirá passar facilmente por um desafio de grande dificuldade.

Por exemplo: um personagem pode se tornar invulnerável ou se mover mais


rapidamente durante um período determinado após obter um certo item ou após
pressionar uma determinada tecla. Sons ou efeitos visuais podem ser usados para
sinalizar que o poder extra ou o aumento de um poder do personagem está ativado.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
Receita: Aumento de Poder/Poder Extra

Atenção: Esta receita programa o robô que é controlado pelo jogador para perder o
jogo quando ele colidir com um robociclo vermelho. Quando o robô controlado pelo
jogador encontrar e comer uma maçã, ele receberá um poder extra: toda vez que
encontrar um robociclo vermelho, ao invés de perder, ele destruirá esse robô. Esse
poder dura 5 segundos e após esse tempo, o robô do jogador volta ao seu estado
original.

Atenção para o uso de “me” (EU) quando a ação for sobre o personagem do
jogador, e “it” (ELE) quando a ação é sobre outro objeto.
Padrão Transferência de Controle

Alguns jogos permitem que o jogador controle diferentes personagens em diferentes


estágios do jogo, o que pode acontecer, por exemplo, quando o personagem
controlado pelo jogador entra em um carro ou em um barco. O novo personagem, em
geral, tem características bem diferentes e isso resulta em uma jogabilidade
interessante e diferente para o jogador.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: Transferência de Controle

Atenção: este exemplo irá mostrar como um robociclo, controlado pelo jogador, vai
“embarcar” em um barco e este, então, será controlado pelo jogador.

Programação do robociclo:

Este é o robô inicialmente controlado pelo jogador.


Programação do robô flutuante

Robô controlado pelo jogador quando o robociclo embarca.

(Manter parágrafo)
Padrão “Grande vilão”

Jogos ou níveis de jogos geralmente com uma batalha contra um “grande vilão”. Esse
“grande vilão” é um oponente muito mais difícil, com habilidade diferentes dos inimigos
encontrados anteriormente. A batalha contra esse “grande vilão” geralmente dá um
senso de progresso e é uma ótima maneira de dar um fechamento ao jogo.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: “Grande Vilão”.

1. As configurações dos pontos de vida de um “grande vilão” podem ser


aumentadas e podem, portanto, torna-lo um inimigo mais difícil de derrotar.
2. Os pontos perdidos pelo robô durante o ataque do “grande vilão” podem ser
maiores que o normal, tornando seus golpes mais prejudiciais.
3. Este exemplo mostra apenas como fazer a programação do “grande vilão”.

Programação do robô “Grande Vilão”.


(Manter parágrafo)

Programação da rocha lançada pelo “Grande Vilão”.


Atividade 5.3 Projeto padrão de informações de jogo

É muito importante que o jogador seja comunicado claramente, de uma maneira fácil
de entender, sobre o estado do jogo e do seu sucesso nele. As informações do jogo
podem ser transmitidas através de textos, sons, pontuação ou mudança de cenário. C
comunicação clara entre jogo e jogador ajuda a prevenir frustrações com relação ao
jogo ou respostas inesperadas dos usuários.
Padrão Alarme

Os alarmes podem ser utilizados nos jogos para avisar os jogadores sobre riscos. Eles
podem, por exemplo, alertar que uma fase do jogo está começando ou acabando.
Sons diferentes podem ser utilizados para diferentes eventos.

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: Alarme.

Esta receita mostra como um alarme pode ser utilizado para indicar que um robociclo
está perto.

Programação para o robô que será alertado sobre a proximidade.

Padrão Caixas de Diálogo

Caixas de diálogo podem ser exibidas para informar o jogador. Essas informações
podem simplesmente notificar seu progresso no jogo ou podem dar informações
necessárias para completar o jogo com sucesso.
ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Receita: Caixa de Diálogo.

Existem 3 tipos de caixas de diálogo no Kodu Game Lab: tela cheia e dois tipos de
balões de pensamento: um que exibe as linhas em ordem e outro em que as linhas
são mostradas em ordem aleatória.

Os diálogos em tela cheia são mais utilizados para dar mensagens genéricas ao
jogador, enquanto que os balões de pensamento são usados quando personagens
específicos dão informações ao jogador.

Neste exemplo, uma caixa de diálogo do tipo tela cheia é mostrada quando o jogador
atinge 5 pontos.
MÓDULO 6: PRÓXIMOS PASSOS

Atividade 6.1 Processo de criação interativa

Nesta atividade, vamos investigar processos da criação de jogos que sejam


adequados para uso dos estudantes.

O projetista de jogos Jesse Schell diz: “Pense em um problema, identifique a melhor


maneira de resolvê-lo implemente, teste”.

Alguns conselhos:
 Planeje seu jogo no papel.
 Comece com um jogo simples para depois expandir.
 Teste, teste, teste.

Descreva que processo de criação de jogos você pretende usar com seus
alunos.

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

Atividade 6.2 Ferramentas de solução de problemas, depuração e desenvolvimento

Nesta atividade, vamos investigar algumas funcionalidades do Kodu Game Lab que
tornam a vida dos programadores de jogos mais fácil.

Identificando riscos: Posso fazer isso no Kodu?

Há muitas coisas possíveis de se fazer com o Kodu, mas também há coisas


impossíveis de se fazer. É crucial que a pessoa que estiver projetando os jogos
identifique as partes do jogo que são impossíveis de serem criadas, para que não
desperdice tempo criando-as para apenas depois ver que elas não funcionarão.
Depuração: por que não está funcionando?

Quando o jogo não funciona conforme o esperado, há linhas de depuração que podem
ser ligadas. Como o próprio nome sugere, o processo Debugging lines of Sights and
Sounds (Linhas de Depuração de Imagens e Sons) vai mostrar onde o robô pode e
não pode ver e ouvir e é muito utilizado para descobrir porque um código não funciona
como programado.

Você encontra esta a outras opções de depuração no menu World Settings.

Copiar, colar, clonar: há uma forma rápida de fazer isso?

Quando criar múltiplos robôs com a mesma programação, é mais rápido e fácil copiar
e colar o robô ou objeto, acessando o menu que aparece ao clicar com o botão direito:
Copy (copiar) e Paste (colar).

Versões: meu jogo não funciona mais?!

Quando salvar mudanças significativas em seu jogo, é aconselhável fazer uma nova
“versão” dele. Assim, você cria um tipo de backup do seu jogo que pode ser útil, caso
as modificações feitas façam o seu jogo parar de funcionar. Quando salvar
modificações, o Kodu irá alertá-lo e sugerir
que salve uma nova versão com as
alterações.

Para salvar as modificações, utilize a


opção Increment and Save.

Para criar uma nova versão, utilize a opção


Save e nomeie a nova versão.
Usando o medidor de recursos: por que meu jogo está tão devagar?

Kodu é feito para projetar jogos pequenos e quando o jogo que você projetou está
muito grande, o Kodu começa a rodar devagar, frequentemente tornando o jogo
inviável de se jogar.

O medidor de recursos pode ser exibido ou não. Para isso, selecione a opção Show
Resource Meter no menu World Settings.

Certifique-se de que o medidor de recursos não esteja vermelho enquanto


estiver testando o jogo. Eventualmente será necessário modificar os seus
códigos, limitando os recursos utilizados, por exemplo, minimizando
recursos como o alcance da audição (hear) definido para o personagem,
mas normalmente ele exigirá uma redução no tamanho do terreno
utilizado para o jogo.
MÓDULO 7: PRÓXIMOS PASSOS

Como você planeja utilizar o Kodu Game Lab na sua escola?

ANOTAÇÕES:

_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

REFERÊNCIAS:

Designing games with Kodu Game Lab – Ideas Lab

http://fuse.microsoft.com/kodu

http://planetkodu.com

http://boards.kodux.com

Todos os recursos utilizados nesta formação está disponíveis no seguinte endereço


http://media.planetkodu.com/workshop/resources.html (áudio original em inglês)

Você também pode gostar