Чем меньше опыта у вас есть, тем больше времени вы тратите впустую с предварительным дизайном. Создание хороших дизайнов - это то, что вы узнаете, выполнив это, а затем увидев / оценив, как это получается. Некоторые решения имеют далеко идущие, но неясные последствия. После некоторых игр вы, вероятно, сможете сделать первоначальный дизайн довольно солидным, и это окупится, если вы потратите еще немного времени на этот этап.
Мой девиз: прежде всего делать вещи, но руководствуйтесь здравым смыслом, чтобы определить, какие компоненты более критичны, чем другие, и спроектировать их довольно хорошо, в пределах вашего временного ограничения. Например, если ИИ имеет решающее значение для вашей игры, убедитесь, что вы можете легко расширить / изменить его позже. Или, если вы собираетесь написать компонент, который вы будете использовать в каждой игре, разработайте его для повторного использования. Отслеживайте свое время и не сходите с ума от проектирования. Установите крайний срок разработки и после этого начните взламывать все, чтобы получить конечный срок выпуска. Но убедитесь, что вы отметили, какие пункты необходимо реорганизовать / перепроектировать впоследствии, и рассчитайте через некоторое время, прежде чем вы начнете в следующей игре улучшать эти вещи, чтобы они не могли вас укусить!
Хороший совет: если вам приходится выбирать между двумя вариантами, не задерживайтесь над деталями. Чаще всего нет «хорошего» или «плохого». В некоторых ситуациях A будет лучше, в некоторых - B, и в целом разница между ними не всегда будет стоить времени.
Существует большой опыт в разработке программного обеспечения или игр, поэтому убедитесь, что вы тратите часть своего времени на исследования (например, читая книгу по дизайну, читая об опыте других, разговаривая с другими программистами о ваших разработках и т. Д.) ).