Тут в буржуйском форуме во всю обсуждают динамическую кампанию, решил тоже высказаться.
Считаю, что никаких одиночно-генерируемых миссий быть не должно. А должна быть одна миссия, которая содержит в себе все необходимые значения, обрабатываемые в дальнейшем движком кампании.
Выигрывает та сторона, которая раньше выполнит ключевые этапы – захватить зону «А» или аэродром «Б», уничтожить здание «В» и т.д.
Допустим по сюжету кампании силы НАТО вторгаются на территорию РФ со стороны Грузи в 04:00. Движок сразу расставляет самолеты по еродромам, расчеты ПВО, бронетехнику и флот. Все данные черпаются из главного файла, где указано какие зоны участвуют в конфликте, сколько и какие юниты где разместить. Далее генерируются первые задачи – механизированные колонны НАТО движутся маршем на север. Натыкаются в первой зоне на нашу танковую дивизию. Вызывают (читай генерируется задание для авиации) А-10. Эфки тоже получают задание на прикрытие десяток. Как только наши засекают противника, соответствующие задачи генерируются и у нас. Чтобы не получилось каши, нужно ограничить всех юнитов боеприпасом и ГСМ. Ну, в начале, конечно, все забито под завязку (у нападающей стороны), ну а потом все зависит от снабжения. Т.е. летают транспортники, ездят колонны, плавают корабли, привозят на еродромы топливо, ракеты и прочую матчасть. Притом, можно посмотреть сколько на какой базе у нас осталось р-77, р-27ае, сколько топлива, сколько единиц техники. Т.е. каждая задача должна рассчитываться экономно, но эффективно. Еще должно затрачиваться какое-то время на заправку и обслуживание. Например после каждого вылета А-10 требуется 20 мин. на заправку, 30 мин. на осмотр и подвеску вооружения, 1,5 часа на необходимый ремонт. Итого этот борт взлетит не ранее чем через 2ч. 20мин. Кстати юниты должны быть уникальными, каждый со своим бортовым номером. Если борт погиб - жди замены, время зависит от эффективности снабжения.
Игрока можно прикрепить к конкретному борту, или дать возможность выбирать самому боевой тип и/или задачу. Управлять кампанией можно при помощи вида F10.
По-моему сделать это не сложно. А если ко всему этому добавить живой эфир и динамическую погоду, будет вообще сказка.