... eu tô cheio de recessos no trabalho e ainda se bateu um desespero programístico sobre mim, resolvi implementar uma série de padrões de projeto com uma visão bem voltada para os jogos. Não vou colocar nada aqui ainda, pois estou trabalhando em outras pequenas surpresas que podem vir a aparecer ainda em Janeiro.
O ano vai começar com artigos no ritmo do artigo sobre o Singleton e o MVC: explicação do conceito + Diagramação UML + Código + comentários. Deixa só passar o ressacão do Reveillon prá gente sacudir isso aqui.
"Boas festas"; "se forem dirigir, não bebam", "Feliz Natal" e todos os outros clichês que estão nos dizendo. Aguardem o novo ano que vamos ter coisas boas por aqui! Até lá!
domingo, 23 de dezembro de 2007
Já que o Ano Novo tá ae,...
Postado por
Tiago Frossard
2
comentários
Marcadores: Padrões de Projeto, Sobre o Nuss..., UML
terça-feira, 11 de dezembro de 2007
Casos de Uso? Mas hein?
Esses tais Casos de Uso (CdUs daqui pra frente) não são nada mais que cada uma das diversas interações que o usuário vai ter com o seu programa. Na maioria das vezes, cada tela ou janela diferente significa um CdU diferente, mas como jogos são muito mais complexos, várias vezes tempos diversos CdUs na mesma janela. “Andar com o personagem”, “utilizar magia”, “selecionar alvo”, “pegar item” e “conversar” são diversos CdU que você realiza na mesma tela: a tela de jogo.
Devido à troca de endereço, a continuação desse artigo pode ser encontrada no endereço http://nusseagora.blog.br/casos-de-uso-mas-hein/
Postado por
Tiago Frossard
2
comentários
Marcadores: Análise de Sistemas, Game Design, Gerência de Projetos, UML
quarta-feira, 5 de dezembro de 2007
Personalize seu Jogo!
Devido à troca de endereço, a continuação desse artigo pode ser encontrada no endereço http://nusseagora.blog.br/personalize-seu-jogo/
Postado por
Tiago Frossard
0
comentários
Marcadores: Game Design, O Jogo
sexta-feira, 30 de novembro de 2007
Organizando os pensamentos com um Mapa Mental
Postado por
Tiago Frossard
3
comentários
Marcadores: Game Design, Gerência de Projetos, Programas Recomendados
quinta-feira, 22 de novembro de 2007
Atualização inteligente é o que há!
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada no endereço http://nusseagora.blog.br/atualizacao-inteligente-e-o-que-ha/
Postado por
Tiago Frossard
1 comentários
Marcadores: Game Design, Gerência de Projetos
quinta-feira, 15 de novembro de 2007
Mais problemas... E agora?!?
Eu vi um leitor ali com cara de “oO?”. Xô passar um exemplo: A gente tem um método BuscarCartas() que deveria ir à camada de Armazenamento e materializar todas as cartas para que a interface pudesse desenhá-las. DEVERIA, mas não está fazendo isso. Pelo contrário: BuscarCartas() está cheia de linhas de código que criam diretamente aquele monte de cartas que deveriam ter sido buscadas no Armazenamento.
“Ta Tiago, mas qualé o problema disso?”. O problema é que o exemplo cresceu demais. Antes isso funcionava perfeitamente, pois ainda estávamos acertando o funcionamento básico da interface e as interações dela com a lógica do caso de uso Batalhar. Agora que precisamos trabalhar corretamente com a diversidade de cartas entre os jogadores, o troço não dá vazão: temos que ficar criando métodos falsos um em cima do outro, o que tem me deixado com medo. No final, se esse monte de métodos continuar crescendo, pode dificultar muuuuito a inserção da camada de Armazenamento.
Ainda não está nada certo, mas o Douglas deu a idéia de utilizar um padrão chamado Database Broker (ou só DB Broker), uma Indireção entre a camada de Armazenamento e o resto do programa. Assim, uma vez criado o DBBroker, todos os acessos ao armazenamento vão ser realizados por ele, bem como funciona com a Controladora. Independente de como seja implementado o Armazenamento, basta trocar a lógica dos métodos do DBBroker que tudo está 100% funcional.
“E por que fazer isso?” Pois nosso BD vai ser inicialmente uma tabelona XML mesmo. Estamos tendo trabalho suficiente com a interface e a interação dela com a lógica para implementarmos um BD distribuído. Somos só 3, nada de inchar o design ;)
P.S.: Caso algum de vocês leitores já passaram por algum problema do gênero, agradeceria muito se rolasse uma ajuda com esse problema!
P.S.2: Desculpem pela falta de matérias, mas realmente não tô tendo muito sobre o que postar: graças à esse rolo, não muito tem acontecido no Jogo. Pelo menos, a solução vai virar um outro artigo.
P.S.3: Não não, realmente prefiro o Wii. - Já vi isso em algum outro lugar ;)
Postado por
Tiago Frossard
0
comentários
Marcadores: Análise de Sistemas, Padrões de Projeto, Problemas
quinta-feira, 1 de novembro de 2007
MVC e o Linkage: O que se deve ou não fazer? (parte 3)
Postado por
Tiago Frossard
2
comentários
Marcadores: Análise de Sistemas, Padrões de Projeto, Programação
sábado, 20 de outubro de 2007
MVC e o Linkage: O que se deve ou não fazer? (parte 2)
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada no endereço http://nusseagora.blog.br/mvc-e-o-linkage-o-que-se-deve-ou-nao-fazer-parte-2/
Postado por
Tiago Frossard
2
comentários
Marcadores: Análise de Sistemas, O Jogo, Padrões de Projeto, Problemas, Programação
quarta-feira, 17 de outubro de 2007
MVC e o Linkage: O que se deve ou não fazer? (parte 1)
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada no endereço http://nusseagora.blog.br/mvc-e-o-linkage-o-que-se-deve-ou-nao-fazer-parte-1/
Postado por
Tiago Frossard
0
comentários
Marcadores: Análise de Sistemas, O Jogo, Padrões de Projeto, Problemas, Programação
sexta-feira, 12 de outubro de 2007
E por quê jogar o MEU?
Postado por
Tiago Frossard
0
comentários
Marcadores: Game Design, Gerência de Projetos
sexta-feira, 5 de outubro de 2007
Quem vai jogar?
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/quem-vai-jogar/
Postado por
Tiago Frossard
3
comentários
Marcadores: Game Design, Gerência de Projetos
sábado, 29 de setembro de 2007
E o que TE influenciou?
Postado por
Tiago Frossard
4
comentários
Marcadores: Game Design, O Jogo
segunda-feira, 24 de setembro de 2007
Singleton: Limitando e Distribuindo
Postado por
Tiago Frossard
1 comentários
Marcadores: Análise de Sistemas, Padrões de Projeto, Problemas, Programação, UML
quarta-feira, 19 de setembro de 2007
Se até a vovó viu, por quê não ver você também?
O Vovó viu a Rede é do Mário, um cara q eu conheci na faculdade e se mostrou um dos melhores em Análise e Projeto que eu já vi. Hoje em dia ele está comigo e com o Douglas tocando o Jogo prá frente, penando com divisões de camadas, padrões de projeto e meus designs complicados. Autodidata como ele só, resolveu criar um blog contando tudo que aprendia enquanto estudava Redes de Computadores. E num é que o troço fez sucesso?
Sabe essa porrada de texto técnico que você acha na internet? Então cara, ESQUECE isso. O Mário pega a matéria, entende, picota, joga na água e deixa secá, postando tudo lá já recicladinho, numa linguagem simples e objetiva. Quer ver? Olha só a forma com que ele explicou o Modelo OSI e as redes peer-to-peer. Mais didático? Difícil, hein....
Recomendado prá pessoas que, como ele, queiram decifrar os mistérios desse assunto tão vasto que é a conexão entre computadores. Nota 10.
Postado por
Tiago Frossard
2
comentários
Marcadores: Blogs recomendados
domingo, 16 de setembro de 2007
Padrões de Projeto: O que são e pra que servem?
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/padroes-de-projeto-o-que-sao-e-pra-que-servem/
Postado por
Tiago Frossard
5
comentários
Marcadores: Análise de Sistemas, Problemas, Programação
quinta-feira, 13 de setembro de 2007
Os problemas de se focar na perfumaria.
Estava olhando projetos postados por aí quando notei um erro recorrente na maioria dos projetos: as pessoas começam pela perfumaria.
Postado por
Tiago Frossard
1 comentários
Marcadores: Gerência de Projetos, Problemas, Programação
segunda-feira, 10 de setembro de 2007
Nuss... E agora?!? também no Orkut.
O link está permanentemente no menu ali ao lado, "o Nuss... no Orkut", onde estará também o link para o meu perfil, caso alguém queira fazer um contato direto.
Então gente, é isso. Quem quiser entrar em contato, discutir matérias não só do Nuss... mas também de outros blogs, ou coisa do gênero, pode entrar e pedir para participar que eu confirmo a participação. Valeu gente!
Postado por
Tiago Frossard
0
comentários
Marcadores: Sobre o Nuss...
domingo, 9 de setembro de 2007
O que torna um jogo um sucesso: Gráficos, Jogabilidade ou Enredo?
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/o-que-torna-um-jogo-um-sucesso-graficos-jogabilidade-ou-enredo/
Postado por
Tiago Frossard
5
comentários
Marcadores: Game Design, Gerência de Projetos
sexta-feira, 7 de setembro de 2007
Princípio de Pareto: Como solucionar 80% dos problemas mexendo somente em 20% das causas
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/principio-de-pareto-como-solucionar-80-dos-problemas-mexendo-somente-em-20-das-causas/
Postado por
Tiago Frossard
1 comentários
Marcadores: Gerência de Projetos
terça-feira, 4 de setembro de 2007
- Pára tudo! 2 -
O primeiro me encheu o peito de orgulho. A CubaGames, fez uma matéria extremamente pé no chão sobre o Nuss... E Agora?!? aqui. Aconselho que vocês leiam a matéria como mais um estudo de caso de um Design Inchado. Até por quê sei que ainda tem gente aê que, mesmo depois de ler a matéria, continua achando que se começa a subir uma escada pelo topo.
O segundo foi o Blog do Nunes que me indicou como um dos 5 da sua lista do BlogDay 2007, nesse artigo. Fiquei muito feliz em estar na sua lista, Evandro. Muito obrigado pela vaga e espero que as matérias sejam de alguma forma úteis em seu curso de Ciências da Computação.
Por fim, uma surpresa. A professora Maria Lúcia linkou-me aqui como fonte para início dos estudos sobre Modelagem Orientada a Objetos e Diagramas UML. Fiquei MUITO FELIZ MESMO, principalmente pois é justamente essa a função do blog: ajudar aqueles que estão iniciando e não sabem por onde começar.
Professora, gostei muito da vontade de passar aos seus alunos a matéria de uma forma atrativa e, precisando, basta entrar em contato.
Voltemos agora à nossa programação normal
Postado por
Tiago Frossard
3
comentários
Marcadores: Blogs recomendados, Sobre o Nuss...
segunda-feira, 3 de setembro de 2007
Atraso em projetos de horas vagas (Ou "OIha... já tamo devendo quase 3 semanas...")
Postado por
Tiago Frossard
3
comentários
Marcadores: Gerência de Projetos, Problemas
sexta-feira, 31 de agosto de 2007
Um por todos e todos por um: as diversas profissões necessárias para fazer um jogo (parte 3)
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/um-por-todos-e-todos-por-um-as-diversas-profissoes-necessarias-para-fazer-um-jogo-parte-3/
Postado por
Tiago Frossard
0
comentários
Marcadores: Game Design, Gerência de Projetos
domingo, 26 de agosto de 2007
Um por todos e todos por um: as diversas profissões necessárias para fazer um jogo (parte 2)
Postado por
Tiago Frossard
1 comentários
Marcadores: Game Design, Gerência de Projetos
sábado, 25 de agosto de 2007
- Pára tudo! -
Imaginem minha surpresa que, ao visitar o link, encontrei uma matéria sobre o Nuss! O blog é o do Rodrigo Flausino que, de uma forma muito amistosa, dedicou um pouco do seu tempo para falar bem desse trabalho que tenho realizado.
Flausino, estou aqui agradecendo muito à essa força que me deu, mesmo sem nunca termos conversado. Quero também parabenizá-lo pelos artigos sobre o mundo dos jogos, principalmente por esse sobre o efeito do clima em jogos, a divulgação do gamedevmap (genial essa idéia!), e, principalmente, essa resenha sobre a matéria da Veja sobre o crescente realismo dos jogos eletrônicos.
Teu blog já está permanentemente linkado e devidamente assinado. Recomendo que façam o mesmo, pessoal: tem muita coisa sobre entretenimento digital lá que não dá prá perder..
- Agora sim voltemos à programação normal
Postado por
Tiago Frossard
1 comentários
Marcadores: Blogs recomendados, Sobre o Nuss...
Um por todos e todos por um: as diversas profissões necessárias para fazer um jogo (parte 1)
Postado por
Tiago Frossard
2
comentários
Marcadores: Game Design, Gerência de Projetos
quarta-feira, 22 de agosto de 2007
Orientação a Objetos: Q raios é isso!? (parte 3)
Postado por
Tiago Frossard
0
comentários
Marcadores: Análise de Sistemas, Programação, UML
segunda-feira, 20 de agosto de 2007
Orientação a Objetos: Q raios é isso!? (parte 2)
Continuando o artigo anterior, o básico da Orientação a Objetos pode ser entendido como um conjunto de classes e objetos que se relacionam. Hoje vou definir essas relações, começando pelo mais importante de tudo:
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/orientacao-a-objetos-q-raios-e-isso-parte-2/
Postado por
Tiago Frossard
1 comentários
Marcadores: Análise de Sistemas, Programação, UML
quarta-feira, 15 de agosto de 2007
Orientação a Objetos: Q raios é isso!? (parte 1)
Hoje eu vou falar do paradigma de programação que escolhemos para fazer o Jogo, a Orientação a Objetos. Ela começou lá pela década de 60 acompanhando uma tal Engenharia de Software, que falava, na época, sobre os problemas que os programadores teriam com a crescente complexidade dos programas.
Postado por
Tiago Frossard
5
comentários
Marcadores: Análise de Sistemas, Programação, UML
domingo, 12 de agosto de 2007
Paradigmas de Programação: Estilos diferentes de escrever o mesmo texto
Lembram-se desse exemplo onde eu falei de um código como se fosse um texto? Pois então, bem como um texto, um código fonte pode ser escrito de diversas formas diferentes.
Postado por
Tiago Frossard
5
comentários
Marcadores: Análise de Sistemas, Programação
quarta-feira, 8 de agosto de 2007
A Máquina Virtual
Entender o que é e como funciona uma Máquina Virtual é extremamente importante quando queremos entender conceitos como portabilidade e multiplataforma.
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/a-maquina-virtual/
Postado por
Tiago Frossard
3
comentários
Marcadores: Programação
domingo, 5 de agosto de 2007
E por quê o Action Script 3.0?
Devido à troca de endereço, a versão completa desse artigo pode ser encontrada aqui: http://nusseagora.blog.br/e-por-que-o-action-script-30/
Postado por
Tiago Frossard
2
comentários
Marcadores: Game Design, O Jogo, Programação
sexta-feira, 3 de agosto de 2007
A Escolha do Flash
Postado por
Tiago Frossard
0
comentários
Marcadores: Game Design, O Jogo, Problemas, Programação
Design Inchado: "Você está fazendo seu primeiro jogo, não seu último"
Lembram-se bem do início do jogo? Aquela coisa gigantesca, miraculosa, digna de bilhões de Euros e de uma revolução no mercado. Sim, pelo menos é isso que a gente acha quando está encabeçando um projeto e é justamente isso que causa o grande problema do Design Inchado.
Postado por
Tiago Frossard
1 comentários
Marcadores: Game Design, O Jogo, Problemas
quinta-feira, 2 de agosto de 2007
O Jogo
Bom, anteriormente eu falei do Jogo mas não disse nada sobre ele. É por isso que esse post vai ser dedicado a esse projeto que tem teimado em acabar com os miolos.
O Jogo era, inicialmente, de estratégia estilo Worms ou GunBound: simples, mas podendo ser expandido quase que infinitamente. Mais do que isso, o Jogo estava fácil de implementar, de ser programado e ver o mercado. Isso era o q pretendíamos fazer, mas eu não estava satisfeito com sua simplicidade.
Foi aí que tive a idéia de transformá-lo em um tipo de estratégia diferente. Sabe aquela estratégia isométrica que o Final Fantasy Tactics popularizou? Pois então, resolvi que era aquilo que iríamos fazer. Criei vários sistemas de magias, ação/reação, árvore de profissões e toda a porrada de coisas que vocês possam imaginar. O jogo passou a ser para redes locais, na arquitetura chamada peer-to-peer, onde um computador se conecta diretamente com outro computados, como nos programas de transferência de arquivos Emule e KaZaA.
Aquele design inicial que estava simples e fácil de fazer virou um design complexo, muito profissional e complicado de ser implementado. Naquela época, o importante era que eu estava feliz com o que tínhamos em mãos, mesmo sabendo que seria difícil de ver o projeto alcançar a luz do dia.
Isso tudo aconteceu antes de cursarmos a matéria Projeto Final I. Estávamos adiantando o máximo que podíamos, já que a empreitada era mais complicada que o padrão na faculdade e sabíamos que teríamos que correr muito atrás por nós mesmos. No final desse mesmo semestre já tínhamos o design e toda a interação jogador-Jogo definidos. Faltava uma coisa: um membro no grupo.
No início do semestre seguinte, adicionamos esse membro extra, o que inchou ainda mais o design: O jogo, que era 2D, de sprites - desenhos, como nos jogos de Super Nintendo -, virou um jogo 3D, de vetores – imagens como nos videogames de última geração. Isso foi talvez a pior coisa que pudesse ter acontecido, pois descobrimos tarde demais que era IMPOSSÍVEL fazer uma coisa com metade da qualidade visual que conseguiríamos com sprites. Aquele design feito anteriormente foi pro espaço, sendo necessário refazer e repensar muito do que já tínhamos em mãos.
Passando 1 ano, terminamos por voltar ao grupo original. Aquele primeiro design foi buscado novamente, mas agora tínhamos também um servidor com acesso diferenciado para jogadores em determinados níveis. Tínhamos em mãos um jogo perfeito, mas será q ele era viável? Será que do alto de nossa nula experiência, conseguiríamos fazer um jogo assim?
Na próxima, vou falar sobre os problemas de um design perfeito, mas muito além daquilo que a gente consegue fazer. É o que eu chamo de um Design Inchado. Então gente, até lá.
Postado por
Tiago Frossard
0
comentários
Marcadores: Game Design, O Jogo
quarta-feira, 1 de agosto de 2007
Nuss... E Agora?!?
Quando, há uns semestres atrás, eu me vi na reta que precede o Projeto Final da faculdade, não consegui pensar em mais nada que não fosse fazer um jogo. Desde criança eu sempre fui maluco por esse tipo de coisas, sempre entendi muito bem sobre o mercado, sobre as inovações. Sempre vi o que dava certo e o que dava errado, sempre procurei os porquês dos sucessos ou fracassos. Passei por centenas de jogos, do Atari ao PS2, tinha certeza que conseguiria fazer algo de qualidade. E isso martelou na minha cabeça até que eu reunisse o grupo e caísse dentro do trabalho.
Pois foi aí que eu vi que eu não sabia NA-DA. Ou melhor, eu sabia sim. O que me faltava era a EXPERIÊNCIA. Sabe aquele “Ih, isso já aconteceu comigo. Resolvi assim, assim e assim”? Sabe aquele “AAAAAAhhh não, mas isso não se faz assim, senão vai causar os problemas tal, tal e tal”? Pois então, era isso que eu não tinha. Eu sabia muito do mercado, mas não conseguia organizar esse conhecimento. Eu sabia muito de análise, mas não conseguia implementar aqueles diagramas todos. Eu sabia muitas coisas maneiras para colocar no jogo, mas não conseguia codificá-las. Eu sabia muito, mas não conseguia nada.
Se eu tivesse tido uma ajuda, um ponto de partida, tudo seria mais fácil. Se eu tivesse alguém pra me explicar como fazer uma Game Bible, como implementar o padrão Singleton ou como fazer o controle de uma arena isométrica, tudo teria sido mais rápido e fácil. Depois de um tempo pensando, me veio aquele estalo: “Já que ninguém fez por mim, por que não fazer por alguém?”
Foi assim que nasceu a idéia de publicar o Blog, um meio fácil de alcançar o pessoal que está tendo esse monte de problemas de iniciantes. Eu vou estar focado no desenvolvimento do meu jogo (que agora não é mais só meu), mostrando pra vocês todos os problemas que encontrarmos durante seu desenvolvimento e, melhor ainda, como resolvemos cada um deles.
Vou falar de códigos, de Flash, de Programação Orientada a Objetos, UML, de Padrões de Projeto, de Game Design, de eBusiness... Ou seja: tudo aquilo que paira ao redor do desenvolvimento do Jogo (vou chamar o projeto assim daqui pra frente) Sempre de uma forma descontraída e fácil de entender, pra que todos que leiam possam extrair o máximo possível.
Lembrem-se que as soluções podem até não ser as melhores práticas, mas aqui estaremos abertos à discussão das respostas. Por que você faria diferente? Adicionaria alguma coisa? Divida com todos nós o que você pensa sobre isso.
Aqui também falarei um pouco sobre o grupo que está apostando nesse sonho, além de comentar sobre Jogo em si: O que ele era e como ficou, que tipos de alterações pretendo fazer no design e como faremos isso funcionar. Mas isso fica para os próximos artigos. Até a próxima!
Postado por
Tiago Frossard
7
comentários
Marcadores: O Jogo, Sobre o Nuss...