Você está na página 1de 41

SERVIO NACIONAL DE APRENDIZAGEM

ESPRITO SANTO

THE CAVE CRAWLER

ANDREY ALVARENGA DUARTE


MONOGRAFIA DE CONCLUSO DO CURSO DE INFORMTICA
Orientador(a): Thalison Jnio Pelegrini
Vitria, 15 de junho de 2015.

ANDREY ALVARENGA DUARTE

THE CAVE CRAWLER

Trabalho de concluso de curso apresentado


como parte das atividades para obteno do
ttulo de tcnico, do curso de Informtica do
Servio nacional de aprendizagem do Esprito
Santo.

Prof orientador: Thalison Jnio Pelegrini


Vitria, 2015

Errata
Folha Linha

Onde se l

Leia-se

Autoria: Andrey Alvarenga Duarte


Ttulo: The Cave Crawler
Trabalho de concluso de curso apresentado
como parte das atividades para obteno do
ttulo de tcnico, do curso de Informtica do
Servio nacional de aprendizagem do Esprito
Santo.
Os componentes da banca de avaliao, abaixo listados,
consideram este trabalho aprovado.
Nome

Titulao

Assinatura

Data da aprovao: ____ de _____________________ de ________.

Instituio

Dedico esse trabalho a todos os grandes


amigos que me ajudaram com ideias e
sugestes e a todos os incrveis jogos que
criaram minha paixo por progamar.

Agradecimentos
Agradeo a todos que me auxiliaram no
desenvolvimento e escrita desse trabalho,
nada disso seria possvel sem eles.
Agradecimentos especiais:
Ao meu orientador, Thalison.
Ao Igor, que me ajudou sempre que pode.
Ao Joo Vitor e ao Joo Pedro, que jogaram
mais horas do que qualquer um em busca de
erros.
E ao meu pai, por criar em mim a curiosidade
por informtica.

Now go and do not falter, my child!


Hero's Shade- The Legend of Zelda

Resumo
O TheCaveCrawler consiste em um projeto para a criao de um jogo de RPG homnimo
que utiliza programao web e desktop. O segundo objetivo do projeto a criao de uma
pgina para o jogo que possui funcionalidades como cadastro de usurios, notcias, rankings e
outros. importante ressaltar que estes objetivos devem ser cumpridos dentro do tempo limite
de entrega e com o menor custo possvel.
As ferramentas utilizadas so o RPG Maker, uma ferramenta baseada em Ruby, para o
desenvolvimento do jogo e PHP para a interao entre jogo-servidor e programao para a
pgina web.
O jogo consiste em um RPG clssico de Dungeon Crawling, gnero caracterizado pelo
uso de um personagem customizvel que explora uma masmorra ou algum local perigoso em
busca de tesouros. Neste gnero comum o uso de Permadeath, uma regra de jogo que faz
com que o personagem utilizado possua apenas uma chance o que faz com que o jogador
precise criar um novo personagem a cada vez que seja derrotado, criando um grande potencial
de repetio. Com isso em mente, o jogo baseado na competio entre os jogadores, que tem
suas pontuaes obtidas a cada jogo comparadas e colocadas em um ranking que pode ser
acessado atravs da pgina do jogo.
Palavras-chave: jogo, Ruby, RGSS, RPG, TheCaveCrawler.

Abstract
The TheCaveCrawler project consists in the creation of an homonyme eletronic RPG
game that utilizes Web and Desktop programing. The second objective of it is the creation of
a webpage about the game that has some funcionalitites like User Signup, Rankings, News,
etc. Its important to mention that these objectives must be achieved within the deadline and at
the lowest possible price.
The used tools are: RPG maker, a game engine that uses Ruby. PHP for client-server
interation and web programing.
The game consists in a classic Dungeon Crawler RPG, a genre that is characterized by
costumized characters exploring dungeons or other dangerous places in a search for treasures.
In that genre, a common rule is PermaDeath, it states that if a character dies, it is
permanently dead and the player must create another one starting the game again, that kind o
rule creates a great replay potential for the game. With that in mind, the game will be based in
the competition between players, who will have their scores compared in the end of each
characters life. These scores will be posted on a Ranking in the game webpage.
Keywords: game, Ruby, RPG, TheCaveCrawler.

Lista de abreviaturas e siglas

RPG: Role Playing Game

RPGMK: RPG Maker

Sumrio
1 Game Design e Requisitos...................................................................................11
1.1 Conceitos bsicos do jogo.............................................................................................11
1.1.1 Requisitos para a Jogabilidade............................................................................................... 11
1.1.2 Deciso do gnero do jogo...................................................................................................... 11
1.1.3 Criao do enredo.................................................................................................................... 12

1.2 Ferramentas e Funcionalidades requeridas...................................................................12


1.2.1 Funcionalidades requeridas.................................................................................................... 12
1.2.2 Escolha das ferramentas.......................................................................................................... 13

