Ponto V!

Home Java Informações gerais Utilizando scripts nos jogos
Marcos Vasconcelos
Utilizando scripts nos jogosImprimir
Escrito por Marcos Vasconcelos

Um dos recursos mais importantes e mais comuns para a IA em jogos é o uso de scripts. Eles se fazem presentes desde jogos antigos, como Day of the Tentacle ou Quake, até os mais modernos, como Dragon Age e em praticamente todos os gêneros de jogos.

Nesse artigo, vamos ver uma introdução sobre o que são scripts, e como integrá-los na linguagem Java.

Sobre scripts

Scripts são linguagens de programação projetadas com o intuito de serem simples de se codificar. Geralmente, são embarcáveis, ou seja, seu compilador ou interpretador pode ser acoplado ao jogo, o que nos permite compila-los em tempo de execução. A grande vantagem é que com scripts é possível extrair a lógica para fora do código.

Scripts também podem ser usados para criar aplicações extensíveis, criando mods que podem ser plugáveis mesmo após o release do game bons exemplos disso são os jogos: Neverwinter Nights e Oblivion.

Casos comuns e uteis que se usam scripts

Controle de diálogos: Scripts são ótimas opções para controlar o diálogo entre personagens. Muitos diálogos exigirão que o jogador tenha tomado determinadas ações, ou exigirão testes, muitas vezes complexos, para que a opção apareça. Nessas horas, os scripts caem como uma luva, dando ao game designer muita flexibilidade.

Direção de cena: Um dos principais usos de scripts é fazer a direção de “cutscenes”, onde os NPCs guiam os jogadores. Damos à equipe de produção uma ferramenta poderosa, onde ele pode controlar a câmera, mover personagens, mudar parâmetros do ambiente, de maneira a fazer aquela tomada de tirar o fôlego. Em jogos como Dragon Age, scripts foram usados para fazer, por exemplo, a seqüência final de certos golpes que, quando acontecem, arrancam um sorriso de felicidade na cara do jogador;

Lógica da IA: Boa parte do trabalho de IA consiste em ajustar parâmetros. Scripts permitem mover esses parâmetros para fora do código compilado, tornando mais simples essa configuração e manutenção da IA.

Vantagens no uso scripts

Como as linguagens de script são feitas para serem simples, elas oferecem varias facilidades para programação. A maioria delas tem suporte à sobrecarga de operadores, iteradores simplificados, closures ou tipagem fraca.

Uma outra vantagem é que é possível distribuir a criatividade pelo time de desenvolvimento. Como são linguagens mais simplificadas e legíveis, game designers, produtores e até os jogadores podem escrever e modificar nosso jogo. Para os programadores, isso também representa um grande alívio, já que não terão mais que codificar coisas relacionadas à produção do jogo. Honestamente, quem é que gostaria do game designer no pé, impedindo de fazer aquela rotina complexa de IA, porque a opção de diálogo 2 da personagem X precisa trocar de lugar com a opção 3?

Finalmente, scripts também poupam tempo. É possível mudar facilmente o script em qualquer programa de edição de texto sem precisar recompilar sua aplicação, o que pode ser significativo se você estiver desenvolvendo em C++. Sem falar que isso também evita que o programador perca o “fio da meada”, uma vez que o tempo entre fazer um novo ajuste da IA e ver o seu resultado reduz a quase 0.

Desvantagens

Infelizmente usar scripts não é também um mar de rosas. Existem duas grandes desvantagens:

A primeira é que dificilmente você irá contar com os recursos modernos das IDEs na escrita dos seus scripts. Nada de depuradores, ou verificação imediata de sintaxe. A segunda desvantagem é que o código quase sempre será aberto. Portanto, é importante pensar bem sobre quais rotinas realmente irão se tornar scripts modificáveis.

Como funciona

Linguagens de script são executadas dentro dos programas e devem seguir algum protocolo definido pelo programador.

