Гагарин, ты как-то воспринимаешь это странно... Если цель Старшого - воспроизведение войны а не расширение серверов Геннадича - то пилоты должны выполнять свои задания. А не как это частенько случается. Пример - четверка истребителей летит сопровождает Илы. Подходят к цели - а там не танки а машинки. Вот же кайф! Пара усиленно отбивается от врага и не дает завалить Илы а двое оставшихся красавцев в это время валят наземку, потому как это проще и очков можно больше привезти.
Вот вторая идея, не с умножением а делением.
Во-первых надо учитывать выполнена или невыполнена поставленная задача. Т.е. если штурмы разнесли наземку в районе выбранного пункта – очки за уничтоженные цели давать с коэффициентом скажем 1.25 (может меньше-может больше). Стимул как говорится есть – больше очков – больше шансов выиграть миссию. Сбили еще что-нибудь дополнительно – молодцы, как есть так и дать очков. Сбитие подзащитных разведчиков или бомберов должно караться небольшим минусом, причем очки за все сбитые вражеские самолеты в случае потери «подзащитных» понижаются коэффициентом 0.75 (если конечно пилот не был сбит во время боя – т.е. если он сделал все что мог для защиты подопечных то минуса только стандартные за смерть). При этом если истребители отработали по наземным целям но не выполнили свое задание (не перехватили/не защитили своих) очки за наземку умножаются на 0.5 (вообще – чем меньше тем лучше). То же самое с штурмами. Если наземка не вынесена но сбиты воздушные цели – очки за возд. цели умножать на 0.5.
Что получаем – при невыполнении поставленных задач полученные очки заметно меньше чем если бы задача была выполнена. Так сказать урон то нанесли но вот только задачу все равно не выполнили. Для истребителей появится смысл выполнить сопровождение до конца а не как попало. В том числе и выполнить миссию разведки.
К чему вообще все это – чтобы сделать смысл выполнить поставленную задачу а не набить килов кто во что горазд. Особенно это касается полетов в так называемой «солянке», потому как когда летят целые сквады, хоть и имеют место некоторые «хитрости», но проблема kill/score – хантерства не настолько насущна.
Насчет реализации –
Для штурмов:
If (sum_of_grondkills>=0) and (sum_of_grondkills<0.5*sum_of_groundkills_at_attackarea) then true_airkills_points= airkills_points*0.5
else обычное начисление очков
Для истребителей:
If (friendly_bomb_or_sturm_killed>=0.75(0.5)*sum_of_friendly_bomb_or_sturm_krafts) and (pilot_alive=true) then (true_airkills_points=airkills_points*0.75) and (true_groundkills_points=groundkills_points*0.5) else как обычно