Search

Tuesday, July 13, 2010

Jogos


Já faz um tempo que ando meio distante de jogos, até pouco tempo por, falta de tempo e, ausência de compatibilidade de jogos do Windows na plataforma que uso, Linux.

Quando vi um anuncio sobre o Google e seu inicial investimento em jogos, logo me vi motivado a publicar um post relacionado a jogos no geral a comunidades de desenvolvimento, qual tipo de jogo geralmente não roda no Linux através do Wine e um pouco mais sobre desenvolvimento de jogos que rodam no browser.

Bom, começando com as comunidades de desenvolvimento, não conheço muitas mas algumas das principais são Unidev e PDJ.



Comunidades de desenvolvimento

Unidev

Foi a primeira que tive contato, a muito tempo atrás (quando aprendi a fazer janelas em VB 6.0) resolvi procurar na internet sobre amazenamento de dados em arquivos, nessa época por volta de 2004 e 2005 não tinha a menor idéia do que era m SGBD (quase não sabia armazenar dados em arquivos comuns, era tão acostumado a só construir janelas e botões que esquecia da existência de outras coisas "rsrs"), e quando tive idéia do que era fiquei mais assustado ainda quando descobri que tinha que usar uma linguagem estranha (fora que não sabia quase nada de inglês), SQL.Praticamente entrei no forum somente pra sabe se tinha outra forma de amazenar e retornar informação de um arquivo de forma organizada que não fosse SQL.Naquela época pra min, aprender SQL era quase a mesma dificuldade que levaria para fazer um simples banco de dados (isso na minha cabeça).

Enfim, encontrei muita gente motivada a fazer jogos, muita gente, mas todos querendo fazer projetos muito fora da realidade com pequenos grupos que mal sabiam o que era programação.A Unidev era sempre cheia de projetos, criaram até uma seção só para projetos.Da para contar nos dedos os projetos que chegaram até o fim.O maior problema as vezes nem era a falta de experiência, mas a falta de compromisso.Quando fiz um pequeno grupo de estudo percebi isso bem.

Nossa experiência com a comunidade não foi muito boa, como se era de se esperar, a maioria competente que queria ajudar, queria também remuneração em dinheiro.Como nós eramos iniciantes e não tinhamos pretenção de ganhar dinheiro inicialmente (exceto um no grupo que, não media suas ganâncias "rsrs"), meio que abandonamos a comunidade pois das 2 tentativas de buscar pessoas para o projeto foram um fracasso onde ambos os posts terminaram em flamwars.

A falta de compromisso as vezes surpreendia, uma hora chegava alguém "disposto" a ajudar, o que ele fazia? Nos adicionava no MeeSssNee e  pronto, essa era sua colaboração, nunca mais você conseguia ver fulano online ou mesmo se comunicar através de e-mail.Um amigo meu da época bem que me dizia: "larga esses negócios de MSN e afins, isso não leva a lugar nenhum...", hoje bem sucedido em uma empresa onde ele é "senior" em administrador de redes de uma empresa.Vale lembrar que o meio não é o problema, são os ações praticadas através dele.

Foram tantas as tentativas frustradas que é claro, aconteceu o que tinha para acontecer, o grupo se dividiu logo quando estávamos para definitivamente adicionar alguns novos integrantes, bem, falta de afinidade, digamos.No fim o que aprendemos foi que, tivemos uma boa aula de relacionamento social através de nossa experiência nessa empreitada.

Quando estava para sair da comunidade (acho que após ter publicado 2 ou 3 tópicos) uma pessoa que conhecia do ramo acadêmico resolveu participar de um dos contests (nessa época quando ele entrou comecei a botar mais fé que as coisas iriam andar).O "kra" manjava, mas enfim, o resultado? Não concluído pelos mesmos motivos citados acima (sei disso pelas próprias publicações no fórum relacionado ao projeto).

Essa pessoa do ramo acadêmico era um professor, claro, muito atarefado, mas de qualquer forma me balançou pois a experiência que ele tinha era grande (até mestrado em criação de jogos em universidade federal).Se ele não conseguia concluir um projeto com uma equipe de super heróis, o que eramos então?

A Unidev no sentido de inovação foi excelente, ela oferecia cursos online coisa que se você for parar pra pensar não há ainda hoje muitos lugares no Brasil onde se ensina desenvolvimento de jogos, exceto em faculdades como na Unisino.Apesar de nunca ter feito curso algum achei bem legal essa idéia, não só por oferecer curso a distancia por causa da escassez no Brasil , mas por realmente acreditar nessa forma de ensino que não sei porque, muita gente ainda faz cara feia em pleno século 21.

Na Unidev ainda encontramos alguns entusiastas que realmente gostam de jogos (não por impulso do mercado), coisa que acho fundamental em qualquer área (odeio "modismo" ;P) .

Essa foi a única comunidade em que participei efetivamente, as outras só como um raro "leitor anônimo".

PDJ

Conheço muito pouco sobre essa comunidade, no geral sei que a comunidade não pode ser encarada de forma isolada, muitos que frequentavam o fórum da PDJ também frequentam o da Unidev.

Aqui também podemos falar sobre projetos, não foi diferente da Unidev, a comunidade passou sérias dificuldades pois pelo que andei acompanhando durante os anos de 2007 até inicio de 2009 a quantidade de idéias superou a possibilidade de realiza-las.Quantos projetos até por parte dos próprios fundadores do site eu vi não serem concluidos, foram vários, de competições com atraso a revistas eletrônicas que não chegaram a ser publicadas.

