| ||||||||||||||
Заголовок: Наука и религия в исходниках НО. Прислано пользователем Bonarienz на 14.11.2010 в 02:18:41 Вот, картинка возможных точек поражения в центрах оснований "кубиков" жсд в ДжА и НО. (Шарики из пластика - потому и блики на них. А теней нет - выключены) Желтый шар - голова врага, в которую нацелен пулемет. Ниже "земли" - тоже есть шарики, но их не видно. Да, вот! Полагаю, в таком клуче реально формировать любой эллипс рассеяния, для любого оружия, хоть "летающего кинжала"! Если добавить еще два таких массива - перед и после показанного, то получаемое 3-х-мерное, дискретное пространство вполне заменит реальный эллипсоид(!) рассеяния. [attach] А физика в движке довольно серьезно расписана... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 14.11.2010 в 02:30:37 on 1289693921, Bonarienz wrote:
Продолжайте. ))) Я просто мысль не ловлю. Ну вывел, допустим, у нас есть формула этого эллипса. В каком виде она нужна? В виде формулы эксцентриситета + одного из поперечников? В виде формул двух поперечников? Ну допустим, у нас они есть F1(N) и F2(N). дальше что? | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем aazmav на 14.11.2010 в 02:39:33 Мне кажется, что в этом случае конус более уместен, чем эллипс | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Luficer на 14.11.2010 в 02:41:37 on 1289693921, Bonarienz wrote:
3 раза прочитал - не вкурил. Сейчас имеем что? целимся в голову - можем попасть в любой из представленных шариков. Если на месте шарика будет стена/голова - попадание на той же плоскости увидим. Если шарик под землей, либо стены нет - увидим попадание, соответственно, либо до либо после плоскости. "3-х-мерное, дискретное пространство" о котором ты говоришь даст ту же визуальную картину. Зачем изобретается велосипед? - для изменения картины попадания - нет, те же яйца. - для приближения к жизни в расчете точности попадания - проще добавить каждому оружию в рассеивание что-то вроде RND/х, где х - субъективная "точность" ствола в интервале 0.01-1, при этом 1 - самая навороченная снайперская винтовка, к примеру. ::) | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 14.11.2010 в 02:46:10 on 1289695297, Luficer wrote:
Вот-вот. Как я понимаю, хочется построить реалистичную модель очереди. Но я хоть убей не пойму, зачем выводить "эллипс", когда в конце концов вычисление шанса все равно сведется к функции от тех же переменных с теми же параметрами, так не все ли равно какая она будет? Если очень хочется, можно просчитать модель ОДИН РАЗ, построить кривую вероятностей, а потом подобрать похожую функцию, да блин хоть полином Чебышева с 2мя членами. И всё. Вводить просчет эллипсов в движок игры - излишество. Имхр. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Bonarienz на 14.11.2010 в 02:55:11 2Dirk_Diggler: Ты это, не ругайся - за такое on 1289695570, Dirk_Diggler wrote:
Этот T_2(x) = 2x^2 - 1, или этот T_3(x) = 4x^3 - 3x ? Или они же, но второго рода? И куда его? И зачем?! | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:01:59 Его - как функцию, интерполирующую штраф к попаданию на отрезке от 0 до 1. Например. да необязательно чебышевскими, можно любым другим. Суть - просто интерполировать некую "реальную" зависимость. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:02:27 Так в чем суть предложения считать эллипс? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 20:15:32 Никто не замечал, что меткость очередей падает с выстрелами просто катастрофически? Я тут формулу посмотрел... Стрелять стоя и даже сидя очередями длинней чем 2-3 выстрела из большинства оружия просто нет смысла. Последние же выстрелы из очереди в 10 патронов почти 100% уйдут в молоко - падение точности линейное. Может, сделать падение точности хотя бы по квадратному корню? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем jz на 13.11.2010 в 20:45:06 2Dirk_Diggler: Обычно в выходные здесь разработчики не появляются. Вот надергал из Weapons.c по поводу очереди. Предлагаю править прямо в коде, так Богам проще потом смотреть. Code:
| ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем jz на 13.11.2010 в 21:04:11 Quote:
Для техники, пулеметчиков лежа/сидя с опорой bDoBurst - BurstHitStart Остальные BurstPenalty * (bDoBurst - BurstHitStart) Как видно из отрывка, от выстрелов меняется величина bDoBurst. Остальные - постоянны. Теперь ищем, как меняется bDoBurst: Code:
Расчёт для АК-74: BurstPenalty = 7 BurstHitStart = 1 1: 7 * (1 - 1) = 0 2: 7 * (2 - 1) = 7 3: 7 * (3 - 1) = 14 4: 7 * (4 - 1) = 21 5: 7 * (5 - 1) = 28 6: 7 * (6 - 1) = 35 7: 7 * (7 - 1) = 42 8: 7 * (8 - 1) = 49 9: 7 * (9 - 1) = 56 10: 7 * (10 - 1) = 63 | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 21:34:12 во-во. Не стрелял из АК, но думается мне, что там даже со 2-3го патрона вероятность попадания одинаковая примерно. а тут разница между 3 и 10м - заоблачная. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Терапевт на 13.11.2010 в 21:37:52 on 1289676852, Dirk_Diggler wrote:
При стрельбе из неустойчивых положений - да, для попадания в щит 2 на 2 метра со 100 метров. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 21:43:17 on 1289677072, Терапевт wrote:
Да и в цель тоже. Могу спросить у знакомых вояк, но насколько я косвенно знаю, уже второй выстрел идет резко мимо цели. Как и все последующие. Т.е меткость падает мгновенно, и дальше колеблется у одного уровня. Если это не слабак/женщина, у которого ствол улетает в небо. У никонова, соот-но, такое происходит начиная с 3й пули... | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 21:52:04 вот и предлагаю, сделать, скажем, по корню. 2: 7 * sqrt(2 - 1) = 7 3: 7 * sqrt (3 - 1) = 9 5: 7 * sqrt (5 - 1) = 14 10: 7 * sqrt (10 - 1) = 21 Т.е. стандартное отклонение для всех выстрелы со штрафом - будет меньше. Если штраф кажется маленьким - увеличить BurstPenalty. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 22:00:22 2Dirk_Diggler: АК - да, без привычки к правильному удержанию - ствол идет вверх-влево... Уже вторая пуля - в молоко. У АКМ - есть компенсатор, увод вверх заметно меньше, но все равно есть. Кучности, особенно вертикальной - никакой, если не привыкнуть. У АН - совершенно иная схема, и кучность чуть ли не на порядок выше. Его практически "не ведет", все зависит от стрелка... Модель поведения ствола в руках стрелка - весьма непроста, и ее лучше вообще не трогать. По идее, для игры следует просто визуально оценивать "эллипс рассеивания" по макс. углу между пулями в очереди. Так, на десяти клетках рассеивание в три (3) фигуры - дост. реально. Это даст 5 фигур на 20 тайлах, 7 - на 30, и 9 - на 40. Вполне похоже. Такая аппроксимация допустима из допущения о малости углов. Видимо, тут просятся коэффициенты для типа патрона, дальности стрельбы ствола, и т.п. Т.е., если сейчас веер рассеивания в НО сузить раза в два, то будет песня!!! | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:01:18 и еще одно предложение. т.к. параметры стрельбы очередями у стволов очень разные, и в игре они не показываются, и лазить в TTX.TXT нет никакого желания/удовольствия, то: в случае очереди показывать у курсора вероятность попадания лишь первой пули(а показывается именно она) - нелогично. имхо, логично показывать там математическое ожидание кол-ва попаданий или вероятность попадания хотя бы одной пули. По вероятности только первой пули сложно принять решение о длине очереди... ::) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:02:34 on 1289678422, Bonarienz wrote:
в формуле не участвуют тайлы, только длина очереди. вообще, завязка на тайлы выглядит более логичной, но ЗНАЧИТЕЛЬНО сложнее реализуемой. поэтому я об этом даже и не заикаюсь. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:07:46 on 1289678422, Bonarienz wrote:
в случае нелинейной зависимости(логарифмич. или по корню) - все эти проблемы прекрасно решаются разным BurstPenalty. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 22:19:01 2Dirk_Diggler: В движке везде есть привязка к системе координат, хотя она часто - неявная. О тайлах и фигурах говорится в смысле углов рассеивания. Вышеприведенные цифры соответствуют стволам класса ПП и АКСУ. Можно прикинуть и углы, и тангенсы этих углов именно по "прикидке к местности". Как вариант, считать рассеивание по основанию в три фигуры, НО с высотой, равной дальнобойности ствола, с учетом влияния параметра Deadlyness. Типа, чем круче, тем точнее. Так, размер тайла - 1 игровой метр, фигура - 50...60 см шириной. Фигуры стоят в центрах тайлов. Имеем равносторонний треугольник с высотой 10 метров, и 2 полустороны в основании длиной 1м (расст. между центрами тайлов) + 30 см (полуширина фигуры). Вот, имеем тангенс полуугла рассеивания, равный 13/100. Имеем угол рассеивания (мелкодрянь куркулятырь) atan (13/100) * 2 = 14,8 град. им. алидады... Вполне разумная, похожая на правду цифра... Так что - возможно все, было бы время, желание, знания... | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 22:29:05 2Dirk_Diggler: Математика стрельбы весьма сложна. Там не зря эллипс рассеивания! Не стоит в это лезть, особенно по корням логарифмов :P. В ТФКП тангенс - тот же логарифм. Просчет любой "чистой" функции в игре - бессмысл. трата времени и ресурсов. Все надо делать линейными операциями, да еще и с целыми числами, в идеале. Cf. atan (4/7) соответствует 30 град. с точностью до 4-ого знака. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:33:30 Ну допустим у нас будет эллипс. Что дальше? А дальше просто - оценка вероятности попадания. Соот-но, если эллипс - есть функция от переменных а1,...,aN, то вероятность попадания - аналогично будет функцией от них же. опять таки, задача сведется к её интерполированию. Ну либо точному выводу, для тру-фанов реализма ))) Просто, я веду к тому, что линейное приближение - имеет смысл заменить на более точное нелинейное. Я не понял, ты ратуешь за более точное приближение или за то, чтобы не трогать линейную зависимость? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:37:12 on 1289680145, Bonarienz wrote:
Для корней и логарифмов - можно просчитать матрицу, скажем, 255х255, при старте игры, и брать значения оттуда. Вам же не жалко 254 кбайта ОЗУ? ;) ;D | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 22:40:27 2Dirk_Diggler: Я ратую за тангенс, приявязанный к системе координат игры!!! И оптимум из реалистичности и простоты-скорости обсчета. А тангенс - сугубо нелинейная функция... Если привязать точки попадания к дискретам жсд в тайле, или разбить тайл еще к.-л. сеткой(!), то можно тупо и линейно считать рассеивание по линии, перепендикулярной директрисе. Сразу же появляется твоя жаждаемая нелинейность для стрелка! | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:45:52 Вот, тут пишут: http://bratishka.ru/archiv/2010/2/2010_2_8.php Quote:
Это сказано про расчет по формуле, когда вероятность промаха постоянна для каждого выстрела. Делать вероятностные выкладки(невооруженным глазом видно, что при линейной зависимости разница будет ГОРАЗДО больше 7%) или по этому вопросу позиция принципиальная, и обсуждать смысла нет? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:48:21 on 1289680827, Bonarienz wrote:
В таком случае нельзя будет просчитать мат. ожидание кол-ва попаданий из очереди(и вывести для сведения игрока), ибо вероятностные параметры будут меняться при каждом выстреле очереди, ведь, если я правильно понял, эллипс будет после каждого выстрела пересчитываться. Или предлагается его константно "зашить" в ствол? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 22:55:48 2Dirk_Diggler: "Ф этай стате - многа букаф, а моск - малиньки! Ниасилил!" Просто учился по учебникам гр-ки Вентцель, непререкаемого авторитета в области теории стрельб. Поэтому - лень читать популяризаторофф. Любое классическое распределение в дискретных пространствах легко аппроксимируется прямыми (а кривыми - и не может). Причем вырожденный случай - равномерное распределение, т.е. одна прямая. В нашем случае можно сделать т.н. призматическое - треуг. с ненулевым основан.), или более сложное, но ломаное из прямых. Тогда таблица коэфф. займет не 256 кБайт, а 11...64 слова. От вышеуказанного легко впасть в мечты!!! Под каждый ствол - своя таблица рассеивания, макс. приближенная к реалу, но в дискретных коорд. ДжА. Пришел этот - он тоже по Вентцель учился - и нас понесло... Раскрыв угла рассеивания определяется опытом стрелка, начальный угол ошибки прицеливания (!) - меткостью и (меньше) ловкостью. Ну, и далее опять расписывается модель с 20-ю нелинейными параметрами... :beer: | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 23:03:50 2Dirk_Diggler: Не замыкайся на эллипсе! Ну не стОит вводить непр. функции в чисто дискретное пр-во! Вот смотри - берем базовым "куском" вертикальную плоскость, с длиной основания в 3 тайла, и проходящую через центры этих тайлов. Высота плоскости - 2 верт. тайла. Если считать в дискретах жсд, то плоскость имеет 15 гориз. и 8 верт. дискретов (4 + 4). Для полноты счастья убираем сверху 1 дискрет. Получаем 15х7 дискретов, причем центр нашей сетки - точка прицеливания. Вот и раздавай вероятности... В таком виде новобранец, стреляющий в голову врага, стоящего на земле, может попасть в торс другого, стоящего на крыше! Ужели мало? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 23:14:31 on 1289681748, Bonarienz wrote:
Однако. И это повод оставить линейную зависимость? :o | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 23:16:09 on 1289682230, Bonarienz wrote:
Вот именно. Зачем эллипс-то приплетать? Достаточно-то одной нелинейной функции. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 23:17:18 on 1289681748, Bonarienz wrote:
Чего??? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 23:22:32 2Dirk_Diggler: Ну, эллипс-та, эта, линейнай, канешна, да! Нравится нелинейная - вставляй! Только как и куда? А главное - зачем? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 23:23:30 on 1289683038, Dirk_Diggler wrote:
Того, того!!! | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 13.11.2010 в 23:37:34 on 1289683352, Bonarienz wrote:
Чтобы а) сделать очередь вещью более логичной. б) чтобы её имело смысл использовать. Сделали же возможность выпускать 12 патронов за раз, "а главное - зачем?" (ц) если после 4-6 патрона всё летит в молоко? on 1289683410, Bonarienz wrote:
Чего "того"? что значит "Любое классическое распределение в дискретных пространствах легко аппроксимируется прямыми (а кривыми - и не может). " Точки отрезочками соединил - это типа "аппроксимация в дискретном пространстве" ? Я теорию стрельбы не изучал, но с мат. аппаратом у меня всё в порядке. Чего это кривыми не может? Приближение кривыми оно завсегда точнее. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 13.11.2010 в 23:47:19 2Dirk_Diggler: У меня тож с МАТ-аппаратом все намана! Так обложу, этажей в 7, с падежными окончаниями!!! Эт распр. ошибка - on 1289684254, Dirk_Diggler wrote:
Задача не в том, у кого, что и насколько куда! Задача - в конкретной, простой, быстро считающейся и ЖИВОПИСНОЙ на экране ДжА автоматической стрельбе! Вот! | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Legend на 14.11.2010 в 00:14:08 2Dirk_Diggler: 2Bonarienz: Ппц, флудеры-оверпостеры, у меня от вас мозг кипит! :o :insane: Шли бы вы.. к некромантам =) А то ща весь народ распугаете, кто осмелится про клюшки Дейдраны спросить? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 00:30:13 on 1289684839, Bonarienz wrote:
Пространство не может состоять из 3(и даже 5) точек )))) В любом случае, аппроксимацию полиномами затем и придумали, что отрезки не удовлетворяют по точности. Опять же, отрезки соединяют точки некоторые точки, и приближение - есть набор отрезков. В нашем же случае - кривая ОДНА на все случаи жизни. on 1289684839, Bonarienz wrote:
Не вижу, чем нелинейная зависимость не удовлетворяет этому критерию. ) on 1289686448, Legend wrote:
А ты вот выскажись, ты за линейное возрастание штрафа с каждым выстрелом в очереди, или за нелинейное? ) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Legend на 14.11.2010 в 00:36:46 2Dirk_Diggler: Я за реалистичное возрастание штрафа с каждым выстрелом. Т.е. если один ствол кучнее другого, это должно быть смоделировано, причём как можно точно, а не "ну, скажем, здесь пусть два очка будет, а здесь пять, он же не очень кучный". Понимаю, сложно, но мне плевать, ибо здесь я хомячёк-конечный-потребитель ;D | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 00:41:23 on 1289687806, Legend wrote:
Вооот! Возвращаемся-таки к нелинейной модели. ) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 14.11.2010 в 00:58:22 2Dirk_Diggler: Вообще-то это полу-дойч прав... Такие темы надо в "копателях" разбирать... А здесь - все "потереть"... Пока Белорусы с ножницами моторизованными не пришли... Открывай ветку в "копателях"! | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Legend на 14.11.2010 в 01:08:24 2Bonarienz: Достаточно туда перенести ;) Что модераторы наверняка и сделают :D :pray: | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 02:20:37 on 1289687806, Legend wrote:
А как ты точность определишь, ты же не стрелял из всей этой ботвы? А вообще, меня вот еще расстраивает бедность описания стволов, где минусы/плюсы. Там бы еще писать "кучный", "большая отдача", "громкий" и т.п. )))) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 14.11.2010 в 02:23:53 2Dirk_Diggler: Ветку открыл, прямо тут, в НО... А по описаниям - напиши или отредактируй! Либо ПМ вставит в игру, либо самого тебя обучим. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 02:26:10 не люблю напрягаться впустую. Пока молчание мне ответом. так что только намечаю цели ) Будет одобрение/поддержка оццов-аснавателей - глядишь, и сделаю ) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 14.11.2010 в 02:29:22 2Dirk_Diggler: Перетоптать новые описания может Сам - Терапевт, может Сам - ПМ... Ну, и еще пяток товарищей... Так что кидай предложения, но с конкретными текстами - и усё... | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 02:35:32 on 1289694562, Bonarienz wrote:
Чтобы быть конкретным, надо найти то место в коде, где эти надписи выводятся. И оценить возможность расширения. Кстати, если я не ошибаюсь, уже не ко всем стволам эти строки влазят - надо учитывать длину.... | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 14.11.2010 в 02:47:13 2Dirk_Diggler: Кажися, все влазит (так!). Там хитрость есть. Тексты спроворь, а кому воткнуть - найдутся. Если что - на русский с падежами переведем - на 30...50% короче будет. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 14.11.2010 в 03:17:44 2Dirk_Diggler: Мы имеем четкое понимание того, как летят пули из ствола, с учетом параметров как оружия, так и стрелка! Строим индексированный массив, размеры которого как раз и определяются этой парой наборов параметров. Получаем N вариантов попадания, запускаем "рэндом", стреляем. С учетом конкретного ствола корректируем положение "желтого шарика", пускаем "рэндом", стреляем... И кто скажет, что это не эллипсоид - в дискретном пространстве? Напугался - а это наш треп перенесли! спасибо, Великие! | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:20:23 on 1289697464, Bonarienz wrote:
Какой массив? ЧТо он будет содержать, и какие индексы использоваться? on 1289697464, Bonarienz wrote:
Т.е. к 4-5 выстрелу можем и за спину себе выстрелить? Я ведь правильно понял, что после коррекции положения, эллипсоид надо выстроить еще раз вокруг желтого шарика и опять рандомом выстрелить в него? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:22:29 on 1289697464, Bonarienz wrote:
В этом случае проще использовать Байесовскую вероятность. Ствол хотя бы ОЧЕНЬ далеко не будет выносить от цели, а то мы так попадем хз вообще куда. Имхо. А вообще, я уже накопил возражения. Щаз, проясню неясные места в "Эллипсоидной модели" - и выложу. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 12.11.2010 в 22:01:37 2jz: Вообще-то, Dirk_Diggler - отчасти - прав! После захвата наемниками секторов, в которых формируются каратели, кол-во последних должно бы снижаться, и увеличиваться срок подготовки - с ростом, тсз, квалификации карателей. Т.е. вместо 4 мест с "дебитом в 20 зеленых" оставшиеся, напр., 2 выдают по 10 "очень злых" серых... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 12.11.2010 в 22:57:34 on 1289592097, Bonarienz wrote:
Хе-хе... Значит, не один я так думаю. Да, меньшее количество боев, но более сложных - было бы в плюс. Сейчас же просто приходится устраивать тир и мясо, используя слабые места AI, и мотаться из сектора в сектор "змейкой". Ибо (на текущий момент) подвиг по ночной зачистке сектора, в котором 50 фрагов, что я провел недавно, например, почти не имеет смысла - их очень скоро станет столько же. Что и надоедает... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем jz на 13.11.2010 в 00:04:14 on 1289595454, Dirk_Diggler wrote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 13.11.2010 в 00:09:52 on 1289388708, Legend wrote:
Это вот этот отрезок работает, со строки 2114, в процедуре DecideActionRed из DecideAction.c: Code:
Там просто алгоритм такой: есть флаги оценки ситуаций, красный - это очевидно враг рядом, сюда как раз относится когда попали, но не видно откуда. Тогда выбор действия идет так: 0) обработка нескольких редких ситуаций 1) Если в газе 1.1) Если не в противогазе, то его одеть 1.2) Утечь из зоны загазовки 2) Если уровень опасности не "черный"(врага не видно), и фраг не считает себя под атакой - перевязать раны 3) Если фраг ночью в освещенном месте, и нет приказа стоять на месте, и если фрага там видят мерки - утечь из освещенного места. 4) Если есть наводка по радио(если мерков видят другие фраги) - стрельнуть туда из дальнобойного оружия 5) Если энергии меньше 25, фраг не плывет и не под огнем - присесть отдохнуть 6) Если у фрага маленькая мораль - убегать подальше от всех мерков 7) Если у фрага AP хватает на вызов по рации, и есть другие фраги в секторе: 7.1) Если случайное число меньше вычисленного параметра и фраг не плывет - передать по рации красный сигнал тревоги 8) Если это гражданский или фраг под огнем, не робот: 8.1) Если величина шока >0 или это гражданский - выбираем точку подальше от мерков, и если она отличается от текущей позиции - утекаем к ней 8.2) Если не гражданский 8.2.1) Если стоим в полный рост и можно присесть, и хватает AP - приседаем. 8.2.2) Если не лежим, то можем и лечь(шанс 1 из 3х). 9) Если еще есть AP(больше резерва) и это фраг, 9.1).... в зависимости от морали, приказов и характера самого фрага меняются параметры поведения - помогать, искать врага или прятаться. Причем в реалтайме фраги никогда не прячутся. и т.д. .... 10) т.е. ложимся просто "а почему бы нет". Понятно, что после того, как ляжем - алгоритм проскакивает дальше. В конце алгоритма еще один раз фраг может лечь - когда уже совсем нечего больше делать, но это не тот фрагмент, потому что там он после того как уляжется, сразу завершает ход. Непонятно, почему фраг не утекает, когда подстрелен, на шаге 8.1. Похоже, это величина шока =0. Пуля выбила мало здоровья или вообще не выбила. Дальше округление вниз. В строке 6859 файла Soldier Control.c: Code:
Может, поменять её мальца? Чтобы при ненулевом ubCombinedLoss получался ненулевой шок. Ну не может быть, чтобы пуля попала, но вообще никакого влияния не оказала. Да будь ты в тройном бронике. Иои проверку на шок убрать - ведь тикать из под огня надо даже если в тебя еще не попали. Или вместо участка, где предписывается лечь, вставить участок с пометкой Code:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 13.11.2010 в 03:56:08 Вообще, если это кому-то надо, могу при свободном времени помогать алгоритмами для AI. Писать на сях я не умею, плюс надо точно помнить всю структуру переменных, а вот алгоритмы - могу накидывать. Достаточно подробные. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 13.11.2010 в 14:20:38 on 1289599454, jz wrote:
Да, тут с AI надо работать. Могу предложить посильную помощь )))) Если Терапевту и команде интересно, конечно. А еще, а еще, а еще можно было бы некоторую тактику на стратег. карту внести. А точнее - немного поменять механизм генерации отрядов. Как известно, при захвате шахты игрок получает некоторое количество золота от неё в день, которое равно некоторому параметру, (назовем который доходность) умноженному на лояльность. Предлагаю. Сделать генерацию отрядов - платной для Дейдраны. Оценить каждый вид солдатов(а в идеале - и их амуницию) - в какую-то денежку. Элиту дороже, зеленых - дешевле. При генерации - деньги отнимать из казны. Казну пополнять из шахт по тому же алгоритму - Дейдрана получает бабло в день, равное сумме доходов со всех шахт. Доход дейдраны с шахты равен полному доходу от шахты минус доход игрока. Т.е. если шахта альмы не захвачена игроком - 100% дохода в казну. Если захвачена и лояльность 73%, то Дейдрана будет получать с неё 27%. Чем дальше, тем делать элиту дешевле по чуть-чуть, а салабонов - дороже. Так генерируемые отряды будут более сильными. Естественно, ей надо оставить какой-то минимальный гарантированный доход, чтобы она совсем без войск не осталась ) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 13.11.2010 в 21:27:35 on 1289650838, Dirk_Diggler wrote:
Но идея интересная. Дейдрана же говорит при захвате последней шахты, дескать, как она будет без денег сохранять власть. Значит вот это правильно: on 1289650838, Dirk_Diggler wrote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Терапевт на 13.11.2010 в 21:29:19 on 1289613368, Dirk_Diggler wrote:
Алгоритмы ИИ (и прочие советы по модификации кода) интересны только тогда, когда основаны на проверенных фактах, а не на предположениях, сформировавшихся только лишь при разглядывании кода. Прежде чем озвучивать свои предположения по работе фрагментов кода, попробуй их проверять с помощью отладчика, узнаешь много интересного. ;) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 13.11.2010 в 21:30:48 on 1289676455, Airbus wrote:
Нелогично, согласен, но так игрок будет более заинтересован в лояльности, плюс - не будет такого существенного облегчения игрового процесса. а то драньке не хватит бабосов, и ога. Вообще, там по стратегическому AI - поле непаханное. С удовольствием бы помог. Излил посильно (ц) дмб )))) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 13.11.2010 в 21:38:27 on 1289676559, Терапевт wrote:
практическая проверка чревата тем, что я вместо работы с алгоритмами все время трачу на проверку. То бишь играю )))))) Есть такая мысль. Я бы компилил экзешники для желающих потестить мои предложения ) и выкладывал бы здесь. надо всего 2 вещи. а) добро разработчиков мода б) желающие потестить ;) А потом бы отсылал удачные находки разработчикам. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 13.11.2010 в 21:40:51 2Airbus: Инкассаторам - рады не будут, а вот за обещание не трогать самих и семьи при восстановлении власти Дейдранны - сами будут возить! Иначе - найдут способ подстраховаться, сиречь - и рыбку съесть, и на ... сесть... Homo homeni lupus est. А по существу - так и надо бы сделать. Но это - непросто... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 13.11.2010 в 21:45:16 on 1289677251, Bonarienz wrote:
Не берусь утверждать, но рискну предположить. Это - таки несложно. но если такое внедрить, сейвы полетят ) Зато можно без риска для сейвов сделать генерацию отрядов зависимой от дохода Драньки. ) Назначить постоянную цену одному солдату(любому). И всё. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем jz на 13.11.2010 в 22:04:29 on 1289676559, Терапевт wrote:
Есть такой тип тестирования, не помню как называется - берут человека из коридора фирмы/с улицы и включают ему программу. И он часто находит те ошибки, которые не видят "штатные" тестировщики. Просто мы так долго варимся в JA2-мире, что уже сформировали свое мнение какая джага должна быть. А Dirk_Diggler: смотрит "незамыленным" взглядом, например проверено, что после середины игры все игроки НО бросают игру. И вот он один заметил, что в это время нужно менять динамику боев. 2Dirk_Diggler: Сейчас из программистов НО остался один Терапевт. И вполне естественна его реакция на слова "AI никуда не годится". Он этот AI в одиночку менял в течение 2 лет минимум. Как с ребенком нянчился, сидя перед отладчиком сутками. Как это делается: меняется что-то, потом под отладчиком запускается игра и тестируется, тестируется. До шума в голове. Без зарплаты, в одиночку. Зная, что потом на форуме скажут "Херню написал". Кстати, возраст уже у него не юношеский - костры пионерские остыли, и ради славы работать... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 13.11.2010 в 22:11:30 on 1289678669, jz wrote:
Да и собсно, тут все понимают, что AI писал не он, 90% это для JA2 родной AI. от целой команды разработчиков. А его доработки - великолепны. Я видел(благодаря глюку с полем зрения), как в реалтайме фраги заходят в тыл, это же праздник какой-то ))) Да и многое-многое другое, реально радует. Я ж говорю, именно поэтому и энтузиазм проснулся. Когда видно, что это не косметика, а реально меняется сам процесс игры. Ну как не поучаствовать. ) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем jz на 13.11.2010 в 22:32:21 on 1289679090, Dirk_Diggler wrote:
:pivo: | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 13.11.2010 в 23:41:34 2Dirk_Diggler: Обсуждать те вопросы, что ты поднимаешь, надо не в огр. "кнопками" пр-ве форума, а с карандашом и бумагой - даже без нетбука. Это же постановка задач и их решение в общем виде, на уровне алгоритмов! Это надо за столом делать... Если ты в Москве, можно и попробовать... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 00:31:00 on 1289684494, Bonarienz wrote:
ну извиняйте, бананьев нема. К тому же, до фундаментальных задач, с применением математики типа оптимизационных алгоритмов, можно добраться позднее. существуют же вещи, которые можно подправить десятком-другим строчек кода. on 1289684494, Bonarienz wrote:
Я в Китае. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Legend на 14.11.2010 в 00:37:37 2Dirk_Diggler: Quote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 00:38:23 2Dirk_Diggler: Ну вот те раз! Ниньхао! Еще раз почитали - вопросик-то - сложный, параметров много. Таблицы 3-хмерные нужны... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 00:42:09 on 1289687857, Legend wrote:
Абсолютно. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 00:47:08 2Dirk_Diggler: Тогда можно абсолютно серьезно! Так! Попробую картинко спроворить... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Legend на 14.11.2010 в 01:09:05 2Dirk_Diggler: Понятно. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 02:11:48 on 1289687903, Bonarienz wrote:
Параметров, которые есть у ствола на это дело - всего два. Код переписывать, добавляя параметры - мало удовольствия, так что будем исходить из того, что функция P вероятности попадания на выстреле номер N, есть функция P( N ) одной переменной N с двумя параметрами BurstPenalty , BurstHitStart. С номером выстрела более-менее понятно, но как оставшиеся 2 параметра можно использовать? Ну не верю я, что чем длиннее очередь, тем более неточно бьет автомат. Если я не ошибаюсь, к концу длинной очереди обычно стрелок кладет пули даже немного точнее(особенно если у него трассирующие) Пока у меня есть только варианты: а) Не менять пока особо формулу расчета шанса, за исключением того, что штраф не прямо пропорционален N, а растет по логарифмическому закону - т.е. скорость увеличения штрафа падает с ростом N б) штраф в виде вычитаемого заменить на штраф-множитель, но с тем же законом - "рассеивание пуль" при очереди должно быть достаточно постоянным. в) воспринимать BurstHitStart как номер выстрела, когда вероятность промаха больше всего(скажем, у Калашникова - 2, у Никонова 3 или 4), а BurstPenalty - как некую абстрактную "кучность" ствола. Тогда, P( N ) при 0< N < BurstHitStart должен быть очень близок к P (0), в P (BurstHitStart) достигать своего минимум Pmin, а потом мееедленно возрастать. Соот-но, в этой модели BurstPenalty служит для определения собственно Pmin, а также скорости возрастания. Чем боьше BurstPenalty, тем меньше Pmin, и медленней растет точность. Например. Калаш, пляшет в руках начиная уже со второго выстрела. Соот-но, будет получаться такая примерно картина. Мерк, после всех вычислений, первый выстрел делает с точностью 70%. Далее, т.к. BurstPenalty большой, то точность падает сразу до 20% P(1) = 70% P(2) = 20% P(3) = 21% P(4) = 21% P(5) = 22% ... P(12) = 29% А Никонов первые два пускает без отдачи почти, потому максимальный удар в плечо приходится на 3ю пулю, а также - он просто кучней, поэтому точность растет к концу очереди быстрей. P(1) = 70% P(2) = 68% P(3) = 30% P(4) = 31% P(5) = 32% ... P(12) = 41% | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 02:27:15 2Dirk_Diggler: Давай в НОвую ветку - тут плохо! Заругают, до штрафа! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Zed на 14.11.2010 в 03:29:55 Во нафлудили то... ни на секунду отойти нельзя. :moderator: | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 14.11.2010 в 03:32:20 2Dirk_Diggler: Абсолютно точно подмечено - просто ратую за истинно дискретный обсчет всего, в идеале при помощи таблиц и таблиц коэффициентов поправок к таблицам! Вероятность того, что автомат в руках 13-летней тюти 5-ый выстрел сделает в зенит - велика. Бывает, девушки его ваще бросают, или он сам из рук рвется... | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 14.11.2010 в 03:33:11 2Zed: Огромное спасибо, Товарищ Председатель! вы спасли нас от порицания! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 14.11.2010 в 03:35:36 on 1289697623, Dirk_Diggler wrote:
UPD: Bonarienz о том же написал, только быстрее. :) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 03:38:10 2Airbus: АУГ - удержишь, а вот Пара - вряд-ли! Затвор тяжелее... Только если за "муде" под стволом держать... АН-94 - точно удержишь! Баланс моментов... Особенно - лежа, и с упора! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:38:45 on 1289698536, Airbus wrote:
Несомненно. Но тогда - где в этой модели сознательное удержание ствола бойцом? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:41:24 on 1289698340, Bonarienz wrote:
Т.к. предыдущее сообщение вот к этому: Quote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 03:41:26 2Dirk_Diggler: Опыт, сила, ловкость... Как раз хотел уточнить - полу-реал будет тогда, когда поведение системы оружие-пуля будет определяться и самим оружием, и стрелком из него! Вот, скажу как лох! Хочу, чтобы веер рассеивания у Ивана 10-ого уровня до 10-й пули в очереди укладывался в 1,2...1,4 торса. Т.е. из 10 пуль на расст. 20 тайлов, из АК-74 как минимум 7 попадали в цель. И чтобы у Айры АКСУ выпадал из рук после 6-ого выстрела в очереди. А предыдущие шли влево-вверх с углом град. 30 - типа, пыталась удержать... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:43:55 on 1289698886, Bonarienz wrote:
А конкретней? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 14.11.2010 в 03:43:57 2Bonarienz: Хм... Всегда думал, что от 9мм Парабеллума отдача будет слабее, чем от 5.56. Ошибался? 2Dirk_Diggler: Если по приведенной выше схеме (с желтой головой и красными точками) - то можно ввести возврат к первоначальному положению "головы" на N точек, в зависимости от силы бойца, опыта, прицеливания (если есть прицельная очередь. Я в оригинал ща играю, не знаю про моды)... "муде под стволом"... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:48:07 on 1289699037, Airbus wrote:
Вот, это уже да. Ок. остался один вопрос. что за массив-то такой предлагается получить? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 03:51:06 2Dirk_Diggler: А вот это - постановка задачи. Ща мы ее и будем в общем виде решать... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:51:18 on 1289698886, Bonarienz wrote:
замечательно, но у стволов на текущий момент - всего 2 параметра, отведенных под описание автоматической стрельбы. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 14.11.2010 в 03:51:23 2Dirk_Diggler: Если б было время, расписал бы, как я это понимаю. Но - вы с Bonarienz'ом слишком быстро разговариваете. :) Да и я сейчас гулять ухожу. Вернусь - гляну что еще написали, и попробую изложить. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:53:16 on 1289699466, Bonarienz wrote:
Это пока просто вопрос. ) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 03:55:18 2Airbus: Имелась в виду рукоять под стволом... А вообще - буллпап - это дословно - бычьи муде или бычья мошонка... Юмор такой, технико-зоологический... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 03:58:45 on 1289699483, Airbus wrote:
Как я понимаю, вы это понимаете так, что там половина weapons.c под переделку попадёт ) Блин, с такой мелочи как коррекция штрафа с линейного на нелинейный добраться до таких дебрей. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:05:21 2Dirk_Diggler: Получается, что в данном "куске" вычисляется мгновенная директриса? А собственно попадание-промах-обсчет и рендер трассы пули считаются потом? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:06:31 2Dirk_Diggler: В этом форуме - всегда так! Типа, привыкай! Рот всегда больше пирожного... В данном ключе, наверное, пойдут Чебышёв, 3, 5 или даже 7-ого. Или - видимо, даже правильней - аппрокс. Лежандром прямая. Т.е. имеем 1 выстрел точно, 1...3 след. не контролируем - тормозим и корректируем, 5-ый - та же точность, 6-ой - перерег., 7-ой - опять точно... Для Лежандра будет вероятность более точного н-ного выстрела, нежели первый... Вот только для скорости обсчета проще увязать значения функции с номером выстрела (таблицей), да масштабировать опытом. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:08:59 on 1289700321, Bonarienz wrote:
Там сперва вычисляется шанс попадания в процентах. Функция CalcChanceToHitGun сперва возвращает шанс, потом берется рандом до 100 и смотрится разница - попал-не попал, и если не попал, то вот потом уже вокруг этой разницы(т.е. всего лишь одного числа) и начинаются пляски - насколько и куда пулю отклонить и т.п. Тоже всё рандомом. Просто шанс попадания - кое-где ещё маячит. Скажем, около курсора выводится. и AI его использует(у него AICalcChanceToHitGun). | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:14:52 on 1289700391, Bonarienz wrote:
Напоминаю - в текущий момент у нас всего 2 параметра у ствола. Так что ни 3го, ни 7го пока не получится ) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:16:32 on 1289700391, Bonarienz wrote:
вообще не понял ничего ) Что значит "не контролируем - тормозим и корректируем" и всё остальное? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:18:47 В принципе, если эти 2 параметра порезать на куски по 4 бита, можно получить 4 параметра, но маленькие ) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:19:20 2Dirk_Diggler: Полагаю, что номер выстрела у нас тоже есть? Если нет - напрасны наши совершенства... on 1289700992, Dirk_Diggler wrote:
Это поведение собственно стрелка, не оружия. Поведение влияет на наведение! О! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:20:28 on 1289701160, Bonarienz wrote:
Есть. Он в переменной солдата хранится. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:22:39 4 бита на направление отдачи 4 бита на эксцентриситет эллипса 4 бита на силу отдачи /условно 4 бита на кучность. /условно Получаем 2 байта ) Вот из этого уже можно слепить нечто ) Но опять же, это же абзац как переписывать всё стрельбу ) on 1289701160, Bonarienz wrote:
все равно не понял | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:23:47 2Dirk_Diggler: Ну, где пополам, там и пополамки - тож пополам! Котельников-Найквист - наше всё! Если у нас есть эти два параметра, плюс номер выстрела - то уже можно думать. А если при этом легко добраться до параметров стрелка, то все устаканивается, вроде... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:25:25 on 1289701427, Bonarienz wrote:
Да нет же, в том-то и прикол. Мы не знаем, куда ушел предыдущий выстрел! Соот-но, вся затея с уводом очереди в какое-то направление - в такой концепции нереализуема. Либо менять структуру солдата, добавлять поле - это потащит за собой сейвы и проч. хвосты. Я поэтому и предлагаю вносить изменения только в CalcChanceToHit Да, реализма добавит мало. Но добавит. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:30:13 2Dirk_Diggler: Не, погоди... Еще раз! Вот берем 4 точки из Чебышева 3-его порядка. Аппроксимируем точность попадания - по У - точность, по Х - номер пули. Имеем - 1-ый - 100%, 2-ой - 70,7%, 3-ий - 100%, 4-ый - 70,7%, 5-ый - ~45% и т.п. От первого - напугались, поэтому второй ушел, на третий - поправились и попали, на четвертом - устали-пережали, на пятом - выдохлись, плечо заболело... Соответственно, точность приближения зависит от опыта - т.е. там, где у 4-ого уровня 70%, у 9-ого будет 90%... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:31:50 on 1289701813, Bonarienz wrote:
что значит берем? как берем - это и есть главный вопрос. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:34:25 2Dirk_Diggler: Ждал вопрос, поправил пред. сообщ. Т.е. Сиры не хранят инфу о предш. событиях? Мы вообще без памяти-родства? Но хоть номер выстрела - точно доступен? Как раз под точками имел в виду номера выстрелов!!! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:35:56 Вообще, то, что мы на момент просчета шанса попадания ничего не знаем про предыдущий выстрел - имеет свои плюсы. В такой ситуации событие "выстрел" - есть событие независимое, а потому можно использовать вероятностные формулы по схеме независимых испытаний Бернулли. А говоря более просто, то - мы можем легко и быстро вычислить а) Вероятность попадания хотя бы одной пули из очереди ДО собсно начала стрельбы. О чем можем известить игрока, выведя эту вероятность у курсора б) главное - математическое ожидание количетсва пуль, попавших в цель - аналогично. Мне лично крайне интересно, а сколько я примерно попаду пуль? Сейчас показывается у курсора - вероятность попадания первой пули. Т.е. информативность этого близка к нулю. Ну и переписывать ничего не надо, так, добавить пару строк. Кстати, никто не мешает в формулу подсчета штрафа ввести силу и опыт. Введение же "эллипсоидной модели" -сделает очередь более реалистичной, но - прощай просчет вероятности, ведь выстрелы станут зависимыми событиями. Останется только стрелять наудачу. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:37:47 on 1289702065, Bonarienz wrote:
Ответа все равно на нашел. "Аппроксимируем точность попадания". Аппроксимировать - дело десятое. Надо же сперва иметь ЧТО аппроксимировать. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:38:51 on 1289702065, Bonarienz wrote:
Какую-то хранят. А какую надо? Точку, куда улетела прошлая пуля? Это нет, не хранят. Гарантии не дам, во всяком случае, я не нашел. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:39:11 2Dirk_Diggler: "Вы ее вожделили!" (Велюров) Нда! Гребаные канаки... Никакого системного подхода... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 04:45:07 2Dirk_Diggler: Вот смотри... Если принять модель с Чебышёвым (ось бросания пули вертится и качается вокруг точной директрисы), то вес функции от номера пули даст коэфф. для вероятности. Т.е. при точном прицеливании из очереди в 5 пуль как минимум две попадут в торс, а при дост. опыте другие две ранят в руки или ноги-голову. Хотелось бы предыдущ. вероятность иметь... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 04:49:52 on 1289702707, Bonarienz wrote:
негде хранить. глобальную переменную заводить, что ли?... on 1289702707, Bonarienz wrote:
Да что за модель-то? Как полином получать, на каких данных? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:00:24 2Dirk_Diggler: Мы аппроксимируем полиномом вероятность поражения цели! | 1* * | .7* * | * 1_2_3_4_5_*___ Видимо, надо иначе нормировать - чтобы колебался вокруг 1 на + и на -. Но идея, надеюсь, понятна... Блин, гадский шрифт... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 05:08:54 on 1289703624, Bonarienz wrote:
Нет, непонятна. Что аппроксимируем - понятно. Непонятно - ЧТО аппроксимируем. Для аппроксимации нужны данные. Где их будем брать? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:14:27 2Dirk_Diggler: Движок высчитал вероятность - она "модифицируется" с помощью полинома - увеличивается или уменьшается. А значения функции загнаны в таблицу, выбор из которой - согласно номеру выстрела! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:18:49 2Dirk_Diggler: Справ. по спец. функциям есть ли под руками? Напр. Янке и Эмде? Наиболее точно и ЖИВОПИСНО было бы взять интеграл Френеля, комплексный, с зависимыми параметрами у Si(z) b Ci(z). Тогда спираль станет эллипсоидной. Cf. Траектория полета зенитной ракеты, российской, не Патриота... Т.е. ствол крутится вокруг директрисы первого выстрела, а плюс и минус к вероятности, даже с учетом неточности стрелка - дает полином. Берем, к примеру, Лежандра 5-ого порядка, нормируем первый выстрел под 1, тогда, по мере нарастания номера, поправка к вероятности и ее знак осциллируют вокруг 1, но амплитуда колебаний нарастает. Тогда, дажет при первонач. вер-ти 0,35 есть шанс попасть... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 05:19:11 on 1289704467, Bonarienz wrote:
Да что ж такое-то. )) Полином, полином мы откуда берем? Можно по шагам(сам алгоритм получения полиномов не надо) ? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 05:24:26 on 1289704729, Bonarienz wrote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:29:01 2Dirk_Diggler: 2Dirk_Diggler: Ответ на оба вопроса! Из полинома получаем таблицу поправок вероятности. Число из таблицы "вывешиваем" согласно опыту и пр. Полученное число прибавляем со знаком к вероятности, высчитанной движком. Иначе говоря - таблица строится нелинейным квантованием как аргумента функции, так и ее значений. Методом Монте-Негро произвольной вариации средне-потолочных значений! Но так, чтобы красивая очередь была! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 05:31:41 on 1289705341, Bonarienz wrote:
:facepalm: ;) А полином - на каких данных получаем? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 05:33:28 on 1289705341, Bonarienz wrote:
Монте-Карло )))))) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:36:29 А вот из размышлений - первый выстрел - согласно прицелу и вероятности, второй - неожиданно, третий - с поправкой на второй, четвертый - перебдели, пятый - ствол нагрелся-обожглись-пули вверх... И т.п. Потому и Лежандр - его осцилляции разбегаются по мере роста аргумента. А Чебышёв равноколеблется, наименее уклоняясь... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 05:38:14 on 1289705789, Bonarienz wrote:
Гм. Т.е. мы имеем набор значений a1...aN (N-максимальное кол-во выстрелов в очереди) - из размышлений?. Принято. Вопрос возникает, будет ли он универсальным, или для каждого ствола свой, но не важно. Допустим, у нас такой набор есть. А накой бок нам его тогда аппроксимировать, если мы его уже имеем? Брать прям значения из этого набора, и дело с концом. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:41:40 Чтобы совсем понятно было, почему помянут Френелев интеграл комплексный - если взять модуль от FI(1-z), то получим гладкую расходящуюся спираль, улетающую в ноль или бесконечность в "конце очереди"... Зенитные ракеты знаешь? Они стартуют резко вверх, а потом с упреждением, по сходящейся спирали, упрямо летят в сопло или центр ЭПР. Америкосам такого никада не сделать... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:43:21 2Dirk_Diggler: Метод Монте-Карло - научный, а вот Монте-Негро (Черногория) - наш, родной... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:49:09 2Dirk_Diggler: on 1289705894, Dirk_Diggler wrote:
Ну! Зачем я шарики в рендер пулемета вписывал (это из POVray картинко)? В идеале надо три-шесть таких табличек - пистолеты, ПП, ШВ, пулеметы, тяжелое, ножи-камни. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 14.11.2010 в 05:54:07 2Dirk_Diggler: Глянь в Википедии интеграл Френеля, приставь ствол к "кончику спирали", по Х и У отложи номера выстрелов - получишь 3-х-мерную спираль, описываемую потоком свинца, с вырывом пушки из рук в районе нуля - макс. кол-ва пуль в очереди. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 13:17:55 on 1289706201, Bonarienz wrote:
Вот интересно, почему эту таблицу методом тыка - можно составлять, а тупо подобрать нелинейную функцию для штрафа - нет? on 1289706847, Bonarienz wrote:
Я таких сентенций не понимаю. интегралов френеля - два, разных, каждый из них есть функция одной переменной. Так что куда там что откладывать - и как из функции одной переменной получить 3хмерную спираль, и откуда там вообще спираль? Если имеется в в иду клотоида, так она не сходится вообще. Если имеется в виду, что взять плоскость, перпендикулярную оси мерк-его цель, в начало координат ортогонально к ней "приставить" ствол, и откладывать координаты X=S(N), Y=C(N), где N - номер выстрела, полученную точку уже обрабатывать как отдачу, например, высчитать расстояние до начала координат(т.е. ствола), взвесить это число с применением силы/опыта и т.п., и вычесть из шанса как штраф? Возникает вопрос - а кто сказал, что интегралы Френеля вообще дают такое соответствие? И - где в этой модели параметры ствола-то? Или сперва берем эту точку, а потом её взвешиваем по параметрам ствола? Так это неправильно однозначно. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 14.11.2010 в 18:41:45 on 1289699718, Bonarienz wrote:
Нда... Прочитал 39 постов с момента последнего посещения... Злые вы, уйду я от вас. ;D Математик из меня никакой, так что вот так я это вижу: Допустим, у нас есть очередь в... 10 патронов с М4А1. Прицеливаемся в "голову", зажимаем курок. Первый патрон уйдет в голову (имеем перса с меткостью 90-100), второй - чуток выше и правее (не ожидал, не смог рассчитать увод ствола), и третий - выше первого, но без уклона по горизонтали (узнал по второму увод ствола, скорректировал, но вертикально все же ушло). Это - очередь с отсечкой, на М4 она есть, наверное потому что более-менее точная. Далее - четвертый патрон. Имеем еще больший увод по вертикали вверх (можно завязать на Силу), а по горизонтали - в зависимости от Меткости/Опыта. Пятый также уводится вверх, и, как подметил Bonarienz, плечо устает, патрон уходит вправо. И тут мы понимаем, что стреляем мы уже не совсем (совсем не) в голову. Резко возвращаем ствол на первую точку, и шестой-седьмой идут в голову (70-80%) или даже левее торса (перебор, завязать на опыт/силу/ловкость). С восьмого, допустим, начинается перегрев ствола. Так как мы уже полностью "в очереди", компенсируем отдачу почти полностью, но из-за ствола получается очень большой рандом траектории полета пули. ... С какого патрона у Иришки выбьет плечо и нанесется урон в 5HP, не знаю. :) | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 22:56:22 on 1289752905, Airbus wrote:
Итого, для моделирования очереди нам нужны следующие параметры: 1) длина отсечки 2) преимущественное направления отвода ствола Quote:
3) силу отдачи 4) параметры стрелка Quote:
Это, допустим, можно зашить в движок Quote:
Опять параметры солдата Quote:
5) теплоемкость(в текущей модели она учитывается, емнип) Quote:
тут не понял. почему? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 14.11.2010 в 23:38:13 Но все равно, возникают вопросы. Первый - не смущает, что нельзя оценить точность очереди(и, соот-но, сознательно подогнать её длину)? Второй - сейчас шанс попадания и просчет траектории пули - несвязанные друг с другом вещи. Как я понимаю, предлагается связать. Однако, это переделает иодиночную стрельбу. Я бы еще 10 раз подумал бы... Третий. - такая модель в общем лишает вообще каких либо шансов на попадание очередью, только с первой пули. Ствол ведет сразу и у всех. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 01:58:44 2Dirk_Diggler: Вот! Пока трезв - постараюсь быть четче. Про Френеля - Три проекции Спирали Френеля в компл. пр-ве. как раз и будут СИ, КИ и клотоида (вот же имя-то). Совсем не обязательно брать именно эту кривую, и эти коэфф-ты. Именно эта кривая - В ОБЩЕМ, качественно - показывает то движение, которое совершает стреляющий ствол! Не важно, в руках ли стрелка, или зажатый в пристрелочный станок. Т.е. линия бросания вращается вокруг касательной к идеальной траектории, соответствующей точке прицеливания!!! Вращается - это не значит, что равномерно! Т.е. описывается не окружность, но сложная замкнутая кривая! А если это отобразить в виде вылетевших пуль, то получится как раз сложная спираль. Кста - при перегреве ствол искривляется, образуя сложную дугу, в первом приближении похожую на цепную линию, если нет точки крепления ближе к срезу ствола, либо эллипс-овоид, если ствол укреплен в двух точках. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 15.11.2010 в 02:07:45 on 1289768182, Dirk_Diggler wrote:
on 1289770693, Dirk_Diggler wrote:
on 1289770693, Dirk_Diggler wrote:
on 1289770693, Dirk_Diggler wrote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:11:23 on 1289779124, Bonarienz wrote:
комплексное пр-во двумерно, там не может быть 3х проекций. Но я идею понял. 3хмерное пространство,обычное евклидово, если по X - это "си", Y - это "ки", а по Z откладывать номера выстрелов, то проекция получившегося дискретного набора точек на плоскость XY будет похоже на разброс пуль при "нормальной стрельбе". Это имеется в виду? on 1289779124, Bonarienz wrote:
Но ради этого морочиться на интегралы Френеля и иже с ним? Случайные физические процессы прекрасно аппроксимируются методами Монте-Карло. Если за этим дело встало - нужны данные по поражению цели очередями из разных стволом, и без Френеля можно отлично обойтись. on 1289779124, Bonarienz wrote:
"Замкнутая" - в смысле "непрерывная"? Спираль по определению не бывает замкнутой. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:15:58 on 1289779665, Airbus wrote:
Енто дано не всем. ) Лучше выдавать точные прогностические данные ) on 1289779665, Airbus wrote:
Напоминаю. Сперва 1) Вычисляется C - шанс попадания 2) Берется рандомное число R 3) Вычисляется "оценка промаха" D=R-C 4) Если D<=0, то игрок попал точно, идет расчет повреждений и т.п. 4) Если D>0, то пуля отклоняется от линии прицела пропорционально этой самой величие D Отсюда видно, что тут отклонение считается ПОСЛЕ определения, попал ли игрок. А в предлагаемой модели - наоборот. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 02:32:37 2Dirk_Diggler: Надо бы еще одну ветку открыть - ТФКП и Высший Анализ в ДжА!!! ;D Обрез ствола описывает - кажися - замкнутую кривую. А вот пули, они да, они летят по сложной спирали... Причем мета-ось спирали зависит еще и от силы притяжения... Попробую состряпать картинку, со стволом, 12-ю пулями и мишенью. Но это не быстро... Френель - это наиболее наглядный пример. Просто в общих курсах его никогда не объясняют в 3-х мерном пр-ве, и, тем более, не рассказывают о практич. применении... Если ты разбираешься в сист. управления - из всех известных траекторий преследования аппроксимация спиралью по типу инт. Френеля собачьей кривой с упреждением - дает наим. необх. коэфф. усиления в петле при макс. ампл. сигнала ошибки. Часто именно его амплитуду стараются делать неизменной, а угол схождения выбирают из параметров конуса рассеивания поражающей части. Такая система макс. устойчива, а "схождение" - гарантировано. И еще раз повторю! Френель упомянут просто как пример, нагляднейший, как казалось... В нашем случае нужна бы таблица параметров для каждого из 12 выстрелов, в которую можно забить, а потом и дополнять, все нужные и придумываемые вновь параметры. Мне вот интересно - "же" физика учитывает, а вот как это "же" связано с "дальность" ствола? Т.е. крутить ли пулям сложную спираль вокруг прямой, или вокруг параболы? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 15.11.2010 в 02:35:47 on 1289780158, Dirk_Diggler wrote:
Первый патрон, допустим, можно так и оставить. А последующие: D = R [больше стандартного] - (Сила+Меткость+Опыт)/10 - С. И прибавляем штраф на N патрон очереди. И если D > 0, то пуля отклоняется в нужном нам направлении. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 15.11.2010 в 02:37:51 on 1289781157, Bonarienz wrote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:39:05 on 1289781347, Airbus wrote:
Все эти (Сила+Меткость+Опыт)/10 и т.п. - включены в расчет шанса С. Там же - делается расчет "штрафа на N патрон очереди". Но он - линейно зависит от N. С этого момента всё и началось. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 15.11.2010 в 02:41:20 2Dirk_Diggler: Weapons.c говоришь... Пойду-ка я его для начала гляну. :) Я тут пока только предположениями бросался. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:42:42 on 1289781680, Airbus wrote:
Ога, процедуры UseGun и CalcChanceToHitGun. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 02:44:04 2Dirk_Diggler: ...я интересуюсь... А вот ломаная устроит? напр, до 3-го патрона вкл. - альфа*Штраф, а с 4-го - бета*Штраф. Альфу и бету считать из дальнобойности ствола, напр. Как уже говорилось - хоцца рессеяние верт. и гориз, в пределах эллипса поражения. Кста. Для АКМ он - вытянут по верт., наклонен влево, а линия визирования - чуть выше нижнего фокуса эллипса. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:47:26 on 1289781157, Bonarienz wrote:
Если такую таблицу составлять эмпирически, то - она будет разной для каждого ствола, причем она будет разной даже для одного ствола, но с разной начинкой, т.к. на на её формирование будут влиять кол-во точек фиксации ствола(наличие сошек), теплоемкость, коэф. теплового расширения и геометрия ствола, наличие механизма отсечки, и прочая и прочая. Такого стат. материала мы нигде и никогда не найдем, а найдем - переписывать тоже огого сколько кода, вероятность реализации такой затеи =0. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:49:33 on 1289781844, Bonarienz wrote:
На текущий момент, в процедуру отклонения пули, передается только один параметр - разница D (между рандомом и шансом). Для создания такого отклонения надо иметь минимум ДВА параметра. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:51:50 on 1289781157, Bonarienz wrote:
Вокруг прямой однозначно. А то мы так до моделирования сопротивления воздуха дойдем(а это уже не парабола) и давления солнечного света на пулю. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 02:55:35 on 1289782310, Dirk_Diggler wrote:
Это-то - просто!!! ;D Чисто малюс. вектор силы, давящий, блин, с северо-востока, под углом сигма=atan(5/2). Угол известен точно. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 02:57:24 2Dirk_Diggler: on 1289782173, Dirk_Diggler wrote:
А кто мешает так или иначе приделывать этот "Де" то к верт., то к гориз.? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 02:57:29 on 1289782535, Bonarienz wrote:
Чего это угол известен точно? Солнце под разным углом на пулю давит в зависимости от времени суток. И пока пуля летит - угол меняется, однако. Дифур. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 02:58:44 2Dirk_Diggler: Ты еще забыл снос частиц оболочки - т.е. уравнение движения тела переменной массы надо вводить!!! ;D | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 15.11.2010 в 02:59:52 on 1289781844, Bonarienz wrote:
И два патрона из АК хорошо уходят. Третий - вдаль, а первые два - точно. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:01:49 2Dirk_Diggler: А вот и нет! В ДжА меняется освещенность. А солнце, когда есть, всегда на СВ, с углом элевации сигма=atan(5/2)! Причем именно это однозначно указывает на расположение Арульки в южном полушарии. Ага! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:04:30 2Airbus: Это так... Только твой знакомый, видимо - высокий ПРОФ. Сымаем шляпу, искренне. Отсечь два патрона из АКМ - это весьма непросто. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 03:05:28 on 1289782792, Airbus wrote:
| ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 03:07:12 on 1289782909, Bonarienz wrote:
Срочно переделать модель ! ;D | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:07:58 2Dirk_Diggler: Ну как же - не построишь? Есть же номер текущего выстрела в очереди? Или я опять что-то забыл? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 03:09:20 on 1289783278, Bonarienz wrote:
Номер - есть! Если построишь - предлагайте модель. Я лично ума не дам как. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:09:54 2Dirk_Diggler: Мы же тебе говорили - горы и солнце!!! Корову новую, надеемся, уже видел? Переделываем! Только кто будет тени переделывать? Пару десятков тысяч... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:12:30 2Dirk_Diggler: Мы Сей не розумеем настолько - надо бы код понимать. На первый взгляд - при расчете этих двух параметров учитывать номер пули в очереди. С тем или иным весом, для того или другого параметра... Если просто, то еще передавать dH и dV (гориз. и верт. отклонения) в расчет траектории... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 03:16:48 on 1289783550, Bonarienz wrote:
Не надо. Можно своими словами и формулами. Вопрос - как вычислить штраф P к шансу попадания, для выстрела номер N, и оружия с параметрами BurstPenalty и BurstHitStart? Параметры сейчас имеются в виду типа "сила отдачи" и "длина отсечки", но можно их использовать как угодно. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:19:28 2Dirk_Diggler: Как вариант 1/(Nmax-Ncurr) - величина, обратная разности выбранной (или макс. возм.) длины очереди и текущего выстрела. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:21:19 2Dirk_Diggler: Ну что же! Уже кое-что нарисовалось... Думаю, Терапевт смотрит на нас с иронической надеждой... | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Bonarienz на 15.11.2010 в 03:23:30 2Dirk_Diggler: Еще раз уточни - как определены BurstPenalty и BurstHitStart? Как некий штраф для соотв. ствола, а вот второе? Да, надо еще соотнестись с аналог. процедурой для одиночного выстрела. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 15.11.2010 в 03:25:56 2Bonarienz: Эм... Мой знакомый - это мой пятидесятилетний отец. :) 25 лет в армии, несколько лет назад уволился. Насчет отклонения - может их зашить в параметры ствола, и последующие пули кидать по вектору вверх-вправо? Для автоматчиков отклонение делить на 2. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 03:30:24 второе - с какого момента штраф начинает действовать. Т.к. типа длина отсечки. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Airbus на 15.11.2010 в 03:30:46 Подумал тут... Для первых 4 выстрелов штраф к патрону в очереди можно увеличивать по параболе, а для последующих - ввести зависимость от дальности до цели. Будет нечто константное, конечно... | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Legend на 15.11.2010 в 03:40:18 2Dirk_Diggler: Quote:
:cranky: | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 15.11.2010 в 03:47:40 on 1289785218, Legend wrote:
Эт точно. Не почувствуешь - не поймешь. ))) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 15.11.2010 в 03:50:31 2Dirk_Diggler: Не обращай внимания на гениев. Они - бесплодны, но говорливы. Немного смелости, и терпения - определиться с таблицей для одного, опорного, референсного ствола - и тупо СМОТРЕТЬ на экране, как стреляется с теми или иными параметрами и коэфф. Как говорят в моей области (видео и телевещание) - всему головой - экран и колонка! | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 15.11.2010 в 03:56:32 2Dirk_Diggler: on 1289784624, Dirk_Diggler wrote:
Никак не въедем - это та длина очереди, что выставлена игроком? | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Legend на 15.11.2010 в 03:58:26 2Dirk_Diggler: Тогда с тебя ядрёна грена, с меня полигон :D :devil: Доставка на Бене, чтобы потом вычислить элипсоиду поражения =) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 15.11.2010 в 03:58:31 Нет. Это параметр ствола. ну типа номер выстрела, на котором отдача лупит в плечо. У большинства стволов - равна 1, т.е. отдача с первого выстрела, поэтому уже у второго штраф резко растет. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Airbus на 15.11.2010 в 04:01:33 on 1289786311, Dirk_Diggler wrote:
Поэтому я за параболу с коэффициентом = коэфф. кучности ствола. :) | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 15.11.2010 в 04:08:18 2Dirk_Diggler: 2Airbus: Вот Вам обоим - таблица! Там даже аПыски в заголовках таблицы! http://ru.wikipedia.org/wiki/%D0%90%D0%9A%D0%9C Отличный материал. Осталось разобраться в сущ. модели, модиф. ее и привязать таблицу поправок для стволов/стрелков. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 15.11.2010 в 04:15:19 on 1289786898, Bonarienz wrote:
и получим данные только по одному стволу. потом то же самое по всем остальным, а потом -придумать схему хранения этих данных, переписать десяток функций и т.д и т.п. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Airbus на 15.11.2010 в 04:17:44 2Bonarienz: Посмотрел. Получился, грубо говоря, неправильный конус от стрелка. И там стрельба короткими очередями, а мы рассчитываем еще и длинные. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 15.11.2010 в 04:27:50 2Dirk_Diggler: Да нет! Нам же известен ствол, есть целая простыня с его параметрами - ттх.тхт! Ужели так трудно все это увязать? Таблица - общая для всего типа стволов, и веса - для конкретных стволов из типа. Например... Уверен, что подобные таблицы можно довольно быстро найти для всех мыслимых стволов. Если не офиц., то любит. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Dirk_Diggler на 15.11.2010 в 04:30:16 on 1289788070, Bonarienz wrote:
не может она быть общая. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 15.11.2010 в 04:42:23 2Dirk_Diggler: Я вспомнил!!! Кажися, в ДжА тайл есть в двух ипостасях! В ближней зоне тайл - 1 метр! В дальней зоне (стрельба) тайл - 10 метров!!! Т.е. при стрельбе по врагу, стоящему в 20 тайлах, ты стреляешь на 200 метров!!! А таблицу всегда можно сделать общей - коэфф-мидля стволов при ее параметрах. | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 15.11.2010 в 04:49:39 2Dirk_Diggler: Кста! Если все прально поняли, то простой подстановкой 2 или 3 в BurstHitStart мы получаем ломаную? Т.е. первые два-три выстрела будут относительно точными? Если так, то надо взвешивать оба параметра некоей функцией от номера выстрела... | ||||||||||||||
Заголовок: Re: Клуб "Ночные операции" - 4 Прислано пользователем Bonarienz на 15.11.2010 в 04:54:29 2Dirk_Diggler: Эти параметры "живут" в ттх.тхт!!! Правь и пробуй!!! И я знаю, кто это сделал! А посему - видимо, не составит проблемы вписать параметры эллипса рассеивания для всех стволов прямо в ттх.тхт!!! Я даже уверен, что теперь мои персы будут стрелять очередями, как Иван или Тоска 10-ого уровня!!! | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 05:17:51 on 1289676559, Терапевт wrote:
Сделал сейв, в котором фраг ложится/встает. Попробовал отладить. Виснет. Какая конфигурация сборки предназначена для отладки? | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 05:18:31 on 1289789379, Bonarienz wrote:
Да. Тогда штраф на эти выстрелы получается очень маленький. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Терапевт на 15.11.2010 в 18:59:43 on 1289677107, Dirk_Diggler wrote:
При модификациях ИИ на это у меня уходит большая часть времени, а иначе никак с гарантией не убедиться в правильности и работоспособности изменений. on 1289677107, Dirk_Diggler wrote:
Я не против. Правда не уверен, что найдётся много желающих очень часто проверять вносимые изменения. Да и сторонняя оценка очень субъективна. Одни скажут, что что-то изменилось, а другие этого не заметят. Кому верить - не понятно. Поэтому в данном случае работает принцип: сам не сделаешь, никто не сделает. on 1289791071, Dirk_Diggler wrote:
Debug. Что касается изменения формулы начисления штрафа в очереди, то менять её нет никакого смысла. Точность первых выстрелов в очереди может быть и так очень высокой в силу того, что при расчётах вероятность попадания может значительно превышать 100%, и только в самом конце вычислений обрезается до 99%. | ||||||||||||||
Заголовок: Re: Глюки и проблемы - 2 Прислано пользователем Dirk_Diggler на 15.11.2010 в 21:11:36 on 1289840383, Терапевт wrote:
вот-вот ) Еще один аргумент за то, что её надо менять. ) on 1289840383, Терапевт wrote:
У меня Debug намертво виснет при запуске, отжирая 99% процессора.Модифицировал для отладки конфигурацию Release, вроде кое-как работает. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 15.11.2010 в 21:34:34 Знаете что, господа... Посмотрел я ваш "эллипс рассеивания" для станковых пулеметов.. Это же обычное нормальное распределение для координат X и Y, просто с чуть-чуть отличающейся дисперсией, что и дает небольшой эксцентриситет. Стоило огород городить... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Bonarienz на 15.11.2010 в 23:18:29 2Dirk_Diggler: Только для автоматов эллипс - растянут по горизонтали... И считать такое распределение - долго!!! | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 15.11.2010 в 23:21:16 on 1289855909, Bonarienz wrote:
Во время выстрела - не производится других операций, не происходит каких-то непрерывных прокруток, вычислений линий видимости и т.п., не работает ИИ, соот-но - вычислить два раза это не проблема для производительности. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем jarni на 16.11.2010 в 02:13:05 2Dirk_Diggler: on 1289848296, Dirk_Diggler wrote:
| ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 16.11.2010 в 03:01:05 так. выкатил 16 бит, глянем... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем MAn на 17.11.2010 в 00:09:15 В игре сначала вычисляется вероятность попадания, потом алгоритм решает происходит ли попадание, потом если промах - вычислияется отклонение пули (вроде бы так ,поправьте если што). И это делается для кажной пули в очереди. А чо б не вычислять попадание только для первой пули, а для всех остальных вычислять только отклонение от первой, в соответствии с цифрами в колонке BurstPenalty? Тут возможны два варианта: для каждой последующей пули в очереди вычисляется отклонение относительно места попадания первой, или: точка привязки смещается - для второй пули вычисляетсчя отклонение относительно места попадания первой; для третьей пули вычисляется отклонение от места попадания второй и т.д. Величина отклонения зависит напрямую от цифр в колонке BurstPenalty. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 00:15:27 on 1289945355, MAn wrote:
Ты понимаешь, тут дело в модели попадания, ведь процедура отклонения вызывается после того, как принято решение, что пуля летит в молоко... Там как красиво очередь не "рисуй", конфетки не сделаешь, придется перерабатывать всю модель стрельбы. on 1289945355, MAn wrote:
Если пробрасывать вычисление шанса попасть, а просто пули отклонять, то 99% всех пуль пойдут мимо. Я не до конца разглядел физ. модель, но чтобы пуля пошла точно во врага, там ей ОЧЕНЬ точно надо задать параметры полета. Для этого и вводится вычисления вероятности попадания. Т.е. сперва "бросается игральная кость", смотрится - если попал - то параметры вычисляются ТОЧНО. Если не попал - тогда углы ставятся от балды. Конечно, есть вероятность, что пуля таки даже с этими случайными углами попадет. но она стремится к нулю. Чтобы очередью попадать - сейчас нельзя пробрасывать вычисления шанса попадания. В этом одна из корневых проблем. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем MAn на 17.11.2010 в 00:25:47 on 1289945727, Dirk_Diggler wrote:
ну, я просто в порядке обсуждения... потрепаться так скать :) Но я думаю, что ты не прав... это вообще второстепенный вопрос как там процедуру отклонения вызывать.. ну, просто навязать алгоритму мнение, что все остальные пули летят в молоко... on 1289945727, Dirk_Diggler wrote:
И тут не соглашусь... Наоборот, все необъяснимые на первый взгляд попадания... ну, там в голову с 25 тайлов... связаны с тем, что "кубик кидается дважды" ,т.е. даже если промазал, то всё равно можно попасть из-за того, что отклонение будет маленькое. Потом, ты ж невнимательно прочёл - отклонение пули зависит от условно=заданной цифры в колонке BurstPenalty (там щас штраф на очередь указан)... отклонение может быть и очень маленьким | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 00:49:50 Code:
Code:
Code:
Code:
Т.е. в пулю зашивается её точность, и вычисляются точные инкременты. А алгоритм попаданий считается так. Для пули составляется список всех структур(включая людей) на карте, в которые она МОЖЕТ попасть. Не учитывая её направление. А только - 2 параметра, нач. и конечный тайл. список составляется так - типа, ты в тайле где и пуля? НЕт? Следующий. Ты в тайле? В тебя можно попасть пулей? Записываем. А дальше идет перебор списка - типа кто там и что там, в этом тайле. В т.ч. идет проверка и по координатам: Code:
| ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 01:31:57 on 1289945355, MAn wrote:
Проблема в том, где хранить вероятность попадания первой пули. Кстати, напомните, в чем основная претензия к очередям? А то я уже за деревьями лес потерял... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 01:38:16 Вот у меня претензия - веерная стрельба практически бесполезна, вне зависимости от очереди... Фраги вообще нихрена не боятся. И накрыть из РПК толпу идиотов, скучковавшихся где-либо - очень сложно. Это как раз потому, что в вышеупомянутый список структур, какие МОЖНО подстрелить, солдаты попадают гарантированно только если стреляем мы в т.ч. именно в его тайл... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Luficer на 17.11.2010 в 02:40:31 on 1289950696, Dirk_Diggler wrote:
Вот здесь ты чертовски прав. В практике (в частности сектор из А-серии, недалеко от СЗ ПВО, тот, что с островом) у меня были случаи, когда, стреляя из чего-то маломощного, но автоматического (MAC-10) очередями по 10 патронов удавалось за ход цепануть 2-х 3-х плохишей, скопившихся на участке в 9 квадратных тайлов. А при переигрывании хода, бывало, и ни одного не ранишь. Будь у мерка пулемет+ соответствующая меткость - первые 6 пуль ушли бы в тушку мишени, остальные "в молоко" . Довольно часто, прицельная стрельба "в область" могла бы очень пригодиться. При выкуривании снайперов и "засадников", к примеру или при стрельбе по плотной толпе. Пока же приходится для таких случаев таскать на себе РПГ, который, кстати, уже не торт. Есть еще одна вещь, не знаю правда, механизма ее действия. Если при стрельбе очередью зажать ЛКМ на мишени и не отпускаяпровести линию по карте (по ходу линии появляется "мусор" в виде остатков прицельного перекрестья), то стрельба будет вестись примерно по этой линии. Правда, не проверял результаты на толпе, но, думаю, ничего хорошего не выйдет. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 02:44:12 on 1289954431, Luficer wrote:
Я пробовал пару десятков раз. Максимум - попадает первая пуля. on 1289954431, Luficer wrote:
пока не так-то просто реализовать это. Или надо увеличивать вероятность попадания в структуру до 100%, даже если ты в неё не целился... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Luficer на 17.11.2010 в 03:16:44 on 1289954652, Dirk_Diggler wrote:
А как это выглядит сейчас? Понимаю, что где-то в этой ветке уже есть ответ, но все же, если не сложно, можешь выложить кусок кода, отвечающий за вероятность попадания с комментариями? | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 03:28:09 Кода - очень дохрена. Кратко алгоритм. 1) Определяется вероятность попадания C 2) Кидается рандом R, берется отклонение D от шанса 3) Формируется пуля. Пуле выдается направление на цель. Точное - если мы попали. И "примерно от балды" в противном случае, причем направление лежит между двумя конусами с вершиной в конце ствола. Внутренний конус ограничивает направление так, чтобы мы случайно не попали в цель - мы же уже промазали. Внешний ограничивает разброс. В пуле также храним тайл куда стреляем(где цель) и - отклонение D. 4) Пуля летит. на каждом перемещении: а) для пули составляется список всех структур(включая людей) на карте, в которые она МОЖЕТ попасть. Список составляется примерно так - типа, ты в тайле где и пуля? Нет? Следующий. Ты в тайле? Это в тебя игрок целился? Да? Записываем. Нет? Берем вероятность поражения структуры. Вот тут идет вычисления по всяким формулам и коэф. Сетка поражается слабо(пули пролетают насквозь обычно), стены поражаются всегда, камни и деревья - иногда. б) обходим список и проверяем на совпадение пули и точки структуры. Как видно, мало чтобы координаты пули оказались внутри предмета. Надо, чтобы этот предмет был в списке проверяемых на такое совпадение! А люди туда попадают совсем не всегда, 100% гарантия попасть в список ТОЛЬКО у того, в кого мы целились. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем MAn на 17.11.2010 в 19:33:03 on 1289957289, Dirk_Diggler wrote:
А это не ошибка, часом? Вот здесь написано иное: http://forum.ja2.su/cgi-bin/yabb/YaBB.pl?board=ja2v113;action=display;num=1285772568;start=0#0 Quote:
on 1289957289, Dirk_Diggler wrote:
Багмонстр грит, что быдто 40 или 60% http://forum.ja2.su/cgi-bin/yabb/YaBB.pl?board=ja2v113;action=display;num=1285772568;start=15#19 | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 19:38:03 on 1290015183, MAn wrote:
Обратить внимание на ddMinimumMiss и его использование. Code:
| ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 19:43:57 on 1290015183, MAn wrote:
Там большая и толстая процедура определения шанса, зависит от расстояния и т.п. А вот если мы туда и целились - то все 100% Code:
а потом вот так добавляем в структуры: Code:
| ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 19:50:21 А bugmonster-то прав... В принципе, в LOS.c есть всё, чтобы поменять модель стрельбы... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем MAn на 17.11.2010 в 19:53:04 on 1290015483, Dirk_Diggler wrote:
Гм, ну я не силён в английском, но мне кажется, что там написано: on 1290015483, Dirk_Diggler wrote:
Хотим, мол, чтобы не слишком часто "промахи" попадали в цель. Для этого вводится ограничение по отклонению, то бишь пуля отклонившаяся на некоторый градус = 30/колво тайлов не поражает цель, даже если и проходит через неё. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Dirk_Diggler на 17.11.2010 в 20:00:31 on 1290016384, MAn wrote:
ddAmountOfMiss = ( (ddMaximumMiss - ddMinimumMiss) * (DOUBLE) iMissedBy) / 100.0 + ddMinimumMiss; Т.е. ddAmountOfMiss не может быть меньше этого ddMinimumMiss. А мы потом углы на этот ddAmountOfMiss правим. Т.е ограничение конусом "изнутри" есть. Вопрос в том, это именно строгий конус, или просто уменьшение вероятности - не так важно, лень формулу разбирать. В любом случае, если угол слишком точный - он дополнительно отклоняется. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем MAn на 17.11.2010 в 20:11:46 on 1290016831, Dirk_Diggler wrote:
Ага :) Вообще, внутреннее устройства кода интересно ( и понятно полностью) только программисту... мне же достаточно общего вывода - что в конце концов происходит | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем valuta на 04.03.2012 в 21:42:21 Всем привет! Я новенький, ногами не бейте, плиз. В исходниках шанс попадания = (меткость + кондиция оружия) / 2. Видимо в оригинале Джа 2 так же. Значит: 1)неандерталец, найдя ствол 100% исправный, попадет в цель фифти-фифти 2)профи с меткостью 100 из ствола нулевой кондиции тоже фифти-фифти. Без учета штрафов и бонусов ессно. IMHO надо брать корень произведения sqrt( меткость*кондиция). | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем coolberg на 05.03.2012 в 01:10:15 2valuta: насколько я помню, среднее арифметическое бралось только в том случае, когда кондиция оружия меньше меткости стрелка, в остальных случаях за базовый шанс бралась просто меткость. Поэтому для неандертальца шанс так и будет ноль, если я ничего не путаю. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем valuta на 05.03.2012 в 05:40:10 2coolberg: Да нет, еще раз глянул, именно среднеарифметическое. Неандерталец очень опасен. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем valuta на 08.03.2012 в 04:31:19 2coolberg: Однако вы сударь правы. Тем не менее среднеарифметическое не есть гуд. Это величины вероятностные, соотв. надо перемножать/делить, а не складывать/пополамить. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Bonarienz на 08.03.2012 в 07:37:02 2valuta: "Сударь" - уничижит. или шутлив.-иронич. сокращение от "Милостивый государь". В общении с незнакомыми или малознакомыми - недопустимо. (Для свед. - Множ. числа не имеет.) Как на счет приближения функции вероятности эллиптическими? Это ведь не просто суммы, но суммы с условиями - т.е. кус.-лин. аппроксимация заметно более сложных непрерывных зависимостей. А вот "куркулируются" такие зависимости заметно быстрее (на порядки быстрее) функциональных зависимостей. Банан по выч. мат... Фтопку идеи! Ведь игре при просчете этихпля функций надо еще анимации крутить... | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем valuta на 08.03.2012 в 09:22:14 2Bonarienz: О как !?!? ::) Бум знать. Может быть и так. Разница в расчетах будет существенна, лишь случаях использования практически неисправного ствола. Чего в игре не бывает. Можно забить. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 26.05.2016 в 16:00:44 Нашел только эту тему про исходники. Вопрос специалистам, вот есть в НО 1.2 такой код: Quote:
bLastID = это максимальный возможный ID для команды (то есть, солдат с таким ID может реально существовать). MAX_NUM_SOLDIERS - это значение, на 1 больше максимально возможного ID солдата в игре (для команды цивилов последний ID равен MAX_NUM_SOLDIERS - 1). В итоге, цикл, проверяющий ubLoop < ubLoopLimit будет корректно работать для всех случаев, кроме случая, когда ищется последний ID для команды игрока. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Терапевт на 31.05.2016 в 14:42:29 2Seven: Данная историческая ошибка теоретически чревата лишь какими-то глюками с транспортом игрока при наличии сразу двух машин. Например, NPC не сможет заправить вторую машину, если есть квест с такой реакцией. Причём она такая не единственная, есть ещё. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 14.07.2017 в 20:44:24 Вопрос знатокам. В функции UseGun есть такой вызов: FireBulletGivenTarget( pSoldier, dTargetX, dTargetY, dTargetZ, pSoldier->usAttackingWeapon, (UINT16) (uiHitChance - uiDiceRoll), fBuckshot, FALSE ); При этом FireBulletGivenTarget определена в LOS.h как INT8 FireBulletGivenTarget( SOLDIERCLASS * pFirer, FLOAT dEndX, FLOAT dEndY, FLOAT dEndZ, UINT16 usHandItem, INT16 sHitBy, BOOLEAN fBuckshot, BOOLEAN fFake ); Для чего (uiHitChance - uiDiceRoll) преобразуется в UINT16, если передавать нужно INT16, причем отрицательное значение имеет смысл и означает величину промаха? Например, вызов CalculateLaunchItemParamsForThrow в UseThrown производится корректно, с преобразованием в INT8: CalculateLaunchItemParamsForThrow( pSoldier, sTargetGridNo, pSoldier->bTargetLevel, (INT16)(pSoldier->bTargetLevel * 256 ), &(pSoldier->inv[ HANDPOS ] ), (INT8)(uiDiceRoll - uiHitChance), THROW_ARM_ITEM, 0 ); | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Терапевт на 21.07.2017 в 15:34:42 on 1500054264, Seven wrote:
Хотя по логическому смыслу это неправильно, но в данном случае не имеет значения к знаковому или беззнаковому типу происходит преобразование, главное, что к двухбайтовому, подходящему по размеру. Целое отрицательное число хранится, как положительное больше 32767. Например, -1 будет храниться, как 65535; -2, как 65534 и т.п. Таким образом знак числа при передаче в функцию не теряется, и все вычисления внутри выполняются корректно. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 21.07.2017 в 21:54:13 2Терапевт: А вот еще из исходников НО 1.2: В UseGun(): Вычисляем шанс попасть: Quote:
Затем случайное число: Quote:
Если uiDiceRoll <= uiHitChance, то это попадание, то есть пуля полетит точно в цель. Quote:
и передается в FireBulletGivenTarget( как sHitBy параметр: Quote:
Если sHitBy >=0, то это попадание. Получается, что при вычисленном шансе попасть uiHitChance = 0, есть 1% вероятность реального попадания (uiDiceRoll = 0, 0<=0). При вычисленном шансе uiHitChance = 1%, реальный шанс попасть будет 2% (0<=1, 1<=1). Ванильный баг в AI функции SearchForItems: Quote:
Проверяем жилетку, а сравниваем броню поднимаемого объекта с броней шапки: Quote:
Аналогично и со штанами. Кроме того, EffectiveArmour() при определенных условиях может вернуть 0, что приведет к предсказуемым последствиям: Quote:
| ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Терапевт на 22.07.2017 в 00:12:43 on 1500663253, Seven wrote:
В НО боты не ищут броню. Ищут только оружие и патроны. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Bonarienz на 22.07.2017 в 01:52:33 2Терапевт: Как же так? С Барреттом и голой жопой - впирёт на фрагА?!. Нипарядык! | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 30.08.2017 в 10:52:53 В CreatureDecideActionBlack() Quote:
Разве тут не должно вызываться CreatureDecideActionRed? | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Терапевт на 30.08.2017 в 23:27:28 Наверно да, но с оригинала идёт именно так. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 30.08.2017 в 23:34:14 2Терапевт: Судя по всему, это просто неудачная копипаста из DecideAction.c - там есть ровно такой же код - если единственный доступный для атаки противник умирает, ищем нормального и если находим, будем через Red AI к нему добираться, так как в Black AI нет поиска противника. То есть скопировать скопировали, а имя функции поменять забыли. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 19.12.2017 в 18:31:33 Еще один ванильный баг в 1.2: FindLocations.c Quote:
Должно быть: Quote:
Из-за этого бага еще с оригинала не работает антискучивание в FindBestNearbyCover: Quote:
| ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 29.10.2018 в 21:26:25 Ванильный баг в 1.2: opplist.c, HearNoise() Quote:
| ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Терапевт на 30.10.2018 в 13:33:00 2Seven: И в чём он выражается? | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 30.10.2018 в 13:36:47 2Терапевт: MAX_MISC_NOISE_DURATION = 12 ubVolume - громкость, может быть до 100 и больше. В существующем виде AI запоминает не самый громкий звук (и самый важный, как следствие), а просто любой последний громче минимального уровня в 12, что приводит к некорректному поведению AI. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Терапевт на 30.10.2018 в 16:57:46 2Seven: Понятно. Я бы сказал, что это не баг, а субъективный взгляд на данную примитивную линейную нормализацию величины. Ведь самый громкий звук необязательно будет самым важным. По крайней мере в случаях, когда игрок нападает на вражеский сектор. | ||||||||||||||
Заголовок: Re: Наука и религия в исходниках НО. Прислано пользователем Seven на 10.11.2018 в 19:29:15 Ванильный баг в 1.2 Quote:
Должно быть Quote:
Лечит подвисание AI при попытке перепрыгнуть в северном направлении забор, за которым расположен непроходимый объект. | ||||||||||||||
A.I.M. » Powered by YaBB Modification 4 (v.4.0.0-pre)! YaBB © 2000-2003. All Rights Reserved. |