Imaginem um jogo onde o usuário precisa apenas correr e desviar das armadilhas, no script de uma armadilha seria como o seguinte.

  1. Programa envia para o script o estado atual do jogo (A posição do nosso personagem distraído).
  2. Programa pede para o script calcular o novo estado.

Dentro do script como podemos fazer o seguinte:

  1. Verificar se o jogador esta perto, se estiver muda o estado da armadilha para ativá-la;
  2. O programa verifica o estado atual da armadilha após o script processar e muda o estado no jogo com esse novo valor;
  3. Se o jogador caso estiver perto ele é apenas mais um infeliz viajante morto por sua armadilha escondida (Sacana você, hein?).

Scripts e Java

Antes de começar

Como exemplo para esse artigo vou usar o Groovy. Os binários podem ser baixados em http://groovy.codehaus.org/ . Para facilitar apenas adicione o groovy-all-(version).jar no classpath da sua aplicação.

Let’s code

O mais interessante é carregar os scripts dentro do nosso programa, então vamos escrever e carregar um.

Salve em um arquivo nomeado Script.groovy com o seguinte conteúdo (Usar um editor de texto simples mesmo).

class Hello {
   void salute(){
      System.out.println(“Hello World!”);
   }
}

Repare que usamos código java dentro do script, que no caso mostra a mensagem ‘Hello World!’ na saída padrão.

Agora criemos uma classe no Java (pode usar sua IDE favorita pra isso) e vamos carregar o script que fizemos.

import java.io.*;
import javax.script.*;

public class ScriptTest {
   public static void main(String[] args) throws FileNotFoundException, ScriptException {
      //Arquivo com nosso script
      File scriptFile = new File("C:/Script.groovy");

      //Contém todas ScriptEngines disponiveis
      ScriptEngineManager engines = new ScriptEngineManager();

      //Pega a ScriptEngine do groovy.
      ScriptEngine engine = engines.getEngineByName("groovy");
      Class clazz = (Class) engine.eval(new FileReader(scriptFile));
      System.out.println(clazz);//imprime "class Hello"
   }
}

Repare que ScriptEngineManager e ScriptEngine faz parte do pacote padrão do java: javax.script, sendo assim é fácil mudar de uma engine para outra apenas sendo necessário mudar o parâmetro do getEngineByName. Esse suporte existe desde o Java 6.

O método eval(evaluate) que faz a mágica de carregar o script para nós e transformá-lo em um objeto Class. Ou seja, a partir desse momento, nosso script tornou-se uma classe padrão do Java, e poderemos instanciar objetos dela como faríamos com qualquer classe, usando reflexão.

Para facilitar os exemplos criaremos um método que faz essa rotina para nós e retorna o objeto Class, o resultado é o seguinte:

public static Class getScript(String file) throws FileNotFoundException,
ScriptException {
   File scriptFile = new File(file);
   ScriptEngineManager engines = new ScriptEngineManager();
   ScriptEngine engine = engines.getEngineByName("groovy");
   return (Class) engine.eval(new FileReader(scriptFile));
}

PS: Essa não é uma boa maneira de tratar as exceções, utilize try/catch.

Agora um exemplo de como criar um objeto e invocar o método da nossa classe.

public static void main(String[] args) throws Exception {
   Class clazz = (Class) getScript("C:/Script.groovy");
   Method salute = clazz.getMethod("salute");// Metodo salute() da classe
   Object obj = clazz.newInstance();// Um objeto instanciado de Hello
   salute.invoke(obj);
}

Usando Reflection acessamos o método salute() da classe Hello. Repare que não é possível fazer:

Hello obj = (Hello) clazz.newInstance();

Pois até o momento seu programa nem sabia que existia essa classe, essa é a mágica do Script. Reflection é interessante, mas podemos fazer algo que facilite muito mais nosso processo, primeiro vamos escrever uma interface no nosso programa java.

package test;

public interface Saluter {
   public void salute();
}

E vamos alterar nosso script para o seguinte.

import test.Saluter

class Hello implements Salute {
   void salute(){
      System.out.println(“Hello World!”)
   }
}

