Quais são suas dicas e truques para concluir com sucesso um projeto de jogo de hobby em seu tempo livre? Como você se motiva a seguir em frente e chegar até o final sem perder o interesse ou a motivação ao longo do caminho?
Quais são suas dicas e truques para concluir com sucesso um projeto de jogo de hobby em seu tempo livre? Como você se motiva a seguir em frente e chegar até o final sem perder o interesse ou a motivação ao longo do caminho?
Respostas:
Essas dicas se aplicam a qualquer projeto de software de hobby, e não apenas a jogos.
Defina pequenos marcos. Ter um objetivo como "o sistema de itens funciona no meu jogo de RPG" é ótimo, mas isso implica muitas funcionalidades subespecificadas que você provavelmente nem sabia que precisava. E quanto ao "ambiente gráfico configurado"? Ou "Um sprite é exibido na tela".
Faça um pouco a cada dia. As sessões de maratona são ótimas e tudo, mas você está tentando espremer um compromisso de longo prazo em uma vida já cheia. Se você fizer um pouco a cada dia, estará fazendo um progresso mensurável e estabelecendo uma estrutura na qual poderá atingir seus objetivos.
Escale-se de volta. Seja qual for a sua grande visão, tente descobrir qual é a menor porção possível e faça isso. Fazendo um RPG? Comece com uma missão e sem NPCs. Fazendo um jogo de plataformas? Comece com um nível e sem inimigos.
Protótipo cedo. Antes de você afundar um monte de suas horas de passatempo suado em um jogo, descubra se seria divertido primeiro. Não há nada tão desanimador quanto trabalhar em algo por dezenas de horas apenas para descobrir que o conceito básico é péssimo.
Desenvolva algo iterável. Meus projetos de software favoritos são aqueles em que o conceito básico permite ajustes posteriores. Seu jogo é assim? Você pode enviar algo e depois revisitá-lo mais tarde e adicionar coisas legais?
Não construa um mecanismo ou estrutura. Você não quer um motor, você quer um jogo. Não se preocupe com os bits reutilizáveis da estrutura-y até o lançamento do jogo. Depois de iniciar o segundo jogo, você poderá voltar ao seu primeiro e ver se há algo que possa trazer. Isso não quer dizer que você não deva usar práticas de desenvolvimento de software sólidas, mas não comece escrevendo uma aula de Sprite até saber o que você precisa que seus sprites façam - você ficará surpreso com o quão pouco isso resultará. estar. Comece com uma classe Hero, depois uma classe Monster, e então - olhe! - há algumas coisas comuns!
O envio é um recurso. Você nunca vai terminar o seu jogo, apenas o abandonará. (= Qual é a quantia mínima que você pode fazer antes de não ter vergonha de mostrar seu jogo a outra pessoa? As chances são de que você pode fazer menos do que isso e ainda ter um jogo do qual se orgulhar.
Na verdade, acabei de escrever um blog sobre como eu abordava o design e o desenvolvimento do meu projeto mais recente do iPhone. Você pode encontrar valor ao lê-lo.
Alguns pensamentos para deixar aqui são
Aplicativo de Tarefas Pendentes
Uso o Things for Mac e ToDoList (gratuito) para Windows. Como alternativa, você pode pular para sourceforge.net ou codeproject.com para pegar um aplicativo pendente . Eu gosto do ToDoList. Você terá muitos esboços, idéias, informações de design que realmente precisam ser agregadas em um único local. Ter um aplicativo como esse com sua lista de recursos ajudará você a manter o foco.
Tarefas pequenas
"Implementar exibição da tabela de classificação" não é uma tarefa suficiente. O que isso envolve? Quebre isso -
Ver a imagem com mais detalhes reduzirá suas chances de perder um elemento-chave da sua implementação e fornecerá motivação quando você marcar cada tarefa.
Mantenha o escopo pequeno
Não tente construir o Starcraft III se for apenas você, desalinhado e arrepiante. Simplesmente não é viável. Diminua suas expectativas e encontre algo que você ainda gostaria de construir.
Eye-candy
Obtenha algo na tela - você pode se surpreender com o tamanho de uma sacudida em sua motivação. Costumo me concentrar em obter obras de arte mais cedo. Além disso, também posso trabalhar com um músico que também começa a me mostrar coisas relativamente cedo.
Divirta-se
Se você estiver se esquivando do sistema de salvamento durante toda a semana, não deixe de segui-lo na próxima semana com algo divertido. Um dos meus momentos divertidos foi redesenhar o sistema de animação para minha interface de usuário.
Colaborar
Você não precisa tecnicamente começar a adicionar pessoas à sua equipe, mas converse com outras pessoas sobre o que está fazendo. Vá para tigsource.com ou gamedev.net e comece a trabalhar em rede.
Playtest
Comece a receber feedback antecipado sobre o seu jogo. Estou falando logo após você terminar seu protótipo inicial. Deixe alguns de seus amigos mexerem com o que você tem, obtenha feedback, faça anotações e revise seu plano, se necessário. Certifique-se de testar fora do seu reino de conforto e lançar uma rede que inclua outros desenvolvedores de jogos. Às vezes, amigos e entes queridos não são apenas pessoas críticas.
Inicie um blog
Conversar sobre o que você está fazendo permite criar uma marca para si mesmo. Isso não tem preço quando chega a hora de enviar seu produto. Veja o que Wolfire está fazendo. Eles são absolutamente pura vitória na construção de uma marca para si.
Faça uma pausa
Se sua mente não estiver no projeto em um momento específico, não tente forçá-lo. Levante-se e vá dar um passeio ou tirar uma soneca rápida. Esse é o luxo de ser independente. No final, você criará um produto melhor para isso.
Minha principal dica # 1: desconecte o cabo de rede!
Tenho o ritual de desconectar meu cabo de rede antes de ir para a cama. Na manhã seguinte - não estou online, por isso não tenho sites para visitar, e-mails para ler, pessoas para conversar, etc. Então, naturalmente, começo a trabalhar no meu jogo.
Não me conecto novamente até que seja absolutamente necessário. Se houver algo que eu precise on-line - escrevo para procurar mais tarde ou uso o navegador do meu iPhone.
Isso ajuda a ter coisas como o MSDN baixadas e disponíveis offline.
O maior problema com projetos de hobby é não ter um escopo bem definido. Muitas pessoas começam querendo fazer o melhor jogo de todos os tempos, com horas de jogo e todas as idéias legais que têm. Em vez disso, você deve tentar reduzir sua ideia a algo gerenciável e, em seguida, apresentar um cronograma razoável. É verdade que os prazos estão em desacordo com o jogo, sendo um projeto de hobby e não um trabalho de período integral, mas eles são bons para se manter motivado e dividir grandes tarefas em pequenas tarefas administráveis.
Você também pode manter um arquivo de histórico de versões atualizado sempre que adicionar algo ao jogo. Melhor ainda, você deve usar o controle de versão e usar o histórico de confirmação para isso. É uma boa maneira de medir seu progresso e permanecer motivado mais tarde (observando todas as coisas que você já fez).
O criador do jogo Grauioutous Space Battles, um desenvolvedor independente, resumiu algumas dicas úteis sobre como criar seu próprio jogo em um post de blog. Alguns deles podem ser motivadores, mesmo para projetos de hobby.
Cliffski's Blog: Como se manter motivado enquanto programa um jogo
Excerto:
- Codifique algo que você gosta
- Cerque-se de inspiração
- Mantenha um registro do que você fez todos os dias.
- Faça um pouco de brilho
- Lições difíceis em dinheiro
- Fique ciente de quão alto é o nível (conheça sua concorrência)
- Faça pausas curtas.
Recentemente, notei que sempre que leio o post de outro desenvolvedor de jogos indie sobre suas atualizações, abro imediatamente meu IDE e começo a trabalhar. Portanto, meu conselho para mantê-lo motivado é: leia outros blogs (game dev) ;)
Aqui está uma lista rápida:
Comece criando um jogo estupidamente simples e finalize-o e publique-o online em algum lugar. Lembre-se de que mesmo algo aparentemente simples como o pong pode se tornar bastante complexo se você for um novo desenvolvedor de jogos, e começar com um jogo simples mostrará se você tem paciência para assumir um projeto maior.
Trabalhei no Snapshot (www.retroaffect.com), além do meu trabalho de período integral por quase 8 meses, antes de transformá-lo no meu trabalho de período integral. Eu trabalhava o dia todo, depois chegava em casa e trabalhava no Snapshot até adormecer. Às vezes era um pouco demais, mas outras vezes (na maioria das vezes) era incrível.
Definitivamente, sugiro ler sobre isso: http://positech.co.uk/cliffsblog/?p=753
Lembre-se também de que, se é algo que você está fazendo apenas por diversão, lembre-se de mantê-la assim ... divertida. Se você se esgotar, seu projeto nunca será concluído ou será exibido no produto final.
Com base na minha própria experiência, é mais fácil manter-se motivado se houver outras pessoas trabalhando com você. Assim:
Certamente, minhas dicas principais seriam compartilhar sua empolgação e manter o projeto em um estado que funcione .
Estou trabalhando no meu projeto de hobby há cerca de 2-3 meses. Isso significa noite ou duas de vez em quando e mais finais de semana ocasionalmente. O projeto talvez seja 2/3 feito para um primeiro lançamento adequado. Talvez seja cedo demais para chamá-lo de sucesso, mas aqui estão as coisas que me mantiveram tão longe:
1. Compre um bloco de notas para manter todas as ideias que você tiver. Você não precisa colocá-los no seu jogo, mas pode usá-los para obter mais inspiração.
2. Também estou tentando segurar tudo o que ainda tenho que fazer em um quadro de cortiça ou quadro-negro para que eu possa sempre procurar meus próximos objetivos para terminar.
3. Não tente implementar as coisas da melhor maneira na primeira tentativa. Tente fazer as coisas funcionarem e torná-las agradáveis em uma etapa posterior.
Assim, você pode ter recursos diferentes em diferentes estados de gentileza:
Ajuda muito na motivação se você faz as coisas funcionarem primeiro antes de considerar torná-las agradáveis e suaves. A desvantagem desse método é que você codificará mais código que você colocará no lixo no final.
4. Não implemente muitos recursos paralelos. Tente se concentrar em <= 3 recursos de uma só vez. Portanto, você tem algum lugar para mudar se parar em um recurso, mas não em tantos recursos que você está sobrecarregado pela quantidade de trabalho a fazer.
A resposta curta: Iterar, iterar, iterar. Comece pequeno e execute algo antes de tentar implementar o sistema inteiro. Ainda é importante fazer um design e planejamento de nível superior, mas ser capaz de ver com o que você está trabalhando e desempenhar as peças de teste é incrivelmente importante para se manter motivado; é difícil para mim (e para qualquer outro programador que conheço) trabalhar dia após dia em algo que realmente não mostra resultados visíveis.
Tenho uma boa imaginação, mas pouca capacidade de organização. No lado criativo, achei útil, no meu caso, usar uma ferramenta para me ajudar a acompanhar tudo e impor alguma estrutura geral. Eu uso o Writer's Café, que é flexível o suficiente para ser adaptado ao design de jogos. Tenho certeza de que existem outras ferramentas disponíveis. O mais importante, eu acho, é estabelecer marcos. Isso mantém você concentrado, permitirá medir o progresso e deve proporcionar uma sensação de conquista quando você os alcançar.
Outra pequena dica. - Monte uma equipe - Comunique-se com sua equipe regularmente (skype, live, email, etc.)
Todas as dicas mencionadas por outros são boas. Se você criar uma equipe, os membros da equipe poderão se apoiar. Além disso, por meio de reuniões regulares, é recomendável que você trabalhe em seu projeto para mostrar progresso ou atingir seu prazo.
Outras pessoas podem ser seu maior recurso.
Foi assim que montei meu estúdio de jogos. Somos três parceiros trabalhando no jogo nos últimos dois anos como um hobby de fim de semana. Estamos vendo a luz no fim do túnel agora.
Divirta-se com isso.
Eu uso o collabtive para meus projetos, e isso permite que eu configure tarefas e marcos. Quando trabalho em um projeto com várias pessoas, também me permite conversar com elas e atribuir-lhes tarefas específicas. Além do software de gerenciamento de projetos (que é de código aberto), também uso o Subversion para ajudar a permitir que várias pessoas trabalhem no código ao mesmo tempo. Ambos os programas são executados em um pequeno servidor Linux e, sinceramente, ainda não tive um problema com esta instalação! :)
Para gerenciar um projeto de jogo de hobby, você precisa de algumas coisas: motivação e as ferramentas adequadas.
Minha resposta será focada no uso das ferramentas apropriadas, como se você estivesse pensando seriamente em fazer um jogo no seu tempo livre, espero que você já tenha a motivação para baixo. :)
Eu recomendo o uso de alguma forma de controle de versão para o seu jogo. Sites como o Github ou o Bitbucket fornecem hospedagem para o git e o mercurial (o bitbucket suporta mercurial, não o github). Este é o seu primeiro passo para organizar seu código e ativos.
Em seguida, é possível definir bem uma lista de pendências de tarefas e recursos que precisam ser concluídos. O melhor processo para isso é com você, o desenvolvedor. Algumas opções incluem a criação de um documento de design de jogos (GDD), um documento de design técnico (TDD) e uma lista de pendências de recursos. Uma boa amostra para um GDD pode ser encontrada aqui: http://www.runawaystudios.com/articles/chris_taylor_gdd.aspPara o TDD, modele-o de maneira semelhante ao GDD, mas concentre-se mais nos detalhes técnicos da programação. Então, qual idioma você usará, estrutura, mecanismo e outras especificações técnicas. Tanto o GDD quanto o TDD ajudarão você a entender melhor o escopo do projeto e descobrir qual é a lista de tarefas a fazer. Você pode fazer isso no meio do projeto, se já o iniciou, pois é sempre importante pesquisar novamente e saber quais são exatamente seus objetivos e recursos.
Depois de fazer isso, você deve começar a desenvolver. Eu escrevi uma postagem no blog sobre como usar o github para desenvolver efetivamente um jogo, incluindo o uso de seus recursos wiki, problemas para rastreamento de bugs e apenas gerenciamento do seu projeto. Você pode encontrar isso aqui: Usando Git e Github para desenvolvimento de jogos
A definição de prazo flexível para o seu projeto pode ou não ajudá-lo a permanecer no caminho certo. Cada indivíduo é diferente e só você saberá como se motivar. Experimente diferentes técnicas e veja o que funciona para você. O desenvolvimento de jogos (e desenvolvimento de software) geralmente leva muito mais tempo do que as pessoas inicialmente estimam. Portanto, não desanime e fique com ela.
Se você precisar de mais exemplos de GDDs e TDDs, eu tenho o meu no Google Doc e não me importo de compartilhá-los!
A primeira coisa em sua mente deve ser que você está trabalhando para si e para seu próprio entretenimento. Não deixe seu projeto ser invadido por expectativas e desejos de outros, principalmente quando seus interesses mudarem com o tempo.