[Resolvido] JMonkey e Project Darkstar's

13 respostas
M

Espero que minha duvida sejá pertinente para outros também, andei lendo os posts aqui sobre isso, mas tenho algumas duvidas:

  • O “Project Darkstar’s” ainda existe? (Procurei no Google e não achei o site do projeto, achei neste site Darkstar’s mas nada, só vi links quebrados)
    ps: Se ainda existir pra que serve? e aonde posso encontra-lo?

  • Baixei o JMonkeyEngine (“jME3_SDK_Alpha-4-windows.exe”), mas esta gerando erro após carrega-lo, alguem sabe como resolver?

<blockquote>INFO [de.lessvoid.nifty.Nifty]: loadFromStream took [1594]

INFO [de.lessvoid.nifty.Nifty]: gotoScreen [start]

INFO [de.lessvoid.nifty.Nifty]: gotoScreenInternal [start]

INFO [de.lessvoid.nifty.effects.Effect]: starting effect [(Fade[null])] with customKey [null]

INFO [de.lessvoid.nifty.effects.EffectProcessor]: adding effect as active

SEVERE [org.openide.util.Exceptions]

com.jme3.renderer.RendererException: Invalid ID (-[telefone removido]) received when trying to create shader program.

at com.jme3.renderer.lwjgl.LwjglRenderer.updateShaderData(LwjglRenderer.java:904)

at com.jme3.renderer.lwjgl.LwjglRenderer.setShader(LwjglRenderer.java:993)

at com.jme3.material.Material.render(Material.java:862)

at com.jme3.renderer.RenderManager.renderGeometry(RenderManager.java:434)

at com.jme3.renderer.queue.RenderQueue.renderGeometryList(RenderQueue.java:132)

at com.jme3.renderer.queue.RenderQueue.renderQueue(RenderQueue.java:186)

at com.jme3.renderer.RenderManager.renderViewPortQueues(RenderManager.java:580)

at com.jme3.renderer.RenderManager.flushQueue(RenderManager.java:555)

at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:721)

at com.jme3.renderer.RenderManager.render(RenderManager.java:742)

[catch] at com.jme3.gde.core.scene.SceneApplication.update(SceneApplication.java:240)

at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:158)

at com.jme3.system.lwjgl.LwjglCanvas.runLoop(LwjglCanvas.java:225)

at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:221)

at java.lang.Thread.run(Thread.java:662)

SEVERE [org.openide.util.Exceptions]

</blockquote>
  • Tem ferramenta melhores ou complementares para criação de jogos?

  • Como segunda opção a um grafico 3D, Pensamos em fazer um MMORPG em 2D ou Tátics pra ser exato ao estilo DOFUS, o que precisariamos usar?

Ps: Pretendemos iniciar um projeto de um MMORPG em java, e estou na parte em que estou estudando ferramentas e tecnologias para começar, estou no ZERO, tirando uns videos no youtube e sites falando sobre. To procurando alguns exemplos também.

13 Respostas

P

Gostei da iniciativa, está começando agora no Java ou na criação de games?

O projeto está em andamento? É aberto para outros ajudarem?

Tenho a intenção de criar um RPG de tática futuramente também.

Quanto a criação de games em 3d existe o Blender mas é em Python.

M

Voce tem uma placa grafica que suporta shaders?

PS: Se voce ainda nao tem experiencia com jogos começar com um MMO vai te dar muito trabalho.

V
  1. Sim, o projeto DarkStar ainda existe e chama-se RedDwarf: http://www.reddwarfserver.org/

Ele dá suporte a criação de um servidor para games massivos. Mas claro, a menos que você pague caro por infra-estrutura, dificilmente você terá banda para um servidor assim.

  1. Existem muitas ferramentas melhores para desenvolvimento de jogos, nenhuma em Java, como a Unity3D:
    http://unity3d.com/

E a Ogre3D + BulletPhysics:
http://www.ogre3d.org/
http://www.bulletphysics.org

Para jogos 2D, você tem a SDL:
http://www.libsdl.org/