2 Desenvolvendo o jogo..........................................................................................14
2.1 RPG Maker.................................................................................................................... 14
2.2 A criao do jogo e suas etapas....................................................................................14
2.3 Criao do Contedo de Personagem...........................................................................14
2.3.1 Criando Classes de personagem............................................................................................. 15
2.3.2 Criando Habilidades................................................................................................................. 15
2.3.3 Criao de itens........................................................................................................................ 16

2.4 Criao de adversrios e seus contedos.....................................................................19


2.4.1 Monstros comuns..................................................................................................................... 19
2.4.2 Chefes........................................................................................................................................ 20

2.5 Criao de mapas..........................................................................................................22


2.5.1 Estrutura dos andares.............................................................................................................. 23
2.5.2 Eventos...................................................................................................................................... 24

2.6 Funcionalidades de apoio..............................................................................................25


2.6.1 Webkit........................................................................................................................................ 25
2.6.2 Diagramas de caso de uso....................................................................................................... 26

2.7 Implementao do enredo e Polimento.........................................................................31

3 Desenvolvendo o Banco de Dados.....................................................................33


4 Desenvolvendo o Site...........................................................................................34
4.1 Levantando Requisitos..................................................................................................34
4.2 Desenvolvimento de Funcionalidades............................................................................34
4.2.1 Casos de Uso das Funcionalidades........................................................................................34

4.3 Design do layout............................................................................................................36


4.4 Hospedagem.................................................................................................................37

5 Consideraes finais............................................................................................38

Introduo
Este projeto pretende mostrar que possvel para o desenvolvedor iniciante e
independente criar jogos sem grandes custos e conhecimentos avanados atravs de
ferramentas simples e de fcil acesso. Para isso, misturamos os conhecimentos de
programao Desktop, atravs do RGSS, com programao Web, atravs do PHP. O projeto
se inspira em jogos indies da atualidade e utiliza conceitos dos antigos jogos RPG.
No contexto atual do desenvolvimento de jogos a criatividade e inovao so fatores
muito importantes para o sucesso de um jogo, mas ao mesmo tempo vem crescendo a
aceitao de jogos com temticas retr, onde velhos conceitos como o RPG e o Dungeon
Crawling so revisitados e misturados com novas tecnologias.
Sendo assim, o projeto visa explorar as formas de desenvolvimento de jogos
independentes atravs da criao de um jogo que se utilize dessas tendncias para obter uma
ideia do funcionamento dessa industria e dos bastidores do desenvolvimento de um jogo.
Para alcanar os objetivos traados preciso encontrar formas de facilitar o
desenvolvimento sem que haja necessidade de grandes gastos ou conhecimento em
desenvolvimento de jogos obtendo a maior quantidade de dados sobre as fases e as
dificuldades de planejar, desenvolver e publicar um jogo.

11

1 Game Design e Requisitos


1.1 Conceitos bsicos do jogo
Inicialmente preciso definir como o jogo em sua essncia, quais so seus objetivos, de
que forma jogado, de que forma os jogadores so atrados jogar, qual o enredo e coisas
do tipo. Tudo isso para maximizar o tempo de jogo dos jogadores e popularidade do jogo,
caractersticas extremamente necessrias para o sucesso de jogos desenvolvidos de forma
independente.

1.1.1 Requisitos para a Jogabilidade


A escolha da forma como o jogo jogado feito com base em alguns requsitos.
O jogo deve possuir:
1) Jogabilidade simples de ser aprendida, possibilitando que tanto jogadores
iniciantes quanto jogadores experientes possam jog-lo sem dificuldade;
2) Grande potencial de replay, tornando possvel aproveitar ao mximo o
contedo criado na fase de desenvolvimento, j que o tempo disponvel para tal
curto.
3) Competitividade entre jogadores, fazendo com que o jogo se espalhe por
grupos de amigos.
4) Um nvel de dificuldade razovel, aumentando ainda mais o tempo de jogo e a
competitividade.
A deciso de utilizar tais requsitos veio do estudo de jogos de sucesso na atualidade,
como os jogos para plataforma porttil que prezam pela simplicidade e jogos competitivos
que motivam o jogador a jogar novamente por melhores pontuaes e posies de ranking.

1.1.2 Deciso do gnero do jogo


Tendo em mente os requisitos levantados para a jogabilidade, o gnero de jogo escolhido
o RPG, devido caractersticas como:

Customizao/Evoluo de personagem Contibui para o replay do jogo, permite que


o jogador um personagem diferente toda vez que jogue.

Combates por turno Aumenta a simplicidade, j que o combate ocorre atravs de


comandos simples. Alm disso mais simples de ser codificado, deixando disponvel
mais tempo para a criao de contedo.

12

Grande quantidade de itens Faz com que jogadores busquem por itens escondidos ou
raros, aumentando o tempo de jogo e motiva o jogador a subir de nvel para poder obter
itens mais fortes.

1.1.3 Criao do enredo


Devido escolha do gnero de jogo, torna-se necessrio criar um enredo que justifique a
a trajetria do jogador. A histria deve ser algo que faa referncia busca por melhores
pontuaes e a necessidade de subir posies, e assim surge a ideia de utilizar como foco da
histria um personagem que sobe uma torre repleta de armadilhas e monstros em busca de um
suposto tesouro escondido no topo.

