Space Engineers — игра на космическую тематику. Довольная спорная с точки зрения геймплея, но, на мой взгляд, одна из лучших на текущее время программистских игр. А все благодаря тому, что в игре доступен так называемый «Программируемый блок», позволяющий писать собственные скрипты на языке C-шарп.
От сюда следует, что для начала необходимо скачать, установить, и настроить подходящую IDE для удобства написания кода. Конечно, можно обойтись и встроенным текстовым полем прямо в игре. Но будем честны сами с собой — это не вариант для скрипта длиннее пяти строк.
Visual Studio
Именно в этой IDE мы будем вести разработку скрипта. Качаем установочник с официального сайта Microsoft: https://visualstudio.microsoft.com/ru/
Выбираем версию Community — она бесплатна для некоммерческого использования. А мы, как минимум, не имеем права продавать скрипты, согласно пользовательскому соглашению с разработчиками игры. Устанавливаем, запускаем.
В появившемся окне мастера выбираем создание проекта, далее из большого списка типов проектов выбираем «Приложение Windows Forms (.NET Framework)». По сути, тип проекта нам не важен — мы не пишем программу для Windows. Но данную строку вы найдете со стопроцентной вероятностью.
Space Engineers короткие гайды, как использовать проектор !
В следующем окне указываем имя проекта. Любое. «Test», как по мне, отличное имя для начала. Укажите расположение — место, где сохранится файл с кодом и «каркас» проекта. Имя решения и платформу оставьте по умолчанию. Нажмите кнопку «Создать».
Вам откроется проект. Можете нажать F5. Visual Studio скомпилирует программу и запустит ее. Насладитесь, закройте. Шаг не обязательный, тем более, что больше она нам не понадобится.
Закройте вкладку «Form1.cs [Конструктор]». На скрине справа расположен «Обозреватель решений» . Кликните правой кнопкой мыши по строке «Ссылки» . В появившемся контекстном меню выберите «Добавить ссылку» .
В окне «Менеджер ссылок» выберите слева вкладку «Обзор» .
На моём скрине уже есть некоторые записи. У вас же их не будет. Затем нажмите кнопку «Обзор» . В появившемся диалоговом окне проводника пройдите по пути:
D:GamesSteamsteamappscommonSpaceEngineersBin64
Я для наглядности не маскирую свой путь к папке, в которую установлен Steam. Но помните, у вас путь будет отличаться.
Далее вам, удерживая зажатой кнопку «Ctrl», необходимо выбрать следующие файлы:
- Sandbox.Common.dll
- Sandbox.Game.dll
- SpaceEngineers.Game.dll
- SpaceEngineers.ObjectBuilders.dll
- VRage.dll
- VRage.Game.dll
- VRage.Library.dll
- VRage.Math.dll
- VRage.Mod.Io.dll
Не путайте файлы *.dll и *.xml
Это библиотеки. Они необходимы нам для импортирования пространств имен, классов, интерфейсов и так далее. Все для того, чтобы в Visual Studio работало автоматическое дополнение кода и проверка синтаксиса.
Далее в обозревателе решений кликаем правой кнопкой мыши по проекту Test —> Добавить —> Класс. Как на скрине ниже.
В появившемся диалоге добавляемый элемент уже будет выбран, как Класс. Осталось нажать кнопку «Добавить». Можно было вместо имени «Class1.cs» указать любое свое. Я не стал.
Вот, что мы получили:
Теперь выделите весь автоматически созданный код и удалите его. На его место вставьте:
using System;
using System.Text;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using VRageMath;
using VRage.Game;
using VRage.Game.GUI.TextPanel;
using Sandbox.ModAPI.Interfaces;
using Sandbox.ModAPI.Ingame;
using Sandbox.Game.EntityComponents;
using VRage.Game.Components;
using VRage.Collections;
using VRage.Game.ObjectBuilders.Definitions;
using VRage.Game.ModAPI.Ingame;
using SpaceEngineers.Game.ModAPI.Ingame;
namespace Template
public sealed class Program : MyGridProgram
#region Copy
public void Main(string argument, UpdateType updateSource)
Всё, что находится между тегами «region Copy» и «endregion» — ваш будущий скрипт. Его и надо будет копировать в игровой редактор (исключая сами теги).
Что все это значит, и как дальше жить, расскажу в следующей статье .
Источник: dzen.ru
Гайд по проектору в Space Engineers
Для себя я открыл некоторые моменты которые помогут сделать «практичный» корабль – красивым и хочу поделиться с теми игроками которые как бы не старались построить красивый корабль, на выходе получают «практишь квадратишь».
Интерьер
Если мы не строим и не модернизируем корабль, то большую часть времени мы проводим внутри корабля. И это является ни чуть не менее важной частью дизайна чем экстерьер. Красиво выполненный интерьер позволяет нам получать больше удовольствия от своего корабля чем его корпус, который больше ориентирован впечатлить других игроков.
Не забывайте про интерьерные блоки, разнообразие – одна из ключевых составляющих хорошего дизайна.
Если вы еще не представили с своей голове как будет будет внешне выглядеть ваш корабль, то интерьер – именно та часть корабля, с которой я бы рекомендовал начинать строительство новичкам.
Представьте себе на минутку как вы идёте по своему кораблю, Слева каюта капитана, справа каюта экипажа. Вот открывается шлюзовая дверь и вы попадаете в ангар, проходите между установленными на опоры перехватчиками и попадаете в следующую секцию с приглушенным светом, и разными генераторами. Проходите отсек насквозь вы попадаете на развилку, где пройдя вперёд переходите к капитанскому мостику, а слева и справа стоят лестницы на другие палубы.
Форма корабля
Самая большая ошибка которую допускают космические инженеры – забывают, что их корабль трёхмерный.
Не раз наблюдал как игроки начинают строительство своего корабля с создания ровной платформы на которой поочерёдно располагают какие-то компоненты наращивая высоту или ширину. Но при этом совершенно забывают про днище корабля, В результате корабль получается похожим на башмак.
Не забывайте, что вы играете в трёхмерном мире. И корабль у Вас тоже трёхмерный. Компоненты можно расположить как горизонтально, так и вертикально.
Избавиться от этой болячки поможет предварительное создание интерьера и размещение внутренних частей корабля перед созданием корпуса, как я уже описал выше.
Экстерьер
Вот вы создали коридоры, комнаты, трюмы и прочее. Теперь можно обшивать ваш корабль. Тут самое главное опять не наступить на грабли и не сделать его кубиком. Не надо при обшивке корабля делать ровную стеночку от края до края. Попробуйте огибать корпусом каждый реактор, каждый контейнер, каждый коридор, этим вы предадите кораблю особую форму.
Но не обязательно при обшивке корабля каждый-каждый блок покрыть бронёй. Особенно, если вы не планируете на этом корабле идти в бой.
Броня бывает лишней
Не храните все яйца в одной корзине. Если корабль строится с расчетом на встречу в бою. Как бы вы не старались защитить компоненты, как бы не обкладывали их бронёй это не спасёт их от повреждения в бою. Ракеты успешно разрывают корпус и повреждают всё что под ним находится. Поэтому:
- Строить один компонент и обкладывать его максимальной защитой – неправильно.
- Строить много компонентов и располагать их равномерно по кораблю – правильно.
И старайтесь не располагать в непосредственной близости к взрывоопасным компонентам важные системы.
Красиво = практично
Прочтите: Изготавливаем роторную пушку в Space Engineers
Модульность
Не стесняйтесь копировать в чертежи удачно получившиеся части своих кораблей.
Допустим у вас получилось создать кокпит вашей мечты, всё расположено именно так, как вы хотели, и удобно и красиво и вообще классный со всех сторон.
Сделайте простое действие
- Скопируйте корабль в чертёж.
- Зайдите в творческий режим.
- Вырежьте ту часть корабля, которая вам очень хорошо понравилась.
- Скопируйте эту часть корабля в чертёж.
В дальнейшем, при помощи проектора вы сможете подставлять ваши готовые части друг к другу и соединять их в готовый корабль. Это значительно упростит создание корабля и эксперименты с дизайнами без необходимости перестраивать всё вручную.
По картинкам
Не надо изобретать колесо. Если нет большого опыта и художественного начала, то не надо сидеть-высиживать часами над кораблём возьмите уже готовое. Оттолкнитесь от того дизайна, который вам нравится, возьмите в пример корабль из любимой вселенной.
В силу ограничения формы теми блоками, которые есть в игре, вы не сможете повторить дизайн эталонного корабля полностью. Вам каждый раз надо будет придумывать как загладить угол, или как скруглить форму.
Построив несколько кораблей из примеров и других вселенных, вы наберёте достаточное количество опыта по использованию строительных хитростей, чтоб построить собственный корабль.
Вступление
Не нашел дельного руководства по проектору на русском языке, потому решил создать свое собственное. Использовать буду клавиши управления, что даны по-умолчанию.
Итак, для начала нам нужен чертеж (blueprint). Для этого просто подпишитесь на понравившуюся модель из мастерской. Проверить, установился чертеж можно в игре клавишей F10. Если чертежа нет, то обновите список (самая нижняя кнопка – Refresh Blueprints).
Чтобы создать корабль по чертежу, нам понадобится следующее:
- Стойка маленькогобольшого кораблястанции (G -> New Small Ship Large Ship Station).
- Малый реактор (Small Reactor).
- Проектор (Projector).
Выберите чертеж и нажмите клавишу Details – там увидите тип корабля Small Ship Large Ship Station. В зависимости от типа модели, выбираем соответствующую стойку, иначе будет выдавать ошибку «не соответствует сетка проектора».
Пошаговая инструкция
- Устанавливаем стойку.
- Сверху устанавливаем реактор (не забудьте положить туда слитки урана).
- Сверху устанавливаем проектор.
- Если делаете маленький кораблю, то установите еще панель управления (у больших кораблей можно использовать панель управления реактора (не обязательно)*.
- В панели управления выбираем проектор и нажимаем на кнопку чертеж (blueprint).
- Выравниваем голограму так, чтобы голограма стыковалась любым блоком с конструкцией, на которой установлен проектор.
- Берем сварку, материалы и последовательно создаем блоки (размещать блоки вам не придется – они размещаются автоматически).
* – доступ к панели управления можно получить через окно инвентаря реактора.
Пример со скриншотами
Разберемся строительство по чертежам на наглядном примере.
Для начала, я устанавливаю стойку маленького корабля, на него ставлю реактор, сверху проектор и панель управления в удобном для меня месте:
После этого я захожу в панель управления (клавиша T) и в меню проектора нажимаю на кнопку. Чертеж:
Из списка чертежа выбираю корабль, на который я подписан.
Нажав клавишу Details в списке чертежей проверяю размер корабля. Для нас важен его тип – он должен соответствовать моей платформе. Так же можно посмотреть из скольких блоков он состоит.
После нажатия кнопки Ок в списке доступных чертежей появляется голограмма корабля. С большей вероятностью, голограмма поставится криво и нам необходимо будет ее ровнять.
Заходим опять в панель управления и, используя бегунки (область 1) выравниваем ее так, чтобы голограмма соприкасалась с проектором (но не наезжала на него). Если вы все сделали правильно, то исчезнет надпись «Warning! Projection out of bounds!» (обл. 2). Ниже можно увидеть прогресс постройки и список всех блоков, которые используются для строительства (обл.
3).
Когда закончите, просто возьмите сварку вместе с необходимыми материалами и постройте блок, который соприкасается с реактором. И далее последовательно устанавливайте остальные блоки.
Размещать блоки не нужно – они уже размещены голограммой.
Советы
Для удобства, через панель управления в проекторе поставьте галочку «Show only Buildable» – так будут видны только построенные блоки и те, которые можно построить (соприкасаются с построенными).
Если голограмма мешает/закрывает доступ к блокам, что внутри конструкции, то просто отключите питание в реакторе, на котором установлен проектор.
Чертеж для проектора можно сделать самому в творческом режиме или скопировать существующий.
- Ctrl+B – сохраняет существующий объект (корабль/станцию, на который направлен прицел) в чертежи (F10).
- Ctrl+V – вставляет корабль/станцию из буфера обмена.
- Ctrl+C – копирует объект в буфер обмена.
- Ctrl+X – вырезает объект из мира и добавляет в буфер обмена.
- F10 -> create from clipboard – сохраняет в чертежи объект из буфера обмена.
- F10 -> (выбираем чертеж) -> ok – сохраняет объект из чертежа в буфер обмена.
Если Ctrl+C/Crtl+V не работает, значит в настройках творческого режима не стоит галочка напротив enable copy/paste.
Источник: vesali.ru
Space Engineers скрипт Automatic LCDs 2 Rus команда Inventory
Space Engineers скрипт: команда Inventory отображает сводку инвентаря для определенных типов предметов. Он автоматически добавляет нулевое количество для ванильных игровых предметов. Скрипт автоматически отобразит даже модифицированные предметы, если они есть в инвентаре, но не сообщит об отсутствии модифицированных предметов.
Если вы не хотите отображать отсутствующие элементы (нулевые строки), используйте InventoryX вместо Inventory (хорошо для отображения содержимого контейнера). При этом также будут игнорироваться квоты по умолчанию, поэтому, если вы сами не установите квоту, она будет равна 0, и визуальная панель не будет отображаться.
Если вы не хотите отображать количество руды на дисплее слитков, используйте InventoryS или InventoryXS , если вы также хотите скрыть строки 0 элементов.
У этой команды есть определенные квоты по умолчанию для обычных предметов. Эта квота считается максимальной квотой, что означает, что это максимальное количество предметов. Таким образом, вы можете легко увидеть, просто посмотрев на индикатор выполнения, сколько элементов у вас есть.
Команда также сообщает о модифицированных предметах, найденных в инвентаре, но не показывает их, если у вас их нет.
Вы можете полностью отключить индикатор выполнения, установив квоту на 0.
Вы также можете использовать вариант InventoryNB , чтобы скрыть все прогресс бары.
InventoryNN скрывает все числа.
InventoryNNB (без чисел или полос) скрывает все числа и прогресс бары.
Это также работает с другими вариантами (например, InventoryXNNB ).
Продвинутый: если вы знаете что-то о том, как работают элементы во внутреннем устройстве Space Engineers, вы можете переводить или добавлять модифицированные элементы, чтобы сообщать о них, когда их количество в инвентаре равно нулю.
Аргументы
Без аргументов: отображает все элементы на текущем корабле / станции.
Первый аргумент: фильтрует блоки по имени — дополнительную информацию см. В разделе «Руководство по командам».
Следующие аргументы: указать включенные / исключенные типы элементов и могут переопределить квоты по умолчанию.
Тип товара и спецификация квоты:
Оператор + или — добавляет или удаляет элементы с дисплея.
+ all добавляет все типы элементов для отображения
-ore убирает руды с дисплея
Вам нужно что-то добавить, чтобы оператор работал!
Используйте в спецификации основные типы:
ore (все руды)
ingot (все слитки)
component (все компоненты)
ammo (все ящики с боеприпасами)
tool (все инструменты + ручные пистолеты)
oxygen (кислородные баллоны — в настоящее время только кислородные баллоны)
Или подтипы:
(как руда, так и слитоки)
iron, gold, nickel, platinum, cobalt, magnesium, silicon, silver, uranium
(слитки) scrap лом
(компоненты)
construction, metalgrid, interiorplate, steelplate, girder, smalltube, largetube, motor, display, bpglass, computer, reactor, thruster, gravgen, medical, radio, detector, explosives, solarcell, powercell, superconductor, canvas
(инструмент)
automaticrifleitem, preciseautomaticrifleitem, rapidfireautomaticrifleitem, ultimateautomaticrifleitem welderitem, welder2item, welder3item, welder4item
anglegrinderitem, anglegrinder2item, anglegrinder3item, anglegrinder4item
handdrillitem, handdrill2item, handdrill3item, handdrill4item
(боеприпасы) nato_5p56x45mm, nato_25x184mm, missile200mm
Вы можете использовать модифицированные имена элементов, которые обычно обнаруживаются путем удаления пробелов из того, что отображается на дисплее в сводке по всем элементам.
Так, например: Super_Mega Large Bullet будет super_megalargebullet
Или оба:
ingot/iron (только слитки железа), ingot/uranium (только обработанный уран)
Вы можете комбинировать элементы следующим образом:
+ingot/iron,gold (добавить железо и золотые слитки)
+ingot,component (добавить слитки и компоненты)
+steelplate,construction (стальные листы и элементы конструкции)
Чтобы переопределить квоты прогресс бара:
+ingot:10000
Добавляет все слитки, у всех которых максимальное значение индикатора выполнения равно 10000.
+component:1000 +steelplate:10000,construction:9000
Добавляет все компоненты с квотой 1000
Затем он отменяет стальные листы и компоненты конструкции с разными квотами.
Примеры
Inventory * +all -ore
Inventory Cargo +ingot -scrap
Inventory +ingot:300000
Inventory [STORAGE] +component
Inventory +all -tool -ammo
Inventory +ingot:1000 +component:50
Inventory +oxygen:100
Скачать Space Engineers скрипт Automatic LCDs 2 Rus
Источник: rightnotes.ru