Jump to content

Вопросы к разработчикам


redbrean

Recommended Posts

16 минут назад, SL PAK сказал:

У нас есть возможность бесплатной игры две недели: https://www.digitalcombatsimulator.com/ru/personal/licensing/trial/

Москит вероятно хорошо подойдет под ваш новый набор органов управления.

То есть можно скачать, установить и любой модуль будет доступным на 2 недели? 

Gigabyte Z690 UD DDR4 /i9-12900KF /64 Gb- G.SKILL Trident  DDR4 4000 МГц / Palit GeForce RTX 3070 Ti GameRock 8GB /Corsair HX1200 1200W 

DCS A-10C Обучающий урок "Концепция HOTAS" (RU)

DCS P-51D Руководство пилота

Обучающие миссии для Ми-8 (Радиооборудование)

Link to comment
Share on other sites

  • ED Team
6 минут назад, Eponsky_bot сказал:

То есть можно скачать, установить и любой модуль будет доступным на 2 недели? 

Да, и меняя модули каждые две недели играть бесплатно круглый год. Модулей хватает.

Link to comment
Share on other sites

А как дела с динамической кампанией обстоят? Стоит ли ожидать ее в этом году?

I7 13900K | 128Gb | RTX 4090 | NVME 2Tb + SSD 512Gb + SSD 240Gb x2 | Warthog+VPC Warbrd+VPC Warbrd rudder pedals | WinWing MIP | Oculus Quest 3 | Benq 28" 4k x2 | Gametrix JetSeat

Link to comment
Share on other sites

Планируется ли в бое укладку пушки AH-64 добавить трассера ? 

  • Like 1

Куплю модули : СУ-7 , СУ-9 , СУ-11,Миг-23,Миг-27 ,Ту-22М3,Ту-95,Ми-24,AH-64,F-16 ,F-4 Phantom,модуль-карту современной западной Европы

I-7 4790k (4.4GHz), GTX980 4GB , Z97, 16Gb DDR3

Link to comment
Share on other sites

Уважаемые разработчики, подскажите пожалуйста, какой двигатель "установлен" на "нашем" F-16C, F100-PW-220 или F110-GE-100?

И ещё вопрос, планируется ли на этом модуле реализация работы EPU?


Edited by Vladimir_V_T

ПОЗОР ВОЕННЫМ ПРЕСТУПНИКАМ!!! ПОЗОР "АРМИИ" ДЕТОУБИЙЦ!!! ПОЗОР ТРУСАМ, СПОСОБНЫМ ВОЕВАТЬ ТОЛЬКО С МИРНЫМ НАСЕЛЕНИЕМ!!!

Link to comment
Share on other sites

5 minutes ago, Vladimir_V_T said:

Уважаемые разработчики, подскажите пожалуйста, какой двигатель "установлен" на "нашем" F-16C, F100-PW-220 или F110-GE-100?

И ещё вопрос, планируется ли на этом модуле реализация работы EPU?

 

GE -129.

  • Thanks 1

[sIGPIC][/sIGPIC]

Reminder: SAM = Speed Bump :D

I used to play flight sims like you, but then I took a slammer to the knee - Yoda

Link to comment
Share on other sites

19 часов назад, GGTharos сказал:

GE -129.

Понял, спасибо.

ПОЗОР ВОЕННЫМ ПРЕСТУПНИКАМ!!! ПОЗОР "АРМИИ" ДЕТОУБИЙЦ!!! ПОЗОР ТРУСАМ, СПОСОБНЫМ ВОЕВАТЬ ТОЛЬКО С МИРНЫМ НАСЕЛЕНИЕМ!!!

Link to comment
Share on other sites

Здравствуйте.Вопрос к разработчикам этой прекрасной игры.Скажите,пожалуйста,каким образом я могу считать данные отображаемые на прикрепленной картинке.

Я имею ввиду ТНГ и КР (они обведены) Буду очень признателен за любую информацию по этому вопросу.И если можно,каким софтом это можно сделать.

                                                                                                                        С уважением.  Ander.

данные.png

Link to comment
Share on other sites

24 minutes ago, ander said:

Здравствуйте.Вопрос к разработчикам этой прекрасной игры.Скажите,пожалуйста,каким образом я могу считать данные отображаемые на прикрепленной картинке.

Я имею ввиду ТНГ и КР (они обведены) Буду очень признателен за любую информацию по этому вопросу.И если можно,каким софтом это можно сделать.

                                                                                                                        С уважением.  Ander.