1.2 Ferramentas e Funcionalidades requeridas


Aps a criao do conceito bsico, necessrio verificar quais so as ferramentas e os
sistemas requeridos para tornar possvel o jogo planejado.

1.2.1 Funcionalidades requeridas


As principais funcionalidades para a execuo do projeto esto divididas em trs grupos,
que so:
a) Grupo 1 Jogo

Possibilitar o envio das pontuaes dos jogadores.

Combates em turnos.

Mapas gerados de forma procedural.

Login de usurio para armazenamento de pontuaes em contas.

b) Grupo 2 Banco de dados

Armazenamento de contas e pontuaes para comprao.

c) Grupo 3 Site

Cadastro de usurios para armazenamento de pontuaes.

Exibir ranking de pontuaes.

Download do jogo.

13

1.2.2 Escolha das ferramentas


Tendo em mente as funcionalides requeridas pelo projeto, as ferramentas so escolhidas
com base em trs caractersticas:
a) Facilidade de uso
b) Adequao ao projeto
c) Preo
Dessa forma foram escolhidas as seguintes ferramentas:

Jogo:

RPG Maker VX ACE (Criao do contedo, mapas e combate).

RGSS WebKit (Para interao do RPGMK com o HTML).

PHP (Interao do HTML com o Banco de dados).

RUBY (Programao dentro do RPGMK).

Banco de dados:

MySQL Workbench (Projetar o banco de dados).


PHPMyAdmin (Administrar o banco de dados).

Site:

Notepad++ (Codificar HTML, Javascript e PHP).

14

2 Desenvolvendo o jogo
Aps o planejamento e o levantamento de requisitos preciso iniciar o desenvolvimento
do jogo. Para isso vamos utilizar o RPG Maker VX ACE.

2.1 RPG Maker


O RPG Maker uma ferramenta que possibilita a criao de jogos com temtica RPG, ele
possui uma grande biblioteca de sprites e tilesets para criao de mapas, itens, classes e
personagens. Alm disso, possibilita que sejam criados tanto jogos simples, com pouca
programao, como jogos complexos. com muita programao. Essa programao feita em
uma linguagem prpria chamada RGSS, baseada em Ruby.
Por ser uma ferramenta simples e barata ideal para o uso no projeto.

2.2 A criao do jogo e suas etapas


Por possuir vrios sistemas e grande quantidade de contedo, o ideal para o
desenvolvimento de um jogo divid-lo em partes. No caso do TheCaveCrawler, a diviso de
etapas feita da seguinte forma:
1) Criao do Contedo de personagem.
2) Criao de Itens.
3) Criao de Adversrios e seus contedos.
4) Criao de mapas.
5) Funcionalidades de apoio.
6) Implementao do enredo e polimento.
A cada etapa preciso que sejam executados testes, para evitar o surgimento de bugs que
atrapalhem o jogo.

2.3 Criao do Contedo de Personagem


Nesta fase iniciado o projeto e inicialmente o desenvolvimento se resume a definir as
possveis escolhas que o jogador pode tomar em relao ao seu personagem. As caractersticas
clssica de um personagem de RPG so:

Classe (Cavaleiro, Bruxo, Ladro, etc..)

Atributos (Fora, inteligncia, agilidade, etc...)

Habilidades (Curar, Usar magia, etc...)

15

No sistema do RPG Maker existe um modelo padro para a criao de personagens. Neste
modelo, cada personagem possui no mnimo:

Uma classe.

Oito atributos (Vida, Pontos de Magia, Agilidade, Ataque, Ataque mgico, Sorte
Inteligncia, Defesa e Defesa mgica).

E essa a base da criao de personagens, sendo que os atributos e habilidades estaro


vinculados classe.

2.3.1 Criando Classes de personagem


As classes de personagem so baseadas em trs arqutipo de personagens de RPG. Nestes
jogos comum existir o personagem que treinado em combate corpo-a-corpo, o personagem
inteligente treinado em magia e o personagem rpido que utiliza subterfgios para superar
obstculos. Sendo assim, as trs opes de classes so: Cavaleiro, Bruxo e Ladino.
Atributos principais de cada classe:

Cavaleiro: Vida, Ataque e Defesa.

Bruxo: Pontos de magia, Ataque mgico e Defesa mgica.

Ladino: Agilidade, Sorte e Inteligncia.

Outra deciso em relao s classes que o ladino, por ser um personagem gil, no
pode usar escudos, mas para compensar, este pode equipar duas armas ao mesmo tempo.

2.3.2 Criando Habilidades


Para que cada classe possa uma jogabilidade nica preciso que possuam habilidades
que as diferenciem umas das outras, assim, a forma como so criadas as habilidades so de
extrema importncia. Outro ponto importante que deve ser observado ao serem criadas as
habilidades a recompensa por nvel que o jogador avana, quando o jogador recebe ao
menos uma habilidade nova por nvel comum que este se sinta mais motivado a avanar no
jogo, em busca de novas habilidades e melhorias do personagem. Com isso em mente, cada
classe possui uma habilidade nova a cada nvel at nvel 3 (nvel mdio em que o jogador
atinge o chefe final).