Repare que importamos a interface do nosso pacote e mandamos esse código implementa-la, e o método salute() pertence a interface.

E agora nós podemos fazer um cast do nosso objeto para essa interface no Java.

public static void main(String[] args) throws Exception {
   Class clazz = (Class) getScript("D:/Script.groovy");
   Saluter obj = (Saluter) clazz.newInstance();
   obj.salute();
}

Mais simples não? E é claro, é possível fazer essa interface com métodos que recebam parâmetros ou retornem algum valor.

E é isso que permite que façamos scripts para jogos.

Jogo da velha

Como exemplo, vamos pensar em como seria um script para jogar (de maneira bem burra) o jogo da velha. Bem a proposta do jogo é bem simples, marcar 3 sinais iguais em linha, coluna ou diagonal em um tabuleiro de 3x3 lugares.

Para nosso tabuleiro vamos criar uma classe chamada Matrix, ela simplesmente guarda em um array[3][3] os valores correspondentes as jogadas, sendo 0=vazio, 1 =jogador1, 2=jogador2.

Para o jogador humano, simplesmente utilizaremos um MouseListener que percebe onde o jogador pressionou o mouse e verificaremos se é possível marcar naquele lugar. Após isso nosso programa pedirá pede ao jogador da IA a posição da próxima jogada. Nossa IA precisa retornar a próxima jogada levando em consideração os lugares marcados na Matrix.

Utilizaremos para isso um script. Vamos convencionar como nosso protocolo, que o programa chamará um método chamado getJogada, passará a ele a situação atual do tabuleiro, e esperará um retorno retorno, que deve ser um array de duas posições onde na posição 0 temos o índice da coluna e na posição 1 o índice da linha.

Podemos codificar esse protocolo na forma de uma interface java:

package player;

import game.Matrix;

public interface Player {
   public int[] getJogada(Matrix matrix);
}

Então escrevemos um script que respeita essa interface.

Vamos criar uma lógica simples, que simplesmente faz uma jogada num ponto aleatório (até mesmo IAs randômicas são IA). Caso o ponto esteja ocupado, ele tentará novamente em outra posição, até que seja possível marcar.

import game.Matrix
import player.Player
import java.util.Random

class ScriptPlayer implements Player{
   def rdm = new Random()

   int[] getJogada(Matrix m){
      int i = -1 ,j = -1;
      while(!m.isEmpty(i,j)){
         i = rdm.nextInt(3)
         j = rdm.nextInt(3)
      }

      return [i,j]
   }
}

Voltando ao nosso jogo devemos carregar esse script como vimos antes como uma instancia de Player e utilizar seus métodos para verificar qual a jogada do nosso player AI.

Concluindo

Vimos nesse artigo o quão importante é o uso dos scripts em jogos e um exemplo prático, em Java. Você pode baixar os exemplos de código aqui. Lembre-se que para rodá-lo, também será necessário baixar o groovy.

Você também poderá se interessar por outras linguagens de script. Como o javascript ou o ruby, no caso do Java, as linguagens Lua, TCL ou Python, para o C++, ou ainda as linguagens Boo e a VBScript, para o C#.


Comentários (64)
  • Caio Costa  - Usando Lua
    avatar

    Olhar velhinho...gostei muito da sua sacada para usar scripts em jogos, sua explicação foi muito proveitosa. Estou usando começando a mexer em Lua, vou ver se consigo usa ela com Java, vc tem alguma dica?

  • 123  - habbo
    avatar

    alguem sabe fazer java scripts para criar mobis no habbo ? , Não sou Mod só queria saber msm :angry:

  • Vinícius Godoy de Mendonça
    avatar

    Não. Pelo que li o jogo nem oferece essa possibilidade

  • Anônimo  - Habbo
    avatar

    Preciso tambem saber como fazer um script para o Habbo

  • Vinícius Godoy de Mendonça
    avatar

    Não. Pelo que li o jogo nem oferece essa possibilidade.

  • bruno afonso  - mobs bots
    avatar

    alguem sabe como fazer mobs ou bots , com esses scrips , para mmorpg tipo wod prefefect word , cabal para ser uzado no unity engine ?

  • Vinícius Godoy de Mendonça
    avatar

    Nós sabemos. Mas não iremos ensinar. Esse site é de desenvolvedores de jogos, por isso, estimulamos o gameplay justo, e não tentativas de burlar regras.

  • Junior  - anti script
    avatar

    Oi
    Sabe me dizer se é possível usar um script que impeça o xiter no jogo, e sobre a linguagem empregada depende do jogo ou pode se usar o java para qualquer um, no meu caso é o América Armys.
    att

  • Diogo  - TW
    avatar

    gostaria de saber se tem programas para criação de Scripts pois quero aprender a usar ! Para por para autorização no TRIBAL WARS !
    Abçs

  • Bruno Crivelari Sanches
    avatar

    Programa para criação de scripts? Tipo bloco de notas? :)

  • Miller  - duvida
    avatar

    é possivel usar scripts em jogos de blowser tipo batllestar galatica para que nocaso sua nave realize algumastarefas automaticamente?

  • Vinícius Godoy de Mendonça
    avatar

    Se o desenvolvedor do jogo incluir essa funcionalidade, será possível sim.

  • gabriel  - e possivel?
    avatar

    quero saber se e possivel fazer isso : no jogo ddtank que eu jogo , eu ganho uma certa quantidade de 400 cupons cada vez que eu faço uam coisa, tem como eu almentar este valor atravez de script?

  • Bruno Crivelari Sanches
    avatar

    Nosso objetivo aqui não é ensinar trapacear em jogos e se o tal jogo é online, duvido que o desenvolvedores tenham sido ingênuos (ou burros se alguém preferir) de deixar esse controle de premiação no lado do cliente ou algo que possa ser burlado com alterações no cliente.

    Isso tudo é controlado no servidor.

  • Mauro Barbat  - Troca de dados entre Lua e Java
    avatar

    Olá Pessoal, vocês sabem como pode se trocar informações entre o lua e o java? tipo quando eu chamo um script lua dentro do Java ele recalcula e gera novos parametros, porém como eu mando parametros para o Lua trabalhar e como devolvo os resultados para o Java?

  • Vinícius Godoy de Mendonça
    avatar

    Depende, qual binding de lua você está usando?

    Muitos usam a maneira tradicional do LUA, que é através de uma pilha, implementada no LuaState.

  • Paulo Ribeiro
    avatar

    Estou gostando muito do site, aprendendo um bocado, quero começar a desenvolver pequenos jogos em java (só para passar o tempo mesmo), e vou usar estes artigos como base para minha ascendência nesta grande jornada (rs.). Mas daí eu me deparo logo com um negócio destes:

    Class clazz = (Class) engine.eval(new FileReader(scriptFile));

    O que acabou de acontecer? Gostaria de saber tudo de cabo a rabo para não ficar sombra de dúvidas. Eu imagino que esse trecho de código está pegando o conteúdo do script, que está dentro do arquivo .groovy, e está transformando numa classe (tipagem (Class)), chamando-a de "clazz". Agora por quê esse negócio "feio" aí de ? rs.

    Agradeço desde já!

    Um Abraço!

  • Paulo Ribeiro
    avatar

    opa, talvez seja comentários que a página barrou aguardando um "script injection"?

    o "negócio feio" qual eu me referi anteriormente foi o "< ! - - ? - - >" (sem os espaços, claro)

  • Marcos Vasconcelos
    avatar

    Isso são erro do script de highlight do Ponto V, o correto é apenas que é o wildcard generics.

  • Marcos Vasconcelos
    avatar

    Class clazz = (Class) engine.eval(new FileReader(scriptFile));

    O Groovy script cria um Class baseado no script.

  • Paulo Ribeiro
    avatar

    Nossa, nisso que dá perguntar alguma coisa antes de terminar de ler o artigo! Você pode ficar com mais dúvidas e querer perguntar de novo! rs.

    Como eu "instalo" o groovy? Que classe é essa que é importada game.Matrix? Já é implementada no java? preciso baixar alguma coisa ou foi uma classe criada por você? O método isEmpty recebendo os índices i e j?

    Assim, sei que minhas dúvidas podem estar enchendo o saco rs. ainda estou começando e não sei muitas coisas. Quando encontro essas partes "desamarradas" eu me pergunto porquê foi deixada assim. É intencional? É importante saber disso, ou eu posso "passar direto" (eu já deveria saber isso?)?

    Acho que por enquanto é só, pessoal! rs.

    Abraço!

  • Marcos Vasconcelos
    avatar

    "Antes de começar

    Como exemplo para esse artigo vou usar o Groovy. Os binários podem ser baixados em http://groovy.codehaus.org/ . Para facilitar apenas adicione o groovy-all-(version).jar no classpath da sua aplicação."

  • Paulo Ribeiro
    avatar

    Ih, caramba, acho que passei voando por isso aí rs. Desculpa a falta de atenção e obrigado!

    Abraço!

  • edudohabbo  - mobis como criar usando script?
    avatar

    vcs sabem algum bug de script no habbo hotel? ja vi varios videos , ja fui hackeado varias vezes e nunca dei conta de usar script nesse jogo!

  • Janil  - KKK
    avatar

    kkkkk
    Como tem babaquinha querendo trapacear... Velho... Leiam pelo menos o post...

    O objetivo de criar scripts é ajudar o desenvolvimento DO SEU PRÓPRIO JOGO.

    Anyway, muito bom os posts e o site em si... Pretendo usar bastante daqui para frente :D

    Gostei bastante dos roadmaps, já estou seguindos o livros.
    Programo a uns 3 anos em C++, nada profissional, hobbie.
    Estou no último ano do ensino médio, tenho 17 anos e pretendo fazer física, o que vocês acham que eu deveria estudar Java para desenvolver jogos por hobbie?
    E mais uma pergunta, este ano tenho que escolher meu curso de graduação, gostaria de saber se existe alguma área que misture física (moderna, não a clássica, quantum, física de plasmas, de particulas elementares) e gamedev?

    Ah sim, podem fazer um roadmap para gamedev? Matemática nescessária, design patterns e esses detalhes mais técnicos de antes da programação? E um de Java/C++ para gamedev? *--*

  • Vinícius Godoy de Mendonça
    avatar

    Olá.

    Não acho uma boa estudar Java para gamedev. Se você já sabe C++, siga em frente na linguagem. Até porque, sua inclinação é de coisas mais hardcore (como engines de física).

    Um curso que se aproxima do que você quer é o de matemática industrial. Outra boa opção pode ser a engenharia mecatrônica ou engenharia eletrônica. Agora, você tem que pensar se sua inclinação é mais programar, ou fazer contas. Nada impede você de cursar Ciência da Computação, e depois estudar física e matemática em especializações ou mesmo numa segunda faculdade. O curso de ciência vai te dar uma boa base da computação científica, ideal para o tipo de aplicação que você gostaria. Também vai te dar uma visão bastante geral da área, e você verá outros locais onde a matemática e física são usadas na computação (como na Computação Gráfica, por exemplo).

    Só não recomendo mesmo cursos de mais alto nível, focados em processos, como Análise de Sistemas ou Sistemas de Informação. Esses cursos são bem longe de programação, e das contas também.

    Por fim, seria muito difícil escrever um roadmap de gamedev. O campo é muito vasto. Entretanto, há vários livros em nossa livraria virtual. Todos são livros recomendados por nós, e colocamos uma breve descrição sobre o que você encontrará neles: http://www.pontov.com.br/site/livrosv

    Lá você encontra recomendação de livros de física, matemática e computação gráfica também.

  • Janil  - Obrigado
    avatar

    Cara, muito obrigado...
    Vou continuar estudando C++...

    E muito obrigado... Estou pensando em cursar as duas graduações, Física e Ciência da Computação. São duas áreas que muito me interessam, só falta escolher agora qual farei primeiro.

    E me desculpe, não tinha percebido as categorias de livros na livraria virtual, pensei que só existiam os livros de programação de jogos.

    Muito obrigado mesmo. Até mais.

  • Bruno  - ajuda
    avatar

    Olá, eu estava executando a primeira parte do codigo, e ele deu o seguinte erro:

    Exception in thread "main" java.lang.NullPointerException
    at TesteDeScript.ScriptTest.main(ScriptTest.java:20)
    Java Result: 1

    A linha 20 a qual ele se refere é a que contem:

    Class clazz = (Class) engine.eval(new FileReader(scriptFile));

    Alguem saberia me explicar?
    Eu ainda sou novo no java e portanto algumas coisas eu realmente nao faço ideia, pelo que eu sabia o lang ja vinha direto sem a necessidade de importar.
    Desde ja, obrigado.

  • Matheus
    avatar

    ai eu estou querendo desenvolver um jogo utilizando scripts tem como você ensinar mais especificado como para que serve os parenteses e os outros sinais etc.

  • fabiano  - so uma pergunta
    avatar

    o jogo legend online,um dos mais caros das ultimas decadas,ele trabalha na linguagem java script ?

    e se inserir mos um codigo de inserção que possibilite,criar uma rota paralela ao servidor,e ai poder modificar estatus no game play....tipo criar uma abertura,no codigo mãe possibilitando a entrada de novos codigos de maneira paralela....


    so me diga se é possivel...

    obs.:quando acesso o sistema do jogo ele da mensagem de erro e pede pra atualizar....isso sem usar codificação java,apenas digamos chutando a grade....

  • ViniGodoy
    avatar

    Ele trabalha o frontend com JavaScript. Porém, as ações do jogador são validadas no servidor, que não irá permitir ações que te beneficiem no jogo.

    Você não tem qualquer acesso ao código do servidor, nem ao computador físico onde esse servidor está, e nem sabe em que linguagem esse servidor foi programado (e certamente NÃO É javascript).

    Para fazer isso, teria que explorar uma brecha de segurança.

    Não viaje. O que você falou está mais parecido com frase pronta do filme de Holywood. Embora exista de verdade gente capaz de invadir sistemas, esse é um trabalho árduo, demorado e que, no caso de um jogo como esse, vai custar mais caro que o resultado.

    Jogue com honestidade e divirta-se!

  • Anônimo  - problemas no unity
    avatar

    Como eu uso o script,como eu o escrevo,como programo nao entendo como usar os scripts qual uso em qual hora para que o que serve estou perdido

  • Hugo  - problemas no unity
    avatar

    Como faco um script,o que uso em qual hora como sei o que e o que?

  • bruno  - tem como ?
    avatar

    é possivel você montar um cabeçalho de script lua pro jogo transformice ?

    pra eu ter uma base de como é ?

  • Maycon  - Linguagem de programação
    avatar

    Oi. Poderia me ajudar, tenho duvidas sobre linguagens de programação. Quero aprender mas ainda não tenho 2% de conhecimento nessa área mas preciso apenas saber o que devo estudar ou qual faculdade seria ideal para realizar programações para jogos. Se devo começar com linguagens básicas ou estudar uma especifica. Obrigado, quardando...

  • Cleverton Carvalho  - AJUDA UNITY!
    avatar

    :?:
    Olá! boa noite, gostaria de saber como seria um script para o jogo yu-gi-oh, estou querendo desenvolver o jogo de card game pra jogar com amigos no smartphone android? podem ajudar dando dicas ou indicar algo pra iluminar minha ideia?
    Desde já agradeço pela atenção e pela ajuda!

  • Anônimo
    avatar

    Sabe como fazer dinheiro no jogo Galaxy chat and play? Dizem q eh impossivel..ou quse,só vi alguns russos q conseguiram...pode tentar fazer isso? (Disposto pagar se necessario)

  • Derley F Nunes  - me ajudem por favor
    avatar

    Amigos oq eu quero pedir pra vcs é um script que traga 6 cartas aleatoriamente na 1ª mão e depois 1 a cada turno (estou fazendo um jogo de trade cards yugioh)linguagem é GML (game maker studios)

  • ann
    avatar

    Ja está em desenvolvimento para 2015 um programa que altera valor de jogos que utilizam servidores só que será liberado para pessoas consideraveis.

  • Anônimo  - h
    avatar

    h

  • Anônimo
    avatar

    Vocês podem falar, que cursos são recomendados para aprimorar as habilidades em desenvolver jogos, por exemplo autocad ? seria uma boa ideia ? :huh:

  • PABLO RODRIGO  - escript io
    avatar

    olá eu no casso tenho um escript ja em uso em um jogo chamado imperio online só q eu queria motifica pra faze as funcoes diferente do q ele esta fazendo e tambem motifica o alarme pois é um q avisa e apita quando estou sobre atk no jogo e queria motifia o som e outras coisas entao sera q isso e possivel e como?

  • Geraldo
    avatar

    Scripts para Fifa Manager
    Alguém sabe como fazer um script para mudar o ambiente ao redor do editor de estadios?
    Explico: o fifa manager possui um editor de estadios, só que sempre aparece a mesma cidade ao fundo, minha ideia é criar um script que quando o Time "A" for jogar no seu estadio, o jogo busque em alguma pasta, que eu determinar um arquivo que contenha a imagem da cidade ao fundo que eu determinar…

    Sei como editar as imagens e os arquivos, so não sei como fazer o script que faça isso...

  • Silas Rodrigues
    avatar

    Oi Td Bem, estou com uma duvida, não tenho curso nem nada na área de texturas, designer 3D, desenvolvimento, não tenho nem um curso nessa área, mas gosto de modelar usava o blender, só para passar o tempo, então comecei a usar o CryENGINE 3 free SDK para desenvolver um jogo multiplataforma, o problema é que eu não conheço muito de java script e estou com medo de criar o jogo e depois não consegui criar um script para o jogo ficar em multiplataforma sendo hosteado pelo meu pc.
    Se possível, poderia me dar algumas dicas para ficar mais fácil na hora de criar esse script, VLWWW.

  • Ademar Moraes  - Jogos em minha rede social
    avatar

    Olá! Estou terminando as configurações finais de minha rede social e pretendo é claro, ter nela jogos online. Entrei em contato com Game Zone, mas infelizmente não podem agora me ceder seus jogos. Gostaria de saber se tens algum conhecimento de onde posso obter jogos para meu site! Tais jogos devem se possível, abrir dentro da rede social, tal como Farmville do facebook. Por favor, me deem uma dica!

  • Willians  - Qual a vantagem de usar scripts
    avatar

    Ola alguém poderia me tirar uma dúvida.

    Qual a vantagem em utilizar scripts? Pois tudo é possível fazer utilizando a própria linguagem, C++/C Java etc.

  • Willians
    avatar

    Desculpe-me pela pergunta boba.

    Entendi melhor a explicação agora, muito boa.

    A vantagem de usar scripts é primeiro a "facilidade que os scripts oferecem" , e o mais interessante, podemos criar "uma linguagem" de programação da nossa maneira. E para mim, pelo que entendi a melhor parte é criar códigos que podem ser "compilados em tempo de execução"

    Ah continuem com os tutorias e artigos, são sempre ótimos, e feitos por quem entende da coisa, muitos dos artigos daqui me ajudaram muito e com certeza muitas outras pessoas. :)

  • nilton
    avatar

    pessoal parabéns pra vcs q conseguem invadir servidores e alterar dados como cash nos jogos, e sim eu vim a procura disso e consigo no minimo 1000 pagantes por um programa capaz em um preço razoavel mensalmente :evil: pbhackpbbr@hotmail.com contato.

  • hba  - Olá
    avatar

    Gostaria de saber se tem como criar um Script do mouse ser clicado automaticamente após o sinal de algo, por exemplo no Habbo, ao sinal de um mobi você tem que correr até o centro e o primeiro ganha... Eu tenho o AutoHotKey será que tem como fazer? Obg desde já... =)

  • Anônimo  - re:
    avatar
    Vinícius Godoy de Mendonça Escreveu:
    Não. Pelo que li o jogo nem oferece essa possibilidade.

    claro que tem como

  • aml  - padrões e IA
    avatar

    Esse tutorial vai ter continuidade, como uma séria?
    Eu estou começando a "mexer" com Lua e tenho muitas dúvidas sobre padronização de script, criação de ia, etc. (Não falo de ia simples, mas decisões mais complexas - não sei se cabe no mesmo tema ou seria um outro tutorial...)

  • ab  - string
    avatar

    eu queria saber saber se tem como descobrir
    o nome do string que tem em um jogo

    tem jogo que a madeira se chama wood

    ai supondo que eu nao saiba que o string da madeira e wood
    teria como eu descobri que a string da madeira seria wood

    desde ja agrado vai ajudar no meu disenvolvimento

  • Anônimo
    avatar

    sera que eu fui o único que penso em usa no metin2 '-'

  • Anônimo  - Pica doida
    avatar

    :evil:

  • Anônimo
    avatar

    me ajuda

  • Anônimo
    avatar

    eu não entendi muito da explicação mais se eu baixar esse groovy eu posso aprender a fazer scripts para jogos bom só iniciante nisso as vezes não consigo entender direito as explicações :dry:

  • Janderson
    avatar

    sei q n é ak mais queria saber se alguem sabe o comando do autohotkey
    q faz com q eu mude tecla de atalho to tetando modificar tecla de atalho de um jogo mas ele so consegue mudar na scrita exemplo q eu tentei


    send, f::v

    return

    '' q no caso queria trocar a letra de atalho f por v ou mas ela so trocar se estiver no modo chat n em mode de skills ou castskill obs:dota1

  • Janderson  - re:
    avatar
    Janderson Escreveu:
    sei q n é ak mais queria saber se alguem sabe o comando do autohotkey
    q faz com q eu mude tecla de atalho to tetando modificar tecla de atalho de um jogo mas ele so consegue mudar na scrita exemplo q eu tentei


    send, f::v

    return

    '' q no caso queria trocar a letra de atalho f por v , mas ela so trocar se estiver no modo chat n em mode de skills ou castskill obs:dota1
  • Gustavo  - re: Me ajude?
    avatar

    :side: Eu estou querendo criar um jogo com meus amigos,
    mas o problema é que ainda estamos estudando sobre esses assuntos,
    C++ e C. Acho bem complicado, mas n irei desistir! Quero ajuda,
    Me deem dicas, Oque eu tenho que estudar, Entende?

    Agradeço ;) Um Abrç!!

  • Anônimo
    avatar

    Quero saber se é possível criar um script no Habbo, para realizações de eventos, como por exemplo : Não ser kickado por algum mobi ou objeto que se vc encostar será expulso do quarto ( Kickado ). E assim facilitar na hora de conseguir premiações ( EMBLEMAS ) .
    Pergunto isso pq existem eventos extremamente dificeis que poucos conseguem passar e é o que eu considero uma falta de respeito e humilhação com o ser humano que joga isto !

  • Anônimo
    avatar

    import game.Matrix
    import player.Player
    import java.util.Random

    class ScriptPlayer implements Player{
    def rdm = new Random()

    int[] getJogada(Matrix m){
    int i = -1 ,j = -1;
    while(!m.isEmpty(i,j)){
    i = rdm.nextInt(3)
    j = rdm.nextInt(3)
    }

    return [i,j]
    }
    } :evil:

  • Anônimo
    avatar

    tomar no cu hahahaha

Escrever um comentário
Your Contact Details:
Gravatar enabled
Comentário:
[b] [i] [u] [url] [quote] [code] [img]   
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch::(:shock:
:X:side::):P:unsure::woohoo::huh::whistle:;):S:!::?::idea::arrow:
Security
Por favor coloque o código anti-spam que você lê na imagem.
LAST_UPDATED2  

Busca

Linguagens

Twitter