данные.png

Не уверен, а вдруг поможет не отвлекая разработчиков. Есть такая программа как helios . Она выводит разные данные из игры, может стоит попробовать там в конфигурационных файлах поискать, как она это делает?

Link to comment
Share on other sites

40 минут назад, Parasiticus сказал:

Не уверен, а вдруг поможет не отвлекая разработчиков. Есть такая программа как helios . Она выводит разные данные из игры, может стоит попробовать там в конфигурационных файлах поискать, как она это делает?

Спасибо за оперативный ответ.Был я в  helios Фишка в том,что оттуда можно вытащить данные лишь с кокпита.Скажем по тангажу 57 градусов и все.Ограничение.

Мне же интересна полная отслежка по указанным осям.Тем не менее еще раз спасибо.Вы ответили,а это самое ценное.Если будут еще соображения по этой теме,

поделитесь,пожалуйста...

Link to comment
Share on other sites

  • ED Team
3 часа назад, ander сказал:

Буду очень признателен за любую информацию по этому вопросу.

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

Свои скрипты для съема данных они держат в c:\Users\***\Saved Games\DCS\Scripts\

Источник они используют как я понимаю этот: DCS World\Scripts\Export.lua

Если это сложно или избыточно, то гляньте программку Tacview: https://www.tacview.net/

  • Like 1
Link to comment
Share on other sites

19 часов назад, SL PAK сказал:

Если это сложно или избыточно, то гляньте программку Tacview: https://www.tacview.net/

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

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

С подобной ситуацией я уже сталкивалась на этом форуме, когда мне предложили такой вариант: поставить стороннюю программу DCS-BIOS, выход из которой через COM-порт присоединить к Ардуине, в которую загружена библиотека "dcs-bios-arduino-library", и добывать данные из игры, вызывая функции из этой библиотеки. Если мысленно сократить этапы, через которые здесь путешествуют данные, то обнаружим, что этот совет сводится лишь к тому, чтобы вместо одних функций добывать данные через другие функции, которые не только еще хуже документированы, чем Export.lua, но и имеют различные имена в зависимости от типа самолета.

При таком раскладе кажется целесообразным сторонним софтом совсем не пользоваться (чтобы не плодить посредников), а ... взять разработчиков за грудки 🙂 и вытрясти из них информацию о том, откуда они берут данные для F2-табло, которое никогда не зашкаливает и единообразно работает со всеми типами самолетов. Или, по крайней мере, получить от них четкую рекомендацию о том, как извлечь правдивые (неурезанные до 1-го радиана) данные по тангажу и крену.

Пока же я вижу только следующие альтернативы:

1-ый способ. Использовать экспортируемую функцию LoGetADIPitchBankYaw() и получить искомые данные так:
pitch, bank, yaw = LoGetADIPitchBankYaw()
Это самый простой вариант, однако полученные этим способом данные оказываются урезанными: у самолета Su-25T крен и тангаж упираются в ограничитель 57.3° (1 рад), а у самолета TF-51D упирается в ограничитель только тангаж, а крен работает на полный оборот. С другими самолетами ситуация с креном и тангажом мне неизвестна, т.к. за них надо денежку платить :). Однако здесь необходимо заметить, что F2-табло для этих двух самолетов показывает крен и тангаж верно, откуда следует, что оно берет данные не через эту функцию.

2-ой способ. Использовать экспортируемую функцию LoGetSelfData(), а из объекта, который она выдает, читать элементы Pitch и Bank. Вот так:
object = LoGetSelfData()
pitch = object.Pitch
bank = object.Bank

3-ий способ. Использовать метод хака из DCS-BIOS - сперва добыть ссылку на "нулевой девайс" (?), а затем прочитать из него элемент по известному номеру:
pitch = dev0:get_argument_value(arg_number)
К сожалению, узнать, под каким номером находятся нужные параметры, не представляется возможным. Не говоря уже он том, что у разных типов самолетов они, как правило, тоже разные.

4-ый способ. Использовать dll-библиотеку CockpitBase.dll, на это намекает заголовочный файл для языка C/C++ - ccParametersAPI.h
Этот путь, по-видимому, подразумевает написание своего собственного dll-модуля, который неясно как следует оформлять, чтобы он заработал. Т.к. примера такого модуля нигде не видно, в том числе и в интернете.

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