2.3.2.1 Cavaleiro
O conjunto de habilidades do cavaleiro planejado para que ele possa melhorar a sua
habilidade de luta com ataques simples, que o seu ponto forte. Alm disso, essa d a ele uma

16

possibilidade de cura e aumento na defesa, permitindo a ele sobreviver a ataques de inimigos


mais fortes.

Habilidades:

Recuo Estratgico: Permite ao personagem recuar e recuperar vida.

Postura Agressiva: Aumenta o ataque mas diminui a defesa.

Postura Defensiva: Aumenta a defesa mas diminui o ataque.

2.3.2.2 Bruxo
O conjunto de habilidades do bruxo d a ele a maior quantidade de dano de todas as
classes, porm antes de conseguir a segunda habilidade o bruxo o personagem mais frgil de
todos.

Habilidades:

Mssil mgico: Conjura um mssil de magia que causa dano.

Barreira mgica: Cria uma proteo em volta do mago, aumenta a defesa.

Lanar Chamas!: O Mago lana chamas pelas mos e causa dano de fogo a
todos os inimigos.

2.3.2.3 Ladino
O conjunto de habilidades do ladino d a ele formas de sobreviver aos perigos como
inimigos e armadilhas. No nvel 3 o ladino recebe uma habilidade de combate, tornando
possvel que ele derrote inimigos fortes em conjunto com sua habilidade de esconder.

Habilidades:

Esconder: Aumenta a defesa e diminui a chance de acerto dos inimigos.

Detectar armadilhas: D 50% de chance do ladino perceber armadilhas no


mapa antes de ativ-las.

Ataque rpido: Ataca duas vezes rapidamente.

2.3.3 Criao de itens


Os itens do jogo so divididos em 3 tipos:

Consumveis Itens que so gastos aos serem usados.

Armas Itens equipveis para melhorar a Ataque ou Ataque mgico.

Armaduras - Itens equipveis para melhorar a Defesa ou Defesa mgica.

17

2.3.3.1 Consumveis

Os consumveis so itens que ao serem usados so gastos, entre eles esto as poes de
cura e ponto de magia, que so extremamente importantes para a sobrevivncia do jogador.
Alm das poes existem tambm os tomos, estes so timos para aumentar a customizao
dos personagens, dando a eles habilidades diferentes:

Poo Recupera a vida do jogador.

Elixir Recupera os pontos de magia.

Tomo do Ladino - Ensina a habilidade Esconder ao personagem. Caso ele j


conhea essa habilidade, melhora ela.

Tomo do Bruxo - Ensina a habilidade Mssil mgico ao personagem. Caso ele j


conhea essa habilidade, melhora ela.

Tomo do Cavaleiro - Ensina a habilidade Postura defensiva para magos e Postura


agressiva para ladinos. Caso seja um cavaleiro, ensina a habilidade Fria.

2.3.3.2 Armas
Foram criadas vrias armas para possibilitar a customizao dos personagens.

18

Adaga Arma inicial do ladino.

Espada longa

Cajado Arma inicial do Bruxo.

Arco e flecha

Espada Curta - Arma inicial do Cavaleiro.

Florete

Bola de cristal

2.3.3.3 Equipamentos
Os equipamentos foram divididos em trs tipos: Armadura de corpo, Escudo e
Acessrios.
As armaduras em ordem crescente de defesa so:

Roupas de viagem Armadura inicial de todas as classes.

Armadura de couro

Meia armadura de placas

Armadura de placas
Os escudos em ordem crescente de defesa so:

Escudo de brao Um escudo leve.

Escudo mdio Um escudo mais pesado.


Os acessrios so equipamentos muito importantes para a costumizao do personagem

j que adicionam grandes bnus ou permitem que personagens usem habilidades diferentes:

Anel da Cura Um anel que permite o uso da habilidade Curar.

Luvas da maestria Uma luva que melhora a habilidade de luta corpo a corpo do
personagem.

Botas anti-armadilha Botas que permitem o uso da habilidade Detectar


Armadilhas.

gua-benta Faz com que os ataques do personagem causem mais dano criaturas
morto-vivas.

19

2.4 Criao de adversrios e seus contedos

Uma das partes mais importantes na criao do jogo a criao dos adversrios, que so
responsveis por boa parte dos desafios enfrentados pelo jogador.
Adversrios so divididos em dois tipos: Monstros comuns e Chefes.

2.4.1 Monstros comuns


Monstros comuns so fracos ou medianos em fora e oferecem razovel ou pouca ameaa
ao jogador, mas tambm no possuem grandes recompensas. Os monstros comuns so:

