ArmA 3 Co-op Mission Framework

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


Скачать ArmA 3 Co-op Mission Framework

[ SHAREDMODS ]

Требования: Не требуется дополнительных аддонов

Версия: 7/10/18


Дамы и господа, Армаголики всех возрастов, я с гордостью представляю работу, которая создавалась на протяжении года: Кооперативная миссия Zenophon ArmA 3. Эта структура представляет собой библиотеку из более чем 220 функций SQF и 80 макросов, организованных в тщательно разработанном API, который прост и чрезвычайно мощный при использовании. Функции охватывают все: от манипулирования массивами до обширной системы задач. Каждый из них был тщательно разработан и протестирован, чтобы избежать минимальные ошибки и проблемы. Структура разработана таким образом, что каждая функция является логическим строительным блоком, который обеспечивает прямолинейный эффект. Каждая маленькая деталь аккуратно сочетается с другими, позволяя вам быстро и интуитивно реализовать свой проект.

Framework работает с любой картой и не требует никаких аддонов. Он совместим с любым модом, потому что вы выбираете, какие функции ему выполнять. Он не влияет на компиляцию всей структуры, каждая функция была тщательно оптимизирована. Все 180 публичных функций также тщательно задокументированы в строгом стиле, и многие ресурсы предоставляются для помощи в работе с framework. Эта структура создана с учетом следующих целей:

  • Простое совместное веселье для игроков и сотрудников миссий
  • Дизайн с использованием гибких элементов
  • Поистине случайные и динамические миссии без дополнительной работы для дизайнеров миссий
  • Процедурный дизайн миссии вместо ручного размещения с помощью редактора
  • Устранение больших статических функций
  • Сервер-ориентированное выполнение для создания более эффективных многопользовательских задач
  • Упрощение взаимодействия с клиентами в многопользовательской сети
  • Библиотека без ошибок, с использованием в качестве основы вашего собственного кода

Многие функции структуры разделены на 13 категорий с определенной целью:

  • Функции данных являются основой структуры, поддерживающей как простые, так и сложные операции.
  • Система поддержки огня – это инструмент для создателей миссий, а не игроков, для создания любой воображаемой артиллерии, миномета или авиаудара.
  • Функции Loadout, включая полную пользовательскую систему загрузки, предоставляют все возможности, необходимые для легкого оснащения как игроков, так и ИИ.
  • Математические функции являются вспомогательными функциями, которые имеют дело с различными двумерными тригонометрическими операциями и полигонами.
  • Функции Misc – это просто разные функции. Они не подходят нигде, но по-прежнему полезны.
  • Функции объектов имеют дело с объектами и предоставляют множество способов проверки и взаимодействия с игроками, ИИ и статическими объектами.
  • Система Objective предназначена для того, чтобы миссии были чрезвычайно простыми для создателей миссий с одной строкой кода.
  • Функции Orders предоставляют проверенный и эффективный способ заставить ИИ делать что-то, а некоторые предлагают простую, но мощную рандомизацию.
  • Функции Position генерируют и проверяют случайные позиции, позволяя бесконечную рандомизацию под контролем создателя.
  • Библиотека Preprocessor предлагает как общие, так и фреймворческие макросы, которые упрощают использование многих небольших задач.
  • Функции спавна позволяют вам создавать любой объект, ИИ или статический, который вам нужен, и предлагают как простой, так и рандомизированный респавн.
  • Система Task представляет собой сложную систему, предназначенную для того, чтобы полностью отделить создателя миссии от проблем задач, тем самым упрощая любую задачу.
  • Триггерные функции выполняют операции над задачами на основе заданных условий и предназначены для дополнения системы задач.

Установка / использование

Framework должен быть установлен отдельно для каждой миссии, в которой он используется. Проще всего сначала установить структуру, а потом создавать свою миссию. Подробнее см. В разделе FrameworkIntroduction.txt. Этот процесс также рассматривается в учебниках.

  1. Запустите ArmA, откройте редактор, создайте новую (пустую) миссию на любой карте, сохраните ее с любым именем
  2. Переходите к (Windows 7) C: \ Users \ <имя_пользователя> \ Мои документы \ Arma 3 – Другие профили \ <имя_профиля> \ миссии
  3. Откройте каталог с названием своей миссии
  4. Из примера миссии, Shell.Stratis, скопируйте Zen_FrameworkFunctions, Init.sqf и Description.ext в свой каталог миссии
  5. Если у вас уже есть миссия с Init.sqf или Description.ext:
  6. Откройте каждый файл в Shell.Stratis и скопируйте ВСЕ коды в СПИСОК вашего соответствующего файла
  7. Не размещайте папку Zen_FrameworkDocumentation в папке миссии.
  8. Вернитесь в редактор, сохраните (ctrl + s) свою миссию
  9. Продолжайте создавать свою миссию, кодируя то, что вы хотите в init.sqf (полноэкранный оконный режим рекомендуется для alt-tabbing)

Что делать сначала

Если вы не уверены, что вы только что загрузили, посмотрите на FrameworkIntroduction.txt, чтобы узнать об основе.

Даже если вы знаете, чего хотите, я предлагаю в ближайшее время прочитать FrameworkIntroduction.txt и FAQ.txt. FrameworkIntroduction.txt – полная версия сокращенного текста, предоставленного форумом. Прежде чем приступать к созданию миссий самостоятельно, я советую прочитать HowToDebug.txt, HowToUseDocumentation.txt и KnownIssues.txt. Вы также можете прочитать readme, специфичный для каждой вложенной папки, чтобы узнать больше о его содержимом. Если же вы хотите просто погрузиться, вот несколько советов, основанных на уровне опыте.

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

Если у вас мало опыта работы со скриптами sqf и редактором, я настоятельно рекомендую вам начать с первого учебника. Откройте папку Zen_Tutorials и прочитайте там файл readme. Вероятно, у вас есть небольшое преимущество в том, что у вас нет каких-либо заблуждений о sqf.

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

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

Если у вас есть промежуточный опыт работы с sqf (или знаете настоящий язык программирования), не стесняйтесь просматривать учебные пособия. Каждый учебник становится все более сложным, и каждый из них предлагает «технический угол», который является более продвинутым. Я предлагаю вам взглянуть на код в последующих руководствах, чтобы узнать, что может сделать инфраструктура на промежуточном уровне. Кроме того, я предлагаю вам прочитать некоторые или все демонстрационные миссии (папка Zen_Demontrations). Некоторые могут казаться слишком легкими или слишком сложными, но они помогут вам получить больше от использования фреймворка. Если вы серьезно относитесь к изучению sqf, потратите некоторое время на практику и изучение примера кода (вы также можете посмотреть исходный код фреймворка). Вам не нужно быть профессиональным программистом, чтобы хорошо владеть sqf.

Наконец, если вы являетесь продвинутым сценаристом (сотни часов кодирования сложных функций и систем и / или профессиональным программистом в реальной жизни), вы, вероятно, уже знаете, чего хотите от библиотеки функций. Я предлагаю просмотреть файлы индекса и документации для интересующих вас функций. Кроме того, см. демонстрационные миссии для некоторых общих способов использования функций фреймворка и объяснения некоторых структурных данных. Вы можете просмотреть весь исходный код для фреймворка и отредактировать его для личного использования (обязательно обновите документацию). Однако, пожалуйста, прочитайте файл Legal.txt и поймите, что там сказано.

comments powered by HyperComments