Edited by Xenia
Link to comment
Share on other sites

  • ED Team
1 час назад, Xenia сказал:

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

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

Link to comment
Share on other sites

2 hours ago, Xenia said:

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

Для программист(а|ки) этого может быть достаточно. Поставить tactview, посмотреть его export.lua, понять, что там внутри происходит, использовать это знание для своей программы.

DCS нам предоставил свой export.lua как публичную документацию. Всё, что использует больше этого - да, это хак. Возможно, что если кто-то даст ED денег на дополнительные работы (как с Як-52), появится что-то большее. Иначе я бы на это не расчитывал. И на какие-то полезные ответы тоже. Есть какие-то люди в ED, которые понимают, разбираются и делают, но они с нами не делятся, да и не обязаны.

DCS-BIOS тоже можно рассматривать как пример. Люди занимались хакингом, продирались сквозь комплектные DCS-ные lua, разбирались в происходящем, сделали единообразный интерфейс и документацию. Очевидно, что, имея DCS-BIOS, хакингом DCS заниматься легче, чем без.

2 hours ago, Xenia said:

4-ый способ. Использовать dll-библиотеку CockpitBase.dll, на это намекает заголовочный файл для языка C/C++ - ccParametersAPI.h
Этот путь, по-видимому, подразумевает написание своего собственного dll-модуля, который неясно как следует оформлять, чтобы он заработал. Т.к. примера такого модуля нигде не видно, в том числе и в интернете.

Как я понимаю, "в природе" есть X-Plane и MS FS, где дела более-менее открыты, и есть DCS, где (к сожалению) всё по-другому: на такие вещи нужно становиться официально одобренным ED разработчиком и давать подписку о неразглашении.

 

Link to comment
Share on other sites

1 час назад, SL PAK сказал:

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

Я там не только искала, но даже на английском языке туда писала 🙂 .:

и именно там я получила "ценный" совет не изобретать велосипед, а использовать DCS-BIOS с Arduino-библиотеками.

Тем не менее, этот форум очень большой, а потому я не могу гарантировать, что прочла на нем всё, что пишут по этой тематике.

Link to comment
Share on other sites

4 часа назад, vvm13 сказал:

Для программист(а|ки) этого может быть достаточно. Поставить tactview, посмотреть его export.lua, понять, что там внутри происходит, использовать это знание для своей программы.

tactview ставила, но ни у нее, ни у DCS-BIOS, нет никакого "своего export.lua" - та и другая вставляют в файл export.lua вызов самих себя. DCS-BIOS вставляет туда вызов своего базового модуля BIOS.lua, а tactview - своего TacviewGameExport.lua. Если проинсталлировать обе, то в export.lua окажутся сразу оба вызова. Больше ничего в этом файле нет!  Речь, конечно, идет о файле export.lua, находящимся в директории "C:\Users\?????\Saved Games\DCS\Scripts\Saved Games\",  т.к. другой файл с тем же именем несет исключительно справочную информацию и никогда не запускается.

Поэтому ваш совет "понять, что там внутри происходит" фактически эквивалентен совету разбираться в коде этих двух программ. И будет большой ошибкой считать, что программисту или программистке достаточно только взгляд бросить на их код, чтобы понять, как эти программы работают.


Edited by Xenia
Link to comment
Share on other sites

9 часов назад, Xenia сказал:

Поэтому ваш совет "понять, что там внутри происходит" фактически эквивалентен совету разбираться в коде этих двух программ. 

 

герой мем - Создать мем - Meme-arsenal.com

И на данный момент это самый простой путь. 
Есть ещё два посложнее:
1) Самому/самой разобраться методом тыка что там может отдавать дкс через экспорт.
2) Почти нереальный. Попросить разработчиков написать/переписать доки чтоб вам было понято.

Сервеы КВАС. Железо: I9-9900k, 32GB DDR4, SSD, RTX 2080super

Link to comment
Share on other sites

19 hours ago, Xenia said:

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

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

С подобной ситуацией я уже сталкивалась на этом форуме, когда мне предложили такой вариант: поставить стороннюю программу DCS-BIOS, выход из которой через COM-порт присоединить к Ардуине, в которую загружена библиотека "dcs-bios-arduino-library", и добывать данные из игры, вызывая функции из этой библиотеки. Если мысленно сократить этапы, через которые здесь путешествуют данные, то обнаружим, что этот совет сводится лишь к тому, чтобы вместо одних функций добывать данные через другие функции, которые не только еще хуже документированы, чем Export.lua, но и имеют различные имена в зависимости от типа самолета.

