Jump to content

Разработка миссии на основе Simulator Scripting Engine


Recommended Posts

Posted
1. таблица env.mission должна использоваться только для чтения - по сути в неё загружается все содержимое файла mission из архива миссии. Т.е. все то, что было создано в редакторе миссии. Добавление каких-либо сущностей в эту таблицу не создает их реально в игре.

 

2.

 

o_0 - что за getDCSWorldTriggerZone(), _zone - это таблица по формату совпадающая с описанием триггерных зон в файле mission, эта таблица не объект, в ней нет никаких методов.

 

По сути _zone это уже _dcsw_zone.

.

Ну не знаю, вот что у меня получилось (см.миссию) там если редактором открыть, видно, что только 2 зоны существуют, а файлом auto_init... создается триггерная зона вокруг статика (туда прибежит катапультант и будет спасен). Т.е. исходя из этого можно сделать вывод, что можно изменить таблицу env.mission, только вот при этом trigger.misc.getZone(имя_созданой_зоны) не работает, видимо потому, что из таблицы env.mission зоны на момент создания новой уже обработаны, так может есть вариант создать из этой таблицы еще одну msf зону?

проба_новая_зона.miz

  • Replies 544
  • Created
  • Last Reply

Top Posters In This Topic

Posted (edited)
можно изменить таблицу env.mission

 

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

 

только вот при этом trigger.misc.getZone(имя_созданой_зо� �ы) не работает

 

По тому и не работает, что триггерная зона реально не создается. Создается таблица описывающая эту зону, а сама зона как объект который видит движок DCS World не создается.

 

есть вариант создать из этой таблицы еще одну msf зону

 

Метод создания msf зоны использует trigger.misc.getZone() - т.е. msf-зоны создаются на основе реальных триггерных зон, созданных в редакторе.

Edited by BAntDit

Крайняя версия MSF 1.0.1 (для 1.2.6.): http://forums.eagle.ru/attachment.php?attachmentid=89817&d=1382379803

 

Новая версия MSF 1.0.2 beta: http://forums.eagle.ru/attachment.php?attachmentid=93422&d=1390584292

 

Миссия для тестирования возможностей MSF 1.0.2: http://forums.eagle.ru/attachment.php?attachmentid=91514&d=1386954362

----

Руководство по MSF (не полная версия для MSF 1.0.2): http://forums.eagle.ru/attachment.php?attachmentid=92959&d=1389558825

Posted

Ладно, тогда при отсутствии запроса таблицы env.mission.triggers.zones в других скриптах я могу использовать? ведь это работает

И самое интересное, т.е. мы динамически можем создать юнит и не можем создать зону? Как это можно сделать по аналогии?

Posted
Ладно, тогда при отсутствии запроса таблицы env.mission.triggers.zones в других скриптах я могу использовать? ведь это работает

 

Да, скрипты будут видеть эту зону. Не будет видеть движок и соответственно к зоне нельзя будет обратится методами SSE и методами MSF тоже, потому что внутри они используют SSE.

Крайняя версия MSF 1.0.1 (для 1.2.6.): http://forums.eagle.ru/attachment.php?attachmentid=89817&d=1382379803

 

Новая версия MSF 1.0.2 beta: http://forums.eagle.ru/attachment.php?attachmentid=93422&d=1390584292

 

Миссия для тестирования возможностей MSF 1.0.2: http://forums.eagle.ru/attachment.php?attachmentid=91514&d=1386954362

----

Руководство по MSF (не полная версия для MSF 1.0.2): http://forums.eagle.ru/attachment.php?attachmentid=92959&d=1389558825

Posted (edited)
...SSE и методами MSF тоже, потому что внутри они используют SSE.

Нужно заново "покурить" структуру движок-SSE-скрипты, что то я совсем запутался

Тем не менее за разъяснения спасибо!

Edited by StarLey_Andrew
  • 2 weeks later...
Posted

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

Подменив корабль на самолет получаем высадку в тот момент когда ЛА пересекает береговую черту.

есть возможность сделать высадку на море?

Будьте осторожнее в своих желаниях.

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

  • 2 weeks later...
Posted
БантДит, такой вопрос, пытались сделать высадку с кораблей, но похоже скрипт не работает если транспорт находится над водой.

Подменив корабль на самолет получаем высадку в тот момент когда ЛА пересекает береговую черту.

есть возможность сделать высадку на море?

 

Там внутри есть проверка: если точка высадки попадает в воду (не считая мелких рек),

то высадка не выполняется.

 

Проверку отключить не сложно, но смысла в этом нет, так как если высадить технику в море, она тупо утонет.

Крайняя версия MSF 1.0.1 (для 1.2.6.): http://forums.eagle.ru/attachment.php?attachmentid=89817&d=1382379803

 

Новая версия MSF 1.0.2 beta: http://forums.eagle.ru/attachment.php?attachmentid=93422&d=1390584292

 

Миссия для тестирования возможностей MSF 1.0.2: http://forums.eagle.ru/attachment.php?attachmentid=91514&d=1386954362

----

Руководство по MSF (не полная версия для MSF 1.0.2): http://forums.eagle.ru/attachment.php?attachmentid=92959&d=1389558825

  • 5 weeks later...