2.4.1.1 Gosma
Descrio: A gosma uma forma gelatinosa que se arrasta pelos corredores da torre.
Batalha: A gosma o inimigo mais fraco do jogo, possui 80 pontos de vida e apenas
raramente usa a habilidade Mssil mgico. Quando est com 20% ou menos da vida ela se
divide em duas gosmas menores com 20 pontos de vida cada.

20

Recompensas: Ao derrotar a gosma o jogador recebe 7 pontos de experincia e 10


moedas de ouro. Existe 10% de chance de encontrar uma Poo e 20% de chance de encontrar
um Elixir ao derrotar a gosma.

2.4.1.2 Goblin
Descrio: O goblin uma criatura verde que rouba acentureiros desavisados.
Batalha: O goblin possui 85 pontos de vida e uma quantidade razovel de ataque que o
torna medianamente perigoso. Existe uma pequena chance de durante a batalha o goblin usar a
habilidade Esconder.
Recompensas: Ao derrotar o goblin o jogador recebe 17 pontos de experincia e 15
moedas de ouro. Existe 10% de chance de encontrar uma Poo e 6.6% de chance de
encontrar Botas Anti-Armadilhas ao derrotar o goblin.

2.4.1.3 Esqueleto
Descrio: Os esqueletos de aventureiros derrotados ainda andam pela torre.
Batalha: O esqueleto o mais forte entre os inimigos comuns, possui 95 pontos de vida e
as vezes usa a habilidade Ataque rpido. Alm disso, ele possui a capacidade de usar
Defender para ganhar um bnus de defesa contra o prximo ataque.
Recompensas: Ao derrotar a gosma o jogador recebe 20 pontos de experincia e 20
moedas de ouro. Existe 10% de chance de encontrar uma Poo, 6.6% de chance de encontrar
um Tomo do cavaleiro e 6.6% de encontrar as Luvas da maestria ao derrotar o esqueleto.

2.4.2 Chefes
Os chefes so adversrios maias raros de serem encontrados. Oferecem um grande risco
ao jogador, mas tambm possuem uma grande recompensa.

2.4.2.1 Os irmos Goblin


Descrio: Inicialmente a batalha iniciada e apenas dois dos irmos goblins esto
visveis o jogador os enfrenta normalmente at o quarto turno quando um terceiro irmo
goblin gigante chamado Robbie entra na batalha.
Batalha: Os primeiros irmos goblins so goblins comuns. J Robbie possui 150 pontos
de vida e 20 pontos de ataque, o tornando o segundo monstro com mais ataque do jogo.
Apesar da grande quantidade de ataque, Robbie possui uma chance de 20% de errar o ataque
devido ao seu grande tamanho.

21

Recompensas: Ao derrotar os irmos goblin o jogador recebe 17 pontos de experincia e


15 moedas de ouro por cada goblin mais 30 pontos de experincia e 50 moedas de ouro por
Robbie. Alm das chances de itens dos goblins, existe 100% de chance de encontrar um Tomo
do cavaleiro, 50% de chance de encontrar uma Armadura de placas e 50% de encontrar um
Escudo mdio ao derrotar o os Irmos Goblin.

2.4.2.2 O Arcanista Enlouquecido


Descrio: O arcanista um aventureiro que ficou preso por um tempo inimaginvel na
torre. Aps tantos anos a loucura tomou conta de sua mente e agora ele vaga por seus
corredores em busca de alvos para seus experimentos.
Batalha: O Arcanista uma espcie de Bruxo, possui 130 pontos de vida e uma grande
quantidade de ataque mgico, tornando suas magias altamente perigosas. Apesar da grande
quantidade de ataque mgico, a defesa contra ataques corpo-a-corpo baixa. O Arcanista
conjura sempre Mssil mgico como ataque, quando est com 75% ou menos pontos de
vida, ele tambm pode usar Curar e ao chegar a 50% ou menos pontos de vida ele tambm
conjura Lanar chamas.
Recompensas: Ao derrotar o Arcanista Enlouquecido o jogador recebe 50 pontos de
experincia e 50 moedas de ouro. Alm disso, existe 100% de chance de encontrar um Tomo
do Bruxo, 50% de chance de encontrar uma Bola de Cristal e 50% de encontrar um Anel de
cura.

2.4.2.3 O Mmico
Descrio: O mmico uma criatura que vive dentro de bas vazios, ao ter o ba aberto
por algum aventureiro ou goblin desavisado, o mmico ataca com seus dentes afiados.
Batalha: O mmico uma criatura morto-vivo, possui 135 pontos de vida e uma grande
quantidade de defesa e sorte, o que faz com que possua uma grande chance de conseguir
ataques crticos, que causam grande dano ao jogador. Apesar da grande quantidade de defesa,
o Mmico altamente vulnervel a magia e ataques de jogadores equipados com gua benta.
O Mmico frequentemente usa Barreira mgica para se proteger e ao atingir 50% ou menos
de vida, ele pode conjurar Fria.
Recompensas: Ao derrotar o Mmico o jogador recebe 50 pontos de experincia e 50
moedas de ouro. Alm disso, existe 100% de chance de encontrar um Tomo do Ladino, 50%
de chance de encontrar uma Florete e 50% de encontrar as Botas Anti-Armadilha.