При таком раскладе кажется целесообразным сторонним софтом совсем не пользоваться (чтобы не плодить посредников), а ... взять разработчиков за грудки 🙂 и вытрясти из них информацию о том, откуда они берут данные для F2-табло, которое никогда не зашкаливает и единообразно работает со всеми типами самолетов. Или, по крайней мере, получить от них четкую рекомендацию о том, как извлечь правдивые (неурезанные до 1-го радиана) данные по тангажу и крену.

Пока же я вижу только следующие альтернативы:

1-ый способ. Использовать экспортируемую функцию LoGetADIPitchBankYaw() и получить искомые данные так:
pitch, bank, yaw = LoGetADIPitchBankYaw()
Это самый простой вариант, однако полученные этим способом данные оказываются урезанными: у самолета Su-25T крен и тангаж упираются в ограничитель 57.3° (1 рад), а у самолета TF-51D упирается в ограничитель только тангаж, а крен работает на полный оборот. С другими самолетами ситуация с креном и тангажом мне неизвестна, т.к. за них надо денежку платить :). Однако здесь необходимо заметить, что F2-табло для этих двух самолетов показывает крен и тангаж верно, откуда следует, что оно берет данные не через эту функцию.

2-ой способ. Использовать экспортируемую функцию LoGetSelfData(), а из объекта, который она выдает, читать элементы Pitch и Bank. Вот так:
object = LoGetSelfData()
pitch = object.Pitch
bank = object.Bank

Чем вам не понравился 2-й способ? Если вы хотите какого-то готового решения под ключ, то вам его никто не даст, ибо так не бывает, увы.

19 hours ago, Xenia said:

3-ий способ. Использовать метод хака из DCS-BIOS - сперва добыть ссылку на "нулевой девайс" (?), а затем прочитать из него элемент по известному номеру:
pitch = dev0:get_argument_value(arg_number)
К сожалению, узнать, под каким номером находятся нужные параметры, не представляется возможным. Не говоря уже он том, что у разных типов самолетов они, как правило, тоже разные.

Вы заблуждаетесь. Но в том, что для каждого ЛА это будут разные параметры, вы правы. И это, блин, логично, потому-что это все данные из кокпита, которые очевидно тоже разные.

GetDevice(0) получает кокпит целиком со всеми кнопочками, крутилками и их состоянием.

 

P.S. Я не до конца уверен, что Ctrl-Y табло показывает верную информацию всегда. Например у меня оно показывало не ту высоту, что в приборах F-18 c разницей 5000ft(это почти 2км) при общей высоте 60000ft, но кто из них прав - не знаю, там возможны нюансы.

P.P.S. И да, документация от ED оставляет желать лучшего, но комьюнити это как может исправляет, при должном усердии все можно найти.

 

Update: вообще у вас отдельная тема для этого всего есть и лучше вопросы задавать туда, чтобы потомки смогли ее найти и по третьему кругу не ходить.


Edited by Blackfyre

Верните короновирус в качестве главной проблемы, спать в маске буду, обещаю.

Скрытый текст

Hardware: AMD 5900x, 64Gb RAM@3200MHz, NVidia RTX3070 8Gb, Monitor 3440x1440(21:9), Samsung 980pro 1Tb NVMe SSD, VKB Gunfighter+MCGU, Virpil Throttle CM3, VKB T-Rudder, TrackIR.

 

Link to comment
Share on other sites

5 часов назад, ctajiuh58 сказал:

И на данный момент это самый простой путь. 
Есть ещё два посложнее:
1) Самому/самой разобраться методом тыка что там может отдавать дкс через экспорт.

Именно этим и занимаюсь. Просто подумала, что велосипед изобретаю, и кто-то раньше этот путь проходил.

К частности - изобретатели механических симуляторов, когда электродвигатели раскачивают/вращают кресло пилота синхронно с самолетом в игре.  Для этой задачи является крайне необходимым, чтобы положение самолета в воздухе мониторилось непрерывно без разрывов. Тогда как зашкал на границах первого радиана привёл бы к катастрофическим последствиям, когда при выполнении бочки пилота тряхнуло от одного зашкала до другого, т.е. с +57.3° сразу до -57.3°, где 245.4° градусов в промежутке оказываются потерянными. Да и пилоту не сладко придется, если его на такой угол разом крутануть.