Posted (edited)

BAntDit..привет..есть два вопроса...

 

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

 

ну и 2..есть ли возможность с тобой в чате поговорить...есть пару идей..можт поможешь их реализовать..можт тебе чего понравится..?

Edited by Timujin
  • 3 weeks later...
Posted (edited)
если у одной из коалиций на 1 человека меньше.. то есть если у красных один чел играет а у синих нету никого, то за красных нельзя было бы заходить, т.е в коалициях должно быть равное кол-во юнитов.

 

Подобные вещи реализуются другими средствами, хотя тоже не без помощи Lua.

 

Можешь добавить свой код в функцию on_set_unit скрипта Server.lua в папке DCS World\Scripts\net. on_set_unit вызывается при занятии пользователем слота, в этот момент можешь проверять сколько игроков с каждой стороны и если слот относится к той стороне, на которой итак много игроков, то можешь кикать его с сообщением о необходимости выбрать другую сторону.

 

Вот тут можно почитать про использование серверных скриптов: http://forums.eagle.ru/showthread.php?t=32061

 

На некоторых серверах в Online, вроде как, это уже сделано.

----

 

ну и 2..есть ли возможность с тобой в чате поговорить...

 

Да, в выходные могу появится в каком-нибудь чате... Напиши в каком.

Edited by BAntDit

Крайняя версия MSF 1.0.1 (для 1.2.6.): http://forums.eagle.ru/attachment.php?attachmentid=89817&d=1382379803

 

Новая версия MSF 1.0.2 beta: http://forums.eagle.ru/attachment.php?attachmentid=93422&d=1390584292

 

Миссия для тестирования возможностей MSF 1.0.2: http://forums.eagle.ru/attachment.php?attachmentid=91514&d=1386954362

----

Руководство по MSF (не полная версия для MSF 1.0.2): http://forums.eagle.ru/attachment.php?attachmentid=92959&d=1389558825

Posted (edited)
Да, в выходные могу появится в каком-нибудь чате... Напиши в каком.

 

В тот раз не получилось, может в этот раз получится

20.09.14 или 21.09.2014 в 14-00 по МСК , IP - 5.178.84.43:10005

Edited by Timujin
  • 1 month later...
Posted (edited)

Парни Привет ! Объясните для тех кто в "танке" от чего такая ошибка возникает при инициализации скрипта погрузки юнитов? L0LzQUASMyUHefageYCACTFrrmpUxhoLgBAOiIjI9+d8kBzAQASEQkiIyOhuQAAMEmA5gIAgHRAcwEAQDqguQAAIB3QXAAAkA5oLgAASAc0FwAApAOaCwAA0gHNBQAA6YDmAgCAdEBzAQBAOjg0FwaDwWCeM1WD1aG5qgYrDAaDwTxtBAAAACn5f0zkPOsWWP7TAAAAAElFTkSuQmCC

Error.png.be4aec198c7324655105c5106170c8dc.png

Edited by homich
Posted

Разобрался в чем было дело.

Очень критично UTF8 без BOM и название процедур и функций

У меня было getzone вместо getZone

  • 5 weeks later...
Posted

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

Posted

Еще вопрос - можно ли в кач-ве батареи ставить группу ЗРК "Бук" буз станции "купол" вообще? Чтоб она лишний раз не включалась. Пробовал, не получается пока.

  • 1 month later...
Posted

BAntDit здравствуйте ! Вопрос от чайника как проверить скриптом вошёл ли клиент или игрок в слот . То есть в игре или нет . Без файла скрипта msf 1.0.2 . Что бы можно было написать скрипт в триггере . Спасибо !

  • 3 months later...
Posted

BAntDit,здравствуйте. Я не программист, но очень хотел сделать для себя миссию с погрузкой и выгрузкой пехоты. Сначала мучался с встроенным редактором, добился того что пехота садится, но выходить не хочет. Потом нашел ваше видео по написанию скрипта. Написал его один в один, только ми-8 поставил, но при включении миссии скрипт не запускается(появляется ошибка). Происходит зависание игры, которое лечится нажатием Esc. После чего в меню радио при подлете к объекту посадки пехоты нет F10. Если можно посмотрите мой скрипт и укажите на ошибки. Подскажите как вам его переслать. Спасибо.

  • 1 month later...
Posted
В выходные вопрос был о отображении сообщения о стрельбе ракетами во время стрельбы пушки, он решил или что?

 

походу пока нет

 

http://forums.eagle.ru/showpost.php?p=2418260&postcount=3763

Gigabyte Z690 UD DDR4 /i9-12900KF /DDR4 Kingston CL18 128GB 3600MHz/ Palit GeForce RTX 3070 Ti GameRock 8GB /Corsair HX1200 1200W    

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

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

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

Posted
Posted

Есть там миссия. Под спойлером.

event.weapon.Category возвращает числовое значение. Скрипт обходит список Weapon.Category и находит категорию по значению.

Posted
Есть там миссия. Под спойлером.

event.weapon.Category возвращает числовое значение. Скрипт обходит список Weapon.Category и находит категорию по значению.

 

Пишет что не может найти вложение.

  • Recently Browsing   0 members

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