Задумывался я давненько уже над созданием ММО стратегии из разряда 4X («eXplore, eXpand, eXploit, eXterminate») или близкой по духу, но вот беда, никак не мог придумать адекватную систему боя. Проблема была в том чтобы организовать взаимодействие между игроками, один из которых, а может даже оба на данный момент находятся в оффлайне. А тут недавно меня осенило и набросал я концепт боевой системы, который и хочу вынести на ваш суд.
Итак, классический подход а-ля серия HoMM или Disciples с пошаговыми тактическими боями не подходил. Другой вариант - автоматический расчёт битвы - Warlords и современные браузерные стратегии немецкой школы - OGame, Travian, Ikariam. Это вариант оказался более предпочтителен, посмотрел я на него поближе и обнаружил два используемых пути в разных комбинациях: 1. У кого длиннее, тот и самец ресурсов на армию и самой армии больше - тот и выиграл. Вообще-то довольно реалистично, если подумать, но скучно и подразумевает совсем глобальную стратегию, а в моей задумке кол-во юнитов исчисляется десятком-другим, да и тактического контроля хочется. 2. "Камень, ножницы, бумага", ну или по-другому: "Всадник бьёт лучника. Лучник бьёт копейщик. Копейщик бьёт всадника" - ага, уже какая-никакая, но тактика, как бы её разнообразить? Стал вспоминать игры где этого разнообразия в избытке и вспомнил MtG, в которую я одно время поигрывал. Хм, а почему бы и нет? Скрестим ежа с ужом...
В системе вполне могут быть очевидные просчёты, так что если кому будет не лень прочитать портянку и высказать мнение - милости прошу.
Порядок боя 1х1 До начала боя выбирается тактика, согласно которой игрок будет участвовать в бою и составляется отряд из имеющихся существ, артефактов и заклинаний. Существа и заклинания распределяются в две очереди. Бой происходит по раундам. По-умолчанию первое заклинание и первое существо в очереди считаются активными. Действие разных эффектов может изменять данный порядок. Раунд: 1 Из очереди разыгрывается активное заклинание и активное существо. 2 Происходит расчёт результатов раунда в 3 фазы: 2а Применение заклинаний «до» 2б Атаки существ 2в Применение заклинаний «после» После каждой фазы обновляется состояние очереди существ. 3 Сыгранное заклинание выходит из боя. Сыгранное существо, если не погибло, то в зависимости от выбранной тактики либо остаётся активным, либо переходит в конец очереди. Конец боя: Бой заканчивается если один из игроков потерял всех существ, либо если ни одна сторона не может более наносить прямой урон заклинаниями и существами, в этом случае проигравшими считаются оба игрока. Существа, вышедшие из боя, но не получившие смертельных повреждений возвращаются к хозяну. Если после боя количество существ превышает параметр лидерства отряда, то отряд расформировывается и так же возвращается к хозяину.
Тактика - Атакующая: существа меняются каждый раунд в порядке очереди даже если не получили смертельных повреждений. - Защитная: следующее существо входит в бой только после гибели активного.
Основные параметры существ - Раса - Сила — количество наносимого за раунд урона - Здоровье — количество урона, которое может выдержать существо - Лидерство — влияет на количество существ в отряде. Предводителем отряда становится существо с самым большим значением лидерства. В отряде не может быть двух лидеров — это значит, что в случае добавления в отряд существа с параметром лидерства равным таковому у текущего предводителя, текущий предводитель будет изгнан из отряда. - Магия — влияет на количество артефактов, которыми может пользоваться существо и на количество заклинаний, которыми можно снабдить отряд. Для отряда в учёт берётся максимальное значение из всех существ входящих в отряд в данный момент времени. Если во время боя количество заклинаний отряда превысит значение магии отряда в текущем раунде, то лишние заклинания будут сброшены, начиная с конца очереди.
Модификаторы и эффекты
Действующие в бою - Дистанционная атака — обладатель может нанести урон в каждом раунде по активному существу противника при условии что сам не является активным, т.е. не находится под атакой. Дистанционная атака считается первым ударом. - Засада (*) — если текущее активное существо противника не обладает такой же способностью, то для обладателя этой способности активным становится последнее существо в очереди противника против которого и будет произведена атака. Если к концу раунда обладатель остаётся жив, то вне зависимости от выбранной тактики он помещается в конец своей очереди. - Первый удар (***) — обладатель наносит повреждения первым. Если вражеское существо погибло, то ответных повреждений обладатель не получает. - Берсерк (**) — если урон, наносимый существом с этой способностью превышает повреждения необходимые для уничтожения существа противника, то остаток урона наносится следующему существу противника в очереди. Если очередь противника пуста, то урон достаётся следующему в очереди дружественному существу. Если других существ на поле нет, то урон наносится самому берсерку. Модификатор «берсерк» не совместим с модификаторами «засада» и «низкий боевой дух». - Низкий боевой дух — в случае гибели или выхода из боя лидера обладатель так же немедленно покидает бой. - Тяжёлая броня — предотвращает урон от существ с дистанционной атакой. - Сопротивление — предотвращает прямой урон от заклинаний. - Регенерация
Действующие на глобальной карте - Разведчик (*) - позволяет узнавать информацию об отрядах врага - Кладоискатель (*) - позволяет находить больше ресурсов - Мародёр (*) - даёт шанс получить часть экипировки побеждённых врагов. - Железная дисциплина (*) - если обладатель является лидером отряда, то игнорируется штраф лидерства от присутствия в отряде нескольких рас.
Модификаторы/навыки, помеченные символом (*), (**) и (***) могут быть получены при достижении существом новых уровней.
Расы Если в отряде присутствует несколько рас, то за каждую дополнительную расу на параметр лидерства отряда накладывается штраф в одну единицу.
Артефакты Артефакты закрепляются за существом и изменяют его параметры и навыки. Количество Артефактов, которое может нести существо равно его параметру магии. Существо не может нести несколько артефактов одного типа.
Уровень Существо, выжившее в бою получает уровень: (1): можно увеличить на 1 лидерство или магию, получить навыки помеченные (*) (2): можно увеличить на 1 лидерство или магию, получить навыки помеченные (*) и (**) (3): можно увеличить на 1 лидерство, магию, силу или здоровье, получить навыки помеченные (*), (**) и (***)
приведу своё дополнение- юнитов можно строить много, но управление над ними упрощённое,а толпа тактики не сделает (показатели снижены) aka zerglings строиш немного- но полный контроль, вплоть до rpg, плюс прокачка (как в диабло) некое среднее число юнитов- и ты можеш только отдавать приказы,куда идти, кого бить, но полного контроля над всеми нет (возможно как то идёт на убыль число фул контрол юнитов) (warhammer?) игра получится очень сбалансированной, и каждый найдёт "себя" в ней.
для начала нужно маленькую мат. модель сделать желательно) как только разберусь с толстостями основ панды, приступлю к своему мини проекту, там будет схожее
Сообщение отредактировал akzy - Суббота, 18.05.2013, 01:21
Идея с разным уровнем контроля сама по себе хорошая, но в моём случае не применима, т.к. моя основная цель как раз избежать необходимости присутствия игрока во время боя. Т.е. в данном случае задача игрока сводится к правильному построению отряда и заданию очерёдности вступления юнитов в действие, после чего расчёт результатов боя будет идти автоматически
Близко, но не совсем - ККИ ближе. Чуть позже попробую намутить пример сражения двух отрядов. Для простоты пока без заклинаний и артефактов - чисто монстрами, чтобы понятен процесс был.
Пример. Два боя (картинка увеличивается): 1 Бой: Вася воюет против Пети. У Васи отряд состоит из Гоблина-Воина и Гоблина-Охотника. У Пети - из двух Гоблинов-Воинов, Гоблина-Охотника и Гоблина-Вождя. Порядок отрядов виден на картинке. 1 раунд: Гоблин-Воин Васи сражается против Гоблина-Воина Пети, однако Петин гоблин даже не успвает добежать - его убивает лучник Васи. В то же время лучник Пети не может стрелять по гоблину Васи потому что он успел прокачать своего воина и у того стоит защита от стрел. 2 и 3 раунды проходят по той же схеме против второго воина и лучника 4 раунд - в дело вступает вождь - он не такой хрупкий и его не получается убить одной стрелой, так что он даже добегает до Васиного гоблина, но тут снова беда - Вася прокачал своему гоблину не только защиту от стрел, но ещё и первый удар. У вождя после выстрела лучника осталось всего два хита - как раз столько и выносит Васин воин, так что вождь тоже не успевает нанести вред Васиным существам. Flawless victory!
2 Бой: Петя пожаловался Саше. Саша собрал контр-отряд из Гоблина-Разведчика и Гоблина-Вождя, после чего напал на Васю, отряд которого не изменился. 1 Раунд: Сашин Гоблин разведчик, используя навык "Засада" вместо того чтобы воевать с прокачанным воином нападает на хвост отряда, т.е. на лучника. Лучник не может выстрелить т.к. сам находится под атакой, ну или если следовать формулировке в правилах - нет других существ сражающихся с Сашиным разведчиком, поэтому лучник погибает, а разведчик возвращается в конец своего отряда 2 Раунд: У Саши на поле выходит вождь против Васиного воина. Воин конечно крут и наносит первый удар -2 хита, однако, у вождя - 3 хита, поэтому вождь остаётся в бою и наносит в свою очередь повреждение в 1 хит воину. Воин убит. Петя отмщён.
Исход ясен если ты знаешь полный состав и порядок отряда противника, а это по-идее в обычной ситуации неизвестно. Необходимо проводить разведку. Даже в случае, если узнал состав - противник может успеть поменять его до того как ты атакуешь, а ещё есть магия. Я в начале говорил про "камень-ножницы-бумага" - там вроде как тоже результат заранее известен, но неизвестно что покажет противник - тут ситуация точно такая же.