5 часов назад, ctajiuh58 сказал:

2) Почти нереальный. Попросить разработчиков написать/переписать доки чтоб вам было понято.

Не надо малую проблему раздувать в большую, чтобы найти оправдание для отказа. Я не доки прошу для себя переписывать, а лишь указать верное направление для ее решения.

Скажем, если бы я сама была разработчиком и знала ответ на вопрос "как получить непрерывный тангаж?", но мне  понадобилось бы не более трех слов, чтобы назвать нужную для этого функцию или метод.


Edited by Xenia
Link to comment
Share on other sites

Я не в курсе всех нюансов, но вопрос возник по пехотным юнитам. Мне, как человеку новому, очень бросается в глаза контраст в поведении наземных юнитов или пехоты по сравнению с воздушными. Ну вот смотришь на этих болванчиков и не понятно, почему они ни на что не реагируют. Уж очень их поведение не реалистично и вымораживает все, начиная от движений, заканчивая логикой ИИ.
Особенно это заметно при игре в апаче например, где каждый юнит как на ладони видно, и действия пехоты не способствует погружению в процесс.

Так вот вопрос, это как то дорабатываться будет? Или не в приоритете по сравнению с воздушными юнитами?

Link to comment
Share on other sites

  • ED Team
8 часов назад, Twantick сказал:

Я не в курсе всех нюансов, но вопрос возник по пехотным юнитам. Мне, как человеку новому, очень бросается в глаза контраст в поведении наземных юнитов или пехоты по сравнению с воздушными. Ну вот смотришь на этих болванчиков и не понятно, почему они ни на что не реагируют. Уж очень их поведение не реалистично и вымораживает все, начиная от движений, заканчивая логикой ИИ.
Особенно это заметно при игре в апаче например, где каждый юнит как на ладони видно, и действия пехоты не способствует погружению в процесс.

Так вот вопрос, это как то дорабатываться будет? Или не в приоритете по сравнению с воздушными юнитами?

Да, тут согласен поведение наземных юнитов и особенно пехоты в DCS еще весьма далеко от реальности. Тут нужно понимать, что DCS изначально - авиасимулятор, в котором наземка была только для подыгрыша в виде целей. В свое время пехоты была реализована как экспериментальная фича на базе ИИ бронемашин, отсюда и ее туповатость.
Сейчас у нас ведутся работы по созданию нового ИИ для движениях пехоты в групповых порядках, с преодолением и огибанием препятствий. Еще предстоит создание анимаций для новых моделей бойцов, что требует довольно большого объема работы.

Когда будет что показать - покажем.

  • Like 2
  • Thanks 7

Единственный урок, который можно извлечь из истории, состоит в том, что люди не извлекают из истории никаких уроков. (С) Джордж Бернард Шоу

Link to comment
Share on other sites

On 5/14/2022 at 9:27 PM, Чарик80 said:

Ставлю бук рлской вправо,захожу в миссию-а он рлской влево

Screen_220514_212240.png

Screen_220514_212403.png

В редакторе БУК с развернутой ПУ прямо по корпусу, в игру - ПУ в походном положении

  • Thanks 1
Link to comment
Share on other sites

18 часов назад, Xenia сказал:

Именно этим и занимаюсь. Просто подумала, что велосипед изобретаю, и кто-то раньше этот путь проходил.

Все верно, кто то этот путь уже проходил и надо просто разобраться в его путевЫх заметках 🙂
 

Цитата

Не надо малую проблему раздувать в большую, чтобы найти оправдание для отказа. Я не доки прошу для себя переписывать, а лишь указать верное направление для ее решения.

Скажем, если бы я сама была разработчиком и знала ответ на вопрос "как получить непрерывный тангаж?", но мне  понадобилось бы не более трех слов, чтобы назвать нужную для этого функцию или метод.

Так не было отказа в том и дело. Есть не нулевая вероятность, что разработчика делавшего этот модуль в компании больше нет, как и документации по нему.

В меру своих знаний могу посоветовать получать нужные параметры средствами скриптового движка и далее средствами Lua отправлять на нужный интерфейс.

  • Like 1

Сервеы КВАС. Железо: I9-9900k, 32GB DDR4, SSD, RTX 2080super

Link to comment
Share on other sites

  • ED Team

Xenia

Вот тут читали? ..\Scripts\Export.lua

  • Like 1

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...