22

2.4.2.4 A Quimera
A Quimera o chefe final da torre e por isso extremamente poderosa.
Descrio: Ao ver o jogador a Quimera avana em sua direo e o ataca. Ela possui
corpo e cabea de leo, Asas de morcego, Cauda de cobra e Chifres de cabra.
Batalha: A Quimera extremamente poderosa, possui 500 pontos de vida e uma grande
quantidade de defesa fsica e mgica, alm disso, possui 10% de chance extra de executar
ataques crticos, que causam grande dano ao jogador. A Quimera possui algumas aes
especiais:

Curar Cura a Quimera, 60% de chance de ocorrer.

Atacar com cauda Ataca com a cauda de cobra, causa envenenamento, acontece com
frequncia.

Rugido assustador Ruge de forma assustadora, atordoa o jogador, 60% de chance de


ocorrer.

Ataque rpido Ataca duas vezes rapidamente, 30% de chance de ocorrer.

Fria Aumenta em 50% o ataque e diminui em 50% a defesa, ocorre quando a


Quimera possui menos de 50% dos pontos de vida.

Defender Aumenta a defesa para o prximo ataqe recebido, 60% de chance de


ocorrer.

Recompensas: Ao derrotar a Quimera o jogador recebe 300 moedas de ouro, 200


pontos de experincia e termina o jogo.

2.5 Criao de mapas


Nessa etapa so criados os mapas e inseridos os eventos responsveis pelos
personagens que representam as criaturas, bas e armadilhas da torre.
Seguindo um dos requisitos, os mapas so criados de forma que a cada vez que o jogador
inicie um jogo, as posies de tais eventos e a prpria estrutura do mapa sejam modificadas.
A respeito da quantidade de andares, para manter o tempo de jogo razovel, a torre possui
3 andares, sendo que existira em mdia um chefe por andar e o ltimo chefe no terceiro.

23

2.5.1 Estrutura dos andares


Os andares so criados de forma procedural atravs de um algortmo de criao de
labirintos incluso no prprio RPGMK, assim, so criadas salas interligadas por corredores.
Para tornar possvel a distrubuio dos eventos de forma que no apaream em locais
indesejados do mapa (como um ba aparecer no meio de um corredor) os locais do mapa so
divididos com reas.

O algoritmo responsvel pela distribuio dos eventos detalhado nas Funcionalidades de


apoio.
Para que exista a diferenciao dos mapas a cada vez que o jogador inicie um novo jogo,
existem 4 verses de cada andar, assim a cada vez que um jogador passa de andar ele
enviado a uma dessas 4 verses do mesmo mapa.

24

2.5.2 Eventos
Eventos so objetos colocados no mapa que podem interagir com o jogador ao serem
acionados. No RPGMK os eventos contm comandos que se se assemelham uma linguagem
de algortmos genrica, assim, possvel utiliz-los para modificar coisas no jogo, iniciar
batalhas, abrir lojas, etc.

Os eventos presentes nos mapas so:

Inimigos Inimigos possuem os grficos correspondentes a cada inimigo. Eles so


programados para perseguirem o jogador e ses comandos se iniciam ao tocar o mesmo.

Armadilhas Armadilhas ficam escondidas at que o jogador toque nelas, nesse


momento so reveladas e causam dano ao jogador. Podem ser geradas em qualquer
rea do mapa.

Bas Bas possuem grficos de bas de madeira que se abrem ao serem ativados.
Eles so ativados atravs do boto de ao. No so gerados em corredores.

Subida A subida possui o grfico de uma escada, ela ativada pelo boto de ao e
leva o jogador ao prximo andar. No gerada em corredores.

25

Descida A descida possui o grfico de uma escada descendo, ela ativada pelo boto
de ao mas no permite a descida do jogador. No gerada em corredores.

2.6 Funcionalidades de apoio


Aqui so detalhadas as funes mais tcnicas do jogo, como a distribuio dos eventos
pelo mapa e o login do jogador. Alm disso, explicada a forma como funciona o WebKit,
que responsvel pela comunicao do jogo com os arquivos PHP no servidor.

2.6.1 Webkit
O WebKit um Add-on desenvolvido pela comunidade de desenvolvedores do RPGMK
e foi inicialmente criado por Guilherme Bicalho e editado por vrios outros desenvolvedores,
atualmente distribudo em Creative Commons 3.0.
Basicamente a sua funo criar uma comunicao HTTP para o uso do RGSS, ele
permite que o desenvolvedor crie uma funo que leia o contedo de uma determinada pgina
web. Assim, em conjunto com arquivos PHP em um servidor possvel criar a comunicao
do RGSS com um Banco de dados.

26

Esse sistema utilizado para vrias funcionalidades dentro do jogo:

Login Permite ao usurio acessar o jogo com uma conta pessoal.

Envio de pontuao Envia a pontuao do jogador ao sevidor.

Verificao de verso Verifica a verso do jogo com o servidor.

Obter Notcias Obtem as notcias do servidor.