Dentre os vários que frequentavam o fórum sobresaiam no máximo 2 equipes.Era muito legal acompanhar o debate, as idéias, as insistências dos novatos e os conselhos de quem tinha mais experiência.Não te digo que quem aprendeu mais foram os novatos, pois depois de tanta surpresa acho que ambos aprenderam quase no mesmo ritmo.

Pessoas, frameworks, APIs, metodologia...

No início quando começamos achamos que a quantidade de APIs, Frameworks ou Linguagens de programação é o que atrapalha pois divide muito os esforços.Parcialmente concordo com isso, não há como negar que se cada um falasse uma língua diferente não haveria propósito algum sentarmos em uma mesa para bater um papo.Com passar do tempo você entende a complexidade e os costumes de cada um e desiste, não há como lutar diretamente contra preferências pois do contrario acabaria em uma nova aula de "relação social" acalorada.Apresentamos soluções, divulgamos elas, procuramos quem goste delas, pronto.

Quantas vezes eu já vi gente perdendo tempo discutindo Struts vs XP vs RUP vs sei la o que.O que eu sei é que isso não é programação, talvez devesse ser chamado de uma especialização da filosofia (acho legal filosofia, mas não tanto na programação), sinceramente "rsrs".

No fim você vai aprender que as pessoas nunca se cansam de discussões acaloradas sobre "qual é a melhor...?".Até eu as vezes (veja, raramente "rsrs") comento alguns flamewars quando acho engraçado alguns argumentos "rsrs".

O que pode ser acompanhado com um bom vinho?


É, desde que mudei de SO venho notando a falta de motivação para desenvolvimento nas plataformas abertas como Linux.

Você gosta de jogos? não tem jeito, tem que ser com Wine.O que pode vir acompanhado com Wine?

Jogos que não sejam online


Motivo: esses jogos usam softwares que são implantados no sistema para evitar trapaças no jogo.Drivers que modificam estruturas do Kernel do Windows para que possam ser capturados eventos de Teclado, Mouse, Mudanças suspeitas na memória do aplicativo, etc.
Isso agrega: quase 80% de todos jogos gratuitos disponível na internet.
Solução: não há bem uma solução simples visto que o Wine (não é um emulador) é apenas uma implementação user-space da API do Windows, ele não cobre o kernel (procure por ReactOS esse sim cobre tudo relacionado ao Windows).

Jogos que não possuam DRM

Motivo:  esses jogos também instalam softwares que são implantados no sistema as vezes até sem o usuário saber (na verdade na grande maioria das vezes ele não faz idéia do que instala).É quase patético a legislação e a EULA em si, a EULA afirma que o usuário tem conhecimentos técnicos para saber o que o software faz sendo que o mesmo muitas vezes nem pode ser inspecionado pois é protegido contra inspeção.Pela lógia deveria haver uma maneira fácil e legal de saber exatamente o que as proteções fazem, mas como pões em risco a proteção pois é security by obscurity nunca temos um "acordo justo" quando aceitamos a licença clicando no botão "accept".
Isso agrega: boa parte dos programas comerciais feitos pro Windows.
Solução: seria bom se houvesse uma simples, depende das empresas que criam estas pragas e afirmam que estão apenas protegendo sua propriedade intelectual.É muito abrangente e essa mesma prática cai no mesmo sexto que outra que já faz um certo tempo que abusa da legislação, as famosas patentes de software (aberrações de primeiro mundo, sim, o Brasil escapou dessa, que ótimo, palmas "rsrs").

E agora?


É, depois de algumas iniciativas tanto de orgãos de padronização quanto de empresas, a "Web" cada vez mais se aproxima de ser uma nova plataforma para desenvolvimento de jogos viável.


Nos temos vários exemplos do crescimento do interesse, uma das mais notáveis bibliotecas para desenvolvimento de aplicações web é a jquery e com ela tem gente que a pouco tempo atrás começou a fazer um framework para desenvolvimento de jogos a:





Nós podemos imaginar o progresso e a evolução destes tipos de frameworks com a conclusão do HTML5, acredito que bastaria alguns meses para que vários jogos online com clientes nativos comecem a migrar para plataforma Web.

O famoso tíbia por exemplo poderia ser facilmente migrado para plataforma Web.

Complementando, já existe alguns frameworks/engines para HTML5 sendo desenvolvidos, um deles você encontra nesta página.

Veja este jogo



Mário

Veja uma top list neste website também.

Pensando no HTML5 e desenvolvimento de jogos nos lembramos bem de um probleminha que tinhamos, o cliente não podia aguardar notificações do servidor de forma assíncrona, agora com o novo padrão já começamos a ver soluções para isso, veja aqui e aqui.

Conclusão


Este post ficou longo e bem misturado mas é só você pensar um pouco que da pra ligar algumas coisas ;P

Mas voltando as comunidades não estou vendo muito desenvolvimento com HTML5.

http://www.unidev.com.br/phpbb3/search.php?keywords=html5&terms=all&author=&sc=1&sf=all&sk=t&sd=d&sr=posts&st=0&ch=300&t=0&submit=Search

http://www.programadoresdejogos.com/forum/search.php?keywords=html5&terms=all&author=&sc=1&sf=all&sk=t&sd=d&sr=posts&st=0&ch=300&t=0&submit=Pesquisar

Vamo lá pessoal, vamo fazer um experimentos ai! "rsrs"

No comments:

Post a Comment