Начиная с 3го ролика в серии по скриптам появится очень много картинок и схемок для наглядности объясняемого материала. Звук тоже будет подправлен. Первые 2 серии получились слабоватыми по качеству, дальше будет лучше.
Просто отлично! Смотрел от и до. Залип на инженерах. Игра бомбическая. С товарищем на пару запускаем ракеты, спутники, автобуры, немножко скриптуем. Это все чудовищно весело. Голова взрывается от планов. И благодаря вашим видео многие из них удается реализовать.
Вот корректный код для установки положения ротора (что бы стрелка не вращалась лишний оборот, а могла устанавливать угол сразу в нужный) : void setAngle(IMyMotorStator target, float angle) { float currAngle = target.Angle * 180.0f / (float)Math.PI; if (currAngle > angle) { target.TargetVelocityRPM = -30.0f; target.LowerLimitDeg = angle; } else { target.TargetVelocityRPM = 30.0f; target.UpperLimitDeg = angle; } }
Круто, мне понравилось. С шарпом не знаком, сам пишу на джава, но мне все понятно, ведь языки очень похожи. А теперь пожелания: 1. Делай лучше короткие видео на отдельные темы, все таки 50 минут за раз посмотреть сложно. Это видео можно было легко порезать на 2-3 отдельных. 2. Пиши сценарий, чтобы было меньше неловких пауз и молчания, это профессиональнее и видео станет короче. 3. Не совсем понятно, для каких людей это видео, для тех кто лишь вчера на вики прочёл, что такое ооп или для программистов? Иногда, ты начинаешь объяснять элементарные вещи, а иногда пропускаешь важное. Мне кажется совсем новички не все поймут из этого видео. Например, про исключения или выход из майна.
Хорошо объясняете. Чувствую, намучаюсь я с Visual Studio, поскольку не пользовался ей никогда, а после NetBeans она выглядит громоздко, но научиться можно всему. А вообще, по игре - здорово, все как в жизни: мало создать крутое устройство; чтобы оно стало реально крутым, нужно написать управляющую программу.
Ну, тут ничего не скажешь, начал играть в SE, а продолжил обучением игроков скриптописанию или точнее програмираванию, ну как то так можно описать действия этого уникального человека, я вот не знаю ни одного такого, кто стал бы серьезно до програмирования играть в игру, а потом на ее базе еще и обучать людей, хочу пожелать удачи и надеюсь на то что этот "ютюб проект" будет жить очень долго и успешно.
+Renesco Rocketman вот я не буду говорить за всех, скажу за себя, гайд довольно хорош, но для меня пара минусов заключается в том, что мой английский плох, так же как и программирование, поэтому таких банальных вещей как for и elso или ("выполнить мнгновенно") я могу не понять, это мои личные трудности и заострять на этом внимание не надо, так как наверняка это гайд просматривают люди немного владеющие и английским и программированием, но попрошу по возможности всеьаки проговаривать даже такие действия, хотя, я думаю что такие вещи должны зайти в мозг после 3-4 приминений и просмотров. Конечно 50 минутный гайд по рограммированию очень плохо заходит с первого раза, но главное что он есть, а это значит что его можно пересмотреть и обмазговать.
саша жданов Я сам косячу много в гайдах, особенно в первых сериях. Опыта объяснения чего-то у меня 0, так что, буду улучшать качество подачи материала от серии к серии. В 3й части уже много картинок в объяснениях.
19:00, Начало занудства: Час заканчивается на 59 минутах. 60-ая (т.е. нулевая) минута является уже началом следующего часа; По этому высказывание "Минуты у нас могут быть от 0 до 60" не верно; конец занудства. p.s. Хорошие видео, серьёзный подход к игре, подписка без вопросов!
Спасибо за видео. Только благодаря твоим стараниям написал свой собственный первый скрипт для SpaceEngineers. Всё помогло. И управление мотором и лампочками и поиск по имени и List и работа с таймером. Такой хороший и цельный задел.
Знаю, что старый видос, очень старый. Играл в SE давно, но не придумал, как сделать быстрый таймер. Мне показалась система скриптинга в SE более ограниченной, чем в моем любимом Garry's Mod, не смог сделать ничего серьезного, что имело бы малое время цикла, и разочаровался в местном скриптинге. Так вот, как оно как, оказывается, надо. Спасибо. З.Ы. Ну и сенсор примитвен, но, вижу, есть более интересные блоки
Renesco Rocketman, спасибо за урок! Очень хотелось бы увидеть урок о том, как использовать visual studio для редактирования и написания игровых скриптом программируемого блока.
Опа, наконец то что то полезное. А не вот это вот, научу научу. Для начала *скачайте* ЭТОТ скрипт, ТОТ скрипт. Тьфу... Какой в этом смысл! Самому интереснее же!
облизательно - нужен анализ "сложности вычислений", по каждому варианту (поиска объектов, напр.): приучайте стадо кодить гигиенично, а не "на всю котлету/как в последний раз". а то - после десятка "ленивых" скриптов, даже "одноастероидная" миссия - сможет подвесить сервачное железо;).
Добрый день. Скажите пожалуйста, возможно ли на сервере ограничить действие ПГ, чтобы злоумышленник не мог получить доступ к базе просто написав скрипт и приварив ПГ. К примеру поставить проверку права доступа владельца ПГ к применяемому объекту (допустим ворота).
Спасибо, я понял, что не стоит мне этим замарачиваться. Могли бы уже и что то готовое в игру внести, блок программный, с готовыми элементами по типу сортировщика.
В твоих словах есть зерно истины. Игра вроде инженеры, а строить здесь на порядок проще чем программировать. А скрипты столько "вкусняшек" дают, что обойти сложно. Думаю разработчики кинули сырую игру, чтобы потом лучшие скрипты интегрировать в игру.
@@KostsovKonstantin 😀Ага, интегрировать... Уже на подходе SE2, вангую будет тот же шлак + интеграция некоторых модов, и выдадут это снова как "готовую" игру, опять пообещав допилить походу дела... Новая графика = новая упаковка, а качество продукта все уже давно оценили... Сильно игра розвилась за 10 лет? Пару ДЛС, баги и т.д. Я осознал что игра сырая за первые 3 часа игры, но стим невозращает деньги за игру если 2 часа отыграл... А новичок три чеса только розбираться будет в интерфейсе и гемплее, не то что баги обнаруживать... Первый же мой дроволёт улетел в центр планеты... Второй, колёсный крафт, розбился об воздух... Этим вот всё о игре сказано... А кодить в столь неудобном редакторе в игре со знанием С#, это не фишка, это бред... Если игра для взрослых программистов, то она сильно примитивна и ограничена, а если для детей, то те вовсе не знают программирования
хороший гайд, вышел на него с обзора торпед, смотрел с интересом; для начала самое оно; с Си знаком, так что все понятно; кроме одного, почему часы быстрее бегут, если отработка их функции в частоте в 4 раза сократилась; может чегото не догоняю, по идее наоборот медленнее должно быть; и еще, никак не могу придумать способ не заходя в станцию брать компоненты из большого контейнера в середине нее, например при стройке большого корабля постоянно приходится бегать, конвееры все перебрал ничего не помогает; может подскажешь чего?
Можно сделать контейнер на выходе и периодически скриптом подгружать туда необходимые компоненты. Но вообще в инженерах сейчас есть автозабиралка необходимых компонентов из всей конвеерной системы. Средняя кнопка мыши, если не изменяет мне память.
по моему нужно не минус хаурпоз а пьюс ставить на минутной. тогда она не станет проворачиваться. конечно это в том случае если скрипту понятно что в круге не больше 360градусов
Наверное, самый лучший способ - скачать исходник игры с github. Есть еще устаревший список методов, но там много уже не то: drive.google.com/open?id=0B0pZdNslMEXdLWJ5NGo1WDJoT00
эх вот помню когда 1 раз смотрел ваще нечего не понимал) а щас вот понимаю что ты не особо понимаешь) new используется для ссылочных типов тоесть обьектов а просто int/float это значимые типы им не нужно) они в стеке хранятся а вот ссылочные в куче)
День добрый! Как объединить ЛСД панели в группу и потом через программный блок менять значение через аргумент? Заранее благодарен! По аналогии видео делал, но не получается с группой... В инете не нашел..
у интов и прочих типов есть метод .ToString(). Думаю, он и выполняется по умолчанию, когда первое слагаемое - стринг. скорее всего, это не только в скриптах, а в шарпе вообще.
+Renesco Rocketman спасибо за гайд, все легко воспринимается. Я хотел задать вопрос. Есть ли какой нибудь способ из скрипта подключаться к блоку который находится на другом объекте? Скажем, я хочу на базе на текстовой панели вывести координаты корабля который болтается в радиусе действия антенны. Ну т.е. координаты любого блока можно выловить c помощью GetPosition, но только в рамках того терминала, в котором находишься. А как бы подключится к удаленному терминалу из скрипта?
Пока я только 2 способа знаю, других не встречал (думаю, их и нет). 1. Через лазерную антенну. Скрипт, запущенный на передатчике переименовывает лазерную антенну и передает сообщения, управляющие команды в текстовом виде и т.п. Скрипт на приемнике постоянно переконнекчивается и читает имя антенны-передатчика. Ну а дальше или выполняет какие-то принятые команды, или что-то пишет в панели. 2. Доступ к любому блоку по сохраненной ссылке. Если найти до отстыковки какой-то блок, сохранить ссылку на него в переменную, то потом можно иметь к нему доступ и после отстыковки. Тут не важно уже, есть связь - нет связи, дистанция и прочее. Но между перезагрузками / перекомпилляциями прог блоков ссылки не живут. Так что, до первого рестарта.
+Renesco Rocketman спасибо, первый способ мне походит! Сам бы не в жизнь не догадался)) и если можно ещё вопрос. В одном из видео, Вы сказали что разработчики упорно не дают доступа к значению высоты корабля над поверхностью планеты. С тех пор много времени прошло. Может быть это уже изменилось? Или возможно вы знаете какой либо другой способ улавливаться высоту над планетой?
Юра здравия, хочу заказать простенький скрипт по управлению оборотами роторов (от 0 до максималки), и управление гироскопами, чтобы за счёт гороскопов - кораблик поворачивался во всех направлениях (в космосе), и стабилизировался по горизонту на планете Как с тобой можно связаться - обсудить работу ?! Благодарю
Что-то я не совсем понял. Почему таймер работает раз в секунду, но если мы вставляем экшн то вдруг 60 раз в секунду тик сразу становится? Почему же 60 раз в секунду он не запускается без этого дополнительного кода?
Дополнительный код включает в себя пункт "активировать действия, привязанные к таймеру, прямо сейчас, без ожидания". Так как на таймер привязано действие "активировать програмный блок", запущенная программа начинает со всей возможной скоростью запускать себя снова. Таймер же между выполнением привязанных к нему действий ждёт не меньше секунды.
Привет. Подскажи возможно ли всем блокам взятыми SearchBlocksOfName или GetBlockGroups установить определенный параметр без перебора по списку через for ? Простой пример: я хочу включить все буры. К одному буру взятому по SearchBlocksOfName я могу применить Drill.Enabled=true, есть такой же простой способ применимый сразу ко всем блокам списка или группы ?
А если в игре создать группу буров типа blockgroup и обращаться к ней из скрипта как к 1 буру, тогда все действия к ней будут применяться ко всем ее бурам(возможно)
Вопрос нуба.. Как в Visual Studio подцепить исходники инженеров, что-бы работала автоподстановка классов и свойств при написании кода? В Visual раньше не работал, да и вообще лет 5 не кодил)
+Veador Sama Я боюсь использования региональных языков в инженерах, и так глюков полно. Многие блоки ищутся из скрипта по имени - лучше избежать косяков с кодировкой.
У меня текстовая панель почему то не обновляется. Public text меняется из скрипта. И в окне "изменить public text" это видно. Но на самой панели текст обновляется только если например подвигать слайдер размера шрифта (то есть каким либо образом вызвать ее перерисовку). После этого видны все мои изменения текста, сделанные из скрипта. "Отображать public text" включено. В чём может быть проблема?
надеюсь ответишь я хочу в корабль написать простенький скрипт когда ротор=90* (типа градусы) или диапазон 89*-91* то на ЖК панель выводится "надпись 1" и при любом другом угле "надпись 2" появляется на экране вместо первой и так они будут менятся еще хотелось бы использовать встроенные картинки можешь кратко написать какие переменные нужны и так пишутся? пожалуйста
Привет. А может, изложишь свою идею подробнее - если интересная тема, то может в стрим по простым скриптам ее включу и будет готовое решение. А так ответ уже есть в стримах по простым скриптам, берем свойство ротора .Angle - это угол в радианах. Соответственно, тебе надо сверять ее с Pi/2.
Renesco Rocketman Спасибо, как сделать так, чтобы при нажатии на конкретную кнопку(например на пробел) включались все нижние двигатели(я имею ввиду то, что двигатели на роторах не работают, если их не включать в ручную)
+TANDEROID and Mr.Baster На пробел нельзя вывести (если только с раскладкой клавиш в самой игре мудрить). А вот на одну из кнопок-циферок - можно. Скрипт примерно такой: void Main() { Thrusts = new List(); GridTerminalSystem.SearchBlocksOfName("ThrusterUp", Thrusts); for (int i = 0; i < Thrusts.Count; i++) { IMyThrust Thrust = Thrusts[i] as IMyThrust; if (Thrust != null) { Thrust.SetValue("Override", 100); } } } Управляемые скриптом движки, соответственно, должны быть названы ThrusterUp1/2/3...
+Renesco Rocketman спасибо, но это можно делать и при помощи таймеров. Но мне пришла в голову мысль, которая не требует тягомотины с клавишами. Что если скопировать информацию с трастеров подключенных напрямую к кораблю(например тягу) ивставить в двигатели ,которые подключены на роторе . Так же можно?
а что делать (по поводу исходника) тем кто допустим застрял в старой пиратке, я вот например так и остался на 1.077 ибо в следующий патчах у меня лаги неимоверные
Это версия игры восьмилетней давности. Разрабы за эти восемь лет всё перекроили и перенесли игру на новый движок. Т.е. либо никак, либо найти и скачать ту древнюю версию игры.
В подобных случаях смотрите в исходный код в интерфейсы там актуальные методы обычно бывают. В разработке часто бывает что делают реализацию нового метода а старый выпиливают постепенно чтобы не запороть реализацию в других местах где он мог применяться. Так что всегда лучше смотреть актуальный код или документацию
Да я уже особо не помню конкретно этот курс, но помню, что очень сжато и по делу. В инжах студия с дллками очень помогает. Без нее только лазить по чужим скриптам и копипастить. Это и дольше и хуже по качеству получится.
Проверьте настройки самой текстовой панели. Должно стоять свойство "показывать текст на экране". Также принадлежность всех блоков должна быть одинаковой.
В Майнкрафт это можно все сделать легче, там есть мод такой project Red, и в нем есть блок микросхемы, который может все эти же действия делать только там не нужно знать всякие сишарпы и тд, там нужно чуток подумать и можно создать такие же механизмы со счётчика ми и таймерами, вроде и тут и там, исход одинаковый, только тут надо иметь знания программирования, а там просто знать как работает блок микро, там на логических элементах, можно было бы и в этой игре придумать такую же модификацию, было бы не плохо. Все гениальное просто)
@@IronGhostYT я понял разницу, я чуток полазил в моде и понял, в манкрафте разработчик написал скрипт допустим логического элемента в 1 элемент, другой скрипт допустим шаг поворота 360° в элемент круга, скрипт повтора цикла в блок, счётчик и многие другие элементы и тд, блок подачи сигнала при активации другого, блок разрешения, допустим нельзя открыть 1 дверь пока не закроешь другую сзади, это все в 1 блоке, и в микросхеме нужно только лиж расположить их в нужном порядке, установить его подключить и настроить выходы сигналов 1-* тоесть подумать и как конструктор собрать,, а в этой же игре нужно получается каждому игроку который захочет сделать сложные механизмы нужно знать программные коды C#, кто нибудь умный мог бы сделать такой же мод и облегчить игру многим людям, В Майне этот мод уже зашит в блоки, правда это модификация, в ванилька тоже нужно писать скрипты, но спасибо огромное умным людям которые могут эти моды делать,
На вкус и цвет. Как по мне писать красивый код, а потом мучаться с ним, оптимизируя его для сервера повеселее, чем нажимать кнопочки в майне. Опять-же на вкус и цвет.
лучше бы просто показал пошаговые инструкции без програмирования и анализа данных для простых смертных, от установки доп прог до копирования вставки твоих написаных скриптов , обучать самому написанию скриптов = безсмысленно, большинство всеравно не поймут(
Мда. Авторы настолько ленивые оказались, что даже не дали входные данные для проганья на с-шарпе ( хотя по идее вообще должны были свой язык изобрести, дабы люди не учили серьезное проганье ) .
они дают что есть, есть довольно немало в сравнении с похожими играми. чтобы было легче начать прогать, лучше поставить и настроить студию - будет нормальная среда разработки с подсказками по методам и свойствам блоков.
ну тогда проще вообще пойти, скачать СДК той же Юнити, или, для извращенцев, Геймбро(движня Бесезды) и реализовывать там свои тайные замыслы, на коде и в графике)
Вот "интелектуальный высер" XD на тему полётов американцев на орбиту и луну. th-cam.com/video/-tuG0TlbURw/w-d-xo.html продолжительность: 30минут примерно.
С# - во первых это не скрипт, а является объектно-ориентированным языком. Только за одно слово -скрипт ставлю дизлайк.Скрипт и программа совсем разные понятия.
Плейлист с новыми стримами по простым скриптам: th-cam.com/play/PL6ZsIWeUKQCrfYsVLXW07WE_rOR7vmncl.html
ребят помогите скачать скрипт куда кидать (пиратка)
Начиная с 3го ролика в серии по скриптам появится очень много картинок и схемок для наглядности объясняемого материала. Звук тоже будет подправлен. Первые 2 серии получились слабоватыми по качеству, дальше будет лучше.
Просто отлично! Смотрел от и до. Залип на инженерах. Игра бомбическая. С товарищем на пару запускаем ракеты, спутники, автобуры, немножко скриптуем. Это все чудовищно весело. Голова взрывается от планов. И благодаря вашим видео многие из них удается реализовать.
Самый лучший курс из всех! Намного лучше буржуйских! У тебя талант к преподованию!
Вот корректный код для установки положения ротора (что бы стрелка не вращалась лишний оборот, а могла устанавливать угол сразу в нужный) :
void setAngle(IMyMotorStator target, float angle)
{
float currAngle = target.Angle * 180.0f / (float)Math.PI;
if (currAngle > angle) {
target.TargetVelocityRPM = -30.0f;
target.LowerLimitDeg = angle;
}
else {
target.TargetVelocityRPM = 30.0f;
target.UpperLimitDeg = angle;
}
}
29:05 Убило) Типичный программист: если код работает с глюком, то назови глюк фичей!
Отличный урок, искренне надеюсь что уроки будут выходить хотя бы раз в неделю.
+Максим Крайнев Спасибо. Вот сейчас как раз следующий заливаю. Часа через 3 его ютуб обработает.
Круто, мне понравилось. С шарпом не знаком, сам пишу на джава, но мне все понятно, ведь языки очень похожи. А теперь пожелания:
1. Делай лучше короткие видео на отдельные темы, все таки 50 минут за раз посмотреть сложно. Это видео можно было легко порезать на 2-3 отдельных.
2. Пиши сценарий, чтобы было меньше неловких пауз и молчания, это профессиональнее и видео станет короче.
3. Не совсем понятно, для каких людей это видео, для тех кто лишь вчера на вики прочёл, что такое ооп или для программистов? Иногда, ты начинаешь объяснять элементарные вещи, а иногда пропускаешь важное. Мне кажется совсем новички не все поймут из этого видео. Например, про исключения или выход из майна.
+nicolas267s Спасибо, все по-делу, учту.
Хорошо объясняете. Чувствую, намучаюсь я с Visual Studio, поскольку не пользовался ей никогда, а после NetBeans она выглядит громоздко, но научиться можно всему. А вообще, по игре - здорово, все как в жизни: мало создать крутое устройство; чтобы оно стало реально крутым, нужно написать управляющую программу.
Ну, тут ничего не скажешь, начал играть в SE, а продолжил обучением игроков скриптописанию или точнее програмираванию, ну как то так можно описать действия этого уникального человека, я вот не знаю ни одного такого, кто стал бы серьезно до програмирования играть в игру, а потом на ее базе еще и обучать людей, хочу пожелать удачи и надеюсь на то что этот "ютюб проект" будет жить очень долго и успешно.
+саша жданов Спасибо.
+Renesco Rocketman вот я не буду говорить за всех, скажу за себя, гайд довольно хорош, но для меня пара минусов заключается в том, что мой английский плох, так же как и программирование, поэтому таких банальных вещей как for и elso или ("выполнить мнгновенно") я могу не понять, это мои личные трудности и заострять на этом внимание не надо, так как наверняка это гайд просматривают люди немного владеющие и английским и программированием, но попрошу по возможности всеьаки проговаривать даже такие действия, хотя, я думаю что такие вещи должны зайти в мозг после 3-4 приминений и просмотров. Конечно 50 минутный гайд по рограммированию очень плохо заходит с первого раза, но главное что он есть, а это значит что его можно пересмотреть и обмазговать.
саша жданов
Я сам косячу много в гайдах, особенно в первых сериях. Опыта объяснения чего-то у меня 0, так что, буду улучшать качество подачи материала от серии к серии. В 3й части уже много картинок в объяснениях.
саша жданов
Ну и на вопросы по серии всегда отвечу в комментах.
19:00, Начало занудства:
Час заканчивается на 59 минутах. 60-ая (т.е. нулевая) минута является уже началом следующего часа;
По этому высказывание "Минуты у нас могут быть от 0 до 60" не верно;
конец занудства.
p.s. Хорошие видео, серьёзный подход к игре, подписка без вопросов!
Хех, верно:)
Спасибо за видео. Только благодаря твоим стараниям написал свой собственный первый скрипт для SpaceEngineers. Всё помогло. И управление мотором и лампочками и поиск по имени и List и работа с таймером. Такой хороший и цельный задел.
красавец, спасибо с е2 из гмода на C# теперь буду перебираться)
Посмотрел от и до!)
Большое спасибо
Знаю, что старый видос, очень старый. Играл в SE давно, но не придумал, как сделать быстрый таймер. Мне показалась система скриптинга в SE более ограниченной, чем в моем любимом Garry's Mod, не смог сделать ничего серьезного, что имело бы малое время цикла, и разочаровался в местном скриптинге. Так вот, как оно как, оказывается, надо. Спасибо.
З.Ы. Ну и сенсор примитвен, но, вижу, есть более интересные блоки
Renesco Rocketman, спасибо за урок! Очень хотелось бы увидеть урок о том, как использовать visual studio для редактирования и написания игровых скриптом программируемого блока.
Опа, наконец то что то полезное.
А не вот это вот, научу научу. Для начала *скачайте* ЭТОТ скрипт, ТОТ скрипт. Тьфу...
Какой в этом смысл! Самому интереснее же!
В часах попробуй сделать секундную стрелку на 59 секунд, а 60-сятую на минуту, тогда должно синхронизироваться. (хотя уже наверное совет устарел).
Хорошо бы все скрипты из роликов выкладывать на гитхабе, и ссылку в описание
Есть же мир с этими уроками в мастерской по ссылку под роликом, скрипты можно взять оттуда.
облизательно - нужен анализ "сложности вычислений", по каждому варианту (поиска объектов, напр.): приучайте стадо кодить гигиенично, а не "на всю котлету/как в последний раз". а то - после десятка "ленивых" скриптов, даже "одноастероидная" миссия - сможет подвесить сервачное железо;).
Добрый день. Скажите пожалуйста, возможно ли на сервере ограничить действие ПГ, чтобы злоумышленник не мог получить доступ к базе просто написав скрипт и приварив ПГ. К примеру поставить проверку права доступа владельца ПГ к применяемому объекту (допустим ворота).
А есть уроки для тех кто уже знает как программировать?
маленькое пожелание: можете указывать названия программ, хотя бы, которые звучат и сайтов
Тексты использованных в ролике скриптов можно найти здесь:
spaceengineers.ru/forum/22/5055
Спасибо, я понял, что не стоит мне этим замарачиваться.
Могли бы уже и что то готовое в игру внести, блок программный, с готовыми элементами по типу сортировщика.
В твоих словах есть зерно истины. Игра вроде инженеры, а строить здесь на порядок проще чем программировать. А скрипты столько "вкусняшек" дают, что обойти сложно. Думаю разработчики кинули сырую игру, чтобы потом лучшие скрипты интегрировать в игру.
@@KostsovKonstantin 😀Ага, интегрировать... Уже на подходе SE2, вангую будет тот же шлак + интеграция некоторых модов, и выдадут это снова как "готовую" игру, опять пообещав допилить походу дела... Новая графика = новая упаковка, а качество продукта все уже давно оценили... Сильно игра розвилась за 10 лет? Пару ДЛС, баги и т.д. Я осознал что игра сырая за первые 3 часа игры, но стим невозращает деньги за игру если 2 часа отыграл... А новичок три чеса только розбираться будет в интерфейсе и гемплее, не то что баги обнаруживать... Первый же мой дроволёт улетел в центр планеты... Второй, колёсный крафт, розбился об воздух... Этим вот всё о игре сказано... А кодить в столь неудобном редакторе в игре со знанием С#, это не фишка, это бред... Если игра для взрослых программистов, то она сильно примитивна и ограничена, а если для детей, то те вовсе не знают программирования
хороший гайд, вышел на него с обзора торпед, смотрел с интересом; для начала самое оно; с Си знаком, так что все понятно; кроме одного, почему часы быстрее бегут, если отработка их функции в частоте в 4 раза сократилась; может чегото не догоняю, по идее наоборот медленнее должно быть; и еще, никак не могу придумать способ не заходя в станцию брать компоненты из большого контейнера в середине нее, например при стройке большого корабля постоянно приходится бегать, конвееры все перебрал ничего не помогает; может подскажешь чего?
Можно сделать контейнер на выходе и периодически скриптом подгружать туда необходимые компоненты. Но вообще в инженерах сейчас есть автозабиралка необходимых компонентов из всей конвеерной системы. Средняя кнопка мыши, если не изменяет мне память.
по моему нужно не минус хаурпоз а пьюс ставить на минутной. тогда она не станет проворачиваться. конечно это в том случае если скрипту понятно что в круге не больше 360градусов
Где можно найти все эти методы? Как узнать, какие методы можно применить к конкретному блоку?
Наверное, самый лучший способ - скачать исходник игры с github. Есть еще устаревший список методов, но там много уже не то: drive.google.com/open?id=0B0pZdNslMEXdLWJ5NGo1WDJoT00
а как в личку написать? если есть такая возможность... и спасибо за работу и труды
А можно, пожалуйста, более подробную инструкцию как начать использовать Visual Studio в качестве программируемого блока?
+Никита Сиргиенко Это просто в качестве редактора где тексты пишутся используется. в прог блок потом просто копируем готовый скрипт.
эх вот помню когда 1 раз смотрел ваще нечего не понимал) а щас вот понимаю что ты не особо понимаешь) new используется для ссылочных типов тоесть обьектов а просто int/float это значимые типы им не нужно) они в стеке хранятся а вот ссылочные в куче)
По типу искать безопаснее, чем по наименованию. Наименование может измениться, а тип вряд ли.
а если 2 объекта с разными именами но с одинаковым типом. Ты вообще смотрел? он ищет и по типу и по имени.
День добрый!
Как объединить ЛСД панели в группу и потом через программный блок менять значение через аргумент? Заранее благодарен!
По аналогии видео делал, но не получается с группой... В инете не нашел..
Меня оооооочень заинтересовал один момент. Точнее " " +5667..... который переводит число в строку. Скажите, это фишка Шарпа или это внутриигровой?
у интов и прочих типов есть метод .ToString(). Думаю, он и выполняется по умолчанию, когда первое слагаемое - стринг. скорее всего, это не только в скриптах, а в шарпе вообще.
Renesco Rocketman было бы круто. В с++ очень мутный перевод числа в строку, тем более не целочисленные
+Renesco Rocketman спасибо за гайд, все легко воспринимается. Я хотел задать вопрос. Есть ли какой нибудь способ из скрипта подключаться к блоку который находится на другом объекте? Скажем, я хочу на базе на текстовой панели вывести координаты корабля который болтается в радиусе действия антенны. Ну т.е. координаты любого блока можно выловить c помощью GetPosition, но только в рамках того терминала, в котором находишься. А как бы подключится к удаленному терминалу из скрипта?
Пока я только 2 способа знаю, других не встречал (думаю, их и нет).
1. Через лазерную антенну. Скрипт, запущенный на передатчике переименовывает лазерную антенну и передает сообщения, управляющие команды в текстовом виде и т.п. Скрипт на приемнике постоянно переконнекчивается и читает имя антенны-передатчика. Ну а дальше или выполняет какие-то принятые команды, или что-то пишет в панели.
2. Доступ к любому блоку по сохраненной ссылке. Если найти до отстыковки какой-то блок, сохранить ссылку на него в переменную, то потом можно иметь к нему доступ и после отстыковки. Тут не важно уже, есть связь - нет связи, дистанция и прочее. Но между перезагрузками / перекомпилляциями прог блоков ссылки не живут. Так что, до первого рестарта.
+Renesco Rocketman спасибо, первый способ мне походит! Сам бы не в жизнь не догадался)) и если можно ещё вопрос. В одном из видео, Вы сказали что разработчики упорно не дают доступа к значению высоты корабля над поверхностью планеты. С тех пор много времени прошло. Может быть это уже изменилось?
Или возможно вы знаете какой либо другой способ улавливаться высоту над планетой?
нет, пока все так же как было.
Юра здравия, хочу заказать простенький скрипт по управлению оборотами роторов (от 0 до максималки), и управление гироскопами, чтобы за счёт гороскопов - кораблик поворачивался во всех направлениях (в космосе), и стабилизировался по горизонту на планете
Как с тобой можно связаться - обсудить работу ?!
Благодарю
Здравствуйте! Объясните, пожалуйста подробнее как вставить исходник GitHab в Visual Studio
Что-то я не совсем понял. Почему таймер работает раз в секунду, но если мы вставляем экшн то вдруг 60 раз в секунду тик сразу становится? Почему же 60 раз в секунду он не запускается без этого дополнительного кода?
Дополнительный код включает в себя пункт "активировать действия, привязанные к таймеру, прямо сейчас, без ожидания". Так как на таймер привязано действие "активировать програмный блок", запущенная программа начинает со всей возможной скоростью запускать себя снова. Таймер же между выполнением привязанных к нему действий ждёт не меньше секунды.
Привет. Подскажи возможно ли всем блокам взятыми SearchBlocksOfName или GetBlockGroups установить определенный параметр без перебора по списку через for ?
Простой пример: я хочу включить все буры. К одному буру взятому по SearchBlocksOfName я могу применить Drill.Enabled=true, есть такой же простой способ применимый сразу ко всем блокам списка или группы ?
Не знаю точно. Может, через лямбду можно попробовать. Там как параметр в функцию выбора по типу можно еще лямбда-выражение впихнуть.
А если в игре создать группу буров типа blockgroup и обращаться к ней из скрипта как к 1 буру, тогда все действия к ней будут применяться ко всем ее бурам(возможно)
Добрый вечер Ты не пишешь скрипты для торговых роботов?
Вопрос нуба.. Как в Visual Studio подцепить исходники инженеров, что-бы работала автоподстановка классов и свойств при написании кода? В Visual раньше не работал, да и вообще лет 5 не кодил)
Вот специально сделал короткий ролик по установке и настройке студии:
th-cam.com/video/1MXJOYQ1xek/w-d-xo.html
Большое спасибо, через час займусь просмотром!)
Я вот кстати заметил по твоим видео: А почему ты не меняешь язык игры в настройках?
+Veador Sama Я боюсь использования региональных языков в инженерах, и так глюков полно. Многие блоки ищутся из скрипта по имени - лучше избежать косяков с кодировкой.
А возможно ли сделать внутриигровые часы на планете?
Качаю Visual Studio а она 20 гигов весит, это что за... это нормально?
обычно больше
Качаешь VS Community 2019 веб инсталер, он закачивает уже все нужные компоненты, если ставить только C# там около 8 Гиг
Возможно, глупый вопрос... Но что если засунуть всю программу в цикл while? Тогда код будет исполняться быстрее, чем в таймере. И в бесконечном цикле.
Программный блок в SE не поддерживает бесконечные циклы.
Да, верно,у скриптов есть ограничение на кол-во исполняемых команд за один запуск. Бесконечный цикл вызовет исключение и остановку пб.
А поддерживает ли SE работу с группой блоков? (которые объединены в самой игре).
Да, но группы раньше работали глючно, поэтому я перешел к группировке по префиксам в названии.
Но, может, поправили уже.
А куда кидать скрипты, скачанные с внешних источников (не стима), так и не нашёл нигде информации об этом
можно просто копировать в свой программный блок
У меня текстовая панель почему то не обновляется. Public text меняется из скрипта. И в окне "изменить public text" это видно. Но на самой панели текст обновляется только если например подвигать слайдер размера шрифта (то есть каким либо образом вызвать ее перерисовку). После этого видны все мои изменения текста, сделанные из скрипта. "Отображать public text" включено. В чём может быть проблема?
+Василий Михайлов это после обновления. сейчас нужно включать и выключать картинку, чтобы обновить текст.
Renesco Rocketman Спасибо. Я делаю вот так:
TP.ShowPrivateTextOnScreen();
TP.ShowPublicTextOnScreen();
А отступы в игровом редакторе не предусмотрены или Вам религия не позволяет их использовать?
надеюсь ответишь
я хочу в корабль написать простенький скрипт
когда ротор=90* (типа градусы)
или диапазон 89*-91*
то на ЖК панель выводится "надпись 1"
и при любом другом угле "надпись 2" появляется на экране вместо первой и так они будут менятся
еще хотелось бы использовать встроенные картинки
можешь кратко написать какие переменные нужны и так пишутся? пожалуйста
Привет. А может, изложишь свою идею подробнее - если интересная тема, то может в стрим по простым скриптам ее включу и будет готовое решение.
А так ответ уже есть в стримах по простым скриптам, берем свойство ротора .Angle - это угол в радианах.
Соответственно, тебе надо сверять ее с Pi/2.
Renesco Rocketman идея в эффектности
больше эфектов!!!
перед вылетом хочу что б корабль чекал что не готово к вылету идея проста и ничего особого
НЕБОЛЬШОГО вводного занятия длительностью 50 минут :)
Та нормальная! Как урок в школе :)
Меньше академического часа. А что вы хотели, по сути, от курса по C#?
Ооо, очень круто!) Ты первый, кто это делает на русском языке)
+Veador Sama Спасибо! Надеюсь, будет интересно.
Привет! Давно искал человека, который разбирается в программировании в спейсах. Если я тебя попрошу, ты напишешь кое-какой скрипт?
+TANDEROID and Mr.Baster Если не очень сложный, то могу примерно сказать, как это пишется с примерами.
Renesco Rocketman Спасибо, как сделать так, чтобы при нажатии на конкретную кнопку(например на пробел) включались все нижние двигатели(я имею ввиду то, что двигатели на роторах не работают, если их не включать в ручную)
+TANDEROID and Mr.Baster На пробел нельзя вывести (если только с раскладкой клавиш в самой игре мудрить). А вот на одну из кнопок-циферок - можно.
Скрипт примерно такой:
void Main()
{
Thrusts = new List();
GridTerminalSystem.SearchBlocksOfName("ThrusterUp", Thrusts);
for (int i = 0; i < Thrusts.Count; i++)
{
IMyThrust Thrust = Thrusts[i] as IMyThrust;
if (Thrust != null)
{
Thrust.SetValue("Override", 100);
}
}
}
Управляемые скриптом движки, соответственно, должны быть названы ThrusterUp1/2/3...
+Renesco Rocketman спасибо, но это можно делать и при помощи таймеров. Но мне пришла в голову мысль, которая не требует тягомотины с клавишами. Что если скопировать информацию с трастеров подключенных напрямую к кораблю(например тягу) ивставить в двигатели ,которые подключены на роторе . Так же можно?
+TANDEROID and Mr.Baster Не пробовал. Но, вроде, как-то по энергопотреблению можно это снять
класс
Ех почему-же я такой идиот,ничего не понял но лайк поставлю(
а что делать (по поводу исходника) тем кто допустим застрял в старой пиратке, я вот например так и остался на 1.077 ибо в следующий патчах у меня лаги неимоверные
Я думаю, в старых версиях может все равно не работать.
Renesco Rocketman а есть где-нибудь старенький исходник или ресурс со списком скриптов (в текстовом виде)
в описании ролика ссылки
как узнать координаты пиратов?
Смотрю видео, на таймере там 00:34, смотрю мои часы на руке, у меня 00:34, тихо фигею....
Такая же фигня Оо
сдвиг на 12 часов... 12:34... но ведь это видео, минуты-то совпали!
как менять терминал и подсветку
блока как у вас ?
Это версия игры восьмилетней давности. Разрабы за эти восемь лет всё перекроили и перенесли игру на новый движок. Т.е. либо никак, либо найти и скачать ту древнюю версию игры.
дай пожалуйста помощь есть проблем Программируемый блок. ник staem лс говорить !
WriteText работает а WritePublicText нет...
потому что Writepublic text устарело
В подобных случаях смотрите в исходный код в интерфейсы там актуальные методы обычно бывают. В разработке часто бывает что делают реализацию нового метода а старый выпиливают постепенно чтобы не запороть реализацию в других местах где он мог применяться. Так что всегда лучше смотреть актуальный код или документацию
Приветствую а как можно с тобой связаться?
Привет. Можно тут любые вопросы/идеи/предложения.
resharp - это лишнее?
А чорт его знает.. Я просто в студии с подсветкой и подсказками кодю - хватает. Если этот плагин поможет со скриптами в СЕ - почему нет.
Я еще не дошёл до того урока где раскрываются его возможности.
а в моих "уроках" этого и нету. Есть ролик по тому, как студию установить и настроить.
Это из "от простого к сложному"
Да я уже особо не помню конкретно этот курс, но помню, что очень сжато и по делу.
В инжах студия с дллками очень помогает. Без нее только лазить по чужим скриптам и копипастить. Это и дольше и хуже по качеству получится.
как прогнуть симу сервера вдвое без смс и регистрации)))
12:43 надеюсь спустя 4 года, ты уже знаешь, что между литералом null и значением 0, нет ни чего общего.
Сейчас я это уже забыл. Обnullилось.
у меня даже 1 скрипт на вывод текста не работает(
Проверьте настройки самой текстовой панели. Должно стоять свойство "показывать текст на экране".
Также принадлежность всех блоков должна быть одинаковой.
есть у кого ссылка на курс C# ?
th-cam.com/play/PL6ZsIWeUKQCrs3do0q3YT1GLDFsSYgQc7.html
@@dominicbrunsmeier просили курс C# а не курс по скриптам в инженерах
В Майнкрафт это можно все сделать легче, там есть мод такой project Red, и в нем есть блок микросхемы, который может все эти же действия делать только там не нужно знать всякие сишарпы и тд, там нужно чуток подумать и можно создать такие же механизмы со счётчика ми и таймерами, вроде и тут и там, исход одинаковый, только тут надо иметь знания программирования, а там просто знать как работает блок микро, там на логических элементах, можно было бы и в этой игре придумать такую же модификацию, было бы не плохо.
Все гениальное просто)
@@IronGhostYT я понял разницу, я чуток полазил в моде и понял, в манкрафте разработчик написал скрипт допустим логического элемента в 1 элемент, другой скрипт допустим шаг поворота 360° в элемент круга, скрипт повтора цикла в блок, счётчик и многие другие элементы и тд, блок подачи сигнала при активации другого, блок разрешения, допустим нельзя открыть 1 дверь пока не закроешь другую сзади, это все в 1 блоке, и в микросхеме нужно только лиж расположить их в нужном порядке, установить его подключить и настроить выходы сигналов 1-* тоесть подумать и как конструктор собрать,, а в этой же игре нужно получается каждому игроку который захочет сделать сложные механизмы нужно знать программные коды C#, кто нибудь умный мог бы сделать такой же мод и облегчить игру многим людям, В Майне этот мод уже зашит в блоки, правда это модификация, в ванилька тоже нужно писать скрипты, но спасибо огромное умным людям которые могут эти моды делать,
"всякие сишарпы" :-D
На вкус и цвет. Как по мне писать красивый код, а потом мучаться с ним, оптимизируя его для сервера повеселее, чем нажимать кнопочки в майне. Опять-же на вкус и цвет.
написал, а потом понял что чушь спорл ;)
+илья гуров Там можно этот баг поправить, я просто не стал перегружать тему.
точно не баг, а фича))
лучше бы просто показал пошаговые инструкции без програмирования и анализа данных для простых смертных, от установки доп прог до копирования вставки твоих написаных скриптов , обучать самому написанию скриптов = безсмысленно, большинство всеравно не поймут(
вообще нихрена не понятно как управлять скриптами из игры
спасибо нихера не понял
Мда. Авторы настолько ленивые оказались, что даже не дали входные данные для проганья на с-шарпе ( хотя по идее вообще должны были свой язык изобрести, дабы люди не учили серьезное проганье ) .
зато игроки могут не быть ленивыми и подучить ц шарп. это полезно=)
Си Шарп уже устарел для реального применения, к сожалению. Да и опять же, раз они не дали толком инфу для работы с игрой, это большой прокол, не?
они дают что есть, есть довольно немало в сравнении с похожими играми. чтобы было легче начать прогать, лучше поставить и настроить студию - будет нормальная среда разработки с подсказками по методам и свойствам блоков.
ну тогда проще вообще пойти, скачать СДК той же Юнити, или, для извращенцев, Геймбро(движня Бесезды) и реализовывать там свои тайные замыслы, на коде и в графике)
Ну язык то свой написать - дело плевое.
И когда это Шарпей устарел? Мож вы с плюсами путаете?
Вот "интелектуальный высер" XD на тему полётов американцев на орбиту и луну. th-cam.com/video/-tuG0TlbURw/w-d-xo.html продолжительность: 30минут примерно.
С# - во первых это не скрипт, а является объектно-ориентированным языком. Только за одно слово -скрипт ставлю дизлайк.Скрипт и программа совсем разные понятия.
неа
фу какой ты агресивный