"colore a minha vida com o caos do problema."
Durante a minha jornada com jogos conheci (tanto nessa comunidade maravilhosa, quanto em outras parceiras) pessoas muito mais capazes que eu quando o assunto em questão eram os códigos. Simplesmente, criei a percepção observando essas pessoas explicando, me corrigindo e colaborando com a minha construção de conhecimento que, de forma resumida, a programação (e até poderia estender isso até para a lógica do pensamento matemático de forma mais geral), o objetivo maior ao desenvolver uma linha de código é a de solucionar um problema da forma mais simples o possível. Basicamente, poderíamos seguir o princípio da economia, também conhecido como Navalha de Ockham, se existem duas formas de alcançar um mesmo fim use a mais simples!
Devo criar um rápido adendo, isso não se aplica exclusivamente a programação, mas também a escrita literária, o próprio método científico, etc. Mas, em razão do próprio princípio aqui defendido, não vou estender isso para além da exaustão.
Agora. Vejamos isso de um ponto de vista mais prático. (Devo novamente admitir de forma humilde o quão limitado sou no quesito programação, então mesmo as minhas sugestões ainda são as sugestões de alguém que ainda está se debruçando em entender as nuances da sintaxe e simplificações, provavelmente, outras sugestões brilhantes para as situações que eu apresente ou outras podem surgir nos comentários ou na cabeça de você leitor!)
Em determinado momento de meu projeto Fumiko.
(olha que menina linda que ama sapos e com longos cabelos verdes!)
Eu gostaria de elaborar um sistema de "Caixas Misteriosas", onde a personagem título seria capaz de receber itens aleatórios dentro de uma pool controlada de itens que eram potencializados de acordo com o nível de sorte da protagonista.
Seria totalmente válido alguém, como eu na época, pensar que a forma mais prática de resolver esse problema é simplesmente usar uma variável para segurar os níveis de sorte da personagem, outra para randomizar as opções e mais tantas condições forem necessárias para cada um dos itens possíveis. Essa pessoa alcançaria o resultado esperado com um evento mais ou menos assim...
Observe o tamanho descomunal deste evento. Do ponto de vista prático, provavelmente, qualquer um dos meus colegas repetiriam a frase título deste artigo para mim. Criar um jogo já é um feito EXTREMAMENTE desgastante, acredite, você não precisa amplificar todo o seu trabalho multiplicando seu código além do que ele necessita para funcionar em seu jogo.
Mostrarei parte desta mesma lógica feito de um modo mais simples:
(Embora, aqui não se aplique a chance de se conseguir dinheiro e as falas da personagem enquanto ela abre a sua "Caixa Misteriosa", creio que já sirva bem ao objetivo de exemplificar o meu ponto). Neste caso, devo creditar o nosso amigo @DanTheLion esse esquema de simplificação foi feito em cima das suas aulas de Javascript - Arrays (basta clicar para ser redirecionado a essa aula e entender melhor o que cada um desses comandos faz).
Creio que, seja até mais interessante que vocês possam compartilhar um pouco das suas experiências parecidas, sobre sistemas que vocês faziam de forma mais "braçal" e que com o ganho de experiência puderam simplificar. Como HUDs, e outros sistemas que podemos tentar recorrer a múltiplas condições desnecessárias.
Em suma, isso acaba sendo mais uma conversa que um tutorial em si ou algo do tipo... Uma certa forma que eu adquiri de pensar com relação a programação. Um bom código é necessariamente simples em sua leitura e ele não se estende mais do que o necessário.
Devo criar um rápido adendo, isso não se aplica exclusivamente a programação, mas também a escrita literária, o próprio método científico, etc. Mas, em razão do próprio princípio aqui defendido, não vou estender isso para além da exaustão.
Agora. Vejamos isso de um ponto de vista mais prático. (Devo novamente admitir de forma humilde o quão limitado sou no quesito programação, então mesmo as minhas sugestões ainda são as sugestões de alguém que ainda está se debruçando em entender as nuances da sintaxe e simplificações, provavelmente, outras sugestões brilhantes para as situações que eu apresente ou outras podem surgir nos comentários ou na cabeça de você leitor!)
Em determinado momento de meu projeto Fumiko.
Eu gostaria de elaborar um sistema de "Caixas Misteriosas", onde a personagem título seria capaz de receber itens aleatórios dentro de uma pool controlada de itens que eram potencializados de acordo com o nível de sorte da protagonista.
Seria totalmente válido alguém, como eu na época, pensar que a forma mais prática de resolver esse problema é simplesmente usar uma variável para segurar os níveis de sorte da personagem, outra para randomizar as opções e mais tantas condições forem necessárias para cada um dos itens possíveis. Essa pessoa alcançaria o resultado esperado com um evento mais ou menos assim...
Observe o tamanho descomunal deste evento. Do ponto de vista prático, provavelmente, qualquer um dos meus colegas repetiriam a frase título deste artigo para mim. Criar um jogo já é um feito EXTREMAMENTE desgastante, acredite, você não precisa amplificar todo o seu trabalho multiplicando seu código além do que ele necessita para funcionar em seu jogo.
Mostrarei parte desta mesma lógica feito de um modo mais simples:
(Embora, aqui não se aplique a chance de se conseguir dinheiro e as falas da personagem enquanto ela abre a sua "Caixa Misteriosa", creio que já sirva bem ao objetivo de exemplificar o meu ponto). Neste caso, devo creditar o nosso amigo @DanTheLion esse esquema de simplificação foi feito em cima das suas aulas de Javascript - Arrays (basta clicar para ser redirecionado a essa aula e entender melhor o que cada um desses comandos faz).
Creio que, seja até mais interessante que vocês possam compartilhar um pouco das suas experiências parecidas, sobre sistemas que vocês faziam de forma mais "braçal" e que com o ganho de experiência puderam simplificar. Como HUDs, e outros sistemas que podemos tentar recorrer a múltiplas condições desnecessárias.
Em suma, isso acaba sendo mais uma conversa que um tutorial em si ou algo do tipo... Uma certa forma que eu adquiri de pensar com relação a programação. Um bom código é necessariamente simples em sua leitura e ele não se estende mais do que o necessário.