Usei o ChatGPT para me ajudar a fazer meu primeiro jogo. Não cometa os mesmos erros que eu cometi

Perguntando ao ChatGPT sobre como fazer meu primeiro jogo.
Jon Martindale/DigitalTrends

Além de escrever artigos sobre ChatGPT , chegar a um acordo com o chatbot de IA tem sido uma missão importante minha no ano passado. Achei útil ter ideias de receitas a partir de uma lista de ingredientes, escrever ideias divertidas de histórias alternativas e responder a esclarecimentos sobre regras de jogos de tabuleiro . Mas eu queria ver se poderia fazer algo mais impressionante: me ensinar como fazer um jogo.

O primeiro obstáculo

Já faz um tempo que eu queria fazer um jogo. Eu programei um monte de jogos básicos em Flash quando era criança – se você conseguir encontrar meu perfil no Newgrounds, poderá dar boas risadas deles – mas tive algumas ideias em minha mente que se transformaram em pensamentos que irão não mudar. Preciso fazê-los algum dia e talvez algum dia seja agora.

Mas saber como começar a fazer um jogo não é fácil. Eu realmente não sabia que tipo de jogo eu estava tentando fazer, ou que motor eu deveria usar, ou como você realmente começava a fazer um jogo. Até recentemente, eu simplesmente não tinha feito isso. Eu baixei o Unity uma vez, fiquei intimidado e o desinstalei.

Então, o primeiro passo na minha jornada de criação de jogos foi conversar com o ChatGPT sobre isso. Sem GPT personalizado sofisticado, sem plug-ins, apenas eu e meu amigo – a quem pedi para responder de uma forma encorajadora e compreensiva – como se estivesse ensinando uma criança.

Ele me explicou os principais motores de jogo e, depois de explicar minha ideia para um jogo, deu algumas sugestões. Em última análise, sugeriu que eu poderia fazê-lo em 2D e que, embora os grandes motores também fossem ótimos, seria melhor usar algo como Godot ou Game Maker Studio.

Fiz algumas pesquisas externas e finalmente decidi pelo Game Maker. Parecia o mais simples. ChatGPT ficou animado comigo quando eu disse que havia escolhido um mecanismo e então começamos a trabalhar no esboço do meu projeto.

O que agora?

Então, como faço para realmente fazer um jogo? ChatGPT sugeriu que eu aprendesse o motor, o que faz muito sentido. Mas como faço isso? Disseram que algumas abordagens poderiam funcionar, incluindo a realização de um tutorial. Isso fazia sentido, então encontrei um tutorial para Game Maker no YouTube e o revisei em algumas horas, fazendo um clone de Asteroids que o pré-adolescente Jon definitivamente teria gostado de jogar nos computadores da escola em vez de fazer o trabalho que havia sido designado.

Um clone de asteróides rodando no Game Maker.
Me tornei desenvolvedor de jogos, destruidor de tempo livre. Jon Martindale/DigitalTrends

Mas isso só me ensinou o básico sobre onde as coisas estavam no motor. Escrevi na lógica de Evento que o vídeo me passou e funcionou! Ótimo. O que agora?

O melhor conselho que li de desenvolvedores experientes foi apenas fazer outro jogo tutorial. E depois outro, depois outro, e continuei até que eu estivesse familiarizado o suficiente com o motor para entendê-lo. E só então eu poderia enfrentar meu próprio jogo.

Mas não sou um novato completo operando sozinho, sou? Tenho um relativo especialista em programação à minha direita sempre que tenho uma dúvida ou até mesmo preciso de um exemplo de trecho de código para copiar e colar. Eu tenho ChatGPT. Posso pular isso e começar a fazer meu próprio jogo. Ou assim pensei.

Está tudo bem – até que não esteja

Comecei da melhor forma. Com o ChatGPT para me orientar sobre o que eu precisava fazer, me dar exemplos de código quando eu estava preso ou fazer sugestões sobre como eu poderia fazer as coisas de maneira diferente, fiz um progresso rápido. Em poucas horas, eu tinha um protótipo básico do jogo.

Então, perguntei ao ChatGPT como poderia expandir o jogo para torná-lo maior, mais longo e mais divertido, e descobri que o protótipo que fiz era totalmente personalizado, sem capacidade de expansão sem reequipar tudo.

Mas tudo bem. É por isso que é um protótipo, certo? Então, começamos de novo, e desta vez faço um CustomGPT que é mais próximo do que preciso e sabe no que estou trabalhando. Eu fiz um que tinha conhecimento de todos os meus objetos e scripts do jogo, alguns de seus trechos de código, nomes de variáveis ​​– tudo funciona. E começamos novamente do zero, desta vez usando arrays e structs, que é um código modular compartimentado que chama scripts e destrói dinamicamente instâncias que não preciso mais, e assim por diante.

Mas, para ser honesto, não sei realmente o que isso significa. E em uma noite em particular, eu estava cansado, mas realmente queria terminar essa parte antes de ter que tirar alguns dias de folga para a vida, para os filhos e tudo mais. Então, peguei um atalho, deixando o ChatGPT realmente me escrever o código que eu precisava. Para minha alegria, conectei-o e funcionou. Ótimo. Boa noite.