Verificar Ranking Verifica os Ranking de pontuaes.

2.6.2 Diagramas de caso de uso


Aqui esto listados os diagramas de caso de uso das funcionalidades de apoio do jogo.
Diagramas de caso de uso so importantes para enteder a funcionalidade de sistemas e a
forma como interagem com o usurio.

Sistema de login
Caso de uso: Sistema de login.

27

Fluxo principal:

O usurio preenche os campos de nome de usurio e senha.

Sistema verifica se a senha e nome so existentes e correspondem.

Sistema verifica verso do cliente do jogo.

Sesso de jogo iniciada.

Fluxo alternativo:

Caso o usurio no preencha os campos, pedido que ele os preencha.

Caso o nome de usurio no exista, um erro alerta o usurio disso.

Caso a senha no corresponda, um erro alerta o usurio disso.

Caso a verso do jogo esteja errada, um erro alerta esse problema e indica um link

para download da nova verso, o cliente fechado.

Envio de pontuao
Caso de uso: Envio de pontuao

Fluxo principal:

O cliente do jogo obtm a pontuao do jogador.

28

O cliente verifica que o servidor est acessvel.

O cliente se certifica que o usurio continua logado.

A pontuao enviada ao servidor.

Fluxo alternativo:

Caso o servidor no esteja acessvel, o cliente alerta isso com uma mensagem de erro

e a pontuao no enviada.

Caso o cliente verifique o jogador no est logado, a pontuao no enviada ao

servidor.

Verificao de verso
Caso de uso: Verificao de verso

Fluxo principal:

O cliente obtm seu nmero de verso.

O cliente obtm o nmero de verso do servidor.

Os nmeros correspondem.

29

Sesso de jogo iniciada.

Fluxo alternativo:

Caso o cliente ou o servidor no tenham verso, o cliente alerta esse problema com

um erro e um link para o download do jogo, o cliente fechado.

Caso os nmeros no sejam correspondentes, uma mensagem de alerta informa o link

para download da nova verso, o cliente fechado.

Obter notcias
Caso de uso: Obter notcias

Fluxo principal:

O cliente verifica que o servidor est acesvel.

O cliente obtm as notcias do servidor.

As notcias so exibidas

Fluxo alternativo:

Caso o servidor no esteja acessvel, as notcias no so exibidas.

30

Caso no existam notcias no servidor, nenhuma notcia exibida.

Verificar Ranking
Caso de uso: Verificar ranking

Fluxo principal:

O cliente verifica que o servidor est acesvel.

O cliente obtm as pontuaes do servidor.

Pontuaes so ordenadas.

Pontuaes so exibidas.

Fluxo alternativo:

Caso o servidor no esteja acessvel, as pontuaes no so exibidas.

Caso no existam pontuaes no servidor, o ranking no exibido.

31

Posicionar evento
Caso de uso: Posicionar evento

Fluxo principal:

O cliente gera uma posio aleatria no mapa.

O cliente verifica se essa posio est em uma rea vlida para este evento.

O cliente posiciona o evento.

Fluxo alternativo:

Caso a rea da posio no seja vlida para o evento, o processo reiniciado.

2.7 Implementao do enredo e Polimento


Por fim, para finalizar o desenvolvimento inserido o enredo do jogo atravs de cenas
programadas e um sistema de gerao de histria do personagem. Nesse sistema, o jogo gera
aleatriamente uma histria de 3 paragrafos de acordo com a classe do personagem, existem
no total 12 pargrafos que so ordenados de forma que faam sentido com a histria.

32

Logo depois feito o polimento, onde so corrigidos bugs e feito o equilbrio das
classes, para que no exista uma classe que seja muito mais forte que as outras. Alm disso,
escolhida a cor de fundo das janelas, imagem da tela de login e menu, fonte grfca dos textos
e trilha sonora.

33

3 Desenvolvendo o Banco de Dados


Para o desenvolvimento do banco de dados devem ser seguidos os requisitos do projeto, o
banco deve ser reponsvel por armazenar:

Nome de usurio e senha

Pontuaes e o nome dos jogadores que as fizeram

Notcias

Variveis e switches do RPGMK para funcionalidades diversas.


Com isso em mente, o banco desenvolvido em MySQL, atravs do MySQL Workbench
e possui a estrutura:

As tabelas foram organizadas da seguinte forma:

Accounts Guarda o nome de usurio e senha das contas dos jogadores.

Score Guarda as pontuaes e o nome de quem as fez.

News Armazena o ttulo, corpo e id das notcias.

Switch Armazena as Switches do RPGMK.

Variables Armazena variveis do RPGMK.

34

4 Desenvolvendo o Site
Para facilitar o acesso do jogo e fornecer um local onde os jogadores possam baixar o
cliente do jogo necessria a criao de um site.

4.1 Levantando Requisitos


Para que o site cumpra a sua funo de propagar e facilitar o acesso ao jogo, so
necessrios certas funcionalidades:

Cadastro de usurio Permite aos usurios criarem contas de jogadores.

