PavelZ
Не ужели есть такая наука как “Игровая механика”, которая может дать рецепты для создания игровой механики в любом игровом проекте?
Строго говоря это не наука. Как игрок будет взаимодействовать с игрой, чем будет удерживаться его интерес - ничего непонятно. Игровое время одинаково для всех будет идти, какова будет его скорость? Разная скорость это разные игры по сути. Одно дело монстров рубить по лесам помахивая мечом (в 3Д или в 2Д браузера?), другое - межзвездные перелеты или торговать, “ходить на работу каждый день”. Все сразу в одном времени не выйдет - просто будет неинтересно. Баланс делать чтобы все волки не съели всех овец за два дня и т.п. тоже не просто. Принимать участие в проекте без заявленных сроков и внятных способов достижения не особо мотивирует. Это же не Wikipedia, в которой статьи самоценны, в игре объекты ценны именно взаимодействием с игроком, иначе это чаще всего пустой хлам. Или игрок будет видеть даже атомы? А оно ему надо? И откуда столько халявных вычислительных ресурсов - высчитывать взаимодействие от атомов до планет? Да один raytracing все сожрет, кстати каждый фотон - тоже независимый объект в базе даных?
Как и всё программирование, игрострой нагромождение штампов и условностей, по напридуманных разными, не спорю, очень грамотными людьми под свои нужды. Будь у меня цель наняться программистом или геймдизайнером то пришлось бы волей неволей втискиваться в эти рамки и условности.
Есть гвоздь - кто-то забивает его молотком, некоторые и лбом могут. Другие вот “выходят за рамки” и пространно пишут о том как можно было бы забивать 13-мерный сферический гвоздь в вакууме “если получить опыт”. При этом не забив ни одного настоящего и критикуя “условности”.
Тетрис программировать неинтересно - зато крайне познавательно в плане временных затрат и усилий. Желание сделать “симулятор всего”, а не только падающих фигурок в стакан должно при получении опыта поостыть. Можно конечно попробовать сделать тетрис так, чтобы каждый объект-фигурка был отдельно в БД, имел свой “характер” и посмотреть как оно получится :)
Про штампы в программировании - наверное тоже куча идей есть?