Como Criar Um Simples Jogo de Computador Usando Scripts Em Batch
Short Description
Como Criar Um Jogo de Computador Usando Scripts Em Batch...
Description
Como Criar um Simples Jogo de Computador Usando Scripts em Batch Batch Script é uma linguagem básica de scripts que roda em qualquer sistema operacional Windows ou MS-DOS. Suas funções são baseadas nos comandos para as linhas de comando destes sistemas operacionais. Além disso, é algo muito legal. Criar um jogo com este script não é algo tão difícil, tudo o que é preciso é um pouco de tempo e criatividade. Atenção: para que este este projeto funcione corretamente, corretamente, você precisará precisará do Windows 2000 ou alguma versão posterior, visto que ele não funcionará em versões mais antigas do Windows ou MS-DOS. Versões mais antigas não são compatíveis com os scripts em batch modernos.
Passos
1
Decida qual jogo deseja desenvolver. Antes de optar por criar um jogo de tiros e
ação ou um jogo no qual você utiliza o mouse para apntar e clicar em algo, saiba que mesmo na versão 8 do MS-DOS, o batch script possui sérias limitações quanto às suas capacidades. Você não será se rá capaz de criar mais do que um jogo baseado em texto. Pode ser um quiz (jogo de d e perguntas e respostas) ou um jogo de cenário, mas você apenas terá textos. Quanto a possuir ou não gráficos em ASCII, dependerá apenas de você, mas o jogo continuará sendo inteiramente baseado em entrada de texto. Anúncio
2
Aprenda sobre o script. Aprender sobre o script em si não é tão difícil - você
pode inclusive aprender simplesmente observando outro programa. Para aprender qualquer linguagem de script, é necessário conhecer alguns comandos básicos da linha de comandos de seu computador. Os comandos dos quais você precisará são: echo color title goto if set labeling (não é um comando, mas a forma de definir labels ou rótulos)
3
Aprenda como utilizar os comandos acima.
O echo (ecoar) é um comando utilizado para imprimir algum texto no console. Abaixo, o comando comando echo imprime o texto texto "Olá, Mundo!".
echo Olá, Mundo! Mundo !
O comando color (cor) (cor) é utilizado para mudar a cor do texto na linha de comando. Isto não é muito útil e provavelmente não deveria merecer sua atenção até que você tivesse concluído o seu jogo em si, mas os resultados
das mudanças de cor podem ser bem atraentes. As cores na linha de comandos do DOS são numeradas. Existe uma tabela com as cores e seus números no final deste artigo. O seguinte comando irá modificar a cor do texto para um plano de fundo preto e letras verdes.
color 02
O comando title (título) simplesmente modifica o nome da janela que aparece em sua barra de títulos, bem como na barra de tarefas, não sendo muito útil; porém, pode fazer com que o seu programa tenha um aspecto mais profissional. Utilizando-o da seguinte forma, você poderá alterar o título da janela para "Programa Divertido".
title Programa Divertido
O comando goto (vá para) é utilizado para ir para uma determinada parte do programa. Você utilizará este comando para determinar o que acontecerá quando determinadas respostas forem escolhidas para as perguntas. Para utilizar o comando goto para ir ao label "ERRADO":
goto ERRADO
O comando if (se) é utilizado para determinar o que irá acontecer caso um determinado evento ocorra. Após a instrução if (if [algo]), um comando será executado a seguir. No caso da instrução if, se um determinado evento for verdadeiro, o comando em seguida será executado. Você estará utilizando esta instrução condicional para determinar qual comando goto deverá ser utilizado. Esta condição if será verdadeira se a entrada for igual a 12:
if %input%==12 (comando)
O comando set é bem complicado, visto que pode ser utilizado de diversas formas. Por hora, tudo o que você precisa saber sobre este comando é que poderá utilizá-lo para fazer com que o computador receba dados de entrada. Para fazer isso:
set /p input=(Pergunta)
Finalmente, labeling (rotulagem). O labeling pode ser utilizado para rotular ou nomear certas partes do programa de forma que você possa utilizar o comando goto. Você pode nomear certas partes do programa da forma como desejar, contanto que o nome utilizado não seja um comando. Para rotular ou utilizar um label em uma seção "main" (principal), digite o seguinte:
:MAIN
Seções rotuladas (utilizando-se labels) incluem o label em si e todo o código que a segue até que um outro label seja apresentado ou o arquivo chegue ao fim. Certifique-se de posicionar seu label antes da seção a ser rotulada ou nomeada e outro label em seguida, de forma que o computador entenda qual seção está sendo rotulada com um label. Confira o exemplo a seguir:
@echo off :LABEL1 echo ESTE É UM TESTE DE TEXTO set/p input=ESTA É UM TESTE DE ENTRADA_ if %input%==1 goto LABEL1 goto LABEL2 :LABEL2
echo TESTE
A primeira linha do programa acima pode ser confusa para você. Esta linha desabilita o display de códigos dentro do arquivo, de forma que não pareça que tudo foi digitado em um console. A partir de agora temos o que realmente importa, onde determinaremos o que o programa de fato fará (ignore a primeira linha). O programa apresentará o texto "ESTE É UM TESTE DE TEXTO" e depois lhe pedirá que entre com alguma informação. Se a entrada for "1" (significando que você digitou 1), o programa irá lhe retornar para o LABEL1 e executará os comandos abaixo deste label novamente. Se a condição da instrução if não for atendida, irá imprimir o texto "TESTE" no console. Copie o programa acima em duas janelas distintas do bloco de notas. Em uma delas, salve o arquivo com o nome de TESTE1 em qualquer diretório e execute-o. Perceba como o texto é apresentado. Na segunda janela do bloco de notas, apague a primeira linha, salve o arquivo como TESTE2 e execute-o. Percebe a diferença? Uma vez que você tenha um entendimento geral sobre como os comandos acima podem ser utilizados, você pode avançar para o próximo passo.
4
Comece a criar o script de seu jogo. Para iniciantes, sugere-se que utilizem o
bloco de notas, mas se você quiser utilizar o MS DOS EDIT, sinta-se livre para tal. Também é sugerido para um iniciante que inicie com um jogo básico de quiz (perguntas e respostas), e é isso que este artigo lhe ensinará a fazer. Lembre-se de iniciar desabilitando o echo. Em seguida, apresente o seu jogo com algum texto através do comando echo; depois, utilize o comando set para permitir alguma entrada que será utilizada com o comando goto. Isso pode parecer confuso, portanto observe abaixo (obs: o comando REM significa uma linha de comentário no código, ou seja, uma linha apenas para explicar o que está sendo feito para o programador, sem executar nenhuma operação):
@echo off :MAIN echo. REM (Isto apenas cria uma linha vazia.) echo. echo. echo Bem vindo ao meu jogo básico de perguntas. echo. echo Para iniciar o jogo, digite A e pressione ENTER. echo Para ver as instruções do jogo, digite B e pressione ENTER. echo Para sair, digite C e pressione ENTER. set /p input=COMANDO? if %input%==A goto JOGO if %input%==B goto INST if %input%==C exit
5
Trabalhe na página de instruções. Neste ponto, você deve salvar o seu arquivo
6
A partir deste momento, você passará a ter múltiplos arquivos por jogo
(salve-o como algumacoisa.bat); em seguida, ponha-o em um diretório que você tenha criado para o jogo. Após salvá-lo, execute-o e certifique-se de que esteja funcionando.
(especialmente se quiser ter gráficos ASCII). Você pode pegar o batch script
para imprimir o conteúdo de qualquer arquivo na tela com o comando type. O comando a seguir irá imprimir na tela o conteúdo do arquivo TESTE.txt:
type teste.txt
É importante lembrar-se de incluir a extensão do arquivo, ou o comando poderá não funcionar apropriadamente. Crie uma página de instruções no bloco de notas. Nela deverá constar algo como:
Este é um jogo básico de perguntas. Quando lhe for feita uma pergunta, lhe serão apresentadas algumas respostas das quais você deverá escolher uma de acordo com suas letras A, B, C ou D. Faça sua escolha e pressione ENTER. Certifique-se de digitar a letra da resposta em LETRA MAIÚSCULA !
Salve este arquivo como INST.txt no diretório onde se encontra o arquivo batch criado anteriormente; em seguida, faça com que o seu jogo imprima o texto no console através da página de instruções.
@echo off :MAIN echo. echo. echo. echo Bem vindo ao meu jogo básico de perguntas. echo. echo Para iniciar o jogo, digite A e pressione ENTER. echo Para ver as instruções do jogo, digite B e pressione ENTER echo Para sair, digite C e pressione ENTER. set /p input=COMANDO? if %input%==A goto JOGO if %input%==B goto INST if %input%==C exit :INST type INST.txt echo. echo. echo Para iniciar o jogo, digite A e pressione ENTER. echo Para voltar à tela principal, digite B e pressione ENTER. echo Para sair, digite C e pressione ENTER. set /p input=COMANDO? if %input%==A goto JOGO if %input%==B goto MAIN if %input%==C exit
Execute o programa e certifique-se de que esteja funcionando.
7
Trabalhe no conteúdo do jogo em si. É aqui que a maior parte de sua
criatividade/pesquisa, trabalho e tempo serão gastos enquanto estiver trabalhando neste jogo, bem como onde a maior parte do script do jogo deveria estar. Deverá haver um local para onde ir quando você receber uma resposta errada e um local para onde ir quando receber uma resposta correta. O código abaixo possui 3 perguntas básicas sobre o exterior de um carro. Você poderá substituí-las pelo que desejar. (Obs: o comando REM significa uma linha de comentário no código, ou seja, uma linha apenas para explicar o que está sendo feito para o programador, sem executar nenhuma operação.)
@echo off :MAIN echo. echo. echo. echo Bem vindo ao meu jogo básico de perguntas. echo. echo Para iniciar o jogo, digite A e pressione ENTER. echo Para ver as instruções do jogo, digite B e pressione ENTER. echo Para sair, digite C e pressione ENTER. set /p input=COMANDO?
if %input%==A goto JOGO if %input%==B goto INST if %input%==C exit :INST
type INST.txt echo. echo. echo Para iniciar o jogo, digite A e pressione ENTER. echo Para voltar à tela principal, digite B e pressione ENTER. echo Para sair, digite C e pressione ENTER. set /p input=COMANDO? if %input%==A goto JOGO if %input%==B goto MAIN if %input%==C exit :JOGO echo Na maioria dos carros, o motor está localizado sob o... echo A. Porta-malas echo B. Capô echo C. Teto echo D. Roda set /p input=RESPOSTA? if %input%==B goto 2 goto ERRADO :ERRADO echo Sinto muito, está incorreto. Pressione qualquer tecla para voltar pause REM (isto irá pausar o programa até que alguma tecla seja digitada) goto MAIN :2 echo As luzes traseiras estão localizadas na extremidade XXXXXXXX do c echo A. Traseira echo B. Dianteira echo C. Esquerda echo D. Direita set /p input=RESPOSTA? if %input%==A goto 3 goto ERRADO :3 echo O que fazem os limpadores de pára-brisa? echo A. Servem de lastro em carros submersíveis echo B. Retiram o pó do carro usando pequenos ventiladores echo C. Limpam o pára-brisa da água ou sujeira echo D. Serve como decoração set/p input=RESPOSTA? if %input%==C goto WIN goto ERRADO
Execute o programa e certifique-se de que esteja funcionando.
8
Crie uma tela de vitória. Criar uma tela de vitória é tão simples quanto a tela de
instruções. Crie um documento de texto com uma frase para quem vencer e salveo como VITORIA.txt no diretório onde se encontra o arquivo batch. Adicione as seguintes linhas ao final de seu jogo para inserir a tela de vitória:
:VITORIA type VITORIA.txt echo. echo. set/p input=RETORNAR À TELA INICIAL? (S/N)? if %input%==S goto MAIN if %input%==N exit
9
O seu jogo deverá agora parecer com o código a seguir:
@echo off :MAIN echo. echo.
echo. echo Bem vindo ao meu jogo básico de echo. echo Para iniciar o jogo, digite A e echo Para ver as instruções do jogo, echo Para sair, digite C e pressione set /p input=COMANDO? if %input%==A goto JOGO if %input%==B goto INST if %input%==C exit :INST
perguntas. pressione ENTER. digite B e pressione ENTER. ENTER.
type INST.txt echo. echo. echo Para iniciar o jogo, digite A e pressione ENTER. echo Para voltar à tela principal, digite B e pressione ENTER. echo Para sair, digite C e pressione ENTER. set /p input=COMANDO? if %input%==A goto JOGO if %input%==B goto MAIN if %input%==C exit :JOGO echo Na maioria dos carros, o motor está localizado sob o... echo A. Porta-malas echo B. Capô echo C. Teto echo D. Roda set /p input=RESPOSTA? if %input%==B goto 2 goto ERRADO :ERRADO echo Sinto muito, está incorreto. Pressione qualquer tecla para voltar pause REM (isto irá pausar o programa até que alguma tecla seja digitada) goto MAIN :2 echo As luzes traseiras estão localizadas na extremidade XXXXXXXX do c echo A. Traseira echo B. Dianteira echo C. Esquerda echo D. Direita set /p input=RESPOSTA? if %input%==A goto 3 goto ERRADO :3 echo O que fazem os limpadores de pára-brisa? echo A. Servem de lastro em carros submersíveis echo B. Retiram o pó do carro usando pequenos ventiladores echo C. Limpam o pára-brisa da água ou sujeira echo D. Serve como decoração set/p input=RESPOSTA? if %input%==C goto WIN goto ERRADO :VITORIA
type VITORIA.txt echo. echo. set/p input=RETORNAR À TELA INICIAL? (S/N)?? if %input%==S goto MAIN if %input%==N exit
Execute o programa e certifique-se de que esteja funcionando.
10
Faça os ajustes em seu arquivo. Comece indo em cada label e colocando o
comando cls após os mesmos. Isto limpará a tela a cada label de forma que você não acabe com uma tela cheia de informações desnecessárias.
:MAIN cls
Faça correções gramaticais onde for necessário. Se quiser, faça com que
11
todas as respostas na lista sejam frases completas. Evite abreviações nos comandos echo do batch script! Você também deve evitar o uso de barras e o uso de sinais de maior/menor que, asteriscos, símbolos de porcentagem e qualquer outro símbolo estranho. Estes símbolos irão criar um erro de sintaxe que fará com que o programa pare, fique lento ou feche inesperadamente.
12
Crie gráficos para o jogo caso deseje. Gere arte em ASCII em um arquivo
de texto separado e utilize o comando type para apresentar o seu conteúdo no programa:
:3 cls type LIMPADORASCII.txt echo O que fazem os limpadores de pára-brisa? echo A. Servem de lastro em carros submersíveis echo B. Retiram o pó do carro usando pequenos ventiladores echo C. Limpam o pára-brisa da água ou sujeira echo D. Serve como decoração set/p input=RESPOSTA? if %input%==C goto VITORIA goto ERRADO
13
Faça a correção de quaisquer erros de digitação que você encontre.
Pense em suas próprias coisas a serem corrigidas. Em seguida, adicione cores com o comando color. Recomenda-se que você o posicione no início do código, de forma que o programa inteiro tenha esta cor. Aqui vai a explicação de como utilizá-las diretamente da linha de comandos: Define as cores de frente e de fundo padrões do console. COLOR [attr] attr Especifica o atributo da cor de saída do console Atributos de cor são especialmente compostos de DOIS dígitos hexadecimais -- o primeiro corresponde à cor de fundo; o segundo à cor de frente (caracteres). Cada dígito pode receber qualquer um dos seguintes valores: 0 = Preto 8 = Cinza 1 = Azul 9 = Azul Claro 2 = Verde A = Verde Claro 3 = Azul Água B = Azul Água Claro 4 = Vermelho C = Vermelho Claro 5 = Roxo D = Roxo Claro 6 = Amarelo E = Amarelo Claro 7 = Branco F = Branco Brilhante Se nenhum argumento for passado, este comando passará a utilizar as cores de quando o CMD.EXE foi inciado. Este valor pode vir tanto da janela de console atual, quanto do switch /T da linha de comandos ou mesmo do valor do registro DefaultColor (Cor Padrão).
Em outras palavras, se você deseja utilizar um fundo de branco brilhante e um texto preto:
@echo off color f0 :MAIN cls echo.
14
Parabéns, você acaba de criar um jogo simples de computador com batch script!
Anúncio
Dicas
Salve frequentemente seu arquivo. Você poderá arrepender-se se não o fizer. Tente criar tantas versões do jogo quanto possível, de forma que você possa compará-las e ver se existe algum erro. Nâo se preocupe sobre quanto espaço isso irá consumir, pois arquivos batch são muito pequenos. Você pode definir variáveis utilizando "set nomedavariavel=valor" ou solicitar que o usuário insira um valor e armazene-o como uma variável, onde ao invés de "set /p input=blahblahblah" você utilizaria "set /p nomedavariavel=blahblahblah". Batch é divertido, mas não foi feito para jogos. Se você deseja avançar para algo um pouco mais complexo, porém muito mais poderoso, experimente a linguagem de programação Python. Anúncio
Avisos
NUNCA insira nenhum comando de MS-DOS no comando echo, visto que eles serão executados. Lembre-se de que tudo o que for apresentado pela linha de comando é um echo! NUNCA insira qualquer comando de MS-DOS nos arquivos de texto que serão apresentados no console do programa. Arquivos de texto resolvem alguns problemas, tais como as barras e asteriscos, mas comandos neles continuarão sendo interpretados pelo sistema. Muitas vezes foi dito que é ilegal enviar arquivos batch pela internet. De maneira alguma isto é verdade, mas esteja ciente do fato de que você pode ter problemas ao tentar enviar arquivos maliciosos pela internet (ex: arquivos batch que danifiquem computadores, deletem arquivos vitais de sistemas, etc.). Eles não são chamados de vírus, mas continuam sendo prejudiciais e você pode ter sérios problemas por conta deles.
WikiHows Relacionados
Criar a Chuva de Códigos de Matrix com o Prompt de Comando Escrever um Arquivo em Lote
Sobre o Artigo Categorias: Artigos em Destaque | Programação | Desenvolvimento de Jogos Últimas edições feitas por: Gustavo Henrique dos Santos, Sabrina L. Furtado, Rafael Bemerguy Noutras línguas: English: How to Build a Simple Computer Game Using Batch Script Anúncio
Esta página foi acessada 17 760 vezes.
Artigo em Destaque
View more...
Comments