Basicamente, o título diz tudo. Eu já vi e trabalhei com Django, Rails e um pouco com Cake PHP. Gostaria de saber se existe uma estrutura que é excelente para oferecer suporte ao desenvolvimento de jogos casuais em 2D, com base no navegador. O mais próximo que eu vi é o flash, mas eu gostaria de encontrar algo de código aberto. Algo que pudesse lidar com os gráficos e a comunicação com um banco de dados seria o ideal. Alguma sugestão?
browser-based-games
casual-games
Albert Perrien II
fonte
fonte
Respostas:
Eu mantenho uma lista de recursos relacionados ao desenvolvimento de jogos javascript que achei úteis, incluindo uma lista de mecanismos de jogos e serviços da web que você pode integrar.
Você precisa acompanhar dois conceitos diferentes: apresentação do lado do cliente e processamento do lado do servidor. Se você estiver desenvolvendo um jogo casual em estilo flash, o jogo completo provavelmente será a apresentação do lado do cliente, misturada com alguns serviços da web para recordes e afins. No entanto, se você quiser fazer muitos jogos no estilo social, multiplayer ou mmo, se não a maior parte do jogo estará no servidor para evitar trapaças, e o cliente agirá como um terminal idiota. Como isso é tratado é provavelmente um tópico para outra pergunta.
De interesse para quem deseja se comunicar em tempo real entre o navegador e o servidor deve ser socket.io, que é uma abstração em cima de websockets com fallback usando flash em navegadores antigos.
fonte
Existem vários mecanismos / estruturas de jogos emergentes no HTML5. Aqui estão alguns links que podem ser interessantes:
Além do Rocket Engine, esses mecanismos apenas cobrem o lado do cliente de um jogo. Portanto, não há comunicação direta com um banco de dados (a menos que você esteja usando algo como o Google Gears ).
Dependendo do seu jogo, você ainda precisa implementar algumas coisas de back-end em Ruby, Java, PHP, ASP ou similar. IMHO qualquer estrutura regular de aplicativos da Web será suficiente para isso. O Node.js provavelmente merece uma menção especial, porque você pode implementar o back-end no mesmo idioma que o seu jogo (JavaScript).
fonte
O problema é que, no desenvolvimento da Web, uma grande parte da apresentação normalmente é feita no lado do servidor (usando uma estrutura que incorpora algum tipo de sistema de modelo para gerar HTML para o cliente). Se você deseja fazer jogos interativos, muito do trabalho deve acontecer no lado do cliente (no navegador), portanto, o problema não é tanto como você gera HTML, mas como você faz as coisas se moverem na tela do usuário.
Para esta parte do lado do cliente, como mencionado, sua escolha é Flash ou JS (potencialmente usando o Canvas para o navegador moderno).
Para a parte de comunicação cliente-servidor-db, qualquer tecnologia mencionada seria adequada. O navegador e o servidor podem se comunicar usando chamadas ajax clássicas, se necessário.
Não conheço uma estrutura que possa lidar com os dois problemas, mas provavelmente porque eles são realmente distintos e estão acontecendo no lado diferente do mix cliente-servidor.
fonte