Первые шаги в kOS (учебник)

Перед вами длиннопост, в котором подробно рассказано, с чем нужно есть такой мод как kOS.
Данный гайд является точным переводом официальной документации за авторством erendrake'а. Ничего не было привнесено, по возможности сохранена стилистика повествования автора. Критика, как и замечания от GrammarNazi приветствуются (в разумных пределах :)).

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

Первые шаги в kOS

Гайд по быстрому старту в Kerbal Operating System.

(Этот документ написан для тех, кто только начинает использовать kOS. Предполагается, что вы уже играли в KSP и знаете как управлять ракетой в ручном режиме. Кроме того, НЕ предполагается, что вы гуру программирования, так что вам будут рассказаны некоторые базовые первые шаги).

Первый пример: Hello World

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








Второй пример: Делаем что-нибудь реальное.
О'кей, это все базовые установки, но вы, наверное, уже хотите какого-нибудь реального примера, который сделает что-то реально стильное.

Этот пример покажет самое простое, самое основное использование kOS, просто что бы было с чего начинать. В этом примере мы напишем программу, которая будет запускать корабль, используя все более и более сложные проверки. kOS может быть использован на любой стадии полета корабля - запуск, вывод на круговую орбиту, стыковка, посадка… и по сути, запуск - это одна из самых простых задач пилотирования, которые могут быть выполнены без необходимости сильной автоматизации. Где kOS действительно засияет во всей красе, так это в реализации чувствительных задач, таких как посадка, или стыковка, или выдерживание высоты. Это задачи, в которых молниеносная реакция компьютерного скрипта может принести реальную выгоду.

Но в этом примере мы просто покажем, с чего вы можете начать - мы напишем пример запуска.








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

Как вы, наверное, заметили, этому скрипту еще далеко до того, что бы стать по-настоящему ХОРОШИМ автопилотом. Подумайте о следующих опциях, которые вы могли бы добавить сами, когда вы сильнее подружитесь с kOS:
  • Вы можете изменить логику рулевого управления, что бы делать более плавный гравитационный поворот, постоянно подстраивая тангаж в операторе HEADING в соответствии с какой-либо математической формулой.
  • Вы можете завершить запускающий скрипт проверкой, что ваш корабль вышел из атмосферы и перешел на стабильную орбиту, а не просто выключился после 70000 км и дрейфует.
  • Этот скрипт тупо удерживает тягу на максимуме на протяжении всего подъема. Вы можете его усложнить, подстраивая тягу при необходимости, что бы избежать избыточного расхода энергии на преодоление атмосферного трения. (Между прочим, стоковая аэродинамика KSP устроена так, что оптимально движение с терминальной скоростью).
  • С более сложными проверками на ступенях этот скрипт мог бы работать и с твердотопливными ускорителями.
  • С еще более замысловатыми проверками можно заставить этот скрипт с более мудреными методами разделения ступеней, например с пакетной схемой (asparagus).
  • Используя команду PRINT AT вы можете устроить вывод необходимой информации на экран терминала, пока работает скрипт.
Пожалуй, самый лучший самолёт для дальних полетов!
31 янв 2017 в 15:20,
Библиотека скриптов для kOS
Библиотека скриптов для kOS
18 авг 2015 в 16:43,
  1. CoolCrazy

    CoolCrazy 11 июля 2014 13:54

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

  2. al_himik

    al_himik @Алексей 11 июля 2014 14:42 Автор

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

  3. Aqrimuss

    Aqrimuss 11 июля 2014 16:45

    Хм... А не переделать ли мою МБР под это?... Хотя, нет( Лень.

  4. CoolCrazy

    CoolCrazy 11 июля 2014 17:26

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

  5. Влад Сидоренко

    Влад Сидоренко @Влад Сидоренко 30 ноября 2017 05:23

    Hello world... Все программисты начинают с Hello world. И здесь, тоже. Это круто!

  6. Сас

    Сас Гость 7 октября 2022 14:51

    >Критика, как и замечания от GrammarNazi приветствуются (в разумных пределах :))
    Ну ладно, раз приветствуется, тогда вставлю свои 5 копеек.
    Первое. Переводчик - просто туповатый или ему религия запрещает писать слово "чтобы" слитно? "Что бы" пишется в значении "какая бы вещь" (самым первым приходящий пример - "что бы ни произошло" - "какая бы вещь ни произошла"). А если пишешь "чтобы..." в значении "с целью...", "во имя...", то писать нужно слитно! Я сам не особо грамотен, но если я вижу ошибку, я "спотыкаюсь" при чтении, я отвлекаюсь на неё, я, так сказать, сбиваюсь с ритма чтения. А "чтобы" - "что бы" - элементарщина же! Ладно бы один такой дебил выискался, но их таких пол-Рунета!
    Второе. В скриптовых комментариях в двух местах употребляется "полсекунды", в обоих - раздельно ("пол секунды"). Нужно слитно.
    Больше пока ничего не нашёл - начинаю пытаться искать ошибки и постоянно на это "что бы" натыкаюсь. Что за недоделок писал?!!

{login}
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
Последние сообщения с форума
  • Тема в разделе: Игровой процесс
    Просмотров: 547
    Ответов: 1
  • Тема в разделе: Модераторский раздел
    Просмотров: 5575
    Ответов: 21
  • Тема в разделе: Технические вопросы
    Просмотров: 2204
    Ответов: 5
  • Тема в разделе: Корзина
    Просмотров: 10916
    Ответов: 34
  • Тема в разделе: Другие игры
    Просмотров: 1944
    Ответов: 1
    Все сообщения..
    Полный список последних сообщений
    Loading...

    Нашли ошибку?
    Вы можете сообщить об этом администрации.
    Выделив текст нажмите Alt+Ctrl