Показать сообщение отдельно
Старый 19.08.2009, 22:52   #77
ZloyPetrushkO
Местный
 
Регистрация: 31.05.2008
Сообщений: 1,159
По умолчанию

в общем провел сча екперимент. модифицировал код так, чтобы он выводил количество тиков между прошедшим и текущим тактами для зены. и оказалось, что среднее значение растет с увеличением кол-ва зен.причем с одной оч неприятной особенностью- такты начинают идти очень неравномерно.значит надо действительно делать 100% вероятность подавления в опр момент. вы правы

Цитата:
Сообщение от SJack Посмотреть сообщение
....
Но, вообще - я б предложил несколько поменять логику работы. Идея в том, чтобы:
1. Каждый такт делать все твои проверки на подавление (без всякой вероятности):
- Если они прошли успешно - установить переменную timeStartSuppression = Time.current()
- Если они не прошли - сбросить эту переменную (timeStartSuppression = 0).
2. А дальше - работаешь сугубо с этой timeStartSuppression. Можно (да наверное, и нужно) даже не в targetGun с ней работать, а в Interpolate.tick(). И работать очень просто - грубо, задать максимальное время подавления timeSuppressionMax и минимально возможное время подавления timeSuppressionMin и написать примерно такое:
if (world.rnd().nextDouble(1,timeSuppressionMax/timeSuppressionMin)*(time.Current() - timeStartSuppression) > timeSuppressionMax )
{
//Установить подавленный режим
}
в общем думал сеня долго над етим способом...у меня получаеться что там ненамного меньше действий и операции не намного проще...
но мойуже написанный код имеет одно преимущество-там с вероятностью работать намного проще имхо.а без рбаоты с вероятностью никак в свете открвшихся обстоятельств...поетому модифицирую старый код

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



Цитата:
Сообщение от Kirill Посмотреть сообщение
Тестировал на 12-и аэродромах.
....
Петрушко, дружище, доведи уж модец до конца. Имхо, важный для игры.

Вот тут еще проходил миссию по атаке аэродрома в "Операции Блау". Зенитки подавить не удалось. См. скрины.
спс за тесты! в общем факт реально имеет место быть...будем лечить...
а доводка несколько затягиваеться изза того, что мне на время етой недели на работу надо 3 часа пилить до Жуковского и 3 часа обратно....
------
по 100% вероятности подавления.

в общем, я против того чтобы делать 100% вероятность.ибо в реале- никада не угадаешь.ет как под машину прыгать-кто то собьет, кто то нет...
но в данных обстоятельствах(када вероятность слишком низка и повысить ее никак) - необходимо сделать в опр момент 100% вероятность, вы правы
и я предлагают ето делать так. вероятность подавления зависит от дистанции. причем так-что если 75м(например) или ближе-она становиться 100%. тогда будет иметь смысл подавлять зены.
кроме того, ето согласовываеться с реалом( типа как будто саомлет таранить решил...)
как такое предложение?
ЗЫ: меткость чуть уменьшу еще.
и приложу файл, в котором помечу место и коэфициент отвечающее за меткость зены.

Последний раз редактировалось ZloyPetrushkO; 19.08.2009 в 22:59.
ZloyPetrushkO вне форума   Ответить с цитированием