E o impressionante projeto nacional Ethanon:
http://www.asantee.net/ethanon/ (veja os vídeos no YouTube)

E a física em 2D pode ser feita com a Box 2D, embora num projeto como o Dofus não exista muita física.

  1. Se é sua primeira experiência com jogo não faça um MMO, principalmente um 3D. Faça um jogo solo 2D primeiro, depois um solo 3D, depois parta para um multiplayer, para só no final chegar ao massivo. Cada estágio exige alguns bons anos de estudos e você certamente vai se frustrar se quiser começar por cima. Ninguém aprende a andar de bicicleta e já sai logo tentando construir seu próprio foguete para tentar ir a lua.
J

Pol4ko:
Gostei da iniciativa, está começando agora no Java ou na criação de games?

O projeto está em andamento? É aberto para outros ajudarem?

Tenho a intenção de criar um RPG de tática futuramente também.

Quanto a criação de games em 3d existe o Blender mas é em Python.

O Blender só vai usar python como motor de scripts para a lógica. Ele pode gerar executáveis nativos. Aliás uma ferramenta muito boa.

M

Desenvolvo sistemas desde 1997, e em Java já tenho 8 anos.

Minha experiencia em jogos foi em Delphi: PAC MAN e uns outros que fiz na epoca para entender manipulação com Canvas e outros recursos (Isso faz muito tempo).

Fiz uns jogos para celular em Java (Basicos por sinal), pois foi necessario na faculdade.

Eu estudei um projeto chamado L2J (Servidor de Lineage em Java, que acessa o cliente da NCSoft), e o conheço já faz alguns anos: http://www.l2jserver.com/download/

  • Inclusive tive por 1 ano um servidor de Lineage utiliando L2J, aonde eu dava a manutenção no codigo, enquanto mantinha ele sincronizado com a fonte, sei que tipo de servidor preciso para dar suporte a X pessoas, quanto a isso tenho experiencia.

Quais são as dificuldades principais na criação de um Game 3D e 2D (comparativo)?
Ps: Pelo que vi o problema não é bem incoporar o mapa e objetos 3D com suas devidas animações, e sim crialós e gerar uma interação coerente entre eles ao menos pra mim que não tenho um forte em designer grafico. Mas como to no começo dos estudos posso ta enganado.

Aonde posso fazer o mapa e personagends 3D e 2D para incorporar e manipular no projeto? (Lembrando que ainda estamos escolhendo entre 2~3D, mas estamos muito tendenciosos ao 2D pelo fato de aparentemente gerar resultados mais rapido e depois evoluirmos para algo 3D se vingar (Vejam o caso do DOFUS, mas ignorem isso, pois se o que queremos em 3D fique melhor etão será em 3D))

Rapaz minha placa de video é uma ATI Radeon X1550, eu acredito que ela suporte Shader sim (Caso não suporte, o que acho dificil, tem algo que possa fazer a respeito sem ser trocar a placa?)
Jogos rodam normalmente aqui, jogos que já instalei e funcionaram normalmente: NWN, WoW, PW, GW, Lineage, Dota, Dofus[rsrsr…], Diablo 2, RotWK, etc.

Falando em diablo 2, ele tem um sistema de “Server-Cliente” bem parecido com os MMO atuais, tanto que existe o server “Closed” que jogam varios players juntos (apesar de cria uma sala para no maximo 8 pessoas por vez), mas considero ele um dos precursores do nosso atual sistema de MMORPG.

Estamos na duvida se fazemos OpenSource ou Fechado [Mas Free ao estilo RuneScape com certeza]. Eu sou particularmente a favor de OpenSource também, mas … é algo que ainda vamos conversar com calma.

ViniGodoy
A sim, não vi ainda os sites indicados acima, mas todos são ligados a Java ou outras linguagens?

ME pergunto se fazer um game “tátics” ao estilo Dofus e HMM, é mais ou menos complicado se comparado um rpg normal. No DOFUS eles carregam pedaços do mapa conforme anda, ele não carrega um pedaço grande do mapa de uma vez (foi o que pareceu)

V

Não, como falei, a maioria não é em Java. O Java tem um péssimo suporte para jogos, seja 2D ou 3D. Tem poucas bibliotecas, tem péssimo acesso aos controles (teclado, mouse, controles mesmo), a biblioteca de som é um lixo, tem o gc, e absolutamente nenhum suporte à consoles. O número de ferramentas para Java também é menor. Nada de DirectX, speedtree, ou qualquer outra biblioteca do gênero.

O JMonkey atenua parte dos problemas, mas é uma API 3D.

Eu tenho direcionado meus esforços de jogos com Java apenas para o Android.

Bom, se vc já tem mais experiência, aí a história é outra. :slight_smile:

E, lógico, qualquer jogo que pretende ser um MMO precisa necessariamente fazer carga dinâmica de cenário. Ou será impossível fazer um cenário gigante. Para isso, use quadtrees e threads para a carga.

Para fazer personagens 3D, você usa uma ferramenta de modelagem, como o Blender ou o 3D Studio Max. Mas, claro, fazer bons modelos também exige alguns anos de estudo e um bocado de talento.

Agora, nada impede você de fazer o Server java e o cliente e outra API, como uma das que citei.

M

Seria uma opção interessante fazer o servidor em java e o cliente em outro ambiente (Estilo L2J).

Por o lado cliente de um modo que ele procure os dados no servidor é algo que não faço ideia de como fazer, usando as ferramentas que indicaste (rsrsrs…), seria complicado? ou talvez até mais viavél?

Quanto mais eu pesquiso mais eu penso em um mmo estilo DOFUS, Ragnarock.

Teria como trabalhar com Sprites 2D e Cenario 3D? Parece que Ragnarock funciona assim, mas não sei se isso realmente existe, se existe, como poderia fazer isso?

  • Se entendi bem, o ambiente simula um ambiente 3D,apesar de tudo ser 2D, mas mesmo assim, não entendo bem como é isso? [Simular 3D]
V

Seria uma opção interessante fazer o servidor em java e o cliente em outro ambiente (Estilo L2J).

Por o lado cliente de um modo que ele procure os dados no servidor é algo que não faço ideia de como fazer, usando as ferramentas que indicaste (rsrsrs…), seria complicado? ou talvez até mais viavél?

Bom, teria que estuda-las. Mas garanto que depois que vc fizer o primeiro tutorial de Unity3D, não vai querer usar outra coisa, hehehehe.
Ele é em C#, mas compila para um zilhão de plataformas diferentes, inclusive smartphones.

Quanto mais eu pesquiso mais eu penso em um mmo estilo DOFUS, Ragnarock.

Teria como trabalhar com Sprites 2D e Cenario 3D? Parece que Ragnarock funciona assim, mas não sei se isso realmente existe, se existe, como poderia fazer isso?

  • Se entendi bem, o ambiente simula um ambiente 3D,apesar de tudo ser 2D, mas mesmo assim, não entendo bem como é isso? [Simular 3D]

Não. Fazer um jogo 2D com cenário 3D exige que você faça modelos, igualzinho faria para um jogo 3D. Os modelos são mais simples, pois serem afastados e exigirem menos detalhes, mas a dificuldade para achar material será igualmente grande.

O que você pode fazer (e creio que esses jogos façam) é usar o que chamamos de perspectiva isométrica. É uma espécie de perspectiva 3D, mas que não é 3D de verdade (por isso chamam de 2.5D). Nela, quando o avatar se afasta em “z” ele só sobe na tela, mas não muda de tamanho. Nesse caso, você pode usar imagens normais, como um jogo 2D comum usaria.

M

Me falaram do de dois motores de jogo (Pelo que vi são similares ao Unity 3D):

Game maker & Game Maker 3D
RPG maker & RPG Maker 3 (é 3D aparentemente)

  • Pelo que vi eles criam games “solos/standalone”, que não interagem com nada, mas me indicaram para dar uma olhada no CONCEITO que eles usaram para a criação de jogos, dando uma base “visual” e “descritiva” de alguns pontos. (EX: 2D Sprite/3D Mode, 2D Map/3D Scene - Não sei se entendi errado, ver como é o sistema de colisão deles)
    _Vi que tem algo como PerfectPixel (que analisa em uma colisão se existe ainda espaço para a movimentação do objeto), desculpem se entendi errado.

Java não da muitos recursos para jogo 3D pelo que vi, ME CORRIGAM se esta afirmativa nãofor verdadeira!

Mas par jogos 2D, parece ter um suporte grande. Estou correto?

Tem um projeto que vi aqui no forum chamado GameMania, em que pé esta, alguem conhece os desenvolvedores do projeto?

Unity 3D é pago?, pelo que vi uma versão free, to caçando as diferenças.

V

Sim, os motores são similares ao Unity. Motor em inglês é “Engine”. Unity3D, JMonkeyEngine, UDK e Ogre3D são todos engines, embora o Ogre cuide só do pipeline gráfico.

No caso, os outros que vc citou são Makers, ou seja, ferramentas de autoria. Permitem rápido desenvolvimento de um tipo específico de jogo. Alguns makers tem até capacidades de redes.

E sim, o Java tem um suporte pequeno para jogos 3D se comparado a outras linguagens. Não que a JMonkey seja uma engine ruim, na verdade, ela é até boa. Mas infelizmente, está ilhada numa plataforma que não apoia jogos.

M

Editado 13/10/2001 as 14:10

Alguem poderia me dizer ou me da um NORTE de como faria um jogo no Unity3D por exemplo e faria ele acessar o servidor, mandando os dados para lá, ao invez de buscar e manter estes dados “localmente”.

No Lineage se mal me engano, fica perto do relogio um software monitorando justamente isso e passando os dados para o servidor (Quais teclas foram precionadas, etc…), gostaria de saber como costumam fazer isso.
“Lembrando que o L2J faz isso sem conhecer ou alterar uma linha do codigo do cliente da NCSoft”

Se alguem puder dar esta chute inicial eu agradeceria.

O Editor 2D que me foi indicado, não me pareceu amistoso ( http://www.libsdl.org/ ), ainda o lendo mais sobre ele.

O projeto ManiaOnLine, instalei pra dar uma olhada e me pergunto se ele tinha como fazer o que fez atualmente sem sofrer tanto?

Notei que ninguem aqui deu a opção de trabalhar com “JNLP” + Java2D ( Caso a aplicação seja 2D ), como li em outro post aqui no forum, esqueceram, ou já esta defasado?

Existe limitadores no sentido de fazer tudo que imaginar nessas “Game Engines” como o unity 3D?
Obs: Se eu quiser por objetos na tela, como “mini-mapa”, etc.

Agradeço a quem puder tirar estas duvidas.

G

Michel.Montenegro:
Editado 13/10/2001 as 14:10

O projeto ManiaOnLine, instalei pra dar uma olhada e me pergunto se ele tinha como fazer o que fez atualmente sem sofrer tanto?

Agradeço a quem puder tirar estas duvidas.

Olha só! Alguém falando do meu jogo!

\o/

O ManiaOnline foi feito com java puro, ou seja, sem utilizar nenhuma engine. Deu muito trabalho, mas ta indo…

M

Gelleo:
Michel.Montenegro:
Editado 13/10/2001 as 14:10

O projeto ManiaOnLine, instalei pra dar uma olhada e me pergunto se ele tinha como fazer o que fez atualmente sem sofrer tanto?

Agradeço a quem puder tirar estas duvidas.

Olha só! Alguém falando do meu jogo!

\o/

O ManiaOnline foi feito com java puro, ou seja, sem utilizar nenhuma engine. Deu muito trabalho, mas ta indo…

Fizeste isso para aprender ou tinha outro objetivo, porque continua o projeto assim, se tem meios mais “modernos”?
ps: Eu baixei e instalei o mesmo, e li teu log para versões futuras.

Ficaria feliz se conseguir fazer um game nestas caracteristicas visuais/opções funcionais MMOG rsrsrsr…

Criado 12 de maio de 2011
Ultima resposta 13 de mai. de 2011
Respostas 13
Participantes 6