Infelizmente, o que começou como algo único rapidamente se tornou um hábito. Comecei a usar nomes de variáveis ​​que o ChatGPT criou, fazendo com que ele comentasse o código para me ajudar a voltar a ele mais tarde. Eu estava aprendendo muito sobre como fazer um jogo e começando a achar mais fácil movimentar o motor. O segundo protótipo estava dando certo, mas então me deparei com um obstáculo.

Um objeto importante simplesmente não se comportaria como eu queria. ChatGPT sugeriu algumas correções, mas não funcionaram. Eu tentei descobrir sozinho. Por horas. E não cheguei a lugar nenhum.

Acabei copiando todo o código de evento de cada objeto do jogo e cada script para o ChatGPT e pedindo para encontrar o problema. Isso aconteceu. Mas as correções não funcionaram. E foi isso. Eu não tinha nada. Nenhum lugar para onde recorrer.

Eu não era habilidoso o suficiente para caçar bugs sozinho e não usei o controle de versão adequado para revertê-lo. Eu havia chegado a um beco sem saída por causa do meu próprio desejo de um desenvolvimento rápido à custa da compreensão. Eu não tinha aprendido o suficiente sobre como fazer um jogo, então agora que o jogo que fiz estava quebrado, eu não tinha ideia de como consertá-lo.

O problema

O problema de usar o ChatGPT para me ensinar a fazer um jogo, e imagino muitos outros assuntos, é que o ChatGPT não sabe de nada. Ele pode acessar informações e escrever algo que parece saber do que está falando, mas não sabe . Então, quando eu pedi para ele me ajudar a fazer algo de uma certa maneira, ele me ajudou a fazer de uma determinada maneira, sem me explicar que existem maneiras melhores de fazer isso.

Lógica de eventos no Game Maker Studio.
Eu só entendo metade do que está acontecendo aqui. E eu “escrevi” a maior parte. Jon Martindale/DigitalTrends

Não tive problemas com hallucination , mas tive dificuldade com o modo como o ChatGPT não tem o manual mais recente do Game Maker Studio em mãos, por isso muitas vezes fazia sugestões para lógica obsoleta que o mecanismo do Game Maker lançava todos os tipos de bandeiras vermelhas acabaram.

Meu GPT personalizado, e até mesmo o assistente de codificação Grimoire , mais profissionalmente solicitado, não são intuitivos. Eles não podem antecipar seus problemas, ou imaginar que seu escopo pode mudar no futuro, ou o que você pode querer ou precisar de várias conversas a partir de agora. Simplesmente não é um bom substituto para um professor humano ou para você mesmo ter o conhecimento.

A solução

Não desisti da minha jornada de criação de jogos. Na verdade, estou fazendo o próximo protótipo e ainda usando o ChatGPT — mas com uma nova abordagem. Estou escrevendo todo o código à mão, certificando-me de nomear todas as variáveis ​​e scripts e escrevendo comentários que façam sentido para mim. Assim, quando inevitavelmente quebrar alguma coisa, saberei como tudo funciona, para poder oficinar soluções.

Se não sei fazer algo, peço ao ChatGPT que me explique de maneira geral, e então uso as informações que ele me deu para fazer minhas próprias alterações em meu próprio jogo. É mais lento, mas muito mais estável. Quando surge um problema, posso resolvê-lo, porque na verdade estou aprendendo a fazer um jogo. Não apenas fazer com que o ChatGPT faça isso para mim enquanto estou viajando.

Meus amigos desenvolvedores acham tudo isso muito engraçado porque, depois de ter uma IA moderna como base para minhas primeiras falhas, estou aprendendo a codificar como todo mundo fez. Lentamente e com muitos erros.

Perguntando a Grimoire sobre o artigo.
Jon Martindale/DigitalTrends

Eu deveria ter perguntado a Grimoire sobre isso desde o início. Quando quero aprender alguma coisa, aprendo no manual. Quando quero verificar algo, peço ao ChatGPT que dê uma olhada para ter certeza de que estou indo na direção certa. Também implementei a área de trabalho do GitHub para que, se algum dia eu for muito longe de algum ponto profundo, posso rapidamente recuperá-lo para onde tudo fizer sentido novamente.

Ainda acho que o ChatGPT é uma ferramenta incrível que continuará a melhorar em sua capacidade de atuar como um tutor especializado, disponível dia e noite, por relativamente pouco dinheiro e com qualquer tom de voz que você queira dar. Apenas fazer com que ele crie uma lista de tarefas para mim no final de uma sessão de codificação que também elogie meus esforços e liste minhas conquistas é realmente encorajador, além de prático.

Mas não é a solução definitiva que eu esperava que fosse. E tudo bem. Ainda continuarei fazendo meu jogo e continuarei usando o ChatGPT para me ajudar onde puder. Espero que, dentro de um ou dois anos, vocês vejam meus colegas aqui me ajudando a contragosto a promovê-lo. Veremos.