Реквестую небольшой гайд от просвещённых, как с нуля намапить небольшой отсек, чтобы всё взлетело. У меня на данный момент проблема в том, что атмос не хочет двигать предметы и кидать игрока об стену, но думаю, многим было бы интересно узнать всё с нуля.
Потыкал кнопки в Дриммейкере. Итого создал с нуля небольшой отсек со всей инфрастурктурой.
Спойлер А вот так выглядит в дриммейкере.
Спойлер Инструкция:
Продумываем для чего нужен отсек, его планировку и инфраструктуру.
Прописываем в Space station 13 areas.dm новую зону с уникальным именем, по аналогии с существующими. Пример моей зоны Engeneering test room, прописанной как подзона в инженерном отсеке:Спойлер
//Engineering
/area/engine
engine_smes
name = "\improper Engineering SMES"
icon_state = "engine_smes"
requires_power = 0//This area only covers the batteries and they deal with their own power engineering
name = "Engineering"
icon_state = "engine"
break_room
name = "\improper Engineering Break Room"
icon_state = "engine" chiefs_office
name = "\improper Chief Engineer's office"
icon_state = "engine_control"
// temporary test room
engine_test_room
name = "\improper Engeneering test room"
icon_state = "engine_test"
(Опционально) рисуем новую иконку для зоны и размещаем в icons/turf/areas.dmi Ссылку на использование этой иконке прописываем в предыдущем пункте в параметреicon_state.
Сохраняем проект. Перезапускаем дриммейкер, чтобы он подхватил в редактор новую зону. Возможно существует специальная кнопка релоад, чтобы этого не делать, но я не нашел.
Теперь во вкладке/objects/areas/<куда вы добавили вашу зону> появилась ваша зона для разметки. Ее нужно будет нанести на всю поверхность вашего нового отсека. Зона нужна чтобы подхватилась работа атмоса, мониторинга питания и атмосферных тревог.
Рисуем стены и пол. Из turf/simulated/wall иturf/simulated/floor закладок. Именно эти сразу имеют с собой атмосферу.Вообще, чтобы меньше ошибаться - подсматривайте в пример уже существующие на карте вещи. Так чтобы найти этот гребаный аэрлок в тысяче закладок - находим уже существующий аэрлок, такой-же какой мы хотим поставить, райт клик, подсматриваем путь/obj/machinery/door/airlock/external/ и быстро находим объект по этому пути в закладкеobj. Подкладывать нижние плиты или решетку под пол, как при строительстве в игре не нужно. Просто клик заменяет объект, CTRL-клик добавляет.
Проводим электропитание. Если играли инженером, прокладка кабеля не составит труда. Но подсмотрите имя объекта уже у существующего кабеля, там есть хитрость, он должен быть из вкладки hidden чтобы скрываться под плитками пола.
Вешаем АПЦ. Хитрость - его нужно ставить не на стену, а на клетку пола перед ней, в которую подведен провод электропитания. А потом в свойствах АПЦ через переменныеpixel_x и pixel_y смещать на стену на 24 пикселя. Трюк со смещением обязателен и для панелей пожарной и воздушной тревоги. Подсмотрено по аналогии с существующими. Если поставить же просто в стену - он будет виден и доступен с обоих сторон стены. А панель воздушной тревоги будет проводить измерения внутри стены, и при полной разгерметизации продолжать показывать зеленый код.
Атмосферное обеспечение. Проводим две, не пересекающиеся между собой, трубы в помещение, темно-синюю и темно-красную, на концы вентиляцию и скраббер. Трубы должны быть соединены с уже существующими на станции трубами такого-же цвета, чтобы войти в цикл циркуляции воздуха. Вспоминаем роль атмосферного техника. Чем больше помещение - тем больше пар вентиляция/скраббер - должно быть. И только одну на всех атмосферную панель.
Ставим на входы пожарные аэрлоки и одну панель пожарной тревоги.
Проводим трубы пневмопочты и мусорки.
Развешиваем по отсеку лампочки.
Развешиваем камеры слежения, в их переменных задаем имя камеры через параметрc_tag например "Engeneering TEST room north". Задаем вместе с кавычками, это имя появится в панели наблюдения за камерами безопасности.
Ставим необходимую фурнитуру и оборудование.
Проверяем все ли правильно. Сохраняем, компилим, сервуем, конектимся, проверяем как работает.
Все проверялось и тестировалось на сборке Baystation12-273bb67
По поводу атмосферы и потоков которые размазывают по стеклу порывом. Работа потоков воздуха описана вAirflow.dm. Процедурки Airflow и AirflowSpace. Для обмена газами между зонами и между зоной и космосом. Вызываются они из ZAS_zones.dm и судя по процедурке ShareRatio при расчете силы потока учитывается размеры комнат и суммарное давление в ее тайлах с учетом всех газов. Чтобы создать убийственный поток при разгерметизации - комнату побольше, или давления побольше. В моей тестовой вполне получалось летать ногами вперед, правда я немного завышал давление. В комнате поменьше сносящего с ног потока не будет, но будет видно как убывает воздух по датчикам.
Итак, вы составили карту, и вдруг, когда вы перемещаете вы больше не получите анимации движется, но просто «появиться» на следующей плитки? Так, некоторое время назад step_x и step_y были введены, чтобы пикселя на основе движения. SS13 не используют это. Step_x и step_y являются переменными, что каждый атом имеет. То, как они работают, что, как только вы установите любой объект на карте, чтобы воспользоваться одной из этих переменных, игра интерпретирует, что вы перегрузили весь код по умолчанию движения и написал собственную, - но вы не сделали (код, который делает анимацию от плитки к плитке). Для решения этой проблемы необходимо закрыть Dream Maker (сохранить проект первый, очевидно). Откройте карту (. DMM) файл в текстовом редакторе, например, блокнот или Notepad + +. Поиск (Ctrl + F) через файл для step_x и step_y и удалить все ссылки на него. После не более step_x или step_y-х годов можно найти в файл, сохранить его и открыть его в сон производитель еще раз. Компиляция кода и движение должно работать нормально еще раз. Перейти к развитию IRC, если вам нужна дополнительная помощь.
В процессе экспериментов с дриммейкером сам натыкался на такое. Лечил по инструкции, что перевел Warlock. Удалял все упоминания step_x и step_y и параметры что с ними связаны. В моем случае им присваивались значения, типа step_x = 2. Сохранял и рекомпилил. Позже снял чехлы, что эти step_x появились когда сдвигаешь объекты через команду Nudge West в выпадающем меню объекта. Не хотите этих приколов с движением - просто не пользуйтесь этими командами. Ведь после того как почистишь через текстовый редактор, все эти ручные смещения через Nudge west исчезнут. Если же объект нужно сдвинуть например, для того трюка, что я описывал в минигайде, лезем в его выпадающее меню Edit и меняем pixel_x и pixel_y.
как решаются проблемы контакта симулированных и несимулированных турфов?
Способ простой - ни одна размеченная зона area не должна включать в себя одновременно и симулированные и не симулированные тайлы. Об этом, кажется, предупреждал и английский гайд. А для безвоздушных тайлов, в симулированных специально есть airless закладка. Аналогию можно просмотреть в инженерном отделе возле полей синги.
Я признаться на всей карте не симулированные тайлы видел только на 2-м слое, там где картинка для лобби. Вся станция построена на симулированных. Если ошибаюсь - поправьте конечно. Сообщение отредактировал Kreng: 08 November 2012 - 23:28
обратите внимание на 2 места на карте - первое - контакт шаттла спасения и базы ЦК, там симулированный шаттл контактирует с несимулированным полом станции и воздух из шаттла не уходит. Аналогичная ситуация с шаттлом ЕРТ на карте грина, но там воздух из симулированного шаттла "утекает" в несимулированный пол, потому что думает, что там уже космос.
Качнул репу грина. Потому как на моей сборке этого не наблюдается. Пришлось чуть поковырять код, чтобы отключить проверку на вайтлист.
Действительно дурацкий баг. На ЕРТ при открытии внутренней двери шаттла, тут же всю атмосферу откачивает в космос, хотя прямого контакта с его тайлами нет. А в шатле спасения все хорошо. В чем различается настройка - зон, дверей или турфов, я не нашел. Объявление исключений в коде с первого взгляда тоже. По идее работать они должны одинаково. Баг имеет место, и нужно конкретно расковыривать механику игры и экспериментировать.
Могу подсказать костыль. Это конечно не гибкое, и не очень красивое решение. Технически, создавая код, таких приколов следует избегать, иначе последующие кодеры, вообще ни хрена не поймут. Ну или на крайний случай в ченжлоге описать с предупреждением.
Если в свойствах двух турфов под аэрлоками на самом ЕРТ шатле в переменных задать blocks_air с 0 на 1, то приколы с выдуванием атмосферы прекратятся. Так как, технически, эти полы будут считаться для потоков воздуха непроходимыми стенами. С другой же стороны, когда воздух из-за открытых дверей в космос действительно должен будет выходить - он останется запечатанным в шаттле.
У меня будет вопрос. Все объекты приписываются к выключателям (бласт доры, конвейеры и т. д.) точно так же, как и камеры к консоли в инструкции он Кренга?
Вопрос про турели - Каким образом заставить их работать? Через ид оно не хочет пахать.
0
Цитата
1)Вся суть СБ: Загребли, но он невиновен? Пфф, виновен, просто улик при нем нет. 2)Все решается простой логикой основанной на правилах и бек-стори. Стыдно объяснять такие моменты. 3)Вперде Анимусяне! 4)#ящерсарматурой
Kavainoe4udo (25 February 2013 - 13:29) писал: писал:
В настройках нужно менять переменные всякие. Можно даже снаряды разные прописать.
В настройках или коде?
Если в коде, то где конкретно. Там, таки тоже папка турелей есть
0
Цитата
1)Вся суть СБ: Загребли, но он невиновен? Пфф, виновен, просто улик при нем нет. 2)Все решается простой логикой основанной на правилах и бек-стори. Стыдно объяснять такие моменты. 3)Вперде Анимусяне! 4)#ящерсарматурой
В настройках именно, на самой туррели, которую поставил на карту. Сейчас подробнее не скажу, изучай каждую строку. В коде можно тоже самое, но нужно будет создавать отдельную туррель, а это лишний геморрой.
Потыкал кнопки в Дриммейкере. Итого создал с нуля небольшой отсек со всей инфрастурктурой.
Спойлер А вот так выглядит в дриммейкере.
Спойлер Инструкция:
Продумываем для чего нужен отсек, его планировку и инфраструктуру.
Прописываем в Space station 13 areas.dm новую зону с уникальным именем, по аналогии с существующими. Пример моей зоны Engeneering test room, прописанной как подзона в инженерном отсеке:Спойлер
//Engineering
/area/engine
engine_smes
name = "\improper Engineering SMES"
icon_state = "engine_smes"
requires_power = 0//This area only covers the batteries and they deal with their own power engineering
name = "Engineering"
icon_state = "engine"
break_room
name = "\improper Engineering Break Room"
icon_state = "engine" chiefs_office
name = "\improper Chief Engineer's office"
icon_state = "engine_control"
// temporary test room
engine_test_room
name = "\improper Engeneering test room"
icon_state = "engine_test"
(Опционально) рисуем новую иконку для зоны и размещаем в icons/turf/areas.dmi Ссылку на использование этой иконке прописываем в предыдущем пункте в параметреicon_state.
Сохраняем проект. Перезапускаем дриммейкер, чтобы он подхватил в редактор новую зону. Возможно существует специальная кнопка релоад, чтобы этого не делать, но я не нашел.
Теперь во вкладке/objects/areas/<куда вы добавили вашу зону> появилась ваша зона для разметки. Ее нужно будет нанести на всю поверхность вашего нового отсека. Зона нужна чтобы подхватилась работа атмоса, мониторинга питания и атмосферных тревог.
Рисуем стены и пол. Из turf/simulated/wall иturf/simulated/floor закладок. Именно эти сразу имеют с собой атмосферу.Вообще, чтобы меньше ошибаться - подсматривайте в пример уже существующие на карте вещи. Так чтобы найти этот гребаный аэрлок в тысяче закладок - находим уже существующий аэрлок, такой-же какой мы хотим поставить, райт клик, подсматриваем путь/obj/machinery/door/airlock/external/ и быстро находим объект по этому пути в закладкеobj. Подкладывать нижние плиты или решетку под пол, как при строительстве в игре не нужно. Просто клик заменяет объект, CTRL-клик добавляет.
Проводим электропитание. Если играли инженером, прокладка кабеля не составит труда. Но подсмотрите имя объекта уже у существующего кабеля, там есть хитрость, он должен быть из вкладки hidden чтобы скрываться под плитками пола.
Вешаем АПЦ. Хитрость - его нужно ставить не на стену, а на клетку пола перед ней, в которую подведен провод электропитания. А потом в свойствах АПЦ через переменныеpixel_x и pixel_y смещать на стену на 24 пикселя. Трюк со смещением обязателен и для панелей пожарной и воздушной тревоги. Подсмотрено по аналогии с существующими. Если поставить же просто в стену - он будет виден и доступен с обоих сторон стены. А панель воздушной тревоги будет проводить измерения внутри стены, и при полной разгерметизации продолжать показывать зеленый код.
Атмосферное обеспечение. Проводим две, не пересекающиеся между собой, трубы в помещение, темно-синюю и темно-красную, на концы вентиляцию и скраббер. Трубы должны быть соединены с уже существующими на станции трубами такого-же цвета, чтобы войти в цикл циркуляции воздуха. Вспоминаем роль атмосферного техника. Чем больше помещение - тем больше пар вентиляция/скраббер - должно быть. И только одну на всех атмосферную панель.
Ставим на входы пожарные аэрлоки и одну панель пожарной тревоги.
Проводим трубы пневмопочты и мусорки.
Развешиваем по отсеку лампочки.
Развешиваем камеры слежения, в их переменных задаем имя камеры через параметрc_tag например "Engeneering TEST room north". Задаем вместе с кавычками, это имя появится в панели наблюдения за камерами безопасности.
Ставим необходимую фурнитуру и оборудование.
Проверяем все ли правильно. Сохраняем, компилим, сервуем, конектимся, проверяем как работает.
Все проверялось и тестировалось на сборке Baystation12-273bb67
По поводу атмосферы и потоков которые размазывают по стеклу порывом. Работа потоков воздуха описана вAirflow.dm. Процедурки Airflow и AirflowSpace. Для обмена газами между зонами и между зоной и космосом. Вызываются они из ZAS_zones.dm и судя по процедурке ShareRatio при расчете силы потока учитывается размеры комнат и суммарное давление в ее тайлах с учетом всех газов. Чтобы создать убийственный поток при разгерметизации - комнату побольше, или давления побольше. В моей тестовой вполне получалось летать ногами вперед, правда я немного завышал давление. В комнате поменьше сносящего с ног потока не будет, но будет видно как убывает воздух по датчикам.
Небольшие правки от знатока: 3)Там где сохраняешь есть ведь update. Ну или просто хоткейс u + ctrl. 6) Пкм над этим аирлоком, выбераешь его в кучке вещей и тыкаешь первую кнопку. Дриммейкер САМ покажет где лежит этот аирлок ;3 9) Можно и не одну панель. Пример - РнД
Увидал бы статейку когда ещё чудцо и занитсина доебывал нубскими вопросами, разрядил бы весь плюсомёт. А парень к успеху идёт.
P.s. буду благодарен если кто то из вас достанет с луны трубы Z уровня в фернфловер. :З
Kavainoe4udo (25 February 2013 - 16:21) писал: писал:
В настройках именно, на самой туррели, которую поставил на карту. Сейчас подробнее не скажу, изучай каждую строку. В коде можно тоже самое, но нужно будет создавать отдельную туррель, а это лишний геморрой.
Я вот о чем, Переменная ид не делает турель рабочей, турель не реагирует на переключения, она вообще не реагирует. И даже метод копипасты с турелей спутника эффекта не дал. Скажем так, турель постоянно находиться в состоянии off. И я тут заметил, что для турелей нужно прописывать еще и зоны.
P.S. И да, Оно работает! Сообщение отредактировал OdSt_97: 26 February 2013 - 05:05
0
Цитата
1)Вся суть СБ: Загребли, но он невиновен? Пфф, виновен, просто улик при нем нет. 2)Все решается простой логикой основанной на правилах и бек-стори. Стыдно объяснять такие моменты. 3)Вперде Анимусяне! 4)#ящерсарматурой