Download do jogo Permite que seja feito o download do jogo.

Visualizao de ranking D a opo aos jogadores de visualizarem o ranking de forma


mais clara.

Layout atraente Aumenta a atratividade do jogo.


Com esses requisitos como objetivo possvel dividir o desenvolvimento do site em duas
etapas: Desenvolvimento de funcionalidades e Design de layout.

4.2 Desenvolvimento de Funcionalidades


As funcionalidades do site so feitas assim como no jogo, atravs de Scripts PHP que
interagem com o banco de dados,

o que facilita a criao de um banco de dados

compartilhado.

4.2.1 Casos de Uso das Funcionalidades.


Aqui esto os casos de uso das funcionalidades do site.

Visualizao do Ranking
Caso de uso: Visualizao do Ranking

35

Fluxo principal:

O site verifica que o servidor est acesvel.

O site obtm as pontuaes do servidor.

Pontuaes so ordenadas.

Pontuaes so exibidas.

Fluxo alternativo:

Caso o servidor no esteja acessvel, o ranking no exibido.

Caso no existam pontuaes no servidor, o ranking no exibido.

36

Cadastro de usurio
Caso de uso: Cadastro de usurio.

Fluxo principal:

O usurio preenche os campos de nome de usurio e senha.

Site se certifica que senha e nome so vlidos.

Conta inserida no banco de dados

Fluxo alternativo:

Caso o usurio no preencha os campos, pedido que ele os preencha.

Caso o nome de usurio j exista ou seja invlido, um erro alerta o usurio disso.

Caso a senha no seja vlida, um erro alerta o usurio disso.

4.3 Design do layout


Para o design do layout se tornar algo atrativo preciso fugir ao modelo padro de
pginas estticas.

37

Com isso em mente, o layout do site feito de forma que tanto seus grficos quanto a
forma como usurios navegam por ele sejam o mais prximo possvel do jogo.
Os grficos de background, grfico do mouse e sprite de personagem so todos retirados
dos grficos do prprio jogo. Alm disso, o controle do personagem que se encontra sobre o
background do site pode ser feito com as setas do teclado. Ao tocar as estruturas assinaladas
com placas que esto no background, o personagem abre as pginas correspondentes a elas.

4.4 Hospedagem
Para que o site e o banco de dados funcionem da forma esperada, preciso que estes
sejam hospedados em um servidor.
Os parametros usados na escolha do Host so:
1) Custo
2) Tempo online
3) Funcionalidades oferecidas
Assim, o mais indicado um plano de hospedagem gratuito, e por isso a escolha o plano
gratuido do Hostinger.com. Esse plano possui as caractersticas necessrias para rodas o
banco de dados e os scripts PHP e resiste ao stress esperado para o pblico do jogo.
O

domnio

escolhido

www.thecavecrawler.hol.es.

tambm

um

domnio

pblico

gratito:

38

5 Consideraes finais
Aps todas essas etapas possvel jogar e distribuir livremente o jogo. Mas no s a isso
precisa limitar-se o futuro, durante o desenvolvimento, houve sempre o cuidado de manter o
projeto aberto modificaes, de forma que seja possvel no futuro adicionar novas
funcionalidades e contedos, as ideias para o futuro do projeto so o nico limite do que ele
pode ser tornar, afinal, com criatividade e um pouco de esforo possvel adequar qualquer
ideia que venha a ser concebida para a melhoria do jogo.
Alm disso, as funcionalidades criadas para esse projeto no sero limitadas apenas a ele,
assim como ele utiliza recursos cirados pela comunidade e distribudos sb a licena de
Creative Commons, os recursos criados para ele, como o sistema de ranking, distribuio de
enventos e envio de pontuao, sero publicados sob a mesma licena para que outros
desenvolvedores possam utiliz-los e melhor-los como quiserem.

Referncias bibliogrficas
BECKER, Fernando, FARINA, Srgio, SCHEID, Urbano. Apresentao de trabalhos
escolares. Orientao para datilografia e digitao. Porto Alegre: Multilivro, 2000.
CHEMIN, Beatriz Francisca. Guia Prtico da UNIVATES para trabalhos acadmicos.
Lajeado: UNIVATES, 2005.
FARINA, Srgio. Referncias bibliogrficas e eletrnicas. So Leopoldo: UNISINOS, 1997.
ROCHA, Jos Antonio Meira da. Modelo de Trabalho de Concluso de Curso (TCC).
Modelo de documento digital do programa OpenOffice 2.0 disponvel em
<http://www.meiradarocha.jor.br/uploads/1021/196/modelo_de_projeto_de_TCC-2006-0612a.sxw>. Acesso em: 12 jun. 2006.
THUMS, Jorge. Acesso realidade: tcnicas de pesquisa e construo do conhecimento.
Porto Alegre: Sulina/Ulbra, 2000.
Divulgao do WebKit para RGSS disponvel em
<http://forums.rpgmakerweb.com/index.php?/topic/2990-rgss-webkit/>. Acesso em: 15 jun.
2015

Você também pode gostar