Список форумов Militarizm Militarizm
Игровой сервер "Милитаризм"
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Реформа боевой модели
На страницу 1, 2, 3, 4  След.
 
Начать новую тему   Ответить на тему    Список форумов Militarizm -> About the game (Об игре)
Предыдущая тема :: Следующая тема  
Автор Сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 00:03 16 Май 2010    Заголовок сообщения: Реформа боевой модели Ответить с цитатой

699622 писал(а):
2Akzium:
Письмо от 26.05.09.
Типичный случай: стоят в одном квадрате пехполк и пто одной страны. На
первой интерации вражеский пехполк с бОльшим опытом атакует пто и хорошо
его "опускает". В свою очередь "наш" пехполк наносит некоторые
повреждения "вражескому" пехполку. Наступает очередь пто и оно
"ретируется". В следующую очередь вражеский тб атакует "наших" и
спокойно сносит пехоту.

Реалистично ли это?

Вот занял оборону пехотный полк с приданным противотанковым дивизионом.
Утро. Атака вражеской пехоты. Если наш пехполк не выбит с позиций, иными
словам, если не включился приказ "ретироваться", то противотанковый
дивизион не сильно пострадает от такой атаки. Т.е. насколько-то
пострадает, но пропорционально примерно так же, как и наш пехполк.
Полдень. Атака танков на наши позиции. И пто (противотанковый дивизион),
и пехота (пехполк) участвуют в отражении атаки. Пехота несет потери, но
и пто несет потери. Если пто не убегает с позиций (т.е. если не
включился приказ "ретироваться"), то пехота потеряет пропорционально
примерно столько же, сколько и пто.
В нашем примере это означает, что и юнит пехота будет "помогать" пто в
отражении атаки вражеской пехоты, и юнит "пто" будет помогать пехоте
отражать танковую атаку.

Приведенное - частный случай. Подобных ситуаций в каждой партии десятки
и даже сотни. Но и это - не все.

Тут шло несколько абзацев про достоинства и недостатки "батальонной" и "полковой" систем, за которые мы потом зацепились и развели флуд на десяток писем.
Вырезаю, дабы не искушать себя и других Smile


В общем, я понимаю причины появления батальонной системы, но не
приветствую. Мне кажется, проблема разнообразия "молекул" должна
решиться несколько по-другому.

Во-первых, надо скомбинировать полковую систему с батальонной:

опять вырезаю по той же причине


Во-вторых, надо продумать хорошо такую штуку. Я сам не очень понимаю,
как это сделать. Но скажу Smile
Хочется, чтобы фактически новые юниты образовывались не оргмерами, а
комбинацией существующих юнитов. Т.е. чтобы можно было объединением
пехотного полка и противотанкового дивизиона получить фактически новый
юнит, имеющий основные характеристики обоих исходных. Т.е. чтобы в нашем
первом примере про атаку пехоты на пто и танков на пехоту у нас был один
юнит - "пехотный полк с приданным противотанковым дивизионом".

Как я себе это представляю. Два варианта:

Вариант 1. Двум разным юнитам, находящимся в одной клетке, ставится
приказ типа "объединиться". Оба юнита вместо исходных характеристик
получают усредненные характеристики. Допустим, более опытный пп
противника атакует наш пто. По-идее, параметры пто должны считаться как
А-4, З-2, но у нас параметры считаются как ((А-4, З-2) + (А-1, З-Cool) / 2
= (А-2,5; З-5), где А - атака, З - защита, (А-4, З-2) - параметры атаки
и защиты пто, (А-1, З-Cool - параметры атаки и защиты пехоты. Бонусы атаки
и защиты на конкретное войско и на местность расчитываются так же.*
Повреждения, нанесенные нашему "объединенному" юниту, распределяются
пропорционально, т.е. в нашем случае - поровну.
Повреждения наш "объединенный" юнит несет при каждой атаке составляющих
его юнит. Т.е. и когда атакуют пто, и когда атакуют пехоту.

При этом объединенный юнит ходит в очередь последнего составляющего его
юнита, т.е., в нашем случае, - в очередь пто. Атака происходит столько
раз, сколько полагалось бы атаковать и пеху, и пто за интерацию. Сила
каждой атаки - половина от суммы силы атаки пеха и пто. Бонусы
распределяются также пропорционально (т.е. у нас - пополам).

Ходит "объединенный" юнит со скоростью меньшего входящего в его состав
юнита, т.е. в нашем случае - со скоростью 4.

* Если что, я готов взять на себя составление математической модели.

Вариант 2: все находящиеся в одном квадрате юниты взаимодействуют без
дополнительных приказов. Т.е. все описанное в варианте 1 происходит
автоматически для расположенных в одном квадрате юнитов.
При этом движение происходит по старому алгоритму - каждый сам по себе.
Соответственно, в нашем случае может произойти так, что после отражения
атаки пехоты на первой интерации общими силами нашего пеха и пто, наш
пех уходит куда-то и атака нашим пто на "их" пехоту (если у пто была
выставлена пехота в целях) происходит силами одного пто с
соответствующими потерями.
Этот вариант мне кажется проще но несколько хуже - нельзя полноценно
атаковать "объединенными" юнитами..

Что это дает (особенно - 1-й вариант) - получаем из одного набора юнит -
"атомов" практически любые "молекулы", т.к. "атомы" сами взаимодействуют
и меняют свойства от взаимодействия. Т.е. вместо десятка юнит у нас
получается сотни произвольных юнит, которые может составлять каждый
игрок: юнит "пех+пто", "пех+тб", "пех+пто+тб", "тб+пво", "тб+гренадеры",
и так далее почти до бесконечности (ну, во всяком случае - несколько
сотен юнит). Причем это все будет реалистично и играбельно!

ЗЫ: жду хоть какого-нибудь ответа (но торопиться не надо)."

--
Станислав.



Проблема в том, что в Мили бои это не бои, а поединки юнитов. То есть нет взаимодействия нескольких юнитов ни в обороне ни в атаке.

Думаю решение этой проблемы потребует одного из 2-вариантов:

I вариант -моделирование боев как перестрелок:
- увеличение количества итераций до максимальной скорости юнитов (с учетом возможного движения по дороге).
- полная непредсказуемость порядка хода юнитов не только среди одного типа юнитов, но и между типами.
- безответность атак для всех типов юнитов.
Таким образом атаки это уже будут не бои, а как-бы залпы в ходе боя. Сила обороняющейся стороны будет в том, что она первой выстреллит по приблизившемуся противнику и в окопанности (если юнит окопался).

II вариант -моделирование боев как боев:
1. все юниты в одной клетке должны оборонять ее совместно.
2. потребуется разделение каждой итерации на две фазы:
- фаза учета столкновений (в которой программа запоминает все бои в котрых участвовал юнит, но потери не расчитывает);
- фаза расчета потерь (программа делит силы юнита между всеми боями в которых он участвовал и расчитывает потери за все бои в итерации).
Таким образом атаки это именно бои (или участие в бою если участников много), причем все атаки в пределах одной итерации происходят как-бы одновременно.
В этом случае сила обороны определяется просто коэффициентами характеристик атаки/обороны.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 08:45 16 Май 2010    Заголовок сообщения: Ответить с цитатой

Поясню более подробно суть второго варианта.
Пример: клетку обороняют пто и сб.
Их за итерацию атакуют (причем из трех разных соседних клеток) сб, пто и тб.
В первой фазе программа просто запомнит, что произошли следующие боевые столкновения юнитов:
сб-сб
сб-пто
пто-сб
пто-пто
тб-сб
тб-пто
Во второй фазе подсчитывается количество столкновений для каждого юнита
атакующие - по 2, обороняющиеся -по 3 боевых столкновения.
Далее расчитываются потери в каждом боестолкновении с учетом разделения характеристик на число столкновений для юнита.
Потери юнита за все столкновения суммируются (но опять же с разделением потерь за столкновение на 2 или 3).
То есть каждый юнит как бы делится на равные части среди всех столкновений в которых участвовал, а после подсчета потерь собирается опять воедино.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Pirx
Генерал


Зарегистрирован: 02.07.2002
Сообщения: 296
Откуда: Москва

СообщениеДобавлено: 10:45 20 Май 2010    Заголовок сообщения: Re: Реформа боевой модели Ответить с цитатой

Ekzarx писал(а):


Проблема в том, что в Мили бои это не бои, а поединки юнитов. То есть нет взаимодействия нескольких юнитов ни в обороне ни в атаке.

Думаю решение этой проблемы потребует одного из 2-вариантов:

I вариант -моделирование боев как перестрелок:
- увеличение количества итераций до максимальной скорости юнитов (с учетом возможного движения по дороге).


- полная непредсказуемость порядка хода юнитов не только среди одного типа юнитов, но и между типами.

А зачем и кому это нужно?Непредсказуемость эта?


Ekzarx писал(а):

Таким образом атаки это уже будут не бои, а как-бы залпы в ходе боя. Сила обороняющейся стороны будет в том, что она первой выстреллит по приблизившемуся противнику и в окопанности (если юнит окопался).


Требует пояснения каким образом отличать кто к кому приблизился?
Ekzarx писал(а):

II вариант -моделирование боев как боев:
1. все юниты в одной клетке должны оборонять ее совместно.
2. потребуется разделение каждой итерации на две фазы:
- фаза учета столкновений (в которой программа запоминает все бои в котрых участвовал юнит, но потери не расчитывает);
- фаза расчета потерь (программа делит силы юнита между всеми боями в которых он участвовал и расчитывает потери за все бои в итерации).
Таким образом атаки это именно бои (или участие в бою если участников много), причем все атаки в пределах одной итерации происходят как-бы одновременно.
В этом случае сила обороны определяется просто коэффициентами характеристик атаки/обороны.


Второй вариант мне интересен, но автору надо провести более глубокую проработку алгоритмов,рассмотреть максимально больше вариантов возможного взаимодействия юнитов и уже тогда выкладывать как предложение.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 15:23 25 Май 2010    Заголовок сообщения: Ответить с цитатой

Пришло время объяснить алгоритм второго варианта.

В отличии от существующей модели атаки происходят
не на отдельные юниты, а на все юниты расположенные
в клетке. Характеристики обороняющейся клетки расчитывается
как сумма характеристик всех находящихся в ней юнитов.
Итерация делиться на две фазы:
- 1 фаза - движения и атак;
- 2 фаза - расчета потерь.

В первой фазе происходят передвижения юнитов и
проверка условий для атаки. Если происходит атака, то:
- атакующий о обороняющиеся связываются боем и
больше в этой итерации не ходят и не атакуют;
- программа сохраняет список произошедших атак
(атак произойдет столько, сколько юнитов противника
было в атакуемой клетке).

Во второй фазе происходит расчет результатов боев:
- для каждого участвовавшего в боях юнита расчитывается
общее число боев N(i), где i -номер юнита;
- вычисляются потери юнитов в каждом отдельном бою, при этом
характеристики юнитов при расчете делятся на N(i);
- вычисляются итоговые потери юнитов, как сумма потерь за все бои.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Pirx
Генерал


Зарегистрирован: 02.07.2002
Сообщения: 296
Откуда: Москва

СообщениеДобавлено: 08:14 27 Май 2010    Заголовок сообщения: Ответить с цитатой

Скажи.плиз,правильно ли я понял. Расчет потерь для сражающихся юнитов происходит каждый раз для уровня потерь предшествующего вступлению в бой?Т.е. если в бой вступили несколько юнитов не имеющие потерь, то сначала рассчитываются потери в каждом бою,а потом сумма потерь полученных во всех боях присваивается каждому юниту участвовавшему в боях. Но при этом,если боев больше чем один, то все последующие бои расчитываются для юнитов в состоянии предшествующем первому бою,т.е. в состоянии клгда они не имели потерь. Так?

Если я правильно понял, то я ЗА это предложение. Оно можно сказать гениальное!!! И нужно его выносить на голосование.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 18:54 27 Май 2010    Заголовок сообщения: Ответить с цитатой

Pirx писал(а):
Скажи.плиз,правильно ли я понял. Расчет потерь для сражающихся юнитов происходит каждый раз для уровня потерь предшествующего вступлению в бой?Т.е. если в бой вступили несколько юнитов не имеющие потерь, то сначала рассчитываются потери в каждом бою,а потом сумма потерь полученных во всех боях присваивается каждому юниту участвовавшему в боях. Но при этом,если боев больше чем один, то все последующие бои расчитываются для юнитов в состоянии предшествующем первому бою,т.е. в состоянии клгда они не имели потерь. Так?


Именно так!!! В этом-то и фишка - все бои в одной итерации происходят как-бы ОДНОВРЕМЕННО!!!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Akzium
Лейтенант


Зарегистрирован: 29.01.2008
Сообщения: 147
Откуда: Россия, Вологда

СообщениеДобавлено: 19:22 27 Май 2010    Заголовок сообщения: Ответить с цитатой

Предложение интересное, но проработать нужно сильнее.

Цитата:
Характеристики обороняющейся клетки расчитывается
как сумма характеристик всех находящихся в ней юнитов.


Можно здесь конкретнее, или в самом деле просто арифметически складываем показатели защиты?

Цитата:
атакующий о обороняющиеся связываются боем и
больше в этой итерации не ходят и не атакуют;


Непонятно, как вообще в таком случае отвести в тыл побитое подразделение с фронта. Ведь если противник наступает - это автоматически будет сбрасывать возможность уйти любому из атакуемых юнитов.
Кроме этого непонятно вообще как будет происходить действия юнитов при встрече к примеру два на два. Из приведенного алгоритма выходит, что если Синий1 атакует Красного1 и Красного2 находящихся в одной клетке, то весь расчет боев в итерации будет произведен для трех юнит, а Синий2 в этом случае может смело нарезать круги вокруг или бежать дальше в тыл Красным, потому что в данной итерации его никто атаковать не будет (все Красные связаны боем с Синим1).
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Pirx
Генерал


Зарегистрирован: 02.07.2002
Сообщения: 296
Откуда: Москва

СообщениеДобавлено: 19:27 27 Май 2010    Заголовок сообщения: Ответить с цитатой

Ясно, ждемс тогда вердикт техслужбы:)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Akzium
Лейтенант


Зарегистрирован: 29.01.2008
Сообщения: 147
Откуда: Россия, Вологда

СообщениеДобавлено: 19:38 27 Май 2010    Заголовок сообщения: Ответить с цитатой

Вердикта пока не будет, потому как обсуждаются только, так сказать, наметки хорошей идеи. Для технической реализации нужна более детальная проработка вопроса.

Разделить итерацию на две фазы технически возможно, но нужно более подробно рассмотреть вопросы поведения юнит в этих фазах.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 20:09 27 Май 2010    Заголовок сообщения: Ответить с цитатой

Цитата:
Характеристики обороняющейся клетки расчитывается
как сумма характеристик всех находящихся в ней юнитов.


Это я вообще лишнее написал. Просто происходят бои со всеми юнитами в клетке - так правильно сформулировать. А складывать вообще ничего не надо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 21:30 28 Май 2010    Заголовок сообщения: Ответить с цитатой

Akzium писал(а):

Непонятно, как вообще в таком случае отвести в тыл побитое подразделение с фронта. Ведь если противник наступает - это автоматически будет сбрасывать возможность уйти любому из атакуемых юнитов.


На этот вопрос у меня нет однозначного ответа.
Как вариант: создать приказ "прикрывать".
Например если в клетке находятся подразделения А и Б,
у подразделения А приказ "прикрывать Б", то в бою будет
участвовать только подразделение А. Подразделение Б
сможет отступить.

Akzium писал(а):

Кроме этого непонятно вообще как будет происходить действия юнитов при встрече к примеру два на два. Из приведенного алгоритма выходит, что если Синий1 атакует Красного1 и Красного2 находящихся в одной клетке, то весь расчет боев в итерации будет произведен для трех юнит, а Синий2 в этом случае может смело нарезать круги вокруг или бежать дальше в тыл Красным, потому что в данной итерации его никто атаковать не будет (все Красные связаны боем с Синим1).


Чтобы предотвратить такие приемы,
предлагаю сделать невозможным "проход сквозь
боевые порядки противника" без боя.
Если путь юнита проходит через противника, то
он должен либо атаковать - либо остановиться.
Если подразумевалось, что Синий2 пройдет по
соседней клетке, то я в этом ничего странного не вижу.
Вполне логично, что через местность где противника нет
можно спокойно пройти.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Akzium
Лейтенант


Зарегистрирован: 29.01.2008
Сообщения: 147
Откуда: Россия, Вологда

СообщениеДобавлено: 09:09 29 Май 2010    Заголовок сообщения: Ответить с цитатой

Продолжу вопросы:
Цитата:
- вычисляются потери юнитов в каждом отдельном бою, при этом характеристики юнитов при расчете делятся на N(i);


Здесь интересно вообще что понимается под N(i)?

Если количество боев, как указано в предыдущем пункте, то N(i) получается прямопропорционально количеству атакующих. И значит количество атакующих будет геометрически снижать характеристики защищающихся. Пример: окопанную пехоту 3-го уровня (защита 17) атакует один юнит (любой). В таком случае при расчете потерь у обороняющегося защита будет 17, потому как количество боев N(i) будет 1. Но если количество атакующих станет 2, то защита обороняющегося упадет сразу вдвое 17 / 2 (N(i) в этом случае будет равно 2) = 8,5. Это выглядит по меньшей мере странно. В таком случае самым действенным будет собрать толпу из всех имеющихся в наличии юнит и идти в атаку - ни один даже самый защищенный юнит не выдержит падения характеристик в 5, 10 или более раз.

Конечно, в таком случае можно и характеристики атакующих разделить по всем боям (N(i)). Но тогда тоже не очень красиво получится - вне зависимости от брошенных в атаку сил произойдет бой как с одним юнитом со средними характеристиками. Если атакующих 2, то и атаковать каждый из них будет в полсилы (Атака / 2), а если их будет 10, то вообще каждый атакует лишь в 1/10 силы. С учетом того, что в итерацию будет всего один (общий) бой (10 атак в 1/10 силы в сумме дадут всего одну нормальную атаку), то шансов пробить фронт почти нет.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 12:17 29 Май 2010    Заголовок сообщения: Ответить с цитатой

Akzium писал(а):
Продолжу вопросы:
Цитата:
- вычисляются потери юнитов в каждом отдельном бою, при этом характеристики юнитов при расчете делятся на N(i);


Здесь интересно вообще что понимается под N(i)?

Если количество боев, как указано в предыдущем пункте, то N(i) получается прямопропорционально количеству атакующих. И значит количество атакующих будет геометрически снижать характеристики защищающихся. Пример: окопанную пехоту 3-го уровня (защита 17) атакует один юнит (любой). В таком случае при расчете потерь у обороняющегося защита будет 17, потому как количество боев N(i) будет 1. Но если количество атакующих станет 2, то защита обороняющегося упадет сразу вдвое 17 / 2 (N(i) в этом случае будет равно 2) = 8,5. Это выглядит по меньшей мере странно. В таком случае самым действенным будет собрать толпу из всех имеющихся в наличии юнит и идти в атаку - ни один даже самый защищенный юнит не выдержит падения характеристик в 5, 10 или более раз.


Правильно, делить на N(i) надо только атаку, но не защиту.
В теме про формулу потерь я предлагал "защиту" как она сейчас есть вообще отменить - оставить только коэфициент защиты.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
окдейл
Рядовой


Зарегистрирован: 08.07.2008
Сообщения: 300
Откуда: Уфа

СообщениеДобавлено: 16:45 29 Май 2010    Заголовок сообщения: Ответить с цитатой

что будет в итоге?
Я не понимаю почему защита 2 пехов должна возрос тать, как я понимаю она должна остоваца стандартной.
Или даже сокращаться так как из-за концентрации потери должны возрастать.
Я щита что одновремено в бою может участвовать несколько юнитов, о никак не весь квадрат, 1 пех батальон точно не будет атаковать на растоянии не 5 километров, ни 1 километра.
Да же если он может занять на них оборону.
Модель не демонстрирует атаку на узком участке и прорыв а именно нам фронта, с дальнейшей атакой без преимущества обороны.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Ekzarx
Рядовой


Зарегистрирован: 16.05.2009
Сообщения: 288
Откуда: Россия, Санкт-Петербург

СообщениеДобавлено: 17:05 29 Май 2010    Заголовок сообщения: Ответить с цитатой

окдейл писал(а):
что будет в итоге?
Я не понимаю почему защита 2 пехов должна возрос тать, как я понимаю она должна остоваца стандартной.


Так и будет -коэффициенты защиты никак не поменяются от количества подразделений и их потерь!

окдейл писал(а):

Или даже сокращаться так как из-за концентрации потери должны возрастать.


Возможно.


окдейл писал(а):

Я щита что одновремено в бою может участвовать несколько юнитов, о никак не весь квадрат, 1 пех батальон точно не будет атаковать на растоянии не 5 километров, ни 1 километра.
Да же если он может занять на них оборону.
Модель не демонстрирует атаку на узком участке и прорыв а именно нам фронта, с дальнейшей атакой без преимущества обороны.


Если минимальный масштаб в игре 4км, то какой может быть прорыв на участке фронта 1 км?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Militarizm -> About the game (Об игре) Часовой пояс: GMT + 2
На страницу 1, 2, 3, 4  След.
Страница 